diff --git a/.gitattributes b/.gitattributes index d5658b7f8b..639e44d92e 100644 --- a/.gitattributes +++ b/.gitattributes @@ -151,3 +151,6 @@ research/p111-minrank-proof-reconciliation/vendor/pr620/geo.py -text -whitespace research/community-batch1099-audit/** -text -whitespace research/community-frontier1094-audit/** -text -whitespace research/abelian-cayley-metric-scope/** -text +research/capped-fusion-t74-k554/** -text -whitespace +research/frontier2044-epsilon-refinement/** -text +research/kappa-fixed-grid-ceiling/** -text diff --git a/research/capped-fusion-t74-k554/ADMISSION-DERIVATION.patch b/research/capped-fusion-t74-k554/ADMISSION-DERIVATION.patch new file mode 100644 index 0000000000..ab97eb8824 --- /dev/null +++ b/research/capped-fusion-t74-k554/ADMISSION-DERIVATION.patch @@ -0,0 +1,324 @@ +--- inherited/witness.py ++++ t74/witness.py +@@ -53,3 +53,16 @@ + """A different provider for substitution controls (next in sorted order).""" + assert len(PIDS)>1 + return PIDS[(PIDS.index(pid)+1)%len(PIDS)] ++ ++# Replica-sensitive quantities are frozen by the independently checked parent lift. ++GEO=SPEC['geometry'] ++REPLICAS=GEO['replicas']; CALLS=GEO['stages']*REPLICAS ++assert type(REPLICAS) is int and REPLICAS>0 ++assert (GEO['stages'],GEO['pairs'],GEO['dimension'])==(9,4,73) ++assert set(CALL_ORDER)=={(s,r) for s in range(GEO['stages']) for r in range(REPLICAS)} ++DATA=2*112*GEO['pairs']*REPLICAS ++DEFICIT=DATA-64*CALLS ++PAYLOAD=GEO['charged_prefix_bits'] ++assert PAYLOAD==1<<(192+(GEO['dimension']+1)//2+2*CALLS+4).bit_length() ++PARENT_LIVE=GEO['parent_live'];PARENT_PHYSICAL=GEO['parent_physical'];PARENT_IDLE=GEO['parent_idle'];PARENT_HELPERS=GEO['parent_helpers'] ++assert PARENT_PHYSICAL==PARENT_LIVE+PARENT_HELPERS+8+2 +--- inherited/emit_allcold.py ++++ t74/emit_allcold.py +@@ -24,8 +24,8 @@ + read=lambda p:json.loads(gzip.decompress(p.read_bytes())if p.suffix=='.gz'else p.read_bytes()) + assert hashlib.sha256(MAP.read_bytes()).hexdigest()==SPEC['data']['owners_sha256'],'OWNERS not pinned by spec' + plan=read(PLAN);assert plan['runtime_source_plan_sha256']==SPEC['data']['plan_sha256'],'PLAN not pinned by spec' +-call_order=[tuple(x)for x in plan['order']];assert len(call_order)==len(set(call_order))==333;at={x:i for i,x in enumerate(call_order)} +-parent=read(BASE/'split-centres/GLOBAL-TEMPLATE.json.gz');t=copy.deepcopy(parent);canon=read(BASE/'split-centres/CANONICAL-WORD.json.gz');ph=read(BASE/'work/complex-nine-native/DATA-PHASES.json');roles=read(MAP);T=37;V=canon['v'];M=73;R0=canon['R'];DATA=8*T*V;assert(V,canon['h'])==(112,9) # R0: parent (split-centres) helper count ++call_order=[tuple(x)for x in plan['order']];assert len(call_order)==len(set(call_order))==CALLS;at={x:i for i,x in enumerate(call_order)} ++parent=read(BASE/'split-centres/GLOBAL-TEMPLATE.json.gz');t=copy.deepcopy(parent);canon=read(BASE/'split-centres/CANONICAL-WORD.json.gz');ph=read(BASE/'work/complex-nine-native/DATA-PHASES.json');roles=read(MAP);T=REPLICAS;V=canon['v'];M=73;R0=canon['R'];DATA=8*T*V;assert(V,canon['h'])==(112,9) # R0: parent (split-centres) helper count + assert(len(canon['start']),len(ph['recipes']))==(2*V+R0,V) + sha=lambda p:hashlib.sha256(p.read_bytes()).hexdigest() + provider_files=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json','INDEPENDENT-LOCAL-REPLAY.json','RESIDUAL-ADAPTERS.json','CLIFFORD-RECIPES.json','CLIFFORD-REVIEW.json') +@@ -49,9 +49,9 @@ + value=sha(directory/name);assert value==plan['provider_registry'][provider_id]['artifact_sha256'][name] + source_artifacts[f'providers/{provider_id}/{name}']=value + registry[provider_id]=dict(local_programs=programs,canonical_word_sha256=sha(directory/'CANONICAL-WORD.json.gz'),local_programs_sha256=sha(directory/'LOCAL-PROGRAMS.json.gz'),local_program_checks=checks,exact_local_clifford_recipe_sha256=sha(directory/'CLIFFORD-RECIPES.json'),residual_adapter_sha256=sha(directory/'RESIDUAL-ADAPTERS.json'),v=V,h=9,R=R,ports=pc['ports'],centers=pc['centers'],widths=widths) +-assert len(roles)==333*R # one whole-owner role per (call, provider helper) ++assert len(roles)==CALLS*R # one whole-owner role per (call, provider helper) + selected={(c['stage'],c['replica']):c for c in plan['provider_calls']} +-assert len(selected)==333 and set(selected)==set(call_order) ++assert len(selected)==CALLS and set(selected)==set(call_order) + assert Counter(c['provider']for c in selected.values())==COUNTS + per_call_widths={(c['stage'],c['replica']):c['widths']for c in plan['per_call_widths']} + for key,c in selected.items(): +@@ -92,7 +92,7 @@ + u=used[i,rep,port];assert u==set(range(len(u)));left=old['rank']-len(u) + if left: + f=rep*(8*V)+(2*pairs[i]+side[i])*V+port;newidle.append(dict(child=i,port=port,replica=rep,replicas=1,family=f,rank=left,hosted=len(u),pending_offset=len(u)));paid[left]+=1 +-assert M*DATA-sum(r*n for r,n in paid.items())==11840 ++assert M*DATA-sum(r*n for r,n in paid.items())==DEFICIT + C=len(canon['centers']);physical=DATA+C+R+2 + assert parent['physical']-parent['live']==C+R0+2 + # Local circuits, exact phase recipes, normalized wrappers and data routes stay +@@ -140,7 +140,7 @@ + template_sha256=hashlib.sha256(raw).hexdigest(), + parent_template_sha256=hashlib.sha256(gzip.decompress((BASE/'split-centres/GLOBAL-TEMPLATE.json.gz').read_bytes())).hexdigest(), + live=DATA,physical=physical,global_profile=dict(sorted(paid.items())), +- rank_mass=sum(r*n for r,n in paid.items()),deficit=11840,maxchild=max(paid), ++ rank_mass=sum(r*n for r,n in paid.items()),deficit=DEFICIT,maxchild=max(paid), + hosted_residuals=len(roles),banks_per_stage=[0]*9,entering_helper_roles=entering, + unique_actual_73column_sigmas=len(sigmas),sigma_stream_sha256=digest.hexdigest(), + cross_replica_helper_roles=sum(z['replica']!=z['owner_replica']for z in roles), +--- inherited/audit_allcold.py ++++ t74/audit_allcold.py +@@ -77,10 +77,10 @@ + parent_canon=read(BASE/'split-centres/CANONICAL-WORD.json.gz') + assert [canon['frames'][f]for f in canon['center_frames']]==[parent_canon['frames'][f]for f in parent_canon['center_frames']] + assert required_artifacts<=set(summary['source_artifacts']) +-prank={e['child']:e['rank']for e in parent['idle_children']};M=73;T=37;DATA=8*T*V;PHYSICAL=DATA+CENTRES+R+2;CALLS=333;HOSTED=CALLS*R ++prank={e['child']:e['rank']for e in parent['idle_children']};M=73;T=REPLICAS;DATA=8*T*V;PHYSICAL=DATA+CENTRES+R+2;CALLS=CALLS;HOSTED=CALLS*R + # The selected map is an input to check, not a claim from the emitter. + +-assert len(DISPATCH)==333 and Counter(DISPATCH.values())==COUNTS ++assert len(DISPATCH)==CALLS and Counter(DISPATCH.values())==COUNTS + expected_provider=lambda stage,replica:DISPATCH[stage,replica] + + def orthobasis(port): +@@ -93,23 +93,23 @@ + assert(t['live'],t['physical'])==(DATA,PHYSICAL) + assert t['local_providers']==registry and t['recipe']==parent['recipe']and 'each local invocation completes before the next' in t['loop_order'].lower() + assert not any(k in t for k in('local_programs','exact_local_clifford_recipe_sha256','residual_adapter_sha256')) +- assert len(t['calls'])==333 and t['hosting']['max_helpers_per_physical_family_per_call']==1 and t['hosting']['banks']==[0]*9 ++ assert len(t['calls'])==CALLS and t['hosting']['max_helpers_per_physical_family_per_call']==1 and t['hosting']['banks']==[0]*9 + for key in('exact_data_phase_recipe_sha256','adapter_policy'):assert t[key]==parent[key] + assert t['exact_data_phase_recipe_sha256']==sha(BASE/'work/complex-nine-native/DATA-PHASES.json') + # Independently project the literal schedule onto every data replica. + src=parent['execution_schedule'];assert t['async_schedule']['source_schedule']==src + assert t['async_schedule']['source_call_order']==[[c['stage'],c['replica']]for c in parent['calls']] + order=[(c['stage'],c['replica'])for c in t['calls']] +- assert [list(x)for x in order]==t['async_schedule']['order'] and len(set(order))==333 +- all_local=[];perrep={r:[]for r in range(37)};globals_=[] ++ assert [list(x)for x in order]==t['async_schedule']['order'] and len(set(order))==CALLS ++ all_local=[];perrep={r:[]for r in range(REPLICAS)};globals_=[] + for e in t['execution_schedule']: + j=e['source_event'];old=copy.deepcopy(src[j]) + if 'replica'in e: +- r=e['replica'];assert 0<=r<37 and j<30;perrep[r].append(j) ++ r=e['replica'];assert 0<=r2*max(paid)**2 +- return dict(profile=dict(sorted(paid.items())),mass=mass,hosted=HOSTED,entering=entering,cross_replica=cross,sigma_digest=digest.hexdigest(),sigmas=sigmas,idle_remainders=len(wanted),busy_family_checks=len(roles),invocations=333) ++ mass=sum(r*n for r,n in paid.items());assert73=73*DATA-mass;assert assert73==DEFICIT and 73**2>2*max(paid)**2 ++ return dict(profile=dict(sorted(paid.items())),mass=mass,hosted=HOSTED,entering=entering,cross_replica=cross,sigma_digest=digest.hexdigest(),sigmas=sigmas,idle_remainders=len(wanted),busy_family_checks=len(roles),invocations=CALLS) + + r=audit(ct);raw=gzip.decompress((OUT/'GLOBAL-TEMPLATE.json.gz').read_bytes());assert hashlib.sha256(raw).hexdigest()==summary['template_sha256'];assert r['profile']=={int(k):v for k,v in summary['global_profile'].items()};assert r['sigmas']==read(OUT/'ACTUAL-SIGMAS.json.gz');assert r['sigma_digest']==summary['sigma_stream_sha256'] + assert all(hashlib.sha256((BASE/name).read_bytes()).hexdigest()==value for name,value in summary['source_artifacts'].items()) +@@ -228,11 +228,11 @@ + reject(P+': wrong sweep provider',lambda q,P=P,Qp=Qp:next(e for e in q['execution_schedule']if e['kind']=='local_cover_sweep'and DISPATCH[e['stage'],e['replica']]==P).__setitem__('provider_id',Qp)) + reject(P+': entering helper width silently restored to nine',lambda q,P=P,h=narrow:q['local_providers'][P]['widths'].__setitem__(h,9)) + +-report=dict(status='PASS_INDEPENDENT_ASYNC_WHOLE_OWNER_CONTROLLER_PHASES_AND_SPECTATORS',template_sha256=summary['template_sha256'],complex_template_sha256=summary['template_sha256'],complex_live=DATA,complex_profile=r['profile'],complex_hosted_residuals=HOSTED,physical=PHYSICAL,rank_mass=r['mass'],deficit=11840,entering_helper_roles=r['entering'],cross_replica_helper_roles=r['cross_replica'],one_owner_per_complete_invocation=True,helper_busy_family_window_checks=r['busy_family_checks'],complete_invocations=r['invocations'],actual_orthogonal_73column_maps=len(r['sigmas']),actual_sigma_stream_sha256=r['sigma_digest'],all_actual_residual_and_spectator_charts=True,idle_remainders=r['idle_remainders'],mutations_rejected=controls,mutation_controls_run='--mutation-controls' in sys.argv[4:],provider_phase_semantic_sha256=phase_semantic_hashes,provider_artifact_semantic_sha256=artifact_semantic_hashes,widths_by_provider={pid:dict(sorted(Counter(providers[pid]['widths']).items()))for pid in provider_ids},provider_counts=dict(Counter(c['provider_id']for c in ct['calls'])),all_provider_program_phase_and_wrapper_bindings=True,scope='Independent exact asynchronous chronology, per-replica phase projection, owner/chart/paid-profile audit. Uses per-invocation local providers bound by exact scalar, phase and residual-wrapper receipts; all-size compilation and complete coefficient invoice are separate inherited obligations.') ++report=dict(status='PASS_INDEPENDENT_ASYNC_WHOLE_OWNER_CONTROLLER_PHASES_AND_SPECTATORS',template_sha256=summary['template_sha256'],complex_template_sha256=summary['template_sha256'],complex_live=DATA,complex_profile=r['profile'],complex_hosted_residuals=HOSTED,physical=PHYSICAL,rank_mass=r['mass'],deficit=DEFICIT,entering_helper_roles=r['entering'],cross_replica_helper_roles=r['cross_replica'],one_owner_per_complete_invocation=True,helper_busy_family_window_checks=r['busy_family_checks'],complete_invocations=r['invocations'],actual_orthogonal_73column_maps=len(r['sigmas']),actual_sigma_stream_sha256=r['sigma_digest'],all_actual_residual_and_spectator_charts=True,idle_remainders=r['idle_remainders'],mutations_rejected=controls,mutation_controls_run='--mutation-controls' in sys.argv[4:],provider_phase_semantic_sha256=phase_semantic_hashes,provider_artifact_semantic_sha256=artifact_semantic_hashes,widths_by_provider={pid:dict(sorted(Counter(providers[pid]['widths']).items()))for pid in provider_ids},provider_counts=dict(Counter(c['provider_id']for c in ct['calls'])),all_provider_program_phase_and_wrapper_bindings=True,scope='Independent exact asynchronous chronology, per-replica phase projection, owner/chart/paid-profile audit. Uses per-invocation local providers bound by exact scalar, phase and residual-wrapper receipts; all-size compilation and complete coefficient invoice are separate inherited obligations.') + REPORT.parent.mkdir(parents=True,exist_ok=True) + REPORT.write_text(json.dumps(report,indent=2)+'\n');print(json.dumps(report,indent=2)) + +-owners=dict(status='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE',template_sha256=summary['template_sha256'],paid_profile=r['profile'],live=DATA,physical=PHYSICAL,rank_mass=r['mass'],deficit=11840,hosted_residuals=HOSTED,banked_residuals=0,all_live_owners_per_call_distinct=True,owners_per_call=N,actual_helper_owner_charts=HOSTED,actual_73column_sigmas=len(r['sigmas']),cross_replica_helper_roles=r['cross_replica'],explicit_idle_remainder_children=r['idle_remainders'],source_idle_children_charged=sum(x['replicas']for x in parent['idle_children']),source_artifacts=summary['source_artifacts'],provider_phase_semantic_sha256=phase_semantic_hashes,provider_artifact_semantic_sha256=artifact_semantic_hashes,controller_audit_sha256=hashlib.sha256(REPORT.read_bytes()).hexdigest()) ++owners=dict(status='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE',template_sha256=summary['template_sha256'],paid_profile=r['profile'],live=DATA,physical=PHYSICAL,rank_mass=r['mass'],deficit=DEFICIT,hosted_residuals=HOSTED,banked_residuals=0,all_live_owners_per_call_distinct=True,owners_per_call=N,actual_helper_owner_charts=HOSTED,actual_73column_sigmas=len(r['sigmas']),cross_replica_helper_roles=r['cross_replica'],explicit_idle_remainder_children=r['idle_remainders'],source_idle_children_charged=sum(x['replicas']for x in parent['idle_children']),source_artifacts=summary['source_artifacts'],provider_phase_semantic_sha256=phase_semantic_hashes,provider_artifact_semantic_sha256=artifact_semantic_hashes,controller_audit_sha256=hashlib.sha256(REPORT.read_bytes()).hexdigest()) + (REPORT.parent/'OWNERS-AND-PROFILE.json').write_text(json.dumps(owners,indent=2)+'\n') + + # Literal residual frames are a compact export of the already checked offsets, +--- inherited/invoice_allcold.py ++++ t74/invoice_allcold.py +@@ -195,7 +195,7 @@ + helpers=next(iter(providers.values()))['helpers']; n=2*v+helpers + assert all((p['v'],p['h'],p['centres'],p['n'])==(v,h,centres,n) for p in providers.values()) + parent_helpers=read(local_dir/'CANONICAL-WORD.json.gz')['R'] +- stages,replicas,blocks_per_stream=9,37,4 ++ stages,replicas,blocks_per_stream=GEO['stages'],REPLICAS,GEO['pairs'] + call_count=len(template['calls']) + assert call_count==stages*replicas==control['complete_invocations'] + assert control['one_owner_per_complete_invocation'] +@@ -238,6 +238,8 @@ + bridge_additions=2*v*bridge_sweeps + shifts=blocks_per_stream*v*replicas; moves=2*shifts + parent_live,parent_physical=parent['live'],parent['physical'] ++ assert (parent_live,parent_physical,sum(c['replicas'] for c in parent['idle_children']))==(PARENT_LIVE,PARENT_PHYSICAL,PARENT_IDLE) ++ assert parent_helpers==PARENT_HELPERS + data_stock=2*v*blocks_per_stream*replicas + assert (parent_live-data_stock)%stages==0 + parent_banks=(parent_live-data_stock)//stages +@@ -250,7 +252,7 @@ + +(call_count*adapters+outside)*compiler+64*parent_physical) + live,physical=template['live'],template['physical'] + mass,profile=owners['rank_mass'],owners['paid_profile'] +- assert m*live-mass==owners['deficit']==11840 ++ assert m*live-mass==owners['deficit']==DEFICIT + assert mass==sum(int(r)*count for r,count in profile.items()) + assert physical==live+helpers+centres+2 + assert live==owners['live'] and physical==owners['physical'] +@@ -260,7 +262,7 @@ + # The old dedicated-bank geometry is only a conservative reserve envelope. + # Its singular program is never used as evidence for a mixed invocation. + rebased=parent_pervertex+65*(physical-parent_physical)+(live-parent_live) +- used=max(rebased,parent_pervertex); retained=None; payload=1024 ++ used=max(rebased,parent_pervertex); retained=None; payload=PAYLOAD + if retained_invoice is not None: + previous=read(retained_invoice) + assert previous['compiler']==compiler and previous['charged_prefix_bits']==512 +@@ -313,7 +315,7 @@ + complete_invocation_cover_sweeps=call_count,bridge_factor_two_sweeps=bridge_sweeps, + local_scalar_coefficient_work_prefix_bits=localbits,stream_input_sup_to_l2_bits=input_l2_bits, + primitive_arithmetic_margin_bits=4,controller_audit_sha256=filehash(audit/'ASYNC-AUDIT.json'), +- proof='Each selected normalized provider restores all arbitrary dirty helper columns and gives the same data shear endpoints. Actual whole-owner charts are right-translation bijections. Sum all 333 invocation and 333 bridge sweeps and take the maximum local scalar/Horner prefix over both orientations of the fixed provider. Idle children, phases, spectator endpoints and terminal translations are unitary. Retained all-size interfaces are conditional.') ++ proof='Each selected normalized provider restores all arbitrary dirty helper columns and gives the same data shear endpoints. Actual whole-owner charts are right-translation bijections. Sum every actual invocation and bridge sweep and take the maximum local scalar/Horner prefix over both orientations of the fixed provider. Idle children, phases, spectator endpoints and terminal translations are unitary. Retained all-size interfaces are conditional.') + out.mkdir(parents=True,exist_ok=True) + (out/'PREFIX-AND-INVOICE.json').write_text(json.dumps(receipt,indent=2)+'\n') + (out/'GLOBAL-PREFIX.json').write_text(json.dumps(prefix,indent=2)+'\n') +--- inherited/assemble.py ++++ t74/assemble.py +@@ -27,7 +27,7 @@ + M,B,A=[load(n)for n in ('moment','base_two_moment','outer')] + def dec(x): + with localcontext()as ctx:ctx.prec=70;return str(Decimal(x.numerator)/Decimal(x.denominator)) +-from witness import DISPATCH,CALL_ORDER,COUNTS,PIDS,X,DISCOVER,pin,SPOT,spot_widths ++from witness import DISPATCH,CALL_ORDER,COUNTS,PIDS,X,DISCOVER,pin,SPOT,spot_widths,GEO,REPLICAS,CALLS,DATA,DEFICIT,PAYLOAD,PARENT_LIVE,PARENT_PHYSICAL,PARENT_IDLE,PARENT_HELPERS + # Cited bit supplier: PR589's tune/EXPECTED.json (merged on main as research/e8-bit-p111-tuned/tune/EXPECTED.json). + BIT_PATH=Path(__file__).resolve().parents[1]/'inputs/PR589-EXPECTED.json' + BIT_BLOB='e293ddc557742637f9f679f083a1a282d87b1b13' +@@ -63,14 +63,14 @@ + assert owner['all_live_owners_per_call_distinct'] is True + # R (helpers per provider word) is read from the invoice and must be shared by every provider; n=2v+R. + R=invoice['helpers'];assert type(R) is int and R>0 and all(p['helpers']==R for p in invoice['providers'].values()) +- assert owner['owners_per_call']==2*112+R and owner['actual_helper_owner_charts']==owner['hosted_residuals']==333*R==pin('expected.hosted_residuals',owner['hosted_residuals']) ++ assert owner['owners_per_call']==2*112+R and owner['actual_helper_owner_charts']==owner['hosted_residuals']==CALLS*R==pin('expected.hosted_residuals',owner['hosted_residuals']) + pin('expected.rank_mass',owner['rank_mass']) + pin('expected.actual_73column_sigmas',owner['actual_73column_sigmas']);pin('expected.cross_replica_helper_roles',owner['cross_replica_helper_roles']) + pin('expected.idle_remainders',owner['explicit_idle_remainder_children']) +- assert invoice['complete_invocation_sweeps']==invoice['bridge_sweeps']==333 ++ assert invoice['complete_invocation_sweeps']==invoice['bridge_sweeps']==CALLS + assert invoice['live']==owner['live'] and invoice['physical']==owner['physical'] + assert invoice['centres']==8 +- assert invoice['physical_stock_identity']==dict(data_and_owner_families=33152,local_helpers=R,private_centres=8,coefficient_work=2) ++ assert invoice['physical_stock_identity']==dict(data_and_owner_families=DATA,local_helpers=R,private_centres=8,coefficient_work=2) + assert sum(invoice['physical_stock_identity'].values())==invoice['physical'] + assert invoice['controller_audit_sha256']==owner['controller_audit_sha256'] + for pid,p in invoice['providers'].items(): +@@ -106,9 +106,9 @@ + assert p['compiler']==64*74**3 + assert p['local_adapters']==16*(max(z['macros']for z in p['local'].values())+p['children']+2*112+R+8)+64*73 + assert p['local_primitive_bound']==max(z['real_component_primitives']for z in p['local'].values())+p['local_adapters']*p['compiler'] +- calls=invoice['selected_calls'];assert len(calls)==333 ++ calls=invoice['selected_calls'];assert len(calls)==CALLS + assert [(c['stage'],c['replica'])for c in calls]==CALL_ORDER +- assert {(c['stage'],c['replica']) for c in calls}=={(s,r) for s in range(9) for r in range(37)} ++ assert {(c['stage'],c['replica']) for c in calls}=={(s,r) for s in range(9) for r in range(REPLICAS)} + for c in calls: + pid=DISPATCH[c['stage'],c['replica']] + assert c['provider_id']==pid +@@ -138,13 +138,13 @@ + # Recount the retained dedicated-bank envelope independently. Its geometry + # stays fixed, while every local primitive and wrapper comes from the actual + # selected provider/orientation sums above. +- parent_live,parent_physical,parent_idle=55832,56346,74592 +- parent_banks,rem=divmod(parent_live-2*112*4*37,9);assert rem==0 and parent_physical==parent_live+504+8+2 # five bank groups with 8,8,8,8,5 active lanes and R0=504 helpers; shared private work is restored ++ parent_live,parent_physical,parent_idle=PARENT_LIVE,PARENT_PHYSICAL,PARENT_IDLE ++ parent_banks,rem=divmod(parent_live-2*112*4*REPLICAS,9);assert rem==0 and parent_physical==parent_live+PARENT_HELPERS+8+2 # five bank groups with 8,8,8,8,5 active lanes and R0=504 helpers; shared private work is restored + assert owner['source_idle_children_charged']==parent_idle +- bridges,shifts=2*112*333,4*112*37;moves=2*shifts +- nonlocal_items=(4*112*37*9+2*112*37*9+2*333*R+parent_idle+9*parent_banks+bridges+shifts+moves+parent_live+parent_physical+invoice['wrapper_elementary_factors_charged']) ++ bridges,shifts=2*112*CALLS,4*112*REPLICAS;moves=2*shifts ++ nonlocal_items=(4*112*REPLICAS*9+2*112*REPLICAS*9+2*CALLS*R+parent_idle+9*parent_banks+bridges+shifts+moves+parent_live+parent_physical+invoice['wrapper_elementary_factors_charged']) + outside=8*nonlocal_items+64*73 +- pervertex=(invoice['selected_real_component_primitives']+bridges+shifts+moves+parent_live+(333*invoice['local_adapters']+outside)*invoice['compiler']+64*parent_physical) ++ pervertex=(invoice['selected_real_component_primitives']+bridges+shifts+moves+parent_live+(CALLS*invoice['local_adapters']+outside)*invoice['compiler']+64*parent_physical) + rebased=pervertex+65*(invoice['physical']-parent_physical)+(invoice['live']-parent_live) + assert invoice['unhosted_pervertex']==pervertex and invoice['hosted_rebased_pervertex']==rebased + used=max(pervertex,rebased) +@@ -160,9 +160,9 @@ + assert 02*48*48) + assert actual_checks==invoice['strict_checks'] and all(actual_checks.values()) +@@ -185,7 +185,7 @@ + if DISCOVER:b=Q(M.certify(H,73,owner['live'],False)['lower']);conservative_b=Q(M.certify(H,73,owner['live'],True)['lower']) + else:b=Q(X['complex_lower']);conservative_b=Q(X['conservative_complex_lower']) + assert owner['template_sha256']==invoice['template_sha256'] and owner_sha==invoice['owner_audit_sha256'] +- pin('expected.live',owner['live']);pin('expected.physical',owner['physical']);assert owner['deficit']==11840 ++ pin('expected.live',owner['live']);pin('expected.physical',owner['physical']);assert owner['deficit']==DEFICIT + assert owner['banked_residuals']==0 + def check_moment(side,h,m,W,lower,deficit,bad): + assert m*W-sum(r*n for r,n in h.items())==deficit and m*m>2*max(h)**2 +@@ -200,14 +200,14 @@ + bitH={int(r):n for r,n in bit['profile'].items()} + assert BIT_M==64 and sum(r*n for r,n in bitH.items())==bit['bit']['rank_mass'] + bit_moments=check_moment('bit',bitH,BIT_M,bit['bit']['live'],c,bit_D,True) +- conservative_moments=check_moment('conservative_complex',H,73,owner['live'],conservative_b,11840,True) ++ conservative_moments=check_moment('conservative_complex',H,73,owner['live'],conservative_b,DEFICIT,True) + assert bit['bit']['two_level_coefficient_bits']0 +- ceil=lambda x:-(-x.numerator//x.denominator);cut=max(ceil(36/gap**2),ceil(2*(4+1024)/gap));assert cut*gap**2>=36 and cut*gap>=2*(4+1024) ++ ceil=lambda x:-(-x.numerator//x.denominator);cut=max(ceil(36/gap**2),ceil(2*(4+PAYLOAD)/gap));assert cut*gap**2>=36 and cut*gap>=2*(4+PAYLOAD) + cuts.append(dict(exponent=str(a),gap=str(gap),cutoff_log2=str(cut)));chain.append(a) + q=chain[-1]*(1-2*eta);margin=(1-eta)*q/(1+q);ticks=margin*10**18;k=Q((ticks.numerator-1)//ticks.denominator,10**18) + bridge={'semantic':{'C0':{'base':2,'exponent':210000},'strict_literal_gap':1},'rows':{'degree_gap':Q(10**6)-Q(51*20161,25)}} +@@ -222,7 +222,7 @@ + pin('expected.conservative_kappa_decimal',dec(conservative_k)) + # Only after every conservative supplier/admission/outer check succeeds is + # the reviewed native exact-complex recurrence selected. Bit charge stays. +- native_moments=check_moment('complex',H,73,owner['live'],b,11840,False) ++ native_moments=check_moment('complex',H,73,owner['live'],b,DEFICIT,False) + k,cuts,outer,controls=outer_witness(b) + pin('expected.kappa_decimal',dec(k)) + assert M.moment(H,73,owner['live'],b,True)[0]>1 +@@ -231,7 +231,7 @@ + moments=bit_moments+native_moments + input_hashes={'owner_audit':owner_sha,'fresh_invoice':invoice_sha,'package:inputs/PR589-EXPECTED.json':sha(BIT_PATH)} + input_hashes.update({'engines/'+name+'.py':sha(P/'engines'/(name+'.py'))for name in ('moment','base_two_moment','outer')}) +- return dict(status='PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY',kappa=str(k),kappa_decimal=dec(k),complex_lower=str(b),complex_decimal=dec(b),bit_lower=str(c),bit_decimal=dec(c),binding='complex',gain_over_pr635_percent=dec(100*(k/Q(X['gain_baseline_kappa'])-1)),complex_profile=H,provider_counts=invoice['provider_counts'],surcharge_model={'complex':False,'bit':True},conservative_complex_lower=str(conservative_b),conservative_complex_decimal=dec(conservative_b),conservative_kappa=str(conservative_k),conservative_kappa_decimal=dec(conservative_k),conservative_moments=conservative_moments,conservative_bootstrap=conservative_cuts,conservative_outer={n:str(v)for n,v in conservative_outer['strict_constraints'].items()},conservative_controls=conservative_controls,model_controls=model_controls,native_correction_gain=dec(k-conservative_k),template_sha256=owner['template_sha256'],input_sha256=input_hashes,bit_supplier=dict(pr=589,repository='CrocSwap/integer-mult-bounds',commit='a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46',merged_as='b3eb785ac5b4b1ca2beea0f80db078a505626a90',path='research/e8-bit-p111-tuned/tune/EXPECTED.json',git_blob_sha1=BIT_BLOB,word=dict(v=bit_record['word']['v'],decoder_constant=bit_record['word']['decoder_constant'],copy_ranks=bit_record['word']['copy_ranks']),derived_deficit=bit_D,deficit_formula='T(2Kv-L*cst), L=%d T=%d K=%d M=%d'%(BIT_L,BIT_T,BIT_K,BIT_M),replay_scope='Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit.'),moments=moments,bootstrap=cuts,outer={n:str(v)for n,v in outer['strict_constraints'].items()},controls=controls,scope='Conditional R480 seven-slot k8 construction with 37 replicas. The owner map attains the fixed-inventory bin bound. The full conservative invoice, native moment correction, PR589 bit surcharge and 47 outer inequalities are checked. Local admission and all-size/compiler, mutable-source, whole-call hosting, precision/tape, exact-recovery, analytic-transfer and bit H1-H5 assumptions remain.') ++ return dict(status='PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY',kappa=str(k),kappa_decimal=dec(k),complex_lower=str(b),complex_decimal=dec(b),bit_lower=str(c),bit_decimal=dec(c),binding='complex',gain_over_pr635_percent=dec(100*(k/Q(X['gain_baseline_kappa'])-1)),complex_profile=H,provider_counts=invoice['provider_counts'],surcharge_model={'complex':False,'bit':True},conservative_complex_lower=str(conservative_b),conservative_complex_decimal=dec(conservative_b),conservative_kappa=str(conservative_k),conservative_kappa_decimal=dec(conservative_k),conservative_moments=conservative_moments,conservative_bootstrap=conservative_cuts,conservative_outer={n:str(v)for n,v in conservative_outer['strict_constraints'].items()},conservative_controls=conservative_controls,model_controls=model_controls,native_correction_gain=dec(k-conservative_k),template_sha256=owner['template_sha256'],input_sha256=input_hashes,bit_supplier=dict(pr=589,repository='CrocSwap/integer-mult-bounds',commit='a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46',merged_as='b3eb785ac5b4b1ca2beea0f80db078a505626a90',path='research/e8-bit-p111-tuned/tune/EXPECTED.json',git_blob_sha1=BIT_BLOB,word=dict(v=bit_record['word']['v'],decoder_constant=bit_record['word']['decoder_constant'],copy_ranks=bit_record['word']['copy_ranks']),derived_deficit=bit_D,deficit_formula='T(2Kv-L*cst), L=%d T=%d K=%d M=%d'%(BIT_L,BIT_T,BIT_K,BIT_M),replay_scope='Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit.'),moments=moments,bootstrap=cuts,outer={n:str(v)for n,v in outer['strict_constraints'].items()},controls=controls,scope='Conditional R480 seven-slot k8 construction with a source-bound replica count. The owner map attains the fixed-inventory bin bound. The full conservative invoice, native moment correction, PR589 bit surcharge and 47 outer inequalities are checked. Local admission and all-size/compiler, mutable-source, whole-call hosting, precision/tape, exact-recovery, analytic-transfer and bit H1-H5 assumptions remain.') + if __name__=='__main__': + import sys + package,C,out=map(Path,sys.argv[1:4]);assert package.resolve()==P and not out.exists() +--- inherited/assembly_controls.py ++++ t74/assembly_controls.py +@@ -58,7 +58,7 @@ + for p in i['providers'].values(): + for z in p['local'].values(): + z['prefix_bits'], z['prefix_l1'] = 1, '1' +- i['global_prefix_bits'] = 1 + 37 + 333 + 333 + 4 ++ i['global_prefix_bits'] = 1 + 37 + CALLS + CALLS + 4 + + def reordered_calls(o, i): + i['selected_calls'][0], i['selected_calls'][1] = i['selected_calls'][1], i['selected_calls'][0] diff --git a/research/capped-fusion-t74-k554/CLAIM.json b/research/capped-fusion-t74-k554/CLAIM.json new file mode 100644 index 0000000000..8b9e1f777a --- /dev/null +++ b/research/capped-fusion-t74-k554/CLAIM.json @@ -0,0 +1,17 @@ +{ + "status": "PASS_T74_PIVOT566_KERNEL_WITH_ENDPOINT_AND_OUTER_REFINEMENT_COMPLETE_FINITE_ADMISSION", + "kappa": "1676938111022438771190100017020725032555691674761792047536039179544860041426416167047617951325080392375254668024881417704785844941873659190796874311269827844869294021609609878761760222726040503052361411290178071724514229511402997717835482222843694901217948470487965568309887619068847172953045805114461684934711435396733506293734841325861343304787721299532310229772589857694912111395953739686988727269468587554963277272937736454132255987090515404981010625380300398405414878988986157122637397706184264087627982251269279798737026724345745293965473508101366799393414789255206473161090950205950222122146222214078495368679130218674743146981670162403132582245706410548976470471745261542621302339241637171485342456816268520436435015281896393166247367278251553892803720247630029686984490078449352925557594904328569557484936591314303562431384381815420956360401044641472858822422582249979327207407410771660534313638231315935852892804132000147855397374322839591253536678984113084406988061438073184576016444328921205389213529360577549973971376403629568215377310772683219872177641391235708289818177925111881904300159619886665581137346322368568517117054240697628828913445767477326813624632908438476547455879789107389590165055563621760005781866188169710716495393304278850831707997384951261122215314912573099782120041249291001704783534963738038572909971460841194675956590556076487792844912046546289858480261722453906692121870900082361801253111254144535093557728890773576633275758296564385411181157194862013091717849684584397938692558192964504781548675242535472712168931345518712335315915091266802943695072033856713124737821702995413450878780710543025022928367906358090455917086551989910908356551317048398786986223728008709261755659180657097881480210424400144326299522878899777309399785895823672660416198403019568310343066278519210175123753322433148335319042110990102411115200155300905387480079481700793678398050055515674040740856110030688345147844637789304089124913488117865786102166259717537500608759271291542722618322268281881663249358096379805154548573054994939237543547344173213952238264923740581810541229342858729478428954424334131984148528784253998363568146237934288204812018977227175503767320972634467026605192430135456053386113854884936860690294856101608528249351841900676852113360746683010464546201975712535358643485273158405560713865159800025122453589321193849172272066813081451220206058867971739737852070562324696516989207167963722931205291831473897915831792236815542295351188421063491836041247452594134942209248413959680506248294593138389527422611136953102302258580121119666547884229014665725387964957084758968413322045525425313159249785544693731687537315908301437954586432098708787436507280265297509916984377327757196545848017185878187062075159807032253568563028327500466582827335502867854520125997555385653463180702511918745834613175695522817685388291478286861612733969705688420644803538993179921273082708231874645832277385151428336442791128121978844066863554759096512774567579514289358707813509712718614130837562928206888921092674847318865226502728725179504977454401235880436947166740879502845747251596396655438160627530891850366869113895456020655205727893563542322622934338187248429303755141424186144474851853038306051923346395342354169281469594504892858930927902734348204335524896282268283840385003189021115481306575985862301793725780239151376869964584730266367336592691055607610651395063452603950944137862475446094930322214251358925052162286516401501833382682009320185880700417626331391478426609811488522913323132102482939912440342675871636751981019800624634556412964612021651509481849038354557327885118381399789737921596751588189136821311831572343974889880678147466701932258512936242526046436206816962331619699576207481390195922724823856070618674582904131192629686384802772248025853565678688314716666529945311819044893560583315670136120200275855626940106396462406527068931089988702153309519230955113826416851095731603794043292915725451350181670888284691076554151637367282132699085416188720367321383556752795675446405859930575697456927411763363545818313874769811153200067443291026490825427143755817384089318952827706975802328578654060907310215933377202379529380163975222129749560910405469286325637889228656375209046139691727565799369454169799212172154190968007377296424461690352125762595869274922547147525570129817756823199696525210212593270375402119926487508947288180067142456329591203283997566500022674847080431168662174637209570629416830805601156788805418143373182215558446650310703543647015694751991619953590707511324503909687011954702203413782642378782037876483375951368505794557953578496314592205135043591193566218868778919000859827161236488817139192560862291428323398653291362388365138930281949623180624723430911220942364686086046811881095915076746280981830204413463502784589382914033720262163341801603895164465674237717521333553167444602702811423316239713043005712564513772123853640035325065916924660396852728500005955179986648160252906063818799410347442766786664711055874019008578881083537349681430773130796175261193827304599951725282101645776758227174040896025563972981356206057403055309359397803272752587584779898438292225351510689231016155941311614820345064156818468803931273430749310658977969794877739340106809807004217252335064678107177709738012342060949858124985939230944824099910816271686161045402302285297508303681740813423348350907451994012462784540355981010175250712507883425235359201011808190666715806901660337144936235013148504434618824507245850842711973003744446139783867771723508396116379467414673415606715716625914128533840969111912668685753089611477414283825465766233324600402108966568083865071195380389644064013225659789744058092069645276517941125418069973350260300280165435974786063150831838352844310895510990318838354096171074350901696604159609422545044432761405299893043166541471867539675148486601560709246012708765545511597405073650829192121506104352681979794721015327502789766595183378343313723972484630114099556180557404294775235619155991070995527689166962206915248692621723625349339886515813623371808024686285707580920325672974427246775594726257411915539820593521399646428719846155809016057142699866621674513998351006749905500243107644939008808283763056501335942666191769933208506315238830408038282952426951835706158652627835482438894937789837153427367984447438051922524608125636636354724642013592812413107221430038029951167528733632716495615098437698583723053533447798933250326700341673333994491349324617054234374857974757947615668818142972436911989201090528370744441973134132489090952568566403607460351786192700714317580878597847073275756461350544869658254948076345268993614534959881068956246376804772024874092287169129213186992223561462651658309780876752930386455758693852694419490316659070860880743872739756880986904608018185984447853004026912027028273674529733461856841101564521508287143103037105067406368884230169363092631082755618313589906637262234129963011384967274857835139637864747427281583226400504907023008806698966457880414815368581397227078662183740420462942245571835386209001540438595088462864815007422004248638126993194256733512441492762449359278264922627792929285604902259734784403139315955611635003088223285824742574585458199873484901143020578529226315336078237949517482509692606200070152399485636376460680083740681021982344306694849027211113016447096401664870109144789682310713027431057384988031850550073244022390664796252560251451047216241213622375149340154216946861782898546303245835481369726611482902356440118142802032911748577808744084580778888911583089537842528650350224300921031540555865720176640122675904405012834212606926720618076289350828192187374984894089231066370630648217898798896854426065721884878592112635879124018176081793622544776554917666612551712871940751135017411377174225478399645409241946348408968428229073749874922687804564946639149976097593853489919634179725302583519573365757810136809822693526329471277325032409077196569397908967330248117771231446718887760986447476076588633927432181839026436879618786438853924243552028724202149273586302070473159717257943700945527157809011120941201529129788112093374491395033762472838884021537166728636994436301630665161113541049013409799618516961971476705317102922179678760146451898465363215347773093120951670829714701916443141270735200245820497008506142137601082528684204057140216430536629443137761846135272920564936772781919878233766540547322707811014534785957220140510623262662299343688283812806778629871242749277818029936608902411376290956165421313339767652702964419424693427929795158225848307752402086866409298570827428830545979466593659732831201670303380333570266312497272799132209681506621971049738347072828669221324163330170520592810183637637084676061595353012884871526329217462580337694487152011554983679272629347872552272518691638301740526482861621518288819594890421541872633329221995265917763392018304235223710211877106016863005554214940071097592447423155732624240717137321612736711511015452334444244516915061963673208003062941532292298709576423406637199353790437669830561829911320018003588451801530555126063671274612572553492770019219854791346853529899217083993804001606413511906618984636285538071695085513529572393748324787169923762281249473751546125440467353229002557361226236674635339436866734922913588421644861984589171440144253273958082163140915326761894534071656568137443244291662187835317160943823412816299475701782833976092311688640981763963728493263436400943578122515811767475034937219257215640249300435151568809787937128054000271594403310948533139517857990326033962436461201598318153082901330418743578769240898590057345795829717851017043935795818891434187053885338008250148874777092005912883517999782964815867469662105182116763677981910973490277023174288291105221418269158586756990709428422258931331442794504592971213986331014533822819316821047908153050267474761529581470496327848025323027806364632033755649712473796125592228231866383200012128177464973234171077910612178261832411844451327540658886299846731331960517943677908866544491234822877726722608013231560973012977712928113553017511539323668523359646877817602388003417812687721442241818362060758935286678602512028457556322432966860496534005973185496234116477130021431674556455724709800620103308407729226922684038249705160650604896025216208815549465459682105347120826071162670172323777604724415197632836186075282884471606443456595251082216687911538792058088617154935477327331611707604852599408953090562317165764901586091510839742905904169286077141775199951431996332141976528202006263439398577377694506562160327542781285057223145500080567894256936192104539532877544352557327014219884470270365898840818498910201120508939952099877099720125578677214600835678617522169579215244883617583224197071677669304447578449721695589326557080911289822172061232340430764951103351599537784081168550992450354599464306633252877984996323071735638212830249012125486137788763260240891048087053849765686283457059743121403444156442434650092054570938652942415947381592814566634431149031023214916834305254458008262138465921898971414412933926955648154529822504803874360101183545710678445298023496236357526280439620594953936970736132761346050554194072969850892802948707228511672212584586522459338679891063201992970976168849230988075980782268063321703100204105023867793359171663271120284689216266982922854555024458257194082880055670679251104989805518404654208118408971091397544413690740524617333256625860315671131348038003541725250012752470040117945491193565910672258306452166479239821822013167232978752210217065148213007997704617037581406969510024983642886094271501468515266517951412212678737863672374815850850018617167169404724193804196755226918630965977916620235037471936721474981760628389091696282830495083442946558386495173677129758843046535838765135261122211278015936644081113146013862655555473632728900177060404803909932570717096973233380397678154770570806159305328853159769847239408357381063591160857884936553235371301103805176084499744960861799096564455069188415173167466307325300507550789057356996012675411971914689885179790635217876635528742729289074038515582958823940756956282983982013297931392208702531339786326606085898964704306490183276443673432665409714392781588142314113003879544653826652456905279400423892864645145732150442385519751256630020969800111816195991768662067877844919742610629349456167364098842554260162810595843651246109839484140616200074396692161189445190771678850343616248833964152149294400909855021088301430637435077258954376881056167952757841603623150114848723868296455274843131964942644809739308334847250591037638159933773303030266553644713708830512000152768829599928357599043658354782218018604632389949399820228309873566731644105967969411392566463659821308439256239024768765466932891350654938606302906507157591494480884912600616501977681873739893405341267961274488122366978988526043488327734498352473374470344425684195823197530049518654219041369495526538909792142894614436674356956779117253565744461001646077291258616721028615171489377225797248963434748615709621863224494162425093903405418908099536448372409615645800088500708000326863586343258941824395046674640894829867490410076274904303597563905414607619538415264240951244758012373279165979420578572764543801612784311044524671534411110470778947786791611869579075129825637914942374298443150726849182979180295889400445095841912728739025398599890800774013815552097491946061432696683059850908007684892130277014649129866533075391480756752616874917082950665615788569283989718523234950496323961843015310890061750616561544250497511367802721749620997692277424816590831045033667753129456587899216950209169192979420525209830749278011259435256629864158365514213967842968168852592255041056372878403978961231539607315363463824015865789036667647691679656765508135153206123784725092541720945622842906505096885988904944731675837028018001025369395696577970702714790856223322126194193086879362041008496505122567070083836633891608966742224926341734754378992241704703243946477594438680084470924808222981898241634435942817665042296423620945634192168991400779159174135163441203854172667463449799823859132238474271344875663382011115657821650061331564093476251376766151284211905634835598395726437036943697945398550666243562475047103495260078498713415945222861217223171191565427545908948803739406056259045194404209652395524496033012280547163425869609206017318807219351721432592317710506582161595503691169181574298010469974027909045375705070521426723500918468327100399762174003571496690116771511985310875084366530193825729519512792584187969264095544191303231245159595600158757195018937452448153918214771803047236892338699087191418543548127176631207008647905211976016479693344991363133604423145030530786983149981370565686142920349543376635283587834198046392613205009938873884317306158749934987122636533735554280431472885838392469748433188218244359361739850329083230877907986952326531659062931518445494292395883081770960571149009946528303538416903468568251787904875888959724011669751379689737745645781536063724368281057535501651300779278159221234236286476121483406748542795836599283974286399156586351721302901945910999424737242212435193890764123794068613318807291025634632455033216836347178547306991763011371294447804930704701076731794985624544867144232618127801807016743557525975223094237419800926860726343207303307490100223761773175419194741775266790808437768846346409513854007597404533426060629802937997434365138785933283771190883963112026714630358610871566529511577973773030641278181999794138862952860277849836957045243572727803772994044145219612484151101958595754233134772206594546257843194920354988050720562487373090358396902105101130905837416215041528213742332237544479754016802420848946663972948503196038233831486326015598974745250367099024402883536680710078680762442499569967224988002820831131489501714654935338950677916179417687378341621029590525586118145500385979674551635569073802595703509410104399056700082765735783514023916990580895035122998824139043522887937954243773818239486908817691218594461231775612498171814739761413223626548921134907470266749601882455318834051789070693294645378614273559817817669746175386190129207670796969347985925964201887739954957753063968991721994851537886826528718670187266951754691015100558554402416365382385571832699593516591871870129088950860959141365335405217475952569409437291705958132591035713852844020829390425243231152363311794058641932466821316123556220896978638238220851910854724225235801007566651687786293048920022864118873127653443897973287588289387355188527675762544818352972527202121956442164497960525118889429669158090847617248951856454184175011498584011151403843803616755070289562925291847693557468307471261855527743027793546388523180320303004531983787654968848885848044699382269524772992632828988529578250814217690251050538376318335987796054397392497819218945083583664479090210799067472301403668337559717597696977088660955704497252993776510793040389765797660003249309625621362413925006069689309741971348529472497910193831688377960993355293627778448218590992466907233023703434373342057619370142024150125919309597715211156119767719732799607180802790498035895181361368464888110051483059351056184478484935493907429774952809935838380670176114207577213231055350562935778210633178408589597114305208221445655571987043537222818641682257047013012523444306760980045634005807686693738653391512637351420386342471114731815863473555201852437480757773007117982214562511842789783403459207342446159950243392750801338546694453486882568558848221354119195364009948864482241943581175911046898758169191479049496589974376791349764450442378828930324034667011081601620280965349871472897408240015827835518911156870088245687077093734365098735053286572410319803080845798477163786287405364614064557437293304038102544036292654227764945227264663048205357008355771555088876595623139814435346749309964251946324880814583325021791421487797394988004538164305707469202106410211746503094306261906393808913646542952700315906267119779115998936128115065250206974734764465723585855511288580743400943809404288053471362642477523155475104031429412338193516993778125188851380426304674403369331302000716910342442997402937084557795367644496744142127987816340111528592554037797331020548717415225820119609382845549093796192490788732113363701319748743582000057303130051864228415577489842331046903247484601487466945180308802933831335767729683043613008237949546121375297802081297570627860665109297721191437971730304701194425144397124039096483670712819736875268727402950591193053215181214096094048991393513777953150345340375660727343308643780150161106624994355510672070504545638446348452832252739655357173432358505096323375391303231882706135850625263417142649071194773339832168083329388229371358567930229577131216277825259179573015218766375412085298526771708373976067632393542346710047549333985975581637892627834271510655196435256189543806335151275352311851042677322949803447199292923778361766440734496397738456055035681622997810149954634752627304431261203403272402323263787629123971290482208451728904179443479389133519955703392435705474476748581704437622129709874923772469427028692459169602692805773639884662839746902870259093711807913191778518892984073217487857897145970076468785664351978921228123955117538280981756811931365956219580769189165945354676982348448641247423518916350607877458000174846036861863407457585325426314682733609519279784663870218253170105990573783095295023636803500871717068656715873633323087889492672610932474421508618433271859746984902531599213685724749939166049437563039991443426494641652084430858140240110164289828469966850406832046716413390246110504245355115799426391378253248390613249284106740790339822458676277775822335702599336006873832060694120069151050502014160550879568956384777357561859297390815082320829238627565303595738227693040342653965811892001847940938696513716543372327453960265811436008036854866115271237812510903990539558847305647245954573152782787927223519635147727442216430929838945633240618968678002759612737346710149551481908355465926257591837274267945140065675067487109210401442076201140299815065215337544433220665579426653603156460913576244881143145816448433738435651908257707727075610250384686423897417587261466555923582154604137885444936333821387834125809275860172638633835215739911477550980579247697382084916194531361048661532192816958299987572396642484438585923345173977858953684709725360571645392436476987259650911307276196399085956903945476705317120950973221080222867047309737747692333164724006655517007030727397960981567443221606976290010701795178049647288909166395148988516523192292581698055459163120683313344444026844836973153374353724642859131405325364718843964487074859668019409627048319805633617946336241192339134443576925361983436149277034101251407931959500054852494406073752219382170270967693958490164322312794878286345936957582386357275444677552426326439427826509522110738746691329185514606540626514423926874666224032806665098968650564881401857662657770710747087290859146102020115348143461159085941199326422716587378456255513417188700369411413129886379359732827155687107299430516909440159150380295166927316885689919350464777363564940285040026385166191840356368272064334076945688910500707807400058611344300435064124118815434239882300439634498123276176222834094588002203477029431703120666721026088295166015938208578787452447617470420981110681742739501589729089688874701219977168675643400393501019031636735986156822800481179704399515441333154708852980193106051030371025975971140726105231868543289435682591068444682077058566949230294979329627187207330557461522535158209452349970946341295444060370265323350453604017667009504931558488322362480477139404005020402210256373133185810213186000671100094991969672203880497368249472670172473685829890560841738110667750353843071701215593780773237695292015553765731821037415644534697332757544054136342442611065425983461993557816127218299747813249898673155023681652001011599808410703519043808486258338062380633014322224632525851242478791268521796713383807610953638108916481582615453738864215354784246899761520394834810677248132444520115686989454496860603289963464336818674004697427066812628688013998463105270784005072590903591611313839737107838258436291376002487538111360585948203215629334421029248469146775627736729719342208489763395020681781452795833958136949380550036079100240398898889389849252608470062554378594962388685336357216755803837358816405620086072071176469517413795119595374249497832288900760644287948928311592218296413287328446577953788769594394339392514655278303538552555898922916252237259193439724646836560387747782111580693016237997784295593736191244946353544825573071081996645657175132549264602309166640190368655194868986750821808317633143747707688421453957800726547186638452809961959598731886280385650251823377199879643189111713690739645357494689387177711802146134749530592168168345624819545768693067168247301464137758737197018183738459575407555878161118760337275800081444696169086781775351213559112592993901434041121776782474650001633695434512031485285878558145263662365998253819157684573117531084220496817004897291154580464223101825601472092884251530232116661317651093337450030754076385822339417218860692479003613744609946316742314705543165710124459051394714878279134401672107226267803609962193138856792900484752902470520988587601414384933191291734854382395352282440797296885048506472379194229156342632002047812524843665970679080511973109865435364195788209865506917401954381665308062805413955228942862559405525303081470994335666784273579330975462174029875904075898214925437624320830778377604879902231705539088003972242375377163407504527814387215373929932820075952230730426187028489575444103627085194228781668465866370988482938198356199186534115745201920103677043251693174081020976062447761863590800579906886792181777742156009319795711044728813206351019920026269505396107764339207145221124052247470443607598597587645190602090898656393448033976533512873855955558373569073339246213325780229074048560949817806949497316398904489248318359547212746157764423183115761075256922766267618079444938445813063835981835010994749992496473677964144699862848532795286090926800899287362007760422533315435261506883732730881416381102028953640704570824671628009653080447900107160879845692008662375543341315556602935585967178117417888778897290474772529202668543319405216581861939313989165528089002442284106034577658902238120359877735839515337028680433053906722552550112469834286060372350860574351417497289384736471316626435105419859303651191641688482246351373444910432004807499661747545743852735773951796400956829673627476930591077714821117321938939833629321273339251945988549324006347858721428672217073279201404982327048814275767668487297709151847166846535088862479817919558871368253784881856779677863322827191561030423171537141499273357419285754704716833361187674582343986237237692438415259332625783983116733381800900460222397323284250868786343994394788994902404316901505097884132648222151414666520620426510105297854178242827766461180834905113351654939640062268961710435818005801545652951317962034361168726330599538762471676175173142834999121236110829467611015580441113147230820805782376570114219089495025121520377794043802755823155726739524707725064037703823183239107593726211002817594000930907418336833002191704555498162694662951500177437533637636236526542426405871904716033621074598208259974898055136925076890506911662227843075729721088945361179443033888514118101765714605660570081703889081290352471957232733096474597143587427513149349441235603115170807314766819690916461840670765355185557145150574895932631957029622339939331433062312662160947510923628612832693366690266324282667263012748994681083128312244663092078762661670884620179330465333540556247754952323421647854838853067976410464698977307188346637472243433519928634884352898827118795531859968411629234230142452547815455293828191489346254416881420131891794892006179487962449454328255960370697140568252052117352403135646265616847028480359990651312756222525345703057441274397348423131133519206169750143760940495428327571443302517577793343817131232163337460799191445414521093967097768020040009124406618799134508572594865415545733082611903447363205053399679280466225447828065672067013683072700409996479377492034127043613313142083323303252598237482197977041825109125217265807438496985359178873990235040632703410757212992684257978266892371099574041803001116360527242454731039628003509480212936796016070849356307326874445244694613184227040547876249454860310855291709202587683952223299614002361514379233494057064415805125651873200661981783610693866709877502288471558528849013350292481490997002098643734196426389302765576887806702683520438195134076182871874440167504482536200724127294730237118998213289733578198193096736145393971065351440121160309265360611074281395676822838425123395624337580004512050906419792013446424519561887820322722352795382697922724720586116098321679355829281216053221544575197854933325467153190731781269595109321813702001210141005079058500427271530017294470975739588531980913398025472984747853535346332936782107718073250112634615576905849349729426007173515308774793632551331548457905761985389071350673859689825834455165581049813779413410893036210666629871429981752611375976113163585083916305328620635549969684841540512125954127315174132052436151737157453326453989239979774559279793439306704479725990879371873758431967899255544838520913793468798410265438414058761727828916398010011794293479338609008701632640094869758086116687822663579552889453295620436152433018178780959981009298635043456792229176183205573655961277019484629834405625657823439667975383081223561409531277928510330062223878169457235353215167872644414697606476383146068019078036635949964184601129360284345115229483223563470538486959294272394668382966150890714115541117626082230445033508522907847338366916544187050461188142159105764444419207908163634494858706986260718589047620566355797827276845671641382755691829574310032203463252511926577105575017156898242680400241676402135123443699548847784163452701360656963120332012196904406099810500939548855289200756349948125270136369115720179488348223166567556426750575505829871418494997431496186899683765071536442457879724031537699131391498764706296237329680181548447277626471381254661126461870186053866731602237830710851475114362398985200833901699730078395666173510940080897885127861074026069852517512230261037822937769721902523746594677296313909339728442592170478309968166563795886470725687169371570343237766648564624293676814897564660183948624653983220651015570223111111063411069208145026916505750178505396201485964736603173758304426890642320941343986735785840981998174241788605920496845867590522740602437870132041320891216702447068621932429816304404408688048793505449697460005880830572873942797539743526974512159482068018134260735403850449616518787945200829222216943987909305108459238654168752178660355713789866268964706697686302929174468029925079040023565299988000338479503549977962465046711184737460146735813018789414003140411202698059730314217897319920063105016870252192203939794197361184499151530989877844193647602178787706099058911799959406668704250070077270503186215484153123852819961560954703612763118612400881746773464298614500409830675266484857039952530194273450918189329190156340525887491303896212784663097469087678773345166471788122377053704101542878683823430584307274687198184395387155451001942832598016438871364542258271725501428445938231271525782841978870390113468080836582770603359494989669143385890354312904276390282192498748237605143216982577303242656269227604778431876039016370295745792329594482596190014263128084656952979015645458320504270612477451398551761009846404021306309206586373876097772270522982581530998935456838201677112207424845174275972239187023936223350388407712319110197317172430129184930706994848456532437516441632844455073011404286435127820809532904367514776851581984803637248579684895988401922834769849638431402123060927571901167269603315134543317314872784492750634083055022268376270800016756425125616990569517656484203281617892699105306474376713760560394500472847201119270221543761360213807312000108767753942898778079561250003555302364717499659209040621/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "kappa_decimal": "0.001676938111022438771190100017020725032555691674761792047536039179544860041426416167047617951325080392375254668024881417704785844941873659190796874311269827844869294021609609878761760222726040503052361411290178071724514229511402997717835482222843694901217948470487965568309887619068847172953045805114461684934711435396733506293734841325861343304787721299532310229772589857694912111395953739686988727269468587554963277272937736454132255987090515404981010625380300398405414878988986157122637397706184264087627982251269279798737026724345745293965473508101366799393414789255206473161090950205950222122146222214078495368679130218674743146981670162403132582245706410548976470471745261542621302339241637171485342456816268520436435015281896393166247367278251553892803720247630029686984490078449352925557594904328569557484936591314303562431384381815420956360401044641472858822422582249979327207407410771660534313638231315935852892804132000147855397374322839591253536678984113084406988061438073184576016444328921205389213529360577549973971376403629568215377310772683219872177641391235708289818177925111881904300159619886665581137346322368568517117054240697628828913445767477326813624632908438476547455879789107389590165055563621760005781866188169710716495393304278850831707997384951261122215314912573099782120041249291001704783534963738038572909971460841194675956590556076487792844912046546289858480261722453906692121870900082361801253111254144535093557728890773576633275758296564385411181157194862013091717849684584397938692558192964504781548675242535472712168931345518712335315915091266802943695072033856713124737821702995413450878780710543025022928367906358090455917086551989910908356551317048398786986223728008709261755659180657097881480210424400144326299522878899777309399785895823672660416198403019568310343066278519210175123753322433148335319042110990102411115200155300905387480079481700793678398050055515674040740856110030688345147844637789304089124913488117865786102166259717537500608759271291542722618322268281881663249358096379805154548573054994939237543547344173213952238264923740581810541229342858729478428954424334131984148528784253998363568146237934288204812018977227175503767320972634467026605192430135456053386113854884936860690294856101608528249351841900676852113360746683010464546201975712535358643485273158405560713865159800025122453589321193849172272066813081451220206058867971739737852070562324696516989207167963722931205291831473897915831792236815542295351188421063491836041247452594134942209248413959680506248294593138389527422611136953102302258580121119666547884229014665725387964957084758968413322045525425313159249785544693731687537315908301437954586432098708787436507280265297509916984377327757196545848017185878187062075159807032253568563028327500466582827335502867854520125997555385653463180702511918745834613175695522817685388291478286861612733969705688420644803538993179921273082708231874645832277385151428336442791128121978844066863554759096512774567579514289358707813509712718614130837562928206888921092674847318865226502728725179504977454401235880436947166740879502845747251596396655438160627530891850366869113895456020655205727893563542322622934338187248429303755141424186144474851853038306051923346395342354169281469594504892858930927902734348204335524896282268283840385003189021115481306575985862301793725780239151376869964584730266367336592691055607610651395063452603950944137862475446094930322214251358925052162286516401501833382682009320185880700417626331391478426609811488522913323132102482939912440342675871636751981019800624634556412964612021651509481849038354557327885118381399789737921596751588189136821311831572343974889880678147466701932258512936242526046436206816962331619699576207481390195922724823856070618674582904131192629686384802772248025853565678688314716666529945311819044893560583315670136120200275855626940106396462406527068931089988702153309519230955113826416851095731603794043292915725451350181670888284691076554151637367282132699085416188720367321383556752795675446405859930575697456927411763363545818313874769811153200067443291026490825427143755817384089318952827706975802328578654060907310215933377202379529380163975222129749560910405469286325637889228656375209046139691727565799369454169799212172154190968007377296424461690352125762595869274922547147525570129817756823199696525210212593270375402119926487508947288180067142456329591203283997566500022674847080431168662174637209570629416830805601156788805418143373182215558446650310703543647015694751991619953590707511324503909687011954702203413782642378782037876483375951368505794557953578496314592205135043591193566218868778919000859827161236488817139192560862291428323398653291362388365138930281949623180624723430911220942364686086046811881095915076746280981830204413463502784589382914033720262163341801603895164465674237717521333553167444602702811423316239713043005712564513772123853640035325065916924660396852728500005955179986648160252906063818799410347442766786664711055874019008578881083537349681430773130796175261193827304599951725282101645776758227174040896025563972981356206057403055309359397803272752587584779898438292225351510689231016155941311614820345064156818468803931273430749310658977969794877739340106809807004217252335064678107177709738012342060949858124985939230944824099910816271686161045402302285297508303681740813423348350907451994012462784540355981010175250712507883425235359201011808190666715806901660337144936235013148504434618824507245850842711973003744446139783867771723508396116379467414673415606715716625914128533840969111912668685753089611477414283825465766233324600402108966568083865071195380389644064013225659789744058092069645276517941125418069973350260300280165435974786063150831838352844310895510990318838354096171074350901696604159609422545044432761405299893043166541471867539675148486601560709246012708765545511597405073650829192121506104352681979794721015327502789766595183378343313723972484630114099556180557404294775235619155991070995527689166962206915248692621723625349339886515813623371808024686285707580920325672974427246775594726257411915539820593521399646428719846155809016057142699866621674513998351006749905500243107644939008808283763056501335942666191769933208506315238830408038282952426951835706158652627835482438894937789837153427367984447438051922524608125636636354724642013592812413107221430038029951167528733632716495615098437698583723053533447798933250326700341673333994491349324617054234374857974757947615668818142972436911989201090528370744441973134132489090952568566403607460351786192700714317580878597847073275756461350544869658254948076345268993614534959881068956246376804772024874092287169129213186992223561462651658309780876752930386455758693852694419490316659070860880743872739756880986904608018185984447853004026912027028273674529733461856841101564521508287143103037105067406368884230169363092631082755618313589906637262234129963011384967274857835139637864747427281583226400504907023008806698966457880414815368581397227078662183740420462942245571835386209001540438595088462864815007422004248638126993194256733512441492762449359278264922627792929285604902259734784403139315955611635003088223285824742574585458199873484901143020578529226315336078237949517482509692606200070152399485636376460680083740681021982344306694849027211113016447096401664870109144789682310713027431057384988031850550073244022390664796252560251451047216241213622375149340154216946861782898546303245835481369726611482902356440118142802032911748577808744084580778888911583089537842528650350224300921031540555865720176640122675904405012834212606926720618076289350828192187374984894089231066370630648217898798896854426065721884878592112635879124018176081793622544776554917666612551712871940751135017411377174225478399645409241946348408968428229073749874922687804564946639149976097593853489919634179725302583519573365757810136809822693526329471277325032409077196569397908967330248117771231446718887760986447476076588633927432181839026436879618786438853924243552028724202149273586302070473159717257943700945527157809011120941201529129788112093374491395033762472838884021537166728636994436301630665161113541049013409799618516961971476705317102922179678760146451898465363215347773093120951670829714701916443141270735200245820497008506142137601082528684204057140216430536629443137761846135272920564936772781919878233766540547322707811014534785957220140510623262662299343688283812806778629871242749277818029936608902411376290956165421313339767652702964419424693427929795158225848307752402086866409298570827428830545979466593659732831201670303380333570266312497272799132209681506621971049738347072828669221324163330170520592810183637637084676061595353012884871526329217462580337694487152011554983679272629347872552272518691638301740526482861621518288819594890421541872633329221995265917763392018304235223710211877106016863005554214940071097592447423155732624240717137321612736711511015452334444244516915061963673208003062941532292298709576423406637199353790437669830561829911320018003588451801530555126063671274612572553492770019219854791346853529899217083993804001606413511906618984636285538071695085513529572393748324787169923762281249473751546125440467353229002557361226236674635339436866734922913588421644861984589171440144253273958082163140915326761894534071656568137443244291662187835317160943823412816299475701782833976092311688640981763963728493263436400943578122515811767475034937219257215640249300435151568809787937128054000271594403310948533139517857990326033962436461201598318153082901330418743578769240898590057345795829717851017043935795818891434187053885338008250148874777092005912883517999782964815867469662105182116763677981910973490277023174288291105221418269158586756990709428422258931331442794504592971213986331014533822819316821047908153050267474761529581470496327848025323027806364632033755649712473796125592228231866383200012128177464973234171077910612178261832411844451327540658886299846731331960517943677908866544491234822877726722608013231560973012977712928113553017511539323668523359646877817602388003417812687721442241818362060758935286678602512028457556322432966860496534005973185496234116477130021431674556455724709800620103308407729226922684038249705160650604896025216208815549465459682105347120826071162670172323777604724415197632836186075282884471606443456595251082216687911538792058088617154935477327331611707604852599408953090562317165764901586091510839742905904169286077141775199951431996332141976528202006263439398577377694506562160327542781285057223145500080567894256936192104539532877544352557327014219884470270365898840818498910201120508939952099877099720125578677214600835678617522169579215244883617583224197071677669304447578449721695589326557080911289822172061232340430764951103351599537784081168550992450354599464306633252877984996323071735638212830249012125486137788763260240891048087053849765686283457059743121403444156442434650092054570938652942415947381592814566634431149031023214916834305254458008262138465921898971414412933926955648154529822504803874360101183545710678445298023496236357526280439620594953936970736132761346050554194072969850892802948707228511672212584586522459338679891063201992970976168849230988075980782268063321703100204105023867793359171663271120284689216266982922854555024458257194082880055670679251104989805518404654208118408971091397544413690740524617333256625860315671131348038003541725250012752470040117945491193565910672258306452166479239821822013167232978752210217065148213007997704617037581406969510024983642886094271501468515266517951412212678737863672374815850850018617167169404724193804196755226918630965977916620235037471936721474981760628389091696282830495083442946558386495173677129758843046535838765135261122211278015936644081113146013862655555473632728900177060404803909932570717096973233380397678154770570806159305328853159769847239408357381063591160857884936553235371301103805176084499744960861799096564455069188415173167466307325300507550789057356996012675411971914689885179790635217876635528742729289074038515582958823940756956282983982013297931392208702531339786326606085898964704306490183276443673432665409714392781588142314113003879544653826652456905279400423892864645145732150442385519751256630020969800111816195991768662067877844919742610629349456167364098842554260162810595843651246109839484140616200074396692161189445190771678850343616248833964152149294400909855021088301430637435077258954376881056167952757841603623150114848723868296455274843131964942644809739308334847250591037638159933773303030266553644713708830512000152768829599928357599043658354782218018604632389949399820228309873566731644105967969411392566463659821308439256239024768765466932891350654938606302906507157591494480884912600616501977681873739893405341267961274488122366978988526043488327734498352473374470344425684195823197530049518654219041369495526538909792142894614436674356956779117253565744461001646077291258616721028615171489377225797248963434748615709621863224494162425093903405418908099536448372409615645800088500708000326863586343258941824395046674640894829867490410076274904303597563905414607619538415264240951244758012373279165979420578572764543801612784311044524671534411110470778947786791611869579075129825637914942374298443150726849182979180295889400445095841912728739025398599890800774013815552097491946061432696683059850908007684892130277014649129866533075391480756752616874917082950665615788569283989718523234950496323961843015310890061750616561544250497511367802721749620997692277424816590831045033667753129456587899216950209169192979420525209830749278011259435256629864158365514213967842968168852592255041056372878403978961231539607315363463824015865789036667647691679656765508135153206123784725092541720945622842906505096885988904944731675837028018001025369395696577970702714790856223322126194193086879362041008496505122567070083836633891608966742224926341734754378992241704703243946477594438680084470924808222981898241634435942817665042296423620945634192168991400779159174135163441203854172667463449799823859132238474271344875663382011115657821650061331564093476251376766151284211905634835598395726437036943697945398550666243562475047103495260078498713415945222861217223171191565427545908948803739406056259045194404209652395524496033012280547163425869609206017318807219351721432592317710506582161595503691169181574298010469974027909045375705070521426723500918468327100399762174003571496690116771511985310875084366530193825729519512792584187969264095544191303231245159595600158757195018937452448153918214771803047236892338699087191418543548127176631207008647905211976016479693344991363133604423145030530786983149981370565686142920349543376635283587834198046392613205009938873884317306158749934987122636533735554280431472885838392469748433188218244359361739850329083230877907986952326531659062931518445494292395883081770960571149009946528303538416903468568251787904875888959724011669751379689737745645781536063724368281057535501651300779278159221234236286476121483406748542795836599283974286399156586351721302901945910999424737242212435193890764123794068613318807291025634632455033216836347178547306991763011371294447804930704701076731794985624544867144232618127801807016743557525975223094237419800926860726343207303307490100223761773175419194741775266790808437768846346409513854007597404533426060629802937997434365138785933283771190883963112026714630358610871566529511577973773030641278181999794138862952860277849836957045243572727803772994044145219612484151101958595754233134772206594546257843194920354988050720562487373090358396902105101130905837416215041528213742332237544479754016802420848946663972948503196038233831486326015598974745250367099024402883536680710078680762442499569967224988002820831131489501714654935338950677916179417687378341621029590525586118145500385979674551635569073802595703509410104399056700082765735783514023916990580895035122998824139043522887937954243773818239486908817691218594461231775612498171814739761413223626548921134907470266749601882455318834051789070693294645378614273559817817669746175386190129207670796969347985925964201887739954957753063968991721994851537886826528718670187266951754691015100558554402416365382385571832699593516591871870129088950860959141365335405217475952569409437291705958132591035713852844020829390425243231152363311794058641932466821316123556220896978638238220851910854724225235801007566651687786293048920022864118873127653443897973287588289387355188527675762544818352972527202121956442164497960525118889429669158090847617248951856454184175011498584011151403843803616755070289562925291847693557468307471261855527743027793546388523180320303004531983787654968848885848044699382269524772992632828988529578250814217690251050538376318335987796054397392497819218945083583664479090210799067472301403668337559717597696977088660955704497252993776510793040389765797660003249309625621362413925006069689309741971348529472497910193831688377960993355293627778448218590992466907233023703434373342057619370142024150125919309597715211156119767719732799607180802790498035895181361368464888110051483059351056184478484935493907429774952809935838380670176114207577213231055350562935778210633178408589597114305208221445655571987043537222818641682257047013012523444306760980045634005807686693738653391512637351420386342471114731815863473555201852437480757773007117982214562511842789783403459207342446159950243392750801338546694453486882568558848221354119195364009948864482241943581175911046898758169191479049496589974376791349764450442378828930324034667011081601620280965349871472897408240015827835518911156870088245687077093734365098735053286572410319803080845798477163786287405364614064557437293304038102544036292654227764945227264663048205357008355771555088876595623139814435346749309964251946324880814583325021791421487797394988004538164305707469202106410211746503094306261906393808913646542952700315906267119779115998936128115065250206974734764465723585855511288580743400943809404288053471362642477523155475104031429412338193516993778125188851380426304674403369331302000716910342442997402937084557795367644496744142127987816340111528592554037797331020548717415225820119609382845549093796192490788732113363701319748743582000057303130051864228415577489842331046903247484601487466945180308802933831335767729683043613008237949546121375297802081297570627860665109297721191437971730304701194425144397124039096483670712819736875268727402950591193053215181214096094048991393513777953150345340375660727343308643780150161106624994355510672070504545638446348452832252739655357173432358505096323375391303231882706135850625263417142649071194773339832168083329388229371358567930229577131216277825259179573015218766375412085298526771708373976067632393542346710047549333985975581637892627834271510655196435256189543806335151275352311851042677322949803447199292923778361766440734496397738456055035681622997810149954634752627304431261203403272402323263787629123971290482208451728904179443479389133519955703392435705474476748581704437622129709874923772469427028692459169602692805773639884662839746902870259093711807913191778518892984073217487857897145970076468785664351978921228123955117538280981756811931365956219580769189165945354676982348448641247423518916350607877458000174846036861863407457585325426314682733609519279784663870218253170105990573783095295023636803500871717068656715873633323087889492672610932474421508618433271859746984902531599213685724749939166049437563039991443426494641652084430858140240110164289828469966850406832046716413390246110504245355115799426391378253248390613249284106740790339822458676277775822335702599336006873832060694120069151050502014160550879568956384777357561859297390815082320829238627565303595738227693040342653965811892001847940938696513716543372327453960265811436008036854866115271237812510903990539558847305647245954573152782787927223519635147727442216430929838945633240618968678002759612737346710149551481908355465926257591837274267945140065675067487109210401442076201140299815065215337544433220665579426653603156460913576244881143145816448433738435651908257707727075610250384686423897417587261466555923582154604137885444936333821387834125809275860172638633835215739911477550980579247697382084916194531361048661532192816958299987572396642484438585923345173977858953684709725360571645392436476987259650911307276196399085956903945476705317120950973221080222867047309737747692333164724006655517007030727397960981567443221606976290010701795178049647288909166395148988516523192292581698055459163120683313344444026844836973153374353724642859131405325364718843964487074859668019409627048319805633617946336241192339134443576925361983436149277034101251407931959500054852494406073752219382170270967693958490164322312794878286345936957582386357275444677552426326439427826509522110738746691329185514606540626514423926874666224032806665098968650564881401857662657770710747087290859146102020115348143461159085941199326422716587378456255513417188700369411413129886379359732827155687107299430516909440159150380295166927316885689919350464777363564940285040026385166191840356368272064334076945688910500707807400058611344300435064124118815434239882300439634498123276176222834094588002203477029431703120666721026088295166015938208578787452447617470420981110681742739501589729089688874701219977168675643400393501019031636735986156822800481179704399515441333154708852980193106051030371025975971140726105231868543289435682591068444682077058566949230294979329627187207330557461522535158209452349970946341295444060370265323350453604017667009504931558488322362480477139404005020402210256373133185810213186000671100094991969672203880497368249472670172473685829890560841738110667750353843071701215593780773237695292015553765731821037415644534697332757544054136342442611065425983461993557816127218299747813249898673155023681652001011599808410703519043808486258338062380633014322224632525851242478791268521796713383807610953638108916481582615453738864215354784246899761520394834810677248132444520115686989454496860603289963464336818674004697427066812628688013998463105270784005072590903591611313839737107838258436291376002487538111360585948203215629334421029248469146775627736729719342208489763395020681781452795833958136949380550036079100240398898889389849252608470062554378594962388685336357216755803837358816405620086072071176469517413795119595374249497832288900760644287948928311592218296413287328446577953788769594394339392514655278303538552555898922916252237259193439724646836560387747782111580693016237997784295593736191244946353544825573071081996645657175132549264602309166640190368655194868986750821808317633143747707688421453957800726547186638452809961959598731886280385650251823377199879643189111713690739645357494689387177711802146134749530592168168345624819545768693067168247301464137758737197018183738459575407555878161118760337275800081444696169086781775351213559112592993901434041121776782474650001633695434512031485285878558145263662365998253819157684573117531084220496817004897291154580464223101825601472092884251530232116661317651093337450030754076385822339417218860692479003613744609946316742314705543165710124459051394714878279134401672107226267803609962193138856792900484752902470520988587601414384933191291734854382395352282440797296885048506472379194229156342632002047812524843665970679080511973109865435364195788209865506917401954381665308062805413955228942862559405525303081470994335666784273579330975462174029875904075898214925437624320830778377604879902231705539088003972242375377163407504527814387215373929932820075952230730426187028489575444103627085194228781668465866370988482938198356199186534115745201920103677043251693174081020976062447761863590800579906886792181777742156009319795711044728813206351019920026269505396107764339207145221124052247470443607598597587645190602090898656393448033976533512873855955558373569073339246213325780229074048560949817806949497316398904489248318359547212746157764423183115761075256922766267618079444938445813063835981835010994749992496473677964144699862848532795286090926800899287362007760422533315435261506883732730881416381102028953640704570824671628009653080447900107160879845692008662375543341315556602935585967178117417888778897290474772529202668543319405216581861939313989165528089002442284106034577658902238120359877735839515337028680433053906722552550112469834286060372350860574351417497289384736471316626435105419859303651191641688482246351373444910432004807499661747545743852735773951796400956829673627476930591077714821117321938939833629321273339251945988549324006347858721428672217073279201404982327048814275767668487297709151847166846535088862479817919558871368253784881856779677863322827191561030423171537141499273357419285754704716833361187674582343986237237692438415259332625783983116733381800900460222397323284250868786343994394788994902404316901505097884132648222151414666520620426510105297854178242827766461180834905113351654939640062268961710435818005801545652951317962034361168726330599538762471676175173142834999121236110829467611015580441113147230820805782376570114219089495025121520377794043802755823155726739524707725064037703823183239107593726211002817594000930907418336833002191704555498162694662951500177437533637636236526542426405871904716033621074598208259974898055136925076890506911662227843075729721088945361179443033888514118101765714605660570081703889081290352471957232733096474597143587427513149349441235603115170807314766819690916461840670765355185557145150574895932631957029622339939331433062312662160947510923628612832693366690266324282667263012748994681083128312244663092078762661670884620179330465333540556247754952323421647854838853067976410464698977307188346637472243433519928634884352898827118795531859968411629234230142452547815455293828191489346254416881420131891794892006179487962449454328255960370697140568252052117352403135646265616847028480359990651312756222525345703057441274397348423131133519206169750143760940495428327571443302517577793343817131232163337460799191445414521093967097768020040009124406618799134508572594865415545733082611903447363205053399679280466225447828065672067013683072700409996479377492034127043613313142083323303252598237482197977041825109125217265807438496985359178873990235040632703410757212992684257978266892371099574041803001116360527242454731039628003509480212936796016070849356307326874445244694613184227040547876249454860310855291709202587683952223299614002361514379233494057064415805125651873200661981783610693866709877502288471558528849013350292481490997002098643734196426389302765576887806702683520438195134076182871874440167504482536200724127294730237118998213289733578198193096736145393971065351440121160309265360611074281395676822838425123395624337580004512050906419792013446424519561887820322722352795382697922724720586116098321679355829281216053221544575197854933325467153190731781269595109321813702001210141005079058500427271530017294470975739588531980913398025472984747853535346332936782107718073250112634615576905849349729426007173515308774793632551331548457905761985389071350673859689825834455165581049813779413410893036210666629871429981752611375976113163585083916305328620635549969684841540512125954127315174132052436151737157453326453989239979774559279793439306704479725990879371873758431967899255544838520913793468798410265438414058761727828916398010011794293479338609008701632640094869758086116687822663579552889453295620436152433018178780959981009298635043456792229176183205573655961277019484629834405625657823439667975383081223561409531277928510330062223878169457235353215167872644414697606476383146068019078036635949964184601129360284345115229483223563470538486959294272394668382966150890714115541117626082230445033508522907847338366916544187050461188142159105764444419207908163634494858706986260718589047620566355797827276845671641382755691829574310032203463252511926577105575017156898242680400241676402135123443699548847784163452701360656963120332012196904406099810500939548855289200756349948125270136369115720179488348223166567556426750575505829871418494997431496186899683765071536442457879724031537699131391498764706296237329680181548447277626471381254661126461870186053866731602237830710851475114362398985200833901699730078395666173510940080897885127861074026069852517512230261037822937769721902523746594677296313909339728442592170478309968166563795886470725687169371570343237766648564624293676814897564660183948624653983220651015570223111111063411069208145026916505750178505396201485964736603173758304426890642320941343986735785840981998174241788605920496845867590522740602437870132041320891216702447068621932429816304404408688048793505449697460005880830572873942797539743526974512159482068018134260735403850449616518787945200829222216943987909305108459238654168752178660355713789866268964706697686302929174468029925079040023565299988000338479503549977962465046711184737460146735813018789414003140411202698059730314217897319920063105016870252192203939794197361184499151530989877844193647602178787706099058911799959406668704250070077270503186215484153123852819961560954703612763118612400881746773464298614500409830675266484857039952530194273450918189329190156340525887491303896212784663097469087678773345166471788122377053704101542878683823430584307274687198184395387155451001942832598016438871364542258271725501428445938231271525782841978870390113468080836582770603359494989669143385890354312904276390282192498748237605143216982577303242656269227604778431876039016370295745792329594482596190014263128084656952979015645458320504270612477451398551761009846404021306309206586373876097772270522982581530998935456838201677112207424845174275972239187023936223350388407712319110197317172430129184930706994848456532437516441632844455073011404286435127820809532904367514776851581984803637248579684895988401922834769849638431402123060927571901167269603315134543317314872784492750634083055022268376270800016756425125616990569517656484203281617892699105306474376713760560394500472847201119270221543761360213807312000108767753942898778079561250003555302364717499659209040621", + "baseline_pr": 1644, + "baseline_kappa": "0.00167689666902129930775071099726796267", + "construction_improvement": false, + "outer_refinement": { + "grid_digits": 29995, + "margin_digits": 30005, + "bootstrap_steps": 11116, + "endpoint_digits": 30000 + }, + "scope": "Conditional finite construction only. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape, exact recovery, analytic transfer, PR559 recurrence correction and PR589 bit H1-H5 assumptions remain. No unconditional theorem, full Lean certification, or global packing claim.", + "verification": "Exact discovery using verified PR1319 owner/invoice receipts passes both moment engines and 47 outer inequalities. Full new-package finite replay and independent outer checks pending. Native providers are unchanged and will be explicitly source-bound reused.", + "gain_over_claimed_leader": "5.8464055E-59" +} diff --git a/research/capped-fusion-t74-k554/CONSTRUCTION.json b/research/capped-fusion-t74-k554/CONSTRUCTION.json new file mode 100644 index 0000000000..546b8e9507 --- /dev/null +++ b/research/capped-fusion-t74-k554/CONSTRUCTION.json @@ -0,0 +1 @@ +{"attempts":[{"call":[3,28],"success":true,"time":416}],"dispatch":{"extra":417,"gauge44":249},"idle":{"48":22748},"roles":319680,"scope":"Literal strict windows, bin capacities, per-call helper widths and distinct physical families checked. Local programs reused unchanged. Full T74 parent binding, finite invoice and global admission not yet run.","status":"PASS_EXACT_SINGLE_UPGRADE_T74_OWNER_SCREEN","target_call":[3,28],"target_time":416} \ No newline at end of file diff --git a/research/capped-fusion-t74-k554/DISPATCH.json b/research/capped-fusion-t74-k554/DISPATCH.json new file mode 100644 index 0000000000..20807cc27c --- /dev/null +++ b/research/capped-fusion-t74-k554/DISPATCH.json @@ -0,0 +1 @@ +[[0,0,"extra"],[0,37,"extra"],[0,1,"extra"],[0,38,"extra"],[0,2,"extra"],[0,39,"extra"],[0,3,"extra"],[0,40,"extra"],[0,4,"extra"],[0,41,"extra"],[1,0,"extra"],[1,37,"extra"],[0,5,"extra"],[0,42,"extra"],[1,1,"extra"],[1,38,"extra"],[0,6,"extra"],[0,43,"extra"],[1,2,"extra"],[1,39,"extra"],[0,7,"extra"],[0,44,"extra"],[1,3,"extra"],[1,40,"extra"],[0,8,"extra"],[0,45,"extra"],[1,4,"extra"],[1,41,"extra"],[0,9,"extra"],[0,46,"extra"],[2,0,"extra"],[2,37,"extra"],[1,5,"extra"],[1,42,"extra"],[0,10,"extra"],[0,47,"extra"],[2,1,"extra"],[2,38,"extra"],[1,6,"extra"],[1,43,"extra"],[0,11,"extra"],[0,48,"extra"],[2,2,"extra"],[2,39,"extra"],[1,7,"extra"],[1,44,"extra"],[0,12,"extra"],[0,49,"extra"],[2,3,"extra"],[2,40,"extra"],[1,8,"extra"],[1,45,"extra"],[0,13,"extra"],[0,50,"extra"],[2,4,"extra"],[2,41,"extra"],[1,9,"extra"],[1,46,"extra"],[3,0,"extra"],[3,37,"extra"],[0,14,"extra"],[0,51,"extra"],[2,5,"extra"],[2,42,"extra"],[1,10,"extra"],[1,47,"extra"],[3,1,"extra"],[3,38,"extra"],[0,15,"extra"],[0,52,"extra"],[2,6,"extra"],[2,43,"extra"],[1,11,"extra"],[1,48,"extra"],[3,2,"extra"],[3,39,"extra"],[0,16,"extra"],[0,53,"extra"],[2,7,"extra"],[2,44,"extra"],[1,12,"extra"],[1,49,"extra"],[3,3,"extra"],[3,40,"extra"],[0,17,"extra"],[0,54,"extra"],[2,8,"extra"],[2,45,"extra"],[1,13,"extra"],[1,50,"extra"],[3,4,"extra"],[3,41,"extra"],[0,18,"extra"],[0,55,"extra"],[2,9,"extra"],[2,46,"extra"],[4,0,"extra"],[4,37,"extra"],[1,14,"extra"],[1,51,"extra"],[3,5,"extra"],[3,42,"extra"],[0,19,"extra"],[0,56,"extra"],[2,10,"extra"],[2,47,"extra"],[4,1,"extra"],[4,38,"extra"],[1,15,"extra"],[1,52,"extra"],[3,6,"extra"],[3,43,"extra"],[0,20,"extra"],[0,57,"extra"],[2,11,"extra"],[2,48,"extra"],[4,2,"extra"],[4,39,"extra"],[1,16,"extra"],[1,53,"extra"],[3,7,"extra"],[3,44,"extra"],[0,21,"extra"],[0,58,"extra"],[2,12,"extra"],[2,49,"extra"],[4,3,"extra"],[4,40,"extra"],[1,17,"extra"],[1,54,"extra"],[3,8,"extra"],[3,45,"extra"],[0,22,"extra"],[0,59,"extra"],[2,13,"extra"],[2,50,"extra"],[4,4,"extra"],[4,41,"extra"],[1,18,"extra"],[1,55,"extra"],[3,9,"extra"],[3,46,"extra"],[0,23,"extra"],[0,60,"extra"],[5,0,"extra"],[5,37,"extra"],[2,14,"extra"],[2,51,"extra"],[4,5,"extra"],[4,42,"extra"],[1,19,"extra"],[1,56,"extra"],[3,10,"extra"],[3,47,"extra"],[0,24,"extra"],[0,61,"extra"],[5,1,"extra"],[5,38,"extra"],[2,15,"extra"],[2,52,"extra"],[4,6,"extra"],[4,43,"extra"],[1,20,"extra"],[1,57,"extra"],[3,11,"extra"],[3,48,"extra"],[0,25,"extra"],[0,62,"extra"],[5,2,"extra"],[5,39,"extra"],[2,16,"extra"],[2,53,"extra"],[4,7,"extra"],[4,44,"extra"],[1,21,"extra"],[1,58,"extra"],[3,12,"extra"],[3,49,"extra"],[0,26,"extra"],[0,63,"extra"],[5,3,"extra"],[5,40,"extra"],[2,17,"extra"],[2,54,"extra"],[4,8,"extra"],[4,45,"extra"],[1,22,"extra"],[1,59,"extra"],[3,13,"extra"],[3,50,"extra"],[0,27,"extra"],[0,64,"extra"],[5,4,"extra"],[5,41,"extra"],[2,18,"extra"],[2,55,"extra"],[4,9,"extra"],[4,46,"extra"],[1,23,"extra"],[1,60,"extra"],[6,0,"extra"],[6,37,"extra"],[3,14,"extra"],[3,51,"extra"],[0,28,"extra"],[0,65,"extra"],[5,5,"extra"],[5,42,"extra"],[2,19,"extra"],[2,56,"extra"],[4,10,"extra"],[4,47,"extra"],[1,24,"extra"],[1,61,"extra"],[6,1,"extra"],[6,38,"extra"],[3,15,"extra"],[3,52,"extra"],[0,29,"extra"],[0,66,"extra"],[5,6,"extra"],[5,43,"extra"],[2,20,"extra"],[2,57,"extra"],[4,11,"extra"],[4,48,"extra"],[1,25,"extra"],[1,62,"extra"],[6,2,"extra"],[6,39,"extra"],[3,16,"extra"],[3,53,"extra"],[0,30,"extra"],[0,67,"extra"],[5,7,"extra"],[5,44,"extra"],[2,21,"extra"],[2,58,"extra"],[4,12,"extra"],[4,49,"extra"],[1,26,"extra"],[1,63,"extra"],[6,3,"extra"],[6,40,"extra"],[3,17,"extra"],[3,54,"extra"],[0,31,"extra"],[0,68,"extra"],[5,8,"extra"],[5,45,"extra"],[2,22,"extra"],[2,59,"extra"],[4,13,"extra"],[4,50,"extra"],[1,27,"extra"],[1,64,"extra"],[6,4,"extra"],[6,41,"extra"],[3,18,"extra"],[3,55,"extra"],[0,32,"extra"],[0,69,"extra"],[5,9,"extra"],[5,46,"extra"],[2,23,"extra"],[2,60,"extra"],[7,0,"extra"],[7,37,"extra"],[4,14,"extra"],[4,51,"extra"],[1,28,"extra"],[1,65,"extra"],[6,5,"extra"],[6,42,"extra"],[3,19,"extra"],[3,56,"extra"],[0,33,"extra"],[0,70,"extra"],[5,10,"extra"],[5,47,"extra"],[2,24,"extra"],[2,61,"extra"],[7,1,"extra"],[7,38,"extra"],[4,15,"extra"],[4,52,"extra"],[1,29,"extra"],[1,66,"extra"],[6,6,"extra"],[6,43,"extra"],[3,20,"extra"],[3,57,"extra"],[0,34,"extra"],[0,71,"extra"],[5,11,"extra"],[5,48,"extra"],[2,25,"extra"],[2,62,"extra"],[7,2,"extra"],[7,39,"extra"],[4,16,"extra"],[4,53,"extra"],[1,30,"extra"],[1,67,"extra"],[6,7,"extra"],[6,44,"extra"],[3,21,"extra"],[3,58,"extra"],[0,35,"extra"],[0,72,"extra"],[5,12,"extra"],[5,49,"extra"],[2,26,"extra"],[2,63,"extra"],[7,3,"extra"],[7,40,"extra"],[4,17,"extra"],[4,54,"extra"],[1,31,"extra"],[1,68,"extra"],[6,8,"extra"],[6,45,"extra"],[3,22,"extra"],[3,59,"extra"],[0,36,"extra"],[0,73,"extra"],[5,13,"extra"],[5,50,"extra"],[2,27,"extra"],[2,64,"extra"],[7,4,"extra"],[7,41,"extra"],[4,18,"extra"],[4,55,"extra"],[1,32,"extra"],[1,69,"extra"],[6,9,"extra"],[6,46,"extra"],[3,23,"extra"],[3,60,"extra"],[8,0,"extra"],[8,37,"extra"],[5,14,"extra"],[5,51,"extra"],[2,28,"extra"],[2,65,"extra"],[7,5,"extra"],[7,42,"extra"],[4,19,"extra"],[4,56,"extra"],[1,33,"extra"],[1,70,"extra"],[6,10,"extra"],[6,47,"extra"],[3,24,"extra"],[3,61,"extra"],[8,1,"extra"],[8,38,"extra"],[5,15,"extra"],[5,52,"extra"],[2,29,"extra"],[2,66,"extra"],[7,6,"extra"],[7,43,"extra"],[4,20,"extra"],[4,57,"extra"],[1,34,"extra"],[1,71,"extra"],[6,11,"extra"],[6,48,"extra"],[3,25,"extra"],[3,62,"extra"],[8,2,"extra"],[8,39,"extra"],[5,16,"extra"],[5,53,"extra"],[2,30,"extra"],[2,67,"extra"],[7,7,"extra"],[7,44,"extra"],[4,21,"extra"],[4,58,"extra"],[1,35,"extra"],[1,72,"extra"],[6,12,"extra"],[6,49,"extra"],[3,26,"extra"],[3,63,"extra"],[8,3,"extra"],[8,40,"extra"],[5,17,"extra"],[5,54,"extra"],[2,31,"extra"],[2,68,"extra"],[7,8,"extra"],[7,45,"extra"],[4,22,"extra"],[4,59,"extra"],[1,36,"extra"],[1,73,"extra"],[6,13,"extra"],[6,50,"extra"],[3,27,"extra"],[3,64,"extra"],[8,4,"extra"],[8,41,"extra"],[5,18,"extra"],[5,55,"extra"],[2,32,"extra"],[2,69,"extra"],[7,9,"extra"],[7,46,"extra"],[4,23,"extra"],[4,60,"extra"],[6,14,"extra"],[6,51,"extra"],[3,28,"extra"],[3,65,"gauge44"],[8,5,"gauge44"],[8,42,"gauge44"],[5,19,"gauge44"],[5,56,"gauge44"],[2,33,"gauge44"],[2,70,"gauge44"],[7,10,"gauge44"],[7,47,"gauge44"],[4,24,"gauge44"],[4,61,"gauge44"],[6,15,"gauge44"],[6,52,"gauge44"],[3,29,"gauge44"],[3,66,"gauge44"],[8,6,"gauge44"],[8,43,"gauge44"],[5,20,"gauge44"],[5,57,"gauge44"],[2,34,"gauge44"],[2,71,"gauge44"],[7,11,"gauge44"],[7,48,"gauge44"],[4,25,"gauge44"],[4,62,"gauge44"],[6,16,"gauge44"],[6,53,"gauge44"],[3,30,"gauge44"],[3,67,"gauge44"],[8,7,"gauge44"],[8,44,"gauge44"],[5,21,"gauge44"],[5,58,"gauge44"],[2,35,"gauge44"],[2,72,"gauge44"],[7,12,"gauge44"],[7,49,"gauge44"],[4,26,"gauge44"],[4,63,"gauge44"],[6,17,"gauge44"],[6,54,"gauge44"],[3,31,"gauge44"],[3,68,"gauge44"],[8,8,"gauge44"],[8,45,"gauge44"],[5,22,"gauge44"],[5,59,"gauge44"],[2,36,"gauge44"],[2,73,"gauge44"],[7,13,"gauge44"],[7,50,"gauge44"],[4,27,"gauge44"],[4,64,"gauge44"],[6,18,"gauge44"],[6,55,"gauge44"],[3,32,"gauge44"],[3,69,"gauge44"],[8,9,"gauge44"],[8,46,"gauge44"],[5,23,"gauge44"],[5,60,"gauge44"],[7,14,"gauge44"],[7,51,"gauge44"],[4,28,"gauge44"],[4,65,"gauge44"],[6,19,"gauge44"],[6,56,"gauge44"],[3,33,"gauge44"],[3,70,"gauge44"],[8,10,"gauge44"],[8,47,"gauge44"],[5,24,"gauge44"],[5,61,"gauge44"],[7,15,"gauge44"],[7,52,"gauge44"],[4,29,"gauge44"],[4,66,"gauge44"],[6,20,"gauge44"],[6,57,"gauge44"],[3,34,"gauge44"],[3,71,"gauge44"],[8,11,"gauge44"],[8,48,"gauge44"],[5,25,"gauge44"],[5,62,"gauge44"],[7,16,"gauge44"],[7,53,"gauge44"],[4,30,"gauge44"],[4,67,"gauge44"],[6,21,"gauge44"],[6,58,"gauge44"],[3,35,"gauge44"],[3,72,"gauge44"],[8,12,"gauge44"],[8,49,"gauge44"],[5,26,"gauge44"],[5,63,"gauge44"],[7,17,"gauge44"],[7,54,"gauge44"],[4,31,"gauge44"],[4,68,"gauge44"],[6,22,"gauge44"],[6,59,"gauge44"],[3,36,"gauge44"],[3,73,"gauge44"],[8,13,"gauge44"],[8,50,"gauge44"],[5,27,"gauge44"],[5,64,"gauge44"],[7,18,"gauge44"],[7,55,"gauge44"],[4,32,"gauge44"],[4,69,"gauge44"],[6,23,"gauge44"],[6,60,"gauge44"],[8,14,"gauge44"],[8,51,"gauge44"],[5,28,"gauge44"],[5,65,"gauge44"],[7,19,"gauge44"],[7,56,"gauge44"],[4,33,"gauge44"],[4,70,"gauge44"],[6,24,"gauge44"],[6,61,"gauge44"],[8,15,"gauge44"],[8,52,"gauge44"],[5,29,"gauge44"],[5,66,"gauge44"],[7,20,"gauge44"],[7,57,"gauge44"],[4,34,"gauge44"],[4,71,"gauge44"],[6,25,"gauge44"],[6,62,"gauge44"],[8,16,"gauge44"],[8,53,"gauge44"],[5,30,"gauge44"],[5,67,"gauge44"],[7,21,"gauge44"],[7,58,"gauge44"],[4,35,"gauge44"],[4,72,"gauge44"],[6,26,"gauge44"],[6,63,"gauge44"],[8,17,"gauge44"],[8,54,"gauge44"],[5,31,"gauge44"],[5,68,"gauge44"],[7,22,"gauge44"],[7,59,"gauge44"],[4,36,"gauge44"],[4,73,"gauge44"],[6,27,"gauge44"],[6,64,"gauge44"],[8,18,"gauge44"],[8,55,"gauge44"],[5,32,"gauge44"],[5,69,"gauge44"],[7,23,"gauge44"],[7,60,"gauge44"],[6,28,"gauge44"],[6,65,"gauge44"],[8,19,"gauge44"],[8,56,"gauge44"],[5,33,"gauge44"],[5,70,"gauge44"],[7,24,"gauge44"],[7,61,"gauge44"],[6,29,"gauge44"],[6,66,"gauge44"],[8,20,"gauge44"],[8,57,"gauge44"],[5,34,"gauge44"],[5,71,"gauge44"],[7,25,"gauge44"],[7,62,"gauge44"],[6,30,"gauge44"],[6,67,"gauge44"],[8,21,"gauge44"],[8,58,"gauge44"],[5,35,"gauge44"],[5,72,"gauge44"],[7,26,"gauge44"],[7,63,"gauge44"],[6,31,"gauge44"],[6,68,"gauge44"],[8,22,"gauge44"],[8,59,"gauge44"],[5,36,"gauge44"],[5,73,"gauge44"],[7,27,"gauge44"],[7,64,"gauge44"],[6,32,"gauge44"],[6,69,"gauge44"],[8,23,"gauge44"],[8,60,"gauge44"],[7,28,"gauge44"],[7,65,"gauge44"],[6,33,"gauge44"],[6,70,"gauge44"],[8,24,"gauge44"],[8,61,"gauge44"],[7,29,"gauge44"],[7,66,"gauge44"],[6,34,"gauge44"],[6,71,"gauge44"],[8,25,"gauge44"],[8,62,"gauge44"],[7,30,"gauge44"],[7,67,"gauge44"],[6,35,"gauge44"],[6,72,"gauge44"],[8,26,"gauge44"],[8,63,"gauge44"],[7,31,"gauge44"],[7,68,"gauge44"],[6,36,"gauge44"],[6,73,"gauge44"],[8,27,"gauge44"],[8,64,"gauge44"],[7,32,"gauge44"],[7,69,"gauge44"],[8,28,"gauge44"],[8,65,"gauge44"],[7,33,"gauge44"],[7,70,"gauge44"],[8,29,"gauge44"],[8,66,"gauge44"],[7,34,"gauge44"],[7,71,"gauge44"],[8,30,"gauge44"],[8,67,"gauge44"],[7,35,"gauge44"],[7,72,"gauge44"],[8,31,"gauge44"],[8,68,"gauge44"],[7,36,"gauge44"],[7,73,"gauge44"],[8,32,"gauge44"],[8,69,"gauge44"],[8,33,"gauge44"],[8,70,"gauge44"],[8,34,"gauge44"],[8,71,"gauge44"],[8,35,"gauge44"],[8,72,"gauge44"],[8,36,"gauge44"],[8,73,"gauge44"]] \ No newline at end of file diff --git a/research/capped-fusion-t74-k554/GLOBAL-TEMPLATE.json.gz b/research/capped-fusion-t74-k554/GLOBAL-TEMPLATE.json.gz new file mode 100644 index 0000000000..5327fc2f4e Binary files /dev/null and b/research/capped-fusion-t74-k554/GLOBAL-TEMPLATE.json.gz differ diff --git a/research/capped-fusion-t74-k554/MANIFEST.json b/research/capped-fusion-t74-k554/MANIFEST.json new file mode 100644 index 0000000000..fdf5943d6f --- /dev/null +++ b/research/capped-fusion-t74-k554/MANIFEST.json @@ -0,0 +1,385 @@ +{ + "ADMISSION-DERIVATION.patch": "7021000d75635fc5806af821640c02f9d7cbbbe1cf314dacfcc743fc6875fdd8", + "audit_fast.py": "26950da76589b13cd9c452fdee1b0c354806977f881299bd94073f00e4646fcd", + "audit_mixed.py": "7466461cc15cbb12135d94f2d904d4e90e78cbf4755d0293ab9bd55e3568d4b0", + "CLAIM.json": "2eabb7bfc86a5553fde2b2543b657e0d4e6b5a4b4f2bddc7947fcd7a3f57a288", + "code/assemble.py": "faaf457b63c6b5226ff32f66e1c7ac210bd668a0e19f5eb43b3e7dcfef0917aa", + "code/assembly_controls.py": "01276a0fea7e2d915346ccdc3a64eb63ddd315ccc0b08dfea257337d3a2be4a7", + "code/audit_allcold.py": "a9d36514e1354aeb42e1aea62100d5b0ddeeef2f6c8104091abd9d0c4e231355", + "code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "code/emit_allcold.py": "1a7e06662a1f4cfc2f7ad3bfa4a641f4ec6c429277008ae9879821160e3c3336", + "code/fine_cache.py": "89282a83ab102893a4fc1e663ad2137d891d81e843b1c9ea140d13e58b7c7dbd", + "code/fine_mercator.py": "868fff6d31767b215cdc51bf32b48df0a3ea9675750b7258839251a79e4505b5", + "code/fine_moment.py": "f881f6f1d8d3a8180c384a0bee3b5cccbec86f48992e11b46e2c9ef4c0c014c8", + "code/freeze_spec.py": "e9132a9d195c66123f2747a17f7ef404b4d1e3ef6263ab4c28c983a052cf10bd", + "code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "code/invoice_allcold.py": "b347c6f1cbf7510e4b071dc84b2a27119b65644be7d8edbdd19c6f25a7f497d4", + "code/lemmag_checks.py": "b4efa597ee34ebef83b9f686eb49fc949be139c2e5e0177313f260c33d08153e", + "code/lemmag_stage.py": "b1f60db278055eb1b5b710f36d9ccaabc9c9ddd868f0a92816bba182ae41880b", + "code/oracle_check.py": "4836046db4bec939515a5a272559f92192b56612b98f635910fd81ea754ce2e1", + "code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "code/witness.py": "08ca58abff11bdfba721dc56ab8acf06ec1b7c48a8699a0955cf35324680aca7", + "construction/leaver/PIVOT-SWAP-k8.json": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "CONSTRUCTION.json": "1cdadc74fef4cddeb2bae5e32fff7bc27456740150440ae8fda8822f569c2492", + "DISPATCH.json": "6aad7f628f4c9b510a95c5b34357736303069ecf92a551659900b1ba540bc7e0", + "evidence/ADMISSION-CONTROLS.json": "5cdefeff2516a67c4dd60e609019b3e2e38eb3d43142df2d3c7ed9a6822d5050", + "evidence/ASSEMBLY.json": "5d9eb1ce551386024b5b6894836f81ed03a83d2e0c0bd0e02e3f6410a596bb2c", + "evidence/BIT-CONTROLS.json": "d74d9d2ba363c3709e9a3b33abf6d14abd6b9c68d950b35b7669d8e6edefa59e", + "evidence/FULL-ADMISSION.json": "cda48de718d060b8ca329f1254f4f999a5a5bade5cecabb265f0a9bef1135089", + "evidence/GEOMETRY-CONTROLS.json": "13a50b2f2448931ca302a55e5839c082f651331f20402448fe6ff29d1eb2f481", + "evidence/INDEPENDENT.json": "78cd00f832ed3c0a4b0e0d202095f7beb6111eaeb4457849d5bb920e983098a0", + "evidence/OUTER-DISCOVERY.json": "413ef3e9eb1c3ff680cff1e600dc7160afda228e0b6b021c1a4e4a37ee486cc1", + "evidence/pr1377/CLAIM.json": "cd089b08077e0151b9ed917a5c33aa7aa6b0de790bd9567442531b48729da8d3", + "evidence/pr1377/PROOF-NOTE.md": "dafd8286b1c9224ed6f50bf71bc34b77918323b936ea7427a4b71c3b644b2264", + "evidence/pr1377/RELEASE.json": "a4fa2ca0f79a11dcdc3227ad16a408d4d22d83b7401c894cb0e31eb2c9c5f7df", + "evidence/pr1377/RESULT.json": "1cdadc74fef4cddeb2bae5e32fff7bc27456740150440ae8fda8822f569c2492", + "evidence/REGRESSION37-CONTROLS.json": "0196ae228d583f2bac3c42d3576a8d378fe622592e377c4c1921b5ae81351854", + "freeze_spec.py": "0f5c8ad43180a633a2cbbd11f7832729039402c68f593679552c43a1693d69fa", + "geometry_controls.py": "7edb4732b34e5814b27650a55c938626cb50d68f06397744dd4fe451437e90e0", + "GLOBAL-TEMPLATE.json.gz": "1d31424c4e27e26a35a9932ca778e43f1f3577589275422cc642aa68b31112db", + "independent_core.py": "50e693b2ff8c10f8eb3bfced585ad1b2a807668d2e81ddaa1140cdf6e81d8cbe", + "inputs/DISPATCH.json": "b7b971df9dce435556145df307e2bb5138d87e5aa933f1fe61fcc5b5163301c4", + "inputs/GLOBAL-TEMPLATE.json.gz": "21297b20f1f2dc76eb9dd8124416068c3cb096bab9df17fa4da19bc68dfe082e", + "inputs/OWNERS.json.gz": "3a56f578b2db5647cf6cb811bc6263c7a802ae3e31e9e672596d43185e4e5c9f", + "inputs/PLAN.json": "163431bf8d3bc0d9b894994b1a3cfa7947367b2243b3c0b3a97d740195a1cb08", + "inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "inputs/SPEC.json": "2daedf579c8abf30ceed79fe739bdd7659fce4c514de3894a028933143265d98", + "lift_parent.py": "25f9fdc407e2644f8b6d36ea59f1f88b8507ff08d983b7d2b7e08f5d7c936b65", + "new/CHAIN.json": "f18804a71bef7005e892b0b7baac818d5362fff685fe5b5aadfe8de6e442446d", + "new/EDITS-1.json": "dffa640c04d71111d3e4bdd7f5a991450ba07049a1d434edeef84791c0cc2d05", + "new/EDITS.json": "d5f9a0444dddcccd35c0217f60dbd6863486241629a747c3bbe4140b3d55eea1", + "new/extra-word-566.json.gz": "cd417b904408c221d9840d08faff8af040cc4207f9804284f2f5375d21298a62", + "new/gauge44-word-566.json.gz": "eeb6a236ed0ea8873b8800947d0cd19c36a6fcfdf857fc42913cb45cd984f219", + "new/pivotcheck.py": "6eb1752f077df108c908974413fc71abc751356b07c6e650e75d2075f1a51391", + "new/PLAN.json": "7d998108ccf8021e7c920a70fc81dc18a262d275c85fd20c77498a32fc6ef41d", + "new/PROFILE.json": "f4a69c864a0fb706d730aeae15ec87310b42804615337e3c17073565a4ce6afb", + "new/rebind.py": "f71e872107a07246233dc3755ab98b5184301b9439b63d28346b551529446db3", + "new/rebuild.py": "7391a7228d6b5afc2f88afd5d5a987565d78a100386c1f03b8696bcde2e8ef3e", + "new/rebuild_chain.py": "3a5739f94f0fea1aa267e7d12e1c986210e483c841a8855e11020128a017510f", + "new/SPEC.json": "822f7093effb40cb0ae4b9f228d8f6d38e1aff2808e49557c29890c37df86115", + "new/steps/0/extra.json.gz": "17cc6c177c89eb264514e1efb3685ab9a621f3952a8f393a6a5eb28cf77e2884", + "new/steps/0/gauge44.json.gz": "0740b6f33927b9e60c9a7f35e7fcb2fd9ac6e2d3982112428b302a6966a18c73", + "NOTICE": "3918a42010a435782de0fe8c38fab8f7df5d48a375ecf603c2bad1b818a16d6f", + "ORDER.json": "519d1d5dbb997a219fcfcad34c0b03e7838bef24199784d7e964fa10090f66e1", + "outer/B.json": "0d36a77c8ca8c90ee5de6d6e1c59c5fb2489749cdc911043dd8e71c2d75e7100", + "outer/check_fine_padding.py": "a0ae691251cc50ba20b7f23f89fffaed802d62f9192a441131476914a5bdfae8", + "outer/check_gaugefree.py": "5274b2838f322dc56a88570e4f9262fcd3857cd387160ad138e083ccdfbe9761", + "outer/check_ledger.py": "8c035dd098f61feed6985d91995970caa59eefe104ddf80b336db980703ff4f2", + "outer/CLASSICAL-BOUNDARY.md": "582bad82bb63d54dfa6d76fd79ed01c993f78262b02813bf647d82aa6f6c0b3b", + "outer/FINE-PADDING-COMPOSITION.md": "be0f697aa61e2cf481ea1eb22d6a02d173fb6345699a2731e4e2e6921e8ad54b", + "outer/GAUGEFREE-INTERIORS.md": "a7fc34302a70f8453f877a6433ffe2776457bf37b5d8bb262afcb6b198a935fc", + "outer/INDEPENDENT.json": "d315da034c6df31dc6c3407830088df897ebb289ce20c8d4c03e0658b6b3849e", + "outer/independent_check.py": "dd09a170f6f8e2283e5824807bf1922283d70bc8159e0f3a2430b472c77751ee", + "outer/LEDGER.json": "ee4df8e393429708d21da801b6ee5d97ceb2fec0ef1772eba63621651bf5fd5a", + "outer/OUTER-CLAIM.json": "0de7f52280989883d5b8f84a71ace0c7e1284246db6eaf3fc81a758c69f8f77c", + "outer/RECT-BOUNDARY.md": "17ece1cc1eb4a02df4d8433e3612231768633e6674d315acbcf880f36e30bdc7", + "outer/replay_evidence.py": "d3bdcfc8ce29865b3a76d64d99b5177e73fe994a2eb915f35fa233c5ab81df65", + "outer/RETUNED-SLACKS.md": "1ba4fd6cb851ab397a42d80841d6b8e4399c3ef2836efa161aac4b4eee0a2307", + "outer/run_outer.py": "cb46c44c70d05597bda3375517ed4f5a3f93294d30aff356c5ad5fe6d03b5aeb", + "outer/sched_review.py": "f440a57f1f46119ee8c2934c8f0d618ca1c85c73cda8cfb8453c2aa1b9fc40fb", + "outer/sched_test.py": "f96d09b5990931e3df8cea291520bf17c424215748cd9ec068214c58309a21c8", + "outer/struct_check.py": "f13c6a166394549a25b6e727c4a43c0a34ae270c9498a9697683d63e0e5f9971", + "outer/STRUCTURED-BOUNDARY.md": "6e9261b85f288d0fee1177a7fbc53958e42cb9138c038d6f6fcf662724aa8095", + "outer/UNION-SCHEDULE.md": "e18323a6487fa455dfd9b31ba9f4af65606b7854677856378cd87c41d67cc25e", + "OWNERS.json.gz": "cdfdcdec09592b4fd296ec49efe38573c1a61ecb8385b538ce801ee29355695b", + "PARENT-LIFT-RECEIPT.json": "94cc5cb9401f5f84eccd2fcc7c6860e2f6084b4c60be6a2ab3ffc791b329149d", + "PLAN.json": "e9ca855b0ccba243868aa7bd24b42f9e59f2f554bfe10521143591073e72ea18", + "PRICE.json": "c5ec535fd9edbdec7b64edd5a8b862edb1a7f173d411dacb279172659573e16a", + "PROFILE.json": "932453b2b045f73c81aa2b6f169a05ae2426c573965bbf4f5d3998b63b78a38f", + "README.md": "363e2ed9c252471ba6542a32958742faee5ca3d538a344d2af67e854ead9c31e", + "reconstruct.py": "d1b1d841c9d76fafd747642559660c65666e93643caa1b4eb758fcdf69fd083f", + "RELEASE.json": "a28792fff3624b568ed3fe71fee9d0e8d3d03de05f7f870d933cd6097d1f3727", + "replay.py": "3ec4330ede0db3c6daa453b0366817be9435c85c8c3213a0c35c442c96c1a955", + "SOURCE-PIN-REFINEMENT.json": "8c0bad79978decd6f8aba0932c0a94c7f61c64bf9ce5a19a36f67cc1390bf74f", + "SOURCE-PIN.json": "66faac1fd4e79bb6d9fc774fd8ba63522ad3309456be1c81405794b284c55c83", + "SPEC.json": "da49a85190eac2b553fe982ed295b15fcde6d2dd449d976b503de25c277f2029", + "vendor/build_parent.py": "82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e", + "vendor/pr1297/audit_mixed.py": "7466461cc15cbb12135d94f2d904d4e90e78cbf4755d0293ab9bd55e3568d4b0", + "vendor/pr1297/build_word.py": "ff08af2851b4813c113ef63113566cbd79625e9310611292913d51be554b5aa9", + "vendor/pr1297/CLAIM.json": "bc9e90a475333b957a8c4eae8b950988caea89e20e9b44a919e83415fb76b1b8", + "vendor/pr1297/COMPOSITION.json": "6fb74e73fd298b356402eb2fbcd625463b2fa540a6be4ef2d6335ddfa31d70f6", + "vendor/pr1297/construct.py": "71aff454291d4a35068c43dbb65c00ff511f48e91ab7cdada462833f04ac73e3", + "vendor/pr1297/CONSTRUCTION.json": "fb5f74f59c89b93c63ec47e32e2c9264658e115d1f21eed3eceefec7dc7a0cde", + "vendor/pr1297/CONTROL-SITES-base.json": "b41361f5a2f6ab3d223c146269c8027a0537f1a6e3c963f28cf1ebbe05c5d7e2", + "vendor/pr1297/CONTROL-SITES-extra.json": "f1aada769389ec410b41bc9e2082826bb916b8332c915ee9e07045135c30393b", + "vendor/pr1297/controls.py": "935cf39ed6601eb6ac411b7b1a4adf5d4238589cad9fd5969d7dca967ace4c4b", + "vendor/pr1297/DEPENDENCIES.json": "9c9fff3ac059da4d4e2f13e655afb9e42ada1a57987f5b47b68dda4b64797966", + "vendor/pr1297/DISPATCH.json": "b7b971df9dce435556145df307e2bb5138d87e5aa933f1fe61fcc5b5163301c4", + "vendor/pr1297/EXACT-RELATIONS.json": "6864f378d917d0ecfd8cd53cc26303217ebb48f47f2987bbc01cf1e2c9a28093", + "vendor/pr1297/extra-word.json.gz": "7b0e9fbda32749aabc7e156d9fe09bceb0624a178628fe69e5dfea783462f905", + "vendor/pr1297/freeze_spec.py": "0f5c8ad43180a633a2cbbd11f7832729039402c68f593679552c43a1693d69fa", + "vendor/pr1297/gauge44-word.json.gz": "e8e6e78ff7422275c38324499e1f33fb2ecd30de9503aef2b8f1ee80d8c4df8e", + "vendor/pr1297/GLOBAL-TEMPLATE.json.gz": "21297b20f1f2dc76eb9dd8124416068c3cb096bab9df17fa4da19bc68dfe082e", + "vendor/pr1297/INDEPENDENT-DERIVATION.patch": "6b3af098ec1c9e2360a366933eb7fbf0e16ebb37d43809d26b275e66fb5ee779", + "vendor/pr1297/independent_core.py": "d1dcd5593a05cf647b485db38891984f829abea5f95c6cc91e37d554bf163d48", + "vendor/pr1297/inputs/base.json.gz": "b87c706d14a7e1972514ee901002a930908073811ef38761def31c8e36351916", + "vendor/pr1297/inputs/extra.json.gz": "ded6903e00deb9e158fa700b03ccc9b8bfaae6c8bad8ca4842f0ad9b963234ab", + "vendor/pr1297/KERNEL-CONTROLS-base.json": "cbe755333f469a1f01258b65f2b273763212dba6642edabfb58f7490f326abda", + "vendor/pr1297/KERNEL-CONTROLS-extra.json": "cf255deb866ecaefca4b6ecb72f105d6b08dc8ea907a8381d45aedc39b2022cf", + "vendor/pr1297/kernel543_controls.py": "ac16d605e773197e3664643d40b36c15a7130a45e95e36bfe7b42d939644367c", + "vendor/pr1297/kernel_controls.py": "436e3f3d9974da7c1968ef99fdde5ad203a61544d8195493e3150eb25869f4dc", + "vendor/pr1297/MANIFEST.json": "e0eefc96567fbb45e19e6de0ca295381dbe0e686c08ddc783639b065c7c791d4", + "vendor/pr1297/MAPPED-RECIPE.json": "09aca649da97a37116262827cbd3ebe0addcd2b1a33c08e8347f3daf3394176a", + "vendor/pr1297/NATIVE-VALIDATION.json": "755b7087e0ae964c538e9378311e07dba2867c16b568d1bf6ae9051657f9f5cb", + "vendor/pr1297/NOTICE": "b352129a07fc8693f57c77cbb0ea92230b2fa77439f86c9f35b828213f9c42db", + "vendor/pr1297/original-main/research/complex-t21-owners/vendor/pr870/t16/build_parent.py": "82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e", + "vendor/pr1297/OWNERS.json.gz": "3a56f578b2db5647cf6cb811bc6263c7a802ae3e31e9e672596d43185e4e5c9f", + "vendor/pr1297/PLAN.json": "163431bf8d3bc0d9b894994b1a3cfa7947367b2243b3c0b3a97d740195a1cb08", + "vendor/pr1297/premise/inputs/CODED-CELLS-k8.json": "7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563", + "vendor/pr1297/premise/inputs/TRI-LEAVER-k8.json": "b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30", + "vendor/pr1297/premise/premise_check.py": "28a7f881a988b29b8ed3c927dd142ac3d4ee273dedab3a65bb02c01a64eb2639", + "vendor/pr1297/premise/verify_1049.py": "a1736324c6db161733d8e11f608defd87b7f97cacd611203d22499e4c7de5545", + "vendor/pr1297/PRICE.json": "e19f9f9e70e4fda2bc4a39fae93ea44555945cdaea59728864c5a44dcc5522e6", + "vendor/pr1297/PROFILE.json": "d9bbe0d73ba005749615915a2d884819a6b141e3402d9e7f87f4592a2d27af99", + "vendor/pr1297/README.md": "102ac7f080c1799aaedd5345ffb3631845215e8ab770e2af34750c25f667686d", + "vendor/pr1297/RECIPE-base.json.gz": "0f2db2c658e9732fdd1aeb7bbbb5c786d6045de8a2575b7654b9e6fddc71b03d", + "vendor/pr1297/RECIPE-extra.json.gz": "9e6f58570b0a8f9e8271bfbc73a339fce42f1cf28bf14d4db93f246b8f63a3c9", + "vendor/pr1297/replay.py": "d3ea7c2e74ff6df9d14969f994eaa85f825372cee92dafb77bec4767edb242e7", + "vendor/pr1297/SEARCH-RESULT.json": "7cdacadcbbf83b81f9f91668fcc707f8a238c6025f35a8bdc36758619c2591c4", + "vendor/pr1297/search_relations.py": "58f3bd092cb8592a070d7879918ff318a658a6fa02bfad7b5b8f4cb0fe16691c", + "vendor/pr1297/SOURCE-PIN.json": "e93f303f4de383757e50d612ada5e379533d46737a32281aa6879fb4b6138e09", + "vendor/pr1297/SPEC.json": "2daedf579c8abf30ceed79fe739bdd7659fce4c514de3894a028933143265d98", + "vendor/pr1297/upstream-layout.tar.gz": "a0cc229bb0fc9ab8ee5c14d5de87b3de31d1fcb793e99192c9cdc63781e794a0", + "vendor/pr1297/UPSTREAM-NOTICE.md": "b97fb4731e84aef736c58a9c126334eb5b8d3a057a8d9d45b4ffff24af65c38b", + "vendor/pr1297/VALIDATION.json": "1008f637a22f954ee774920a8362931ca7cfed63ca146e725768c0f39803c0a5", + "vendor/pr1297/vendor/pr1193/audit.py": "1118d483b6abbe7036390c0a1053bcfec2038dbac273fd1bac92a68f38e6d7da", + "vendor/pr1297/vendor/pr1193/build_word.py": "effb72aecfff9958fe078ee89e0d37b85d601eddb19fec4520d7ee6e936edfae", + "vendor/pr1297/vendor/pr1193/CLAIM.json": "b9db2fbfb004b505ad535e4763915275dc5908feaefef32e65863fa65de061ff", + "vendor/pr1297/vendor/pr1193/common.py": "274274df31f8ef2a47b801d1f30ec226f94bce674fe15586d814ca754f6b7785", + "vendor/pr1297/vendor/pr1193/construct.py": "3dd333b50f4bd1d86956a6df4a334ed746d75d0a9e03dfadbb6724b4356e0cd6", + "vendor/pr1297/vendor/pr1193/controller.py": "d93ed519a0f2316b87b66f44c5ea615f0768a263dbd800815b536d8b7c86b8b7", + "vendor/pr1297/vendor/pr1193/controls.py": "574c55a01cfc34f5b9688cdec5646160cf22b403decee36d18b11f1b07e71f21", + "vendor/pr1297/vendor/pr1193/data/FLOW.json.gz": "e8e6dfa66e083ff8f3617a8441b5b2d766c3c9d9ac62ddc37d99edc24051f79e", + "vendor/pr1297/vendor/pr1193/data/FOUR-RECIPE.json": "384b32c5b0e9b3baa1c7232db884809596d30fc55553094245f7b739b1a43484", + "vendor/pr1297/vendor/pr1193/data/FOUR-WORD.json.gz": "7d09ee1b8b9881313e5fb1f623c0961d59b0c6352a019bc9164a6cad8c58e27f", + "vendor/pr1297/vendor/pr1193/data/MIX.json": "dd86bbb792a5c9f0d7507d55bd2f8392c66716023934b03b24f48ca737204eea", + "vendor/pr1297/vendor/pr1193/data/ORDER.json": "7757df3b54ca5e84c6dba9563b10bc6215c5e289313392b5a4b493179a245c29", + "vendor/pr1297/vendor/pr1193/data/OWNERS.json.gz": "3a56f578b2db5647cf6cb811bc6263c7a802ae3e31e9e672596d43185e4e5c9f", + "vendor/pr1297/vendor/pr1193/data/PLAN.json.gz": "1f1085beb84b516b9a96ceaedc6c3de1c58941fd00b6e70f0d0c686b6546ff79", + "vendor/pr1297/vendor/pr1193/data/SPEC.json": "82b263990afdc5efdc1dfe38ae16d7815004dff8d70f85c28fd8286c31f688bb", + "vendor/pr1297/vendor/pr1193/DEPENDENCY-PINS.json": "c9330aa6a4226c804060499429cb450820d7142ab17696eb47408b04b410b5bc", + "vendor/pr1297/vendor/pr1193/evidence/ANCESTRY.json": "cd880b2d1c2fb8d9050458bd13f228385c417a95e4d1985607d9f4bb60b5c109", + "vendor/pr1297/vendor/pr1193/evidence/ENTRANCE-CONTROLS.json": "7b101dd97c1025667fb3615930a9d6cd2ec443169d263a3bc1191b80fc712a1f", + "vendor/pr1297/vendor/pr1193/evidence/FLOW-CONTROLS.json": "43fe7e94bd72607d502ed947ac1463405be18728eb0b8faabd7ba63ab1d28ab4", + "vendor/pr1297/vendor/pr1193/evidence/INDEPENDENT-OWNERS.json": "4c295ff53f51631e1720b0dc2ea895c34861435fa92112ee52439e4569de968a", + "vendor/pr1297/vendor/pr1193/evidence/PARENT-CHECK.json": "2b729fd666ffe4e34a355223b57f74ba460fb171b19c84f260378dd109f0b9a0", + "vendor/pr1297/vendor/pr1193/evidence/PRICE.json": "a1dac219b019f8d40d5b434b0e0c25b0d1f097fe5ae13eae45c76869aec4758b", + "vendor/pr1297/vendor/pr1193/evidence/RAW-demote3.json": "02150d4cb1b2f4763b5c5c20ce979c740cbdfc1066e021a8aa5d407de5c4b9d3", + "vendor/pr1297/vendor/pr1193/evidence/RAW-demote4.json": "7adf0070125b2c61e04d46c5f1cbf57af079eb733799bbfcc3fe9b0551d964b1", + "vendor/pr1297/vendor/pr1193/evidence/REPLAY-SOURCE.json": "a5a290aa8c75fffa45c9ad2e3441d5051d3adaf7934f4d0311875fb4d8f023cf", + "vendor/pr1297/vendor/pr1193/evidence/RESULT.json": "62aca8286cbb021d2535d81494f7ba7a3aec20898fd7c40a895a461bbd303ac4", + "vendor/pr1297/vendor/pr1193/evidence/STAGES.json": "0dce559b2a8f371f369a05ae25ca5dd6a48019b5685b0097f001a23bd849429d", + "vendor/pr1297/vendor/pr1193/evidence/WORD-RECIPE.json": "b6750c8123c205b63786fb825da26a819592f71736a82009809ae1cf96173a5c", + "vendor/pr1297/vendor/pr1193/local_controls.py": "fe3d13491fa7523eedb8d24577ffe4bbd6c36a87b4a7d1178e5795d223bed4b8", + "vendor/pr1297/vendor/pr1193/MANIFEST.json": "4837d070679d9e70218c7cfa2d3e70d7d742a5b74dc66d224840b1a3a4ac4a31", + "vendor/pr1297/vendor/pr1193/native.py": "1fb596fbafdb19140f483cd34db2994c571e3b962e33b8ea9b3ddc486e37def6", + "vendor/pr1297/vendor/pr1193/NOTICE.md": "c7a17a0a35dc249f8ebcc550b3791e214aa65872eab8a6458c5167dd7b948e5b", + "vendor/pr1297/vendor/pr1193/package.py": "cde0b2d66125649ee84440fc0a67f0d91f900fc838fbda069b579422289ea3be", + "vendor/pr1297/vendor/pr1193/prepare.py": "9fe454a5f857ff73c70a5b276bc9e289422b051a4cbbbb51123a91bb2200e6d8", + "vendor/pr1297/vendor/pr1193/price.py": "d45042f4c1fea352349377b43def363cf75a742546a1d5c790ad30da91791803", + "vendor/pr1297/vendor/pr1193/PROOF.md": "b2a38120ddb75e90764d0b81913d60b46cddac4d943cb731bd9c7134f1c236d1", + "vendor/pr1297/vendor/pr1193/README.md": "cdcf62624912150ce4e6e05356c27299251eef4cfc130e4f209839cdabc05e08", + "vendor/pr1297/vendor/pr1193/SOURCE-PINS.json": "08eed0d6822a1c17053161929591e7ac36b9f91f8fd61190183a6d975948db85", + "vendor/pr1297/vendor/pr1193/vendor/pr1148/JOINT-WORD.json.gz": "a0622d86259c4163e58cf0677ce575b6039a8ae4c95aa6d8b82a8163cbd42718", + "vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-coordinated-owners-NOTICE.md": "442756fc1c5ecfd7b7b7694b53b1ecc70aa525004cd80f7d748ccd7270555189", + "vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-eight-ends-NOTICE.md": "820fa13161f857c221f2c4099dd2985c7ff72249dc7a0221bc00fd0c1b9760e5", + "vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-eight-ends-t16-NOTICE.md": "a9e85b59dde61fbff0b006923b441cbd1419e24fa9802426785bca667437fdc0", + "vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-three-demotions-NOTICE.md": "a0fe85fb2207f0e6831a96deaeefb65afa379c1377a29f0b586f1db4bb4b2137", + "vendor/pr1297/vendor/pr1193/vendor/pr1148/NOTICE.md": "afbd38d6c8a232ea566c296424a86420f204e6cfaac565c0a147340bda3d3da6", + "vendor/pr1297/vendor/pr1193/vendor/pr1148/PLAN.json.gz": "e963ed64b9970858902b9388bcf1c5f9cc704859ad021ce8bda465a4dcef8310", + "vendor/pr1297/vendor/pr1193/vendor/pr1148/SPEC.json": "55bdb68d5d126c6be0e0acc419bd62301a978afd514f9834ed1e08b1aa4f563e", + "vendor/pr1297/vendor/pr1193/verify.py": "e5c952989344a65b7e63fa112dda4d464979814205644a8ec34e407a0d96be29", + "vendor/pr1297/verify.py": "358ad8dfd967f4fd69a0cc298eae3508ad8b57b1e419ebaa0d621e199f534345", + "vendor/pr1297/x54_controls.py": "82f91b81be9173dca546345dbdaddfc71e6d21e626fb84a8b4d1b4ba0d673814", + "vendor/pr1673/capped-phase-fusion/ALGEBRAIC-STABILITY-INDEPENDENT.md": "7873e7d9a99fdc9de3ee224b9925d3e277e9773d7f5f8c2d0f1c19b0e52bc87f", + "vendor/pr1673/capped-phase-fusion/BILATERAL-LDU.md": "0d65e66d227464dda1a19f781ae0a0be671cbfd347c41e37ec954f3d629d8a77", + "vendor/pr1673/capped-phase-fusion/CAPPED-GAUGE-AUDIT.md": "1030a34922709ab8d3434a4c57a4a58934ae268c237fb598cb415697da411c9f", + "vendor/pr1673/capped-phase-fusion/CAPPED-INTERIORS.md": "983c5cab2d2398f2192a8aec07daecb655f2de136e12a37f75672a14d27172ba", + "vendor/pr1673/capped-phase-fusion/CAPPED-OUTER-ARITHMETIC.json": "22caac9ec2ecf4d5743b7eb946b633911fbac55a714399556e87e2eae0457dec", + "vendor/pr1673/capped-phase-fusion/CAPPED-SIGNOFF.md": "70e9175ebde200f8b016236adc88c4a1c4858945e7c3e5c453a8b6a5f79a263a", + "vendor/pr1673/capped-phase-fusion/check_capped_outer.py": "b4555c77de7a3ed4abc708a8d93363ef7c9a914be1091f80ab3ddea83f71230a", + "vendor/pr1673/capped-phase-fusion/check_matrix_corollary.py": "30db2d8e0f40fcc5c91e25f74cdc54e46aa4a0353c725345f9bcf5744e0b617f", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/BILATERAL-CONTROLS.json": "eb3ba38d18bac4aceaffba39ef48dbb55bd15e6abcb68cdf66920d9d13ec00ab", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/BILATERAL-LDU.md": "0d65e66d227464dda1a19f781ae0a0be671cbfd347c41e37ec954f3d629d8a77", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CAPPED-GAUGE-AUDIT.md": "1030a34922709ab8d3434a4c57a4a58934ae268c237fb598cb415697da411c9f", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CAPPED-GAUGE-CONTROLS.json": "ae8f0eb121a2f4da5c3f982ee6e7f45dab7b18368cadb5d2060602b0393b7120", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_bilateral.py": "8d5c79bd4f4c96de5c1fa91553b19e3a62419333b414fc84dec894a4b729d5e0", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_capped_gauges.py": "121279bef47dd490bf29fc72ddbce547176cdaf1154af67dc8b96d7baa8cfc6f", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_cyclic_scan.py": "d25156f852cb95f013e0ee74b319fc8c20d6a7a53fa851543244d5af7898ee61", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_dyadic_interiors.py": "a39617147870719a0296eef77101c90df8fbe716841cb9ed823f36b94254c3e1", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_forward_cell.py": "082a0e46c175f6e59fe1f8c168ca56bc444c71a602c9b7318c0834aae1f2de90", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_log_a_schur.py": "a0f1116ce27ecbff18de7089ce1f56714ed7966dfa0105b20419d408feb7ca41", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_lower.py": "027c77d8ce33c3d5e3c436234668f11bafc3de8658b9c3d03d455eb0e4d71f95", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_upper_data.py": "de4f9df64cf31e94adb9a5d04b38d53d823d864f51632c49c7c80c6a46b5224d", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_upper_merge.py": "95c9908134905e3ebdd030375e36a942c886cfc59edde3c6a419f36da6754780", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CYCLIC-SCAN-CONTROLS.json": "4c37249f12b4cb4df847d179df8f378fbf1f42917e9fa703b2d847146f29b95c", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/DYADIC-INTERIOR-CONTROLS.json": "afbaee9f56f6a66fd9421bba7dfa8c3610c12bd447b01d0e9d79f97d1216aa90", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/FORWARD-CELL-CONTROLS.json": "4417a518ba3b6833f06b4f5e33d4f73ea74100b9110cf20e8d1c2070f1833fcc", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/FORWARD-SMALL-A-AUDIT.md": "e37aaa30b15671a1dff00676b14572213efaaac99df202dbba5e09f57af487c0", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOG-A-PHASE-SCHUR-AUDIT.md": "e05d6b8596c80b6e8676569a0ff464a29fa704c3304143f58914f47cdf38b272", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOG-A-SCHUR-CONTROLS.json": "046191420a24d8b2c063c190af5e954c85e39357902988c4df79f5abcdf1596d", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOWER-CONTROLS.json": "323cb4acae960a6fa05527df5ede9d48e274883272b8ddb5151ebcee6dd26e52", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOWER-FACTOR.md": "dbc7eff783695e0f50fec57b0f7ca4212d51428eea04fa2ae5e0a9178fa69b30", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/README.md": "8fb5321b514af9260c44e150125205fe564efd073c456214f76bbdb358279cf0", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-DATA-ALGORITHM.md": "46b98b9c013dc5a94c9f17fd85acd7c1896c8e93ad2ee4a7c34f583895f1daf0", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-DATA-CONTROLS.json": "c9e6fd7f338f2cb78a0ed15ee944fde63549ae3d8522ab0874d184f3e252db76", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-LIFTING.md": "69535a48416a5435ea2a5ef4ecfe70fde30c32c4043bfc56f1ae2d7f49cd34bd", + "vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-MERGE-CONTROLS.json": "c5729bdb36237c0691fba56d149019f78d94e996749532d907a84c35ef01319d", + "vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_embedding.py": "597cb5304498456575c99d46a7fb503e04db28d5a7f57857b102b50f703b7464", + "vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_halo.py": "0a3257cbb8f37b6cc9bb44019cb114ea2ae9b28738a416bff4bc712d1306e1b7", + "vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_ragged.py": "54b761cfe3404d524af3a2abdf09bcea8dfb5cca6199c0c182cee310e3ca8c78", + "vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_sparse_shear.py": "6e22c989e6bae92c4cd209c9336aad4359956cf370bdbd5f6b70609144598121", + "vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/EMBEDDING-CONTROLS.json": "d0182e172f16b55ec64a5edfabb10816e416348ef2db15449f3ed4b47f3fec1f", + "vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/HALO-CONTROLS.json": "ae370f7d7421f2f96e101a4b9d8082110507c47211220fd6ead065c2366aa828", + "vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/HALO-THEOREM.md": "cb9e1da38400b658f9209e465b4e5896fadd17dc66afa862f38bae8d8c1f2058", + "vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/MANIFEST.json": "37946d7691b90d39906d93581839bdf8ae2cf899d459e5520c39e782766e9327", + "vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/PARAMETER-CHECK.json": "e38cdfc13f1959186d888383458c9030c4bd3c8c3915aea4743d55637d2f8d76", + "vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RAGGED-CONTROLS.json": "c3688f65565486b585727374abfbe478f7544aa61381bd73cc6ffa168b4221b6", + "vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RAGGED-PERIODS.md": "c6e4dfe7f58dac7c5a513ffb3a9ab4801ab0717efae5c1e764e570335402ff25", + "vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/README.md": "575a3acfc18a0e05ffe04a8563318a2770ce32cd7bf3a5e6123ce2de39a1cd4c", + "vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RECTANGULAR-EMBEDDING.md": "e64447bff7e7717802ee049290faaf29e45db3e36a6f7fcec109184478f15f26", + "vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/SPARSE-SHEAR-CONTROLS.json": "d3b9763f7ef6a3a5752c6c11a8a4d5f465646ad75b178a1c1b3363540fcc4871", + "vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/SUPPORT-ROUTER.md": "6ddb322e11883c1177ba6cd1a77d23a1dac827d7290b32eaf642457b1d762a54", + "vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/CORE-SOURCES.json": "2546f47dacc47c2d63dc5bb9cc52ef86c5e02ee159c4fb6e00dfac3f8f34d89c", + "vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/core_review.md": "13f2df4d5b240f9b89ca0ae44bba198c935532098ff4c1161631fcbd86b3e8b1", + "vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/FINAL-REVIEW.json": "6b98e5222aa109a35be8b4fc9ec19669daebcc06d542ecec0a9c820da7930501", + "vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/gaussian_layout_review.md": "ebd7188970f55b5979b1b1a13f874a31ed0ee6c82bee329e7ad0b2a38c42c430", + "vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/layout_subreview.md": "637e4698a9fb02978ebc4032d8939ce0db9528e89e908c94d63b9f0d2a41f64a", + "vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/union_subreview.md": "738b35a04d6871cd73b14b4165ae69a1feb3a103eb46e064a64a22c4c7426856", + "vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_circuits.py": "06d1861bfe8af543908e26557ffda7e451ff176bceb9bacfaf0f04f234b336d5", + "vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_exact_algebra.py": "5ff7f25c55b370a1d0cda6c84ab9cdf2c7b0de3266d3f2e7a43280a6491074ab", + "vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_supplier_capacity.py": "035ed96b39414eadec46e8de4bf3811b785862fd313deb044f42e17cf2ad3f78", + "vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_tensor_compiler.py": "dc4b1f1884489215a2c2d0e8978a241e99e6c8c9f1d2fa2460c73d2c7d4ba30a", + "vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/CIRCUIT-REPLAY.json": "2ce5cf9ef9461e5897374ad389c26af66aeee85e8f514a9da4ed3bb2028cb1da", + "vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/EXACT-ALGEBRA.json": "694898bfb1afcb3b8b8ef951634ac8919decdde0904350b355d254601ae3dc12", + "vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/MANIFEST.json": "3b018dc660c6add775c12f75b9e8f5281825aeebc3888a508833ce6106c1229b", + "vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/READING-COVERAGE.json": "756e52726b161eea27e27f1d519b05d4fb0ebf67ef9a67b33947194d5d02b709", + "vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SHALLOW-TOEPLITZ.md": "b384b93f3fb4a8c97da2e617ebc14d55cebb0a739070e7f8dbb66f63e24e9310", + "vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SOURCES.json": "fb3771f66771250aa9f4406ae9e7eb176f9cdef03976cbc9558440c674a4a94a", + "vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPLIER-AUDIT-SOURCES.json": "d0c274d6edd6193b09d28e45e7cbfe9236fb35474d35ea3af0664ba36f9e006a", + "vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPLIER-CAPACITY-CONTROLS.json": "6922b7d7a936d53846569ad3be53fe4f3c63d6cfe794f9279fdc6a1fe411ef0c", + "vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPLIER-SUPPORT-AUDIT.md": "bd5b06eca043c5c871227264f6a954473c55cd16ec85bb420ff538fb8ec1d8d6", + "vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPORT-ADVERSARIAL-AUDIT.md": "b1290f8720bf075ea2ad58d6070f3e1fc95c0155f8e33b165bc13439bbb9222d", + "vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/TENSOR-COMPILER-CONTROLS.json": "db8a5c0dc2be956d83bc7667177252a4968e0ffaee8352e6a5dba5ab983d7ada", + "vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/TENSOR-COMPILER.md": "4d3b8466598a864a234b978e25976648d4e761840aad9153dd18d73d3dfe4d15", + "vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/ALGEBRAIC-STABILITY-INDEPENDENT.md": "7873e7d9a99fdc9de3ee224b9925d3e277e9773d7f5f8c2d0f1c19b0e52bc87f", + "vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/check_source_constructions.py": "9d387098403c0355be8e93158df02bae5a435b2366bd28efdf0b127e470c8c1c", + "vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/MANIFEST.json": "35d98d7579a16dae36530b4e5f4d0b8f925a069daa3f6fe1ea5276916167e0c2", + "vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/PROOF-AND-COVERAGE.md": "db7509d754bb7fc3381419e0fed2674f22a9d57d34e8420fd5afa3c688fde9aa", + "vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/SOURCE-CONSTRUCTIONS.json": "114c1d8fb70592455a80c73d8a1bc6bfc9aca4e7395a420b6331d5474b4d1917", + "vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/SOURCE-COVERAGE.json": "fdc6849f97999a6cf99cdaa50591d24f78d6fb0bc580315f205452e5906b35cc", + "vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/CAPPED-INTERIORS.md": "983c5cab2d2398f2192a8aec07daecb655f2de136e12a37f75672a14d27172ba", + "vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/CAPPED-OUTER-ARITHMETIC.json": "22caac9ec2ecf4d5743b7eb946b633911fbac55a714399556e87e2eae0457dec", + "vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_capped_outer.py": "b4555c77de7a3ed4abc708a8d93363ef7c9a914be1091f80ab3ddea83f71230a", + "vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_matrix_corollary.py": "30db2d8e0f40fcc5c91e25f74cdc54e46aa4a0353c725345f9bcf5744e0b617f", + "vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_outer.py": "6a0c5f8956323615df8bc4b12996832471c0ae607d05429c9d70ad1b50568f10", + "vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY-ARITHMETIC.json": "c6efc4d2f6d17159cefebf5c2dd6099a6327fe0911c5dd87623cad96c7d6c56a", + "vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY-REVIEW.json": "5cd5e97f93a9b3e439bfeffb52139d7bb1730de96ad13b59b7e1b20fdca6a3f6", + "vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY.md": "2d7fb1088e58bb86e574277733e082f135362215a69add71d9090213d32c9221", + "vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/OUTER-ARITHMETIC.json": "050c61d90236c593fd0827d7edc297e05604884e4ec093659aee46a9ee336020", + "vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/OUTER-AUDIT.md": "94799bfa2794eb867d6ba68593c3e92988ade083e74d895e8d07ae3b8d0670dc", + "vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/README.md": "17c393075292b364899cb7c451cebbc9b20834f9fac934ce3740aba360c27246", + "vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/REVIEW-RECEIPT.json": "97b20e50d3722fcde3831124a107df6c15c0ffdbb9e057b7867f41aaa2481800", + "vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/AUDIT.md": "54aafc7afd09fe1a5312e69fad09c87422690543ab75c6ae35f6cbcc26b3eb8a", + "vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/CAPPED-LAYOUT-CONTROLS.json": "e6951790238b4998c632c95aa329ee2cd2527a5d74a2f28bd15249fec6d2419a", + "vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/CAPPED-SIGNOFF.md": "70e9175ebde200f8b016236adc88c4a1c4858945e7c3e5c453a8b6a5f79a263a", + "vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/check_capped_layout.py": "267d93ab5114ec160f88a6e65fd34c9f0696a686c36ba2dd194d6b70fa32a6bd", + "vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/check_q_embedding.py": "ac858a14bbaf37e0e412a7ada282cd1586632f52b8a979733e775f50130969b6", + "vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/check_union.py": "74608380d72567edcd4470c8d226b15848f9d3a4e5d77d652bdd8963480ab9ce", + "vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MANIFEST.json": "c98559147bb498ac78af998eed63ab6661af934fa1a0df6844176b1811753fb9", + "vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-CONTROLS.json": "f8bd8729cb8438188e90fb9149f598b825461c97b4ed290584ca4367f812a48a", + "vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-SIGNOFF.md": "4c8c62f723232e842dc3bbdcc4defcc8ff1aeb86ba9f694661899dc6783b13c4", + "vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/PARAMETERS.json": "9f72cfffa34844764ca65a6b4431cc5c779141751df746019db9d3ad8f1dee92", + "vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/Q-EMBEDDING-CONTROLS.json": "24ead3534482397c00c23ad3dbbd4e930e02290e00c97765353d8783c6575c7d", + "vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/README.md": "0ec721f76dfa943e808afd3c2cc39ee69f1a6e5f4f77ba3c7c1373ad60db25af", + "vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/UNION-CONTROLS.json": "6c5262144215cc603bbc3bee93a9a6d9d2318d0177a59115fe560762998498f9", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_constructions.py": "91387c9bd763a5c55c22a9907947bd07b6002f739aa6feedf6d3a02adea1e316", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_erasure_rounding.py": "486efd4692665a548b94b79877abb76ad13157268f05c270c4e75d8f97700795", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_fixed_a_ldu.py": "15134147317a7d789c9ea0ebd71db5ff11e59a20ef140f681d87478977734cd0", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_holes.py": "99c5dc4601ea88b553f52e235d36fba0aeb867e7fcd54130cdb3eb115a9bb0d8", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_ledger.py": "254342c05949e5cefe4f507a35487e0a1ffb7137a60d2b97831d5ad55d7d7ce5", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_nearest_neighbor.py": "21bf2be683cefa7a760bf1e1bdaa647f57bf47ab86b13fd7a74e8d650f492913", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_positive_tree.py": "46db2ce9122ff57bb4eeaa723db1f351891e671a7eaa7bf4fb61f85dafee9e37", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_q_ldu.py": "ec2589ca9abe71d674ba9ccf81f289b1526f56f3001c48d22977accb1be3e4dc", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_sylvester_factor.py": "60b21fda4ff451582087d30222a072eb1a214d531277e92883eaf28221aafced", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/CONTROLS.json": "12d9207e887fda73159a9e2e4776003ca6f905fc3dc45d77ced588a1c9f80cb2", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/ERASURE-ROUNDING-CONTROL.json": "cceb2ade8ce5e18be3871f771955e38258f5eb4e39790c016aab96d8cf0488ef", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/FIXED-A-LDU-CONTROLS.json": "d6bda457fff01e04b6565d84c7bdbac870569a2ba7ef18a1fc8db11b738faf38", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/FIXED-A-PERIODIC-NORM-AUDIT.md": "21027a569588922c491b2c5b4f31e01ddb784f1f20cdf48b7d482d0e85b66bdb", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/HOLES-AND-Q-LDU.md": "c6a032ed495325806ddf491c5c85bc822a7fdd613aff906a7be553960d0f85a3", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/HOLES-CONTROLS.json": "3f7e98ce524d5fb2ba2f911a350081340215e806ae945abf15a2fa07988ca2f8", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/LEDGER.json": "87eab0eb334ddc16e50cedbcab56320d2ff056c3dc87d7a5191171bb5a4c206e", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/NEAREST-NEIGHBOR-CONTROLS.json": "b85eca6098847e7b2f77b49a6c8c35e33cf790bc5dd01b95e1334daef9af47f4", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/NEAREST-NEIGHBOR-NORM.md": "7955383d50fc59b5c4c4d839c7e4d630add6208a3a233d7372a80309085ac6b2", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/PARTIAL-FUSION.md": "811a3a0c88a90708add5b12fb0a05c25623f0af155010d5dcacd56021c55cba5", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/POSITIVE-TREE-CONTROLS.json": "7b31811402ddda4668fe8375f6c90a6047511d50836dbb7cfc7ffcf24fe19a11", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/Q-LDU-CONTROLS.json": "370a07aa1a56c656ec1f44d7651dfbe999ad0c19dede9036257cc2f29dc39452", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/README.md": "4d65ea3c8b6a0d5faef819a58c8b8277681d11bed54686e9a7f78de29736e68e", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/REFINED-PHASE-FUSION.md": "b4367eac012624f803b3d2e3a72339e050a0071bbec37e6d33b2cf322bd70bc5", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/STABLE-POSITIVE-TREE.md": "ec2f8a1c4273b81217545d2710bcffdd09b5c9ba9349e887b5f7bf6f5bddfdc7", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/SYLVESTER-CONTROLS.json": "198af9f58c2950f17d8b1861ba4566bb2f6a0108a889a56db328fe67f8faa1a2", + "vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/TASK.md": "5eef77fb23f26f5bfb5dc8e376ed25e769924f2b6420ebfc8671e3b2a2f1f611", + "vendor/pr1673/capped-phase-fusion/FINAL-PACKAGE-REVIEW.json": "3457385de52d8e86853d96026a70aef2e8dece516db9eea020d8774e01d076a8", + "vendor/pr1673/capped-phase-fusion/FORWARD-SMALL-A-AUDIT.md": "e37aaa30b15671a1dff00676b14572213efaaac99df202dbba5e09f57af487c0", + "vendor/pr1673/capped-phase-fusion/frontier_fusion/bind_native_admission.py": "166541ca2b7f3066f4c2421e5a9f1886d58e1fdd7677904976261ab2c82b32cb", + "vendor/pr1673/capped-phase-fusion/frontier_fusion/check_frontier_fusion.py": "02f7f9ebf29487331171954c7ceb37ff5315e2f28a9d56096ebbf9fb865c70ab", + "vendor/pr1673/capped-phase-fusion/frontier_fusion/FRONTIER-FUSION-ARITHMETIC.json": "82656563e7c8725f95c4aea7e273805a3d3faf34c495a330f1c91a036765414a", + "vendor/pr1673/capped-phase-fusion/frontier_fusion/INDEPENDENT-SUBSTITUTION-RECEIPT.json": "49a8450289f1c1730c7d11d7c1506ad4af26fe9a1f76341f808a3025123e9519", + "vendor/pr1673/capped-phase-fusion/frontier_fusion/INDEPENDENT-SUBSTITUTION-REVIEW.md": "b48d3e14083829db81336b639a6cfc698ac0dccc76fa2606d11b4be7a968ddeb", + "vendor/pr1673/capped-phase-fusion/frontier_fusion/independent_substitution_check.py": "579bbde41e90792818c2726b38dcab26cf5a2695d3348731e814175146b0a737", + "vendor/pr1673/capped-phase-fusion/frontier_fusion/NATIVE-ADMISSION-BINDING.json": "ec4e89e0513958c1d553736cd06eedbc5f2aca61b40f92aeade3eb882bf588bc", + "vendor/pr1673/capped-phase-fusion/frontier_fusion/REPRODUCE.txt": "76808b685f1623813658f5b596a4b8191a07e7c0810550f6fada7fb4a4992913", + "vendor/pr1673/capped-phase-fusion/frontier_fusion/T74-APPENDIX.tex": "d053a6b69de2ff4005ee52eb3b673de606326aa0f0e290354675f9f08f915b99", + "vendor/pr1673/capped-phase-fusion/gaussian_fixed_width_note.tex": "6f3edb7b238f2b6af4f3e2d98dee90fe6f4ba063a5ccd120422e45c941712aab", + "vendor/pr1673/capped-phase-fusion/HALO-THEOREM.md": "cb9e1da38400b658f9209e465b4e5896fadd17dc66afa862f38bae8d8c1f2058", + "vendor/pr1673/capped-phase-fusion/INDEPENDENT-FINAL-REVIEW.json": "6b98e5222aa109a35be8b4fc9ec19669daebcc06d542ecec0a9c820da7930501", + "vendor/pr1673/capped-phase-fusion/LOG-A-PHASE-SCHUR-AUDIT.md": "e05d6b8596c80b6e8676569a0ff464a29fa704c3304143f58914f47cdf38b272", + "vendor/pr1673/capped-phase-fusion/make_native_capsule.py": "8f342ca212b8d601a11f704042c577c1b088e0079bda04b3065467c2f3c36ea0", + "vendor/pr1673/capped-phase-fusion/MANIFEST-UPDATE.json": "32c58bcab8e19ef895660331c13d31b5fae7d0c95f7cda4147870f29d8299f6d", + "vendor/pr1673/capped-phase-fusion/MANIFEST.json": "9af581d640e9c69d513256cf69babb0717287642134cfc807cedcd79966c1706", + "vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY-ARITHMETIC.json": "c6efc4d2f6d17159cefebf5c2dd6099a6327fe0911c5dd87623cad96c7d6c56a", + "vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY-REVIEW.json": "5cd5e97f93a9b3e439bfeffb52139d7bb1730de96ad13b59b7e1b20fdca6a3f6", + "vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY.md": "2d7fb1088e58bb86e574277733e082f135362215a69add71d9090213d32c9221", + "vendor/pr1673/capped-phase-fusion/MATRIX-LAYOUT-CONTROLS.json": "f8bd8729cb8438188e90fb9149f598b825461c97b4ed290584ca4367f812a48a", + "vendor/pr1673/capped-phase-fusion/MATRIX-LAYOUT-SIGNOFF.md": "4c8c62f723232e842dc3bbdcc4defcc8ff1aeb86ba9f694661899dc6783b13c4", + "vendor/pr1673/capped-phase-fusion/MATRIX-SOURCE-CONSTRUCTIONS.json": "114c1d8fb70592455a80c73d8a1bc6bfc9aca4e7395a420b6331d5474b4d1917", + "vendor/pr1673/capped-phase-fusion/MATRIX-SOURCE-COVERAGE.json": "fdc6849f97999a6cf99cdaa50591d24f78d6fb0bc580315f205452e5906b35cc", + "vendor/pr1673/capped-phase-fusion/MATRIX-TRANSFER-MANIFEST.json": "35d98d7579a16dae36530b4e5f4d0b8f925a069daa3f6fe1ea5276916167e0c2", + "vendor/pr1673/capped-phase-fusion/NATIVE-RECEIPT-CAPSULE.json": "a04d6bba3d15c11a219536b66a23012797484ae106ec1952ecd7b76f077ddb01", + "vendor/pr1673/capped-phase-fusion/OUTER-ARITHMETIC.json": "050c61d90236c593fd0827d7edc297e05604884e4ec093659aee46a9ee336020", + "vendor/pr1673/capped-phase-fusion/OUTER-AUDIT.md": "94799bfa2794eb867d6ba68593c3e92988ade083e74d895e8d07ae3b8d0670dc", + "vendor/pr1673/capped-phase-fusion/PACKAGE-MANIFEST.json": "298f1eaf79b5d5d57cb96fb3abb422174b78c31c14491a878f6176431d731d04", + "vendor/pr1673/capped-phase-fusion/PHASE-LAYOUT-AUDIT.md": "54aafc7afd09fe1a5312e69fad09c87422690543ab75c6ae35f6cbcc26b3eb8a", + "vendor/pr1673/capped-phase-fusion/phase_fusion_note.tex": "b5957f38c98a68f2584a42cedf91d753180dab438129fdf749b441074f00d4e1", + "vendor/pr1673/capped-phase-fusion/PROOF-AND-COVERAGE.md": "db7509d754bb7fc3381419e0fed2674f22a9d57d34e8420fd5afa3c688fde9aa", + "vendor/pr1673/capped-phase-fusion/PUBLICATION-CHECKS.json": "6e2fb68e6768c3aa4224aacb4900263586fc8114815a51df40f3f9fdf6124217", + "vendor/pr1673/capped-phase-fusion/PUBLICATION-SOURCES.json": "6082583794168b1c2320187214b86c93a5a6e76fbbddfcb3bdbb8c5bd34c0586", + "vendor/pr1673/capped-phase-fusion/README.md": "91af88b8fc53a22e1e968908f0e449cdfe2154c83f0dddb8a504e661c0c6965c", + "vendor/pr1673/capped-phase-fusion/REVIEW-RECEIPT.json": "97b20e50d3722fcde3831124a107df6c15c0ffdbb9e057b7867f41aaa2481800", + "vendor/pr1673/capped-phase-fusion/ROOT-EXACT-REPLAY.json": "d36114abe9d7a83c327f49f5ea153c6dcada4a7421f5e74a9a5ceb392cecb994", + "vendor/pr1673/capped-phase-fusion/ROOT-MATRIX-EXACT-REPLAY.json": "d6bd4fcb8a528655181b4aa3fd1bad7e6647a4ca5aa76ee7f2cdd800b698b225", + "vendor/pr1673/capped-phase-fusion/SHALLOW-TOEPLITZ.md": "b384b93f3fb4a8c97da2e617ebc14d55cebb0a739070e7f8dbb66f63e24e9310", + "vendor/pr1673/capped-phase-fusion/SOURCES.json": "14ce6fdc7c83e18ccf4fee19ff51062726c960ca44462a45af60dd686167d456", + "vendor/pr1673/capped-phase-fusion/SUPPLIER-SUPPORT-AUDIT.md": "bd5b06eca043c5c871227264f6a954473c55cd16ec85bb420ff538fb8ec1d8d6", + "vendor/pr1673/capped-phase-fusion/SUPPORT-ADVERSARIAL-AUDIT.md": "b1290f8720bf075ea2ad58d6070f3e1fc95c0155f8e33b165bc13439bbb9222d", + "vendor/pr1673/capped-phase-fusion/SUPPORT-ROUTER.md": "6ddb322e11883c1177ba6cd1a77d23a1dac827d7290b32eaf642457b1d762a54", + "vendor/pr1673/capped-phase-fusion/target002_upstream/full-1661-verification/RESULT.json": "11c57817a4d43a489010a13af7621d37eeedc398308c036e63a2a97119443861", + "vendor/pr1673/capped-phase-fusion/target002_upstream/full-1661-verification/STAGES.json": "c2edb01a61c03e04bf48e605422ff83c1d304e4d586268959d4ea24b743640fb", + "vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/CLAIM.json": "70aacd45f9e6fac8675687cf50da32e0ad4e479d9a5c28f2afd1550311ae8849", + "vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/MANIFEST.json": "d90d49eaa68e48c6992a07972e736ef4b9cd80274361cbbc1ec980d43f29ad7f", + "vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/new/SPEC.json": "d6b6a2140f3a61ae8cfdd8b51a1131934d63d2dd8573c1b13eb2b9528f3c3db8", + "vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/NOTICE": "3918a42010a435782de0fe8c38fab8f7df5d48a375ecf603c2bad1b818a16d6f", + "vendor/pr1673/capped-phase-fusion/TASK.json": "47b82ef23e20991010fae838ad4da9bdac3f947a8fea916a028fd6260f95f5f8", + "vendor/pr1673/capped-phase-fusion/TENSOR-COMPILER.md": "4d3b8466598a864a234b978e25976648d4e761840aad9153dd18d73d3dfe4d15", + "vendor/pr1673/capped-phase-fusion/VERIFIER-NEGATIVE-CONTROLS.json": "eeb887cdc0c76426c75ddbfc3d4af7ccbbe19d17962c6ad7a1549dafe8dabb5a", + "vendor/pr1673/capped-phase-fusion/VERIFY.json": "cb50aa523a0863a457181ca815e69a1b3b4d91ed1006a79263f4a8f18457c669", + "vendor/pr1673/capped-phase-fusion/verify.py": "93ef0f46e132485da6194587199b8f039e25b1b9f099f93bbdaeac5c0d66de7f", + "vendor/pr1786/FINE-PRIME-PADDING.md": "47d1b1b4df28aadda3cd6bdeb1fbc47290595e9208cd09c1a1f338520d33fdce", + "vendor/pr1786/NOTICE.md": "dcc1adb2461aa93ca62b6a912dbd8b215599e6af8053dfbacb7423b544dd659a", + "verify.py": "d5e7eebcd195f7b6d9e0300c5f452c5ae0e38c5b1bc5df536d8c273488da070f", + "verify_manifest.py": "723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b", + "verify_release.py": "bd8e9373edfe1062e7d6e8c2dc962fd4b5a4d05272f283ed85be3401a8d9463c" +} diff --git a/research/capped-fusion-t74-k554/NOTICE b/research/capped-fusion-t74-k554/NOTICE new file mode 100644 index 0000000000..b912ab3bf3 --- /dev/null +++ b/research/capped-fusion-t74-k554/NOTICE @@ -0,0 +1,8 @@ +New research prepared by Rohan Arun with substantial OpenAI Codex assistance. Apache-2.0. Parent words and build recipe method derive from Jeremy Kothe PR1274 and Rohan Arun PR1218, with lineage credited in README.md. All inherited mathematical qualifications are retained. +Additional pivot555 and567 composition by Rohan Arun with substantial OpenAI Codex assistance. + +T74 exact-fill owner construction by Rohan Arun with substantial OpenAI Codex assistance. + +PR1377 grid refinement credited to Jeremy Kothe. Outer witness refinement by Rohan Arun with OpenAI Codex assistance; construction unchanged. + +Pivot-566 kernel, words, edits, rebuild.py and rebind.py: PR1625 (mdumitrean). Endpoint/outer-witness stacking, fine_cache.py and oracle stage by jeremykothe2 with oh-my-pi assistance. diff --git a/research/capped-fusion-t74-k554/ORDER.json b/research/capped-fusion-t74-k554/ORDER.json new file mode 100644 index 0000000000..7409c4df10 --- /dev/null +++ b/research/capped-fusion-t74-k554/ORDER.json @@ -0,0 +1 @@ +[[0,0],[0,37],[0,1],[0,38],[0,2],[0,39],[0,3],[0,40],[0,4],[0,41],[1,0],[1,37],[0,5],[0,42],[1,1],[1,38],[0,6],[0,43],[1,2],[1,39],[0,7],[0,44],[1,3],[1,40],[0,8],[0,45],[1,4],[1,41],[0,9],[0,46],[2,0],[2,37],[1,5],[1,42],[0,10],[0,47],[2,1],[2,38],[1,6],[1,43],[0,11],[0,48],[2,2],[2,39],[1,7],[1,44],[0,12],[0,49],[2,3],[2,40],[1,8],[1,45],[0,13],[0,50],[2,4],[2,41],[1,9],[1,46],[3,0],[3,37],[0,14],[0,51],[2,5],[2,42],[1,10],[1,47],[3,1],[3,38],[0,15],[0,52],[2,6],[2,43],[1,11],[1,48],[3,2],[3,39],[0,16],[0,53],[2,7],[2,44],[1,12],[1,49],[3,3],[3,40],[0,17],[0,54],[2,8],[2,45],[1,13],[1,50],[3,4],[3,41],[0,18],[0,55],[2,9],[2,46],[4,0],[4,37],[1,14],[1,51],[3,5],[3,42],[0,19],[0,56],[2,10],[2,47],[4,1],[4,38],[1,15],[1,52],[3,6],[3,43],[0,20],[0,57],[2,11],[2,48],[4,2],[4,39],[1,16],[1,53],[3,7],[3,44],[0,21],[0,58],[2,12],[2,49],[4,3],[4,40],[1,17],[1,54],[3,8],[3,45],[0,22],[0,59],[2,13],[2,50],[4,4],[4,41],[1,18],[1,55],[3,9],[3,46],[0,23],[0,60],[5,0],[5,37],[2,14],[2,51],[4,5],[4,42],[1,19],[1,56],[3,10],[3,47],[0,24],[0,61],[5,1],[5,38],[2,15],[2,52],[4,6],[4,43],[1,20],[1,57],[3,11],[3,48],[0,25],[0,62],[5,2],[5,39],[2,16],[2,53],[4,7],[4,44],[1,21],[1,58],[3,12],[3,49],[0,26],[0,63],[5,3],[5,40],[2,17],[2,54],[4,8],[4,45],[1,22],[1,59],[3,13],[3,50],[0,27],[0,64],[5,4],[5,41],[2,18],[2,55],[4,9],[4,46],[1,23],[1,60],[6,0],[6,37],[3,14],[3,51],[0,28],[0,65],[5,5],[5,42],[2,19],[2,56],[4,10],[4,47],[1,24],[1,61],[6,1],[6,38],[3,15],[3,52],[0,29],[0,66],[5,6],[5,43],[2,20],[2,57],[4,11],[4,48],[1,25],[1,62],[6,2],[6,39],[3,16],[3,53],[0,30],[0,67],[5,7],[5,44],[2,21],[2,58],[4,12],[4,49],[1,26],[1,63],[6,3],[6,40],[3,17],[3,54],[0,31],[0,68],[5,8],[5,45],[2,22],[2,59],[4,13],[4,50],[1,27],[1,64],[6,4],[6,41],[3,18],[3,55],[0,32],[0,69],[5,9],[5,46],[2,23],[2,60],[7,0],[7,37],[4,14],[4,51],[1,28],[1,65],[6,5],[6,42],[3,19],[3,56],[0,33],[0,70],[5,10],[5,47],[2,24],[2,61],[7,1],[7,38],[4,15],[4,52],[1,29],[1,66],[6,6],[6,43],[3,20],[3,57],[0,34],[0,71],[5,11],[5,48],[2,25],[2,62],[7,2],[7,39],[4,16],[4,53],[1,30],[1,67],[6,7],[6,44],[3,21],[3,58],[0,35],[0,72],[5,12],[5,49],[2,26],[2,63],[7,3],[7,40],[4,17],[4,54],[1,31],[1,68],[6,8],[6,45],[3,22],[3,59],[0,36],[0,73],[5,13],[5,50],[2,27],[2,64],[7,4],[7,41],[4,18],[4,55],[1,32],[1,69],[6,9],[6,46],[3,23],[3,60],[8,0],[8,37],[5,14],[5,51],[2,28],[2,65],[7,5],[7,42],[4,19],[4,56],[1,33],[1,70],[6,10],[6,47],[3,24],[3,61],[8,1],[8,38],[5,15],[5,52],[2,29],[2,66],[7,6],[7,43],[4,20],[4,57],[1,34],[1,71],[6,11],[6,48],[3,25],[3,62],[8,2],[8,39],[5,16],[5,53],[2,30],[2,67],[7,7],[7,44],[4,21],[4,58],[1,35],[1,72],[6,12],[6,49],[3,26],[3,63],[8,3],[8,40],[5,17],[5,54],[2,31],[2,68],[7,8],[7,45],[4,22],[4,59],[1,36],[1,73],[6,13],[6,50],[3,27],[3,64],[8,4],[8,41],[5,18],[5,55],[2,32],[2,69],[7,9],[7,46],[4,23],[4,60],[6,14],[6,51],[3,28],[3,65],[8,5],[8,42],[5,19],[5,56],[2,33],[2,70],[7,10],[7,47],[4,24],[4,61],[6,15],[6,52],[3,29],[3,66],[8,6],[8,43],[5,20],[5,57],[2,34],[2,71],[7,11],[7,48],[4,25],[4,62],[6,16],[6,53],[3,30],[3,67],[8,7],[8,44],[5,21],[5,58],[2,35],[2,72],[7,12],[7,49],[4,26],[4,63],[6,17],[6,54],[3,31],[3,68],[8,8],[8,45],[5,22],[5,59],[2,36],[2,73],[7,13],[7,50],[4,27],[4,64],[6,18],[6,55],[3,32],[3,69],[8,9],[8,46],[5,23],[5,60],[7,14],[7,51],[4,28],[4,65],[6,19],[6,56],[3,33],[3,70],[8,10],[8,47],[5,24],[5,61],[7,15],[7,52],[4,29],[4,66],[6,20],[6,57],[3,34],[3,71],[8,11],[8,48],[5,25],[5,62],[7,16],[7,53],[4,30],[4,67],[6,21],[6,58],[3,35],[3,72],[8,12],[8,49],[5,26],[5,63],[7,17],[7,54],[4,31],[4,68],[6,22],[6,59],[3,36],[3,73],[8,13],[8,50],[5,27],[5,64],[7,18],[7,55],[4,32],[4,69],[6,23],[6,60],[8,14],[8,51],[5,28],[5,65],[7,19],[7,56],[4,33],[4,70],[6,24],[6,61],[8,15],[8,52],[5,29],[5,66],[7,20],[7,57],[4,34],[4,71],[6,25],[6,62],[8,16],[8,53],[5,30],[5,67],[7,21],[7,58],[4,35],[4,72],[6,26],[6,63],[8,17],[8,54],[5,31],[5,68],[7,22],[7,59],[4,36],[4,73],[6,27],[6,64],[8,18],[8,55],[5,32],[5,69],[7,23],[7,60],[6,28],[6,65],[8,19],[8,56],[5,33],[5,70],[7,24],[7,61],[6,29],[6,66],[8,20],[8,57],[5,34],[5,71],[7,25],[7,62],[6,30],[6,67],[8,21],[8,58],[5,35],[5,72],[7,26],[7,63],[6,31],[6,68],[8,22],[8,59],[5,36],[5,73],[7,27],[7,64],[6,32],[6,69],[8,23],[8,60],[7,28],[7,65],[6,33],[6,70],[8,24],[8,61],[7,29],[7,66],[6,34],[6,71],[8,25],[8,62],[7,30],[7,67],[6,35],[6,72],[8,26],[8,63],[7,31],[7,68],[6,36],[6,73],[8,27],[8,64],[7,32],[7,69],[8,28],[8,65],[7,33],[7,70],[8,29],[8,66],[7,34],[7,71],[8,30],[8,67],[7,35],[7,72],[8,31],[8,68],[7,36],[7,73],[8,32],[8,69],[8,33],[8,70],[8,34],[8,71],[8,35],[8,72],[8,36],[8,73]] \ No newline at end of file diff --git a/research/capped-fusion-t74-k554/OWNERS.json.gz b/research/capped-fusion-t74-k554/OWNERS.json.gz new file mode 100644 index 0000000000..a4c2021c16 Binary files /dev/null and b/research/capped-fusion-t74-k554/OWNERS.json.gz differ diff --git a/research/capped-fusion-t74-k554/PARENT-LIFT-RECEIPT.json b/research/capped-fusion-t74-k554/PARENT-LIFT-RECEIPT.json new file mode 100644 index 0000000000..39d2e3beff --- /dev/null +++ b/research/capped-fusion-t74-k554/PARENT-LIFT-RECEIPT.json @@ -0,0 +1 @@ +{"calls":666,"geometry":{"charged_prefix_bits":2048,"dimension":73,"pairs":4,"parent_helpers":504,"parent_idle":149184,"parent_live":111664,"parent_physical":112178,"replicas":74,"stages":9},"new_replicas":74,"new_sha256":"1d31424c4e27e26a35a9932ca778e43f1f3577589275422cc642aa68b31112db","old_replicas":37,"private_work_shared":514,"roles":319680,"source_sha256":"21297b20f1f2dc76eb9dd8124416068c3cb096bab9df17fa4da19bc68dfe082e","status":"PASS_EXACT_DIRECT_SUM_PARENT_AND_WINDOW_LIFT"} \ No newline at end of file diff --git a/research/capped-fusion-t74-k554/PLAN.json b/research/capped-fusion-t74-k554/PLAN.json new file mode 100644 index 0000000000..616ee566d0 --- /dev/null +++ b/research/capped-fusion-t74-k554/PLAN.json @@ -0,0 +1 @@ +{"K":4,"L":9,"M":73,"T":74,"assignment_content_sha256":"417903aed40c24e7853791e4a6e07193fb74a8a9e53fe51e7f13bcc9e9d47a9c","assignment_sha256":"cdfdcdec09592b4fd296ec49efe38573c1a61ecb8385b538ce801ee29355695b","deficit":23680,"gap":null,"live":66304,"mode":"mixed-t74-exact-fill","order":[[0,0],[0,37],[0,1],[0,38],[0,2],[0,39],[0,3],[0,40],[0,4],[0,41],[1,0],[1,37],[0,5],[0,42],[1,1],[1,38],[0,6],[0,43],[1,2],[1,39],[0,7],[0,44],[1,3],[1,40],[0,8],[0,45],[1,4],[1,41],[0,9],[0,46],[2,0],[2,37],[1,5],[1,42],[0,10],[0,47],[2,1],[2,38],[1,6],[1,43],[0,11],[0,48],[2,2],[2,39],[1,7],[1,44],[0,12],[0,49],[2,3],[2,40],[1,8],[1,45],[0,13],[0,50],[2,4],[2,41],[1,9],[1,46],[3,0],[3,37],[0,14],[0,51],[2,5],[2,42],[1,10],[1,47],[3,1],[3,38],[0,15],[0,52],[2,6],[2,43],[1,11],[1,48],[3,2],[3,39],[0,16],[0,53],[2,7],[2,44],[1,12],[1,49],[3,3],[3,40],[0,17],[0,54],[2,8],[2,45],[1,13],[1,50],[3,4],[3,41],[0,18],[0,55],[2,9],[2,46],[4,0],[4,37],[1,14],[1,51],[3,5],[3,42],[0,19],[0,56],[2,10],[2,47],[4,1],[4,38],[1,15],[1,52],[3,6],[3,43],[0,20],[0,57],[2,11],[2,48],[4,2],[4,39],[1,16],[1,53],[3,7],[3,44],[0,21],[0,58],[2,12],[2,49],[4,3],[4,40],[1,17],[1,54],[3,8],[3,45],[0,22],[0,59],[2,13],[2,50],[4,4],[4,41],[1,18],[1,55],[3,9],[3,46],[0,23],[0,60],[5,0],[5,37],[2,14],[2,51],[4,5],[4,42],[1,19],[1,56],[3,10],[3,47],[0,24],[0,61],[5,1],[5,38],[2,15],[2,52],[4,6],[4,43],[1,20],[1,57],[3,11],[3,48],[0,25],[0,62],[5,2],[5,39],[2,16],[2,53],[4,7],[4,44],[1,21],[1,58],[3,12],[3,49],[0,26],[0,63],[5,3],[5,40],[2,17],[2,54],[4,8],[4,45],[1,22],[1,59],[3,13],[3,50],[0,27],[0,64],[5,4],[5,41],[2,18],[2,55],[4,9],[4,46],[1,23],[1,60],[6,0],[6,37],[3,14],[3,51],[0,28],[0,65],[5,5],[5,42],[2,19],[2,56],[4,10],[4,47],[1,24],[1,61],[6,1],[6,38],[3,15],[3,52],[0,29],[0,66],[5,6],[5,43],[2,20],[2,57],[4,11],[4,48],[1,25],[1,62],[6,2],[6,39],[3,16],[3,53],[0,30],[0,67],[5,7],[5,44],[2,21],[2,58],[4,12],[4,49],[1,26],[1,63],[6,3],[6,40],[3,17],[3,54],[0,31],[0,68],[5,8],[5,45],[2,22],[2,59],[4,13],[4,50],[1,27],[1,64],[6,4],[6,41],[3,18],[3,55],[0,32],[0,69],[5,9],[5,46],[2,23],[2,60],[7,0],[7,37],[4,14],[4,51],[1,28],[1,65],[6,5],[6,42],[3,19],[3,56],[0,33],[0,70],[5,10],[5,47],[2,24],[2,61],[7,1],[7,38],[4,15],[4,52],[1,29],[1,66],[6,6],[6,43],[3,20],[3,57],[0,34],[0,71],[5,11],[5,48],[2,25],[2,62],[7,2],[7,39],[4,16],[4,53],[1,30],[1,67],[6,7],[6,44],[3,21],[3,58],[0,35],[0,72],[5,12],[5,49],[2,26],[2,63],[7,3],[7,40],[4,17],[4,54],[1,31],[1,68],[6,8],[6,45],[3,22],[3,59],[0,36],[0,73],[5,13],[5,50],[2,27],[2,64],[7,4],[7,41],[4,18],[4,55],[1,32],[1,69],[6,9],[6,46],[3,23],[3,60],[8,0],[8,37],[5,14],[5,51],[2,28],[2,65],[7,5],[7,42],[4,19],[4,56],[1,33],[1,70],[6,10],[6,47],[3,24],[3,61],[8,1],[8,38],[5,15],[5,52],[2,29],[2,66],[7,6],[7,43],[4,20],[4,57],[1,34],[1,71],[6,11],[6,48],[3,25],[3,62],[8,2],[8,39],[5,16],[5,53],[2,30],[2,67],[7,7],[7,44],[4,21],[4,58],[1,35],[1,72],[6,12],[6,49],[3,26],[3,63],[8,3],[8,40],[5,17],[5,54],[2,31],[2,68],[7,8],[7,45],[4,22],[4,59],[1,36],[1,73],[6,13],[6,50],[3,27],[3,64],[8,4],[8,41],[5,18],[5,55],[2,32],[2,69],[7,9],[7,46],[4,23],[4,60],[6,14],[6,51],[3,28],[3,65],[8,5],[8,42],[5,19],[5,56],[2,33],[2,70],[7,10],[7,47],[4,24],[4,61],[6,15],[6,52],[3,29],[3,66],[8,6],[8,43],[5,20],[5,57],[2,34],[2,71],[7,11],[7,48],[4,25],[4,62],[6,16],[6,53],[3,30],[3,67],[8,7],[8,44],[5,21],[5,58],[2,35],[2,72],[7,12],[7,49],[4,26],[4,63],[6,17],[6,54],[3,31],[3,68],[8,8],[8,45],[5,22],[5,59],[2,36],[2,73],[7,13],[7,50],[4,27],[4,64],[6,18],[6,55],[3,32],[3,69],[8,9],[8,46],[5,23],[5,60],[7,14],[7,51],[4,28],[4,65],[6,19],[6,56],[3,33],[3,70],[8,10],[8,47],[5,24],[5,61],[7,15],[7,52],[4,29],[4,66],[6,20],[6,57],[3,34],[3,71],[8,11],[8,48],[5,25],[5,62],[7,16],[7,53],[4,30],[4,67],[6,21],[6,58],[3,35],[3,72],[8,12],[8,49],[5,26],[5,63],[7,17],[7,54],[4,31],[4,68],[6,22],[6,59],[3,36],[3,73],[8,13],[8,50],[5,27],[5,64],[7,18],[7,55],[4,32],[4,69],[6,23],[6,60],[8,14],[8,51],[5,28],[5,65],[7,19],[7,56],[4,33],[4,70],[6,24],[6,61],[8,15],[8,52],[5,29],[5,66],[7,20],[7,57],[4,34],[4,71],[6,25],[6,62],[8,16],[8,53],[5,30],[5,67],[7,21],[7,58],[4,35],[4,72],[6,26],[6,63],[8,17],[8,54],[5,31],[5,68],[7,22],[7,59],[4,36],[4,73],[6,27],[6,64],[8,18],[8,55],[5,32],[5,69],[7,23],[7,60],[6,28],[6,65],[8,19],[8,56],[5,33],[5,70],[7,24],[7,61],[6,29],[6,66],[8,20],[8,57],[5,34],[5,71],[7,25],[7,62],[6,30],[6,67],[8,21],[8,58],[5,35],[5,72],[7,26],[7,63],[6,31],[6,68],[8,22],[8,59],[5,36],[5,73],[7,27],[7,64],[6,32],[6,69],[8,23],[8,60],[7,28],[7,65],[6,33],[6,70],[8,24],[8,61],[7,29],[7,66],[6,34],[6,71],[8,25],[8,62],[7,30],[7,67],[6,35],[6,72],[8,26],[8,63],[7,31],[7,68],[6,36],[6,73],[8,27],[8,64],[7,32],[7,69],[8,28],[8,65],[7,33],[7,70],[8,29],[8,66],[7,34],[7,71],[8,30],[8,67],[7,35],[7,72],[8,31],[8,68],[7,36],[7,73],[8,32],[8,69],[8,33],[8,70],[8,34],[8,71],[8,35],[8,72],[8,36],[8,73]],"pairs":{"0":1,"1":1,"10":3,"11":3,"12":0,"13":0,"14":1,"15":1,"16":2,"17":2,"2":1,"3":1,"4":2,"5":2,"6":2,"7":2,"8":3,"9":3},"per_call_widths":[{"replica":0,"stage":0,"time":0,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":37,"stage":0,"time":1,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":1,"stage":0,"time":2,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":38,"stage":0,"time":3,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":2,"stage":0,"time":4,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":39,"stage":0,"time":5,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":3,"stage":0,"time":6,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":40,"stage":0,"time":7,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":4,"stage":0,"time":8,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":41,"stage":0,"time":9,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":0,"stage":1,"time":10,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":37,"stage":1,"time":11,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":5,"stage":0,"time":12,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":42,"stage":0,"time":13,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":1,"stage":1,"time":14,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":38,"stage":1,"time":15,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":6,"stage":0,"time":16,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":43,"stage":0,"time":17,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":2,"stage":1,"time":18,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":39,"stage":1,"time":19,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":7,"stage":0,"time":20,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":44,"stage":0,"time":21,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":3,"stage":1,"time":22,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":40,"stage":1,"time":23,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":8,"stage":0,"time":24,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":45,"stage":0,"time":25,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":4,"stage":1,"time":26,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":41,"stage":1,"time":27,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":9,"stage":0,"time":28,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":46,"stage":0,"time":29,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":0,"stage":2,"time":30,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":37,"stage":2,"time":31,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":5,"stage":1,"time":32,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":42,"stage":1,"time":33,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":10,"stage":0,"time":34,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":47,"stage":0,"time":35,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":1,"stage":2,"time":36,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":38,"stage":2,"time":37,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":6,"stage":1,"time":38,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":43,"stage":1,"time":39,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":11,"stage":0,"time":40,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":48,"stage":0,"time":41,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":2,"stage":2,"time":42,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":39,"stage":2,"time":43,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":7,"stage":1,"time":44,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":44,"stage":1,"time":45,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":12,"stage":0,"time":46,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":49,"stage":0,"time":47,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":3,"stage":2,"time":48,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":40,"stage":2,"time":49,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":8,"stage":1,"time":50,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":45,"stage":1,"time":51,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":13,"stage":0,"time":52,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":50,"stage":0,"time":53,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":4,"stage":2,"time":54,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":41,"stage":2,"time":55,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":9,"stage":1,"time":56,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":46,"stage":1,"time":57,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":0,"stage":3,"time":58,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":37,"stage":3,"time":59,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":14,"stage":0,"time":60,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":51,"stage":0,"time":61,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":5,"stage":2,"time":62,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":42,"stage":2,"time":63,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":10,"stage":1,"time":64,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":47,"stage":1,"time":65,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":1,"stage":3,"time":66,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":38,"stage":3,"time":67,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":15,"stage":0,"time":68,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":52,"stage":0,"time":69,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":6,"stage":2,"time":70,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":43,"stage":2,"time":71,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":11,"stage":1,"time":72,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":48,"stage":1,"time":73,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":2,"stage":3,"time":74,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":39,"stage":3,"time":75,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":16,"stage":0,"time":76,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":53,"stage":0,"time":77,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":7,"stage":2,"time":78,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":44,"stage":2,"time":79,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":12,"stage":1,"time":80,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":49,"stage":1,"time":81,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":3,"stage":3,"time":82,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":40,"stage":3,"time":83,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":17,"stage":0,"time":84,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":54,"stage":0,"time":85,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":8,"stage":2,"time":86,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":45,"stage":2,"time":87,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":13,"stage":1,"time":88,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":50,"stage":1,"time":89,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":4,"stage":3,"time":90,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":41,"stage":3,"time":91,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":18,"stage":0,"time":92,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":55,"stage":0,"time":93,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":9,"stage":2,"time":94,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":46,"stage":2,"time":95,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":0,"stage":4,"time":96,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":37,"stage":4,"time":97,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":14,"stage":1,"time":98,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":51,"stage":1,"time":99,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":5,"stage":3,"time":100,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":42,"stage":3,"time":101,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":19,"stage":0,"time":102,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":56,"stage":0,"time":103,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":10,"stage":2,"time":104,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":47,"stage":2,"time":105,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":1,"stage":4,"time":106,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":38,"stage":4,"time":107,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":15,"stage":1,"time":108,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":52,"stage":1,"time":109,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":6,"stage":3,"time":110,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":43,"stage":3,"time":111,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":20,"stage":0,"time":112,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":57,"stage":0,"time":113,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":11,"stage":2,"time":114,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":48,"stage":2,"time":115,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":2,"stage":4,"time":116,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":39,"stage":4,"time":117,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":16,"stage":1,"time":118,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":53,"stage":1,"time":119,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":7,"stage":3,"time":120,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":44,"stage":3,"time":121,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":21,"stage":0,"time":122,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":58,"stage":0,"time":123,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":12,"stage":2,"time":124,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":49,"stage":2,"time":125,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":3,"stage":4,"time":126,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":40,"stage":4,"time":127,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":17,"stage":1,"time":128,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":54,"stage":1,"time":129,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":8,"stage":3,"time":130,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":45,"stage":3,"time":131,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":22,"stage":0,"time":132,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":59,"stage":0,"time":133,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":13,"stage":2,"time":134,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":50,"stage":2,"time":135,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":4,"stage":4,"time":136,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":41,"stage":4,"time":137,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":18,"stage":1,"time":138,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":55,"stage":1,"time":139,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":9,"stage":3,"time":140,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":46,"stage":3,"time":141,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":23,"stage":0,"time":142,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":60,"stage":0,"time":143,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":0,"stage":5,"time":144,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":37,"stage":5,"time":145,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":14,"stage":2,"time":146,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":51,"stage":2,"time":147,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":5,"stage":4,"time":148,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":42,"stage":4,"time":149,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":19,"stage":1,"time":150,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":56,"stage":1,"time":151,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":10,"stage":3,"time":152,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":47,"stage":3,"time":153,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":24,"stage":0,"time":154,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":61,"stage":0,"time":155,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":1,"stage":5,"time":156,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":38,"stage":5,"time":157,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":15,"stage":2,"time":158,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":52,"stage":2,"time":159,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":6,"stage":4,"time":160,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":43,"stage":4,"time":161,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":20,"stage":1,"time":162,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":57,"stage":1,"time":163,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":11,"stage":3,"time":164,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":48,"stage":3,"time":165,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":25,"stage":0,"time":166,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":62,"stage":0,"time":167,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":2,"stage":5,"time":168,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":39,"stage":5,"time":169,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":16,"stage":2,"time":170,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":53,"stage":2,"time":171,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":7,"stage":4,"time":172,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":44,"stage":4,"time":173,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":21,"stage":1,"time":174,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":58,"stage":1,"time":175,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":12,"stage":3,"time":176,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":49,"stage":3,"time":177,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":26,"stage":0,"time":178,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":63,"stage":0,"time":179,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":3,"stage":5,"time":180,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":40,"stage":5,"time":181,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":17,"stage":2,"time":182,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":54,"stage":2,"time":183,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":8,"stage":4,"time":184,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":45,"stage":4,"time":185,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":22,"stage":1,"time":186,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":59,"stage":1,"time":187,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":13,"stage":3,"time":188,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":50,"stage":3,"time":189,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":27,"stage":0,"time":190,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":64,"stage":0,"time":191,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":4,"stage":5,"time":192,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":41,"stage":5,"time":193,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":18,"stage":2,"time":194,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":55,"stage":2,"time":195,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":9,"stage":4,"time":196,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":46,"stage":4,"time":197,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":23,"stage":1,"time":198,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":60,"stage":1,"time":199,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":0,"stage":6,"time":200,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":37,"stage":6,"time":201,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":14,"stage":3,"time":202,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":51,"stage":3,"time":203,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":28,"stage":0,"time":204,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":65,"stage":0,"time":205,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":5,"stage":5,"time":206,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":42,"stage":5,"time":207,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":19,"stage":2,"time":208,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":56,"stage":2,"time":209,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":10,"stage":4,"time":210,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":47,"stage":4,"time":211,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":24,"stage":1,"time":212,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":61,"stage":1,"time":213,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":1,"stage":6,"time":214,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":38,"stage":6,"time":215,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":15,"stage":3,"time":216,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":52,"stage":3,"time":217,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":29,"stage":0,"time":218,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":66,"stage":0,"time":219,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":6,"stage":5,"time":220,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":43,"stage":5,"time":221,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":20,"stage":2,"time":222,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":57,"stage":2,"time":223,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":11,"stage":4,"time":224,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":48,"stage":4,"time":225,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":25,"stage":1,"time":226,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":62,"stage":1,"time":227,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":2,"stage":6,"time":228,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":39,"stage":6,"time":229,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":16,"stage":3,"time":230,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":53,"stage":3,"time":231,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":30,"stage":0,"time":232,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":67,"stage":0,"time":233,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":7,"stage":5,"time":234,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":44,"stage":5,"time":235,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":21,"stage":2,"time":236,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":58,"stage":2,"time":237,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":12,"stage":4,"time":238,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":49,"stage":4,"time":239,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":26,"stage":1,"time":240,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":63,"stage":1,"time":241,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":3,"stage":6,"time":242,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":40,"stage":6,"time":243,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":17,"stage":3,"time":244,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":54,"stage":3,"time":245,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":31,"stage":0,"time":246,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":68,"stage":0,"time":247,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":8,"stage":5,"time":248,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":45,"stage":5,"time":249,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":22,"stage":2,"time":250,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":59,"stage":2,"time":251,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":13,"stage":4,"time":252,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":50,"stage":4,"time":253,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":27,"stage":1,"time":254,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":64,"stage":1,"time":255,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":4,"stage":6,"time":256,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":41,"stage":6,"time":257,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":18,"stage":3,"time":258,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":55,"stage":3,"time":259,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":32,"stage":0,"time":260,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":69,"stage":0,"time":261,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":9,"stage":5,"time":262,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":46,"stage":5,"time":263,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":23,"stage":2,"time":264,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":60,"stage":2,"time":265,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":0,"stage":7,"time":266,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":37,"stage":7,"time":267,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":14,"stage":4,"time":268,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":51,"stage":4,"time":269,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":28,"stage":1,"time":270,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":65,"stage":1,"time":271,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":5,"stage":6,"time":272,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":42,"stage":6,"time":273,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":19,"stage":3,"time":274,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":56,"stage":3,"time":275,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":33,"stage":0,"time":276,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":70,"stage":0,"time":277,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":10,"stage":5,"time":278,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":47,"stage":5,"time":279,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":24,"stage":2,"time":280,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":61,"stage":2,"time":281,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":1,"stage":7,"time":282,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":38,"stage":7,"time":283,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":15,"stage":4,"time":284,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":52,"stage":4,"time":285,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":29,"stage":1,"time":286,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":66,"stage":1,"time":287,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":6,"stage":6,"time":288,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":43,"stage":6,"time":289,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":20,"stage":3,"time":290,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":57,"stage":3,"time":291,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":34,"stage":0,"time":292,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":71,"stage":0,"time":293,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":11,"stage":5,"time":294,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":48,"stage":5,"time":295,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":25,"stage":2,"time":296,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":62,"stage":2,"time":297,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":2,"stage":7,"time":298,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":39,"stage":7,"time":299,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":16,"stage":4,"time":300,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":53,"stage":4,"time":301,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":30,"stage":1,"time":302,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":67,"stage":1,"time":303,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":7,"stage":6,"time":304,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":44,"stage":6,"time":305,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":21,"stage":3,"time":306,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":58,"stage":3,"time":307,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":35,"stage":0,"time":308,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":72,"stage":0,"time":309,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":12,"stage":5,"time":310,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":49,"stage":5,"time":311,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":26,"stage":2,"time":312,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":63,"stage":2,"time":313,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":3,"stage":7,"time":314,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":40,"stage":7,"time":315,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":17,"stage":4,"time":316,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":54,"stage":4,"time":317,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":31,"stage":1,"time":318,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":68,"stage":1,"time":319,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":8,"stage":6,"time":320,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":45,"stage":6,"time":321,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":22,"stage":3,"time":322,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":59,"stage":3,"time":323,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":36,"stage":0,"time":324,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":73,"stage":0,"time":325,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":13,"stage":5,"time":326,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":50,"stage":5,"time":327,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":27,"stage":2,"time":328,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":64,"stage":2,"time":329,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":4,"stage":7,"time":330,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":41,"stage":7,"time":331,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":18,"stage":4,"time":332,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":55,"stage":4,"time":333,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":32,"stage":1,"time":334,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":69,"stage":1,"time":335,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":9,"stage":6,"time":336,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":46,"stage":6,"time":337,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":23,"stage":3,"time":338,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":60,"stage":3,"time":339,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":0,"stage":8,"time":340,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":37,"stage":8,"time":341,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":14,"stage":5,"time":342,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":51,"stage":5,"time":343,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":28,"stage":2,"time":344,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":65,"stage":2,"time":345,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":5,"stage":7,"time":346,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":42,"stage":7,"time":347,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":19,"stage":4,"time":348,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":56,"stage":4,"time":349,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":33,"stage":1,"time":350,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":70,"stage":1,"time":351,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":10,"stage":6,"time":352,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":47,"stage":6,"time":353,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":24,"stage":3,"time":354,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":61,"stage":3,"time":355,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":1,"stage":8,"time":356,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":38,"stage":8,"time":357,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":15,"stage":5,"time":358,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":52,"stage":5,"time":359,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":29,"stage":2,"time":360,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":66,"stage":2,"time":361,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":6,"stage":7,"time":362,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":43,"stage":7,"time":363,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":20,"stage":4,"time":364,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":57,"stage":4,"time":365,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":34,"stage":1,"time":366,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":71,"stage":1,"time":367,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":11,"stage":6,"time":368,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":48,"stage":6,"time":369,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":25,"stage":3,"time":370,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":62,"stage":3,"time":371,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":2,"stage":8,"time":372,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":39,"stage":8,"time":373,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":16,"stage":5,"time":374,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":53,"stage":5,"time":375,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":30,"stage":2,"time":376,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":67,"stage":2,"time":377,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":7,"stage":7,"time":378,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":44,"stage":7,"time":379,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":21,"stage":4,"time":380,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":58,"stage":4,"time":381,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":35,"stage":1,"time":382,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":72,"stage":1,"time":383,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":12,"stage":6,"time":384,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":49,"stage":6,"time":385,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":26,"stage":3,"time":386,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":63,"stage":3,"time":387,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":3,"stage":8,"time":388,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":40,"stage":8,"time":389,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":17,"stage":5,"time":390,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":54,"stage":5,"time":391,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":31,"stage":2,"time":392,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":68,"stage":2,"time":393,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":8,"stage":7,"time":394,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":45,"stage":7,"time":395,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":22,"stage":4,"time":396,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":59,"stage":4,"time":397,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":36,"stage":1,"time":398,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":73,"stage":1,"time":399,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":13,"stage":6,"time":400,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":50,"stage":6,"time":401,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":27,"stage":3,"time":402,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":64,"stage":3,"time":403,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":4,"stage":8,"time":404,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":41,"stage":8,"time":405,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":18,"stage":5,"time":406,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":55,"stage":5,"time":407,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":32,"stage":2,"time":408,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":69,"stage":2,"time":409,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":9,"stage":7,"time":410,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":46,"stage":7,"time":411,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":23,"stage":4,"time":412,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":60,"stage":4,"time":413,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":14,"stage":6,"time":414,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":51,"stage":6,"time":415,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":28,"stage":3,"time":416,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":65,"stage":3,"time":417,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":5,"stage":8,"time":418,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":42,"stage":8,"time":419,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":19,"stage":5,"time":420,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":56,"stage":5,"time":421,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":33,"stage":2,"time":422,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":70,"stage":2,"time":423,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":10,"stage":7,"time":424,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":47,"stage":7,"time":425,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":24,"stage":4,"time":426,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":61,"stage":4,"time":427,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":15,"stage":6,"time":428,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":52,"stage":6,"time":429,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":29,"stage":3,"time":430,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":66,"stage":3,"time":431,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":6,"stage":8,"time":432,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":43,"stage":8,"time":433,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":20,"stage":5,"time":434,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":57,"stage":5,"time":435,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":34,"stage":2,"time":436,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":71,"stage":2,"time":437,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":11,"stage":7,"time":438,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":48,"stage":7,"time":439,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":25,"stage":4,"time":440,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":62,"stage":4,"time":441,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":16,"stage":6,"time":442,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":53,"stage":6,"time":443,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":30,"stage":3,"time":444,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":67,"stage":3,"time":445,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":7,"stage":8,"time":446,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":44,"stage":8,"time":447,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":21,"stage":5,"time":448,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":58,"stage":5,"time":449,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":35,"stage":2,"time":450,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":72,"stage":2,"time":451,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":12,"stage":7,"time":452,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":49,"stage":7,"time":453,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":26,"stage":4,"time":454,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":63,"stage":4,"time":455,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":17,"stage":6,"time":456,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":54,"stage":6,"time":457,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":31,"stage":3,"time":458,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":68,"stage":3,"time":459,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":8,"stage":8,"time":460,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":45,"stage":8,"time":461,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":22,"stage":5,"time":462,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":59,"stage":5,"time":463,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":36,"stage":2,"time":464,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":73,"stage":2,"time":465,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":13,"stage":7,"time":466,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":50,"stage":7,"time":467,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":27,"stage":4,"time":468,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":64,"stage":4,"time":469,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":18,"stage":6,"time":470,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":55,"stage":6,"time":471,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":32,"stage":3,"time":472,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":69,"stage":3,"time":473,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":9,"stage":8,"time":474,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":46,"stage":8,"time":475,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":23,"stage":5,"time":476,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":60,"stage":5,"time":477,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":14,"stage":7,"time":478,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":51,"stage":7,"time":479,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":28,"stage":4,"time":480,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":65,"stage":4,"time":481,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":19,"stage":6,"time":482,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":56,"stage":6,"time":483,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":33,"stage":3,"time":484,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":70,"stage":3,"time":485,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":10,"stage":8,"time":486,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":47,"stage":8,"time":487,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":24,"stage":5,"time":488,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":61,"stage":5,"time":489,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":15,"stage":7,"time":490,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":52,"stage":7,"time":491,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":29,"stage":4,"time":492,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":66,"stage":4,"time":493,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":20,"stage":6,"time":494,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":57,"stage":6,"time":495,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":34,"stage":3,"time":496,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":71,"stage":3,"time":497,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":11,"stage":8,"time":498,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":48,"stage":8,"time":499,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":25,"stage":5,"time":500,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":62,"stage":5,"time":501,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":16,"stage":7,"time":502,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":53,"stage":7,"time":503,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":30,"stage":4,"time":504,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":67,"stage":4,"time":505,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":21,"stage":6,"time":506,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":58,"stage":6,"time":507,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":35,"stage":3,"time":508,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":72,"stage":3,"time":509,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":12,"stage":8,"time":510,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":49,"stage":8,"time":511,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":26,"stage":5,"time":512,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":63,"stage":5,"time":513,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":17,"stage":7,"time":514,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":54,"stage":7,"time":515,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":31,"stage":4,"time":516,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":68,"stage":4,"time":517,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":22,"stage":6,"time":518,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":59,"stage":6,"time":519,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":36,"stage":3,"time":520,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":73,"stage":3,"time":521,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":13,"stage":8,"time":522,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":50,"stage":8,"time":523,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":27,"stage":5,"time":524,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":64,"stage":5,"time":525,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":18,"stage":7,"time":526,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":55,"stage":7,"time":527,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":32,"stage":4,"time":528,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":69,"stage":4,"time":529,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":23,"stage":6,"time":530,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":60,"stage":6,"time":531,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":14,"stage":8,"time":532,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":51,"stage":8,"time":533,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":28,"stage":5,"time":534,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":65,"stage":5,"time":535,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":19,"stage":7,"time":536,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":56,"stage":7,"time":537,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":33,"stage":4,"time":538,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":70,"stage":4,"time":539,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":24,"stage":6,"time":540,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":61,"stage":6,"time":541,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":15,"stage":8,"time":542,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":52,"stage":8,"time":543,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":29,"stage":5,"time":544,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":66,"stage":5,"time":545,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":20,"stage":7,"time":546,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":57,"stage":7,"time":547,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":34,"stage":4,"time":548,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":71,"stage":4,"time":549,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":25,"stage":6,"time":550,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":62,"stage":6,"time":551,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":16,"stage":8,"time":552,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":53,"stage":8,"time":553,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":30,"stage":5,"time":554,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":67,"stage":5,"time":555,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":21,"stage":7,"time":556,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":58,"stage":7,"time":557,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":35,"stage":4,"time":558,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":72,"stage":4,"time":559,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":26,"stage":6,"time":560,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":63,"stage":6,"time":561,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":17,"stage":8,"time":562,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":54,"stage":8,"time":563,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":31,"stage":5,"time":564,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":68,"stage":5,"time":565,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":22,"stage":7,"time":566,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":59,"stage":7,"time":567,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":36,"stage":4,"time":568,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":73,"stage":4,"time":569,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":27,"stage":6,"time":570,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":64,"stage":6,"time":571,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":18,"stage":8,"time":572,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":55,"stage":8,"time":573,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":32,"stage":5,"time":574,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":69,"stage":5,"time":575,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":23,"stage":7,"time":576,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":60,"stage":7,"time":577,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":28,"stage":6,"time":578,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":65,"stage":6,"time":579,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":19,"stage":8,"time":580,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":56,"stage":8,"time":581,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":33,"stage":5,"time":582,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":70,"stage":5,"time":583,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":24,"stage":7,"time":584,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":61,"stage":7,"time":585,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":29,"stage":6,"time":586,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":66,"stage":6,"time":587,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":20,"stage":8,"time":588,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":57,"stage":8,"time":589,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":34,"stage":5,"time":590,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":71,"stage":5,"time":591,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":25,"stage":7,"time":592,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":62,"stage":7,"time":593,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":30,"stage":6,"time":594,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":67,"stage":6,"time":595,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":21,"stage":8,"time":596,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":58,"stage":8,"time":597,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":35,"stage":5,"time":598,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":72,"stage":5,"time":599,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":26,"stage":7,"time":600,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":63,"stage":7,"time":601,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":31,"stage":6,"time":602,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":68,"stage":6,"time":603,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":22,"stage":8,"time":604,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":59,"stage":8,"time":605,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":36,"stage":5,"time":606,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":73,"stage":5,"time":607,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":27,"stage":7,"time":608,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":64,"stage":7,"time":609,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":32,"stage":6,"time":610,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":69,"stage":6,"time":611,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":23,"stage":8,"time":612,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":60,"stage":8,"time":613,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":28,"stage":7,"time":614,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":65,"stage":7,"time":615,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":33,"stage":6,"time":616,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":70,"stage":6,"time":617,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":24,"stage":8,"time":618,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":61,"stage":8,"time":619,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":29,"stage":7,"time":620,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":66,"stage":7,"time":621,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":34,"stage":6,"time":622,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":71,"stage":6,"time":623,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":25,"stage":8,"time":624,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":62,"stage":8,"time":625,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":30,"stage":7,"time":626,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":67,"stage":7,"time":627,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":35,"stage":6,"time":628,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":72,"stage":6,"time":629,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":26,"stage":8,"time":630,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":63,"stage":8,"time":631,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":31,"stage":7,"time":632,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":68,"stage":7,"time":633,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":36,"stage":6,"time":634,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":73,"stage":6,"time":635,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":27,"stage":8,"time":636,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":64,"stage":8,"time":637,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":32,"stage":7,"time":638,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":69,"stage":7,"time":639,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":28,"stage":8,"time":640,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":65,"stage":8,"time":641,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":33,"stage":7,"time":642,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":70,"stage":7,"time":643,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":29,"stage":8,"time":644,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":66,"stage":8,"time":645,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":34,"stage":7,"time":646,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":71,"stage":7,"time":647,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":30,"stage":8,"time":648,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":67,"stage":8,"time":649,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":35,"stage":7,"time":650,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":72,"stage":7,"time":651,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":31,"stage":8,"time":652,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":68,"stage":8,"time":653,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":36,"stage":7,"time":654,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":73,"stage":7,"time":655,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":32,"stage":8,"time":656,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":69,"stage":8,"time":657,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":33,"stage":8,"time":658,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":70,"stage":8,"time":659,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":34,"stage":8,"time":660,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":71,"stage":8,"time":661,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":35,"stage":8,"time":662,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":72,"stage":8,"time":663,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":36,"stage":8,"time":664,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},{"replica":73,"stage":8,"time":665,"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]}],"profile":{"1":1559100,"2":339000,"3":277392,"4":84912,"48":22748,"5":54612,"8":5328},"provider_calls":[{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":0,"stage":0,"time":0},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":37,"stage":0,"time":1},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":1,"stage":0,"time":2},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":38,"stage":0,"time":3},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":2,"stage":0,"time":4},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":39,"stage":0,"time":5},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":3,"stage":0,"time":6},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":40,"stage":0,"time":7},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":4,"stage":0,"time":8},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":41,"stage":0,"time":9},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":0,"stage":1,"time":10},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":37,"stage":1,"time":11},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":5,"stage":0,"time":12},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":42,"stage":0,"time":13},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":1,"stage":1,"time":14},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":38,"stage":1,"time":15},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":6,"stage":0,"time":16},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":43,"stage":0,"time":17},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":2,"stage":1,"time":18},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":39,"stage":1,"time":19},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":7,"stage":0,"time":20},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":44,"stage":0,"time":21},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":3,"stage":1,"time":22},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":40,"stage":1,"time":23},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":8,"stage":0,"time":24},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":45,"stage":0,"time":25},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":4,"stage":1,"time":26},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":41,"stage":1,"time":27},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":9,"stage":0,"time":28},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":46,"stage":0,"time":29},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":0,"stage":2,"time":30},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":37,"stage":2,"time":31},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":5,"stage":1,"time":32},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":42,"stage":1,"time":33},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":10,"stage":0,"time":34},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":47,"stage":0,"time":35},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":1,"stage":2,"time":36},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":38,"stage":2,"time":37},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":6,"stage":1,"time":38},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":43,"stage":1,"time":39},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":11,"stage":0,"time":40},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":48,"stage":0,"time":41},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":2,"stage":2,"time":42},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":39,"stage":2,"time":43},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":7,"stage":1,"time":44},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":44,"stage":1,"time":45},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":12,"stage":0,"time":46},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":49,"stage":0,"time":47},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":3,"stage":2,"time":48},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":40,"stage":2,"time":49},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":8,"stage":1,"time":50},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":45,"stage":1,"time":51},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":13,"stage":0,"time":52},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":50,"stage":0,"time":53},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":4,"stage":2,"time":54},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":41,"stage":2,"time":55},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":9,"stage":1,"time":56},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":46,"stage":1,"time":57},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":0,"stage":3,"time":58},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":37,"stage":3,"time":59},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":14,"stage":0,"time":60},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":51,"stage":0,"time":61},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":5,"stage":2,"time":62},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":42,"stage":2,"time":63},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":10,"stage":1,"time":64},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":47,"stage":1,"time":65},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":1,"stage":3,"time":66},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":38,"stage":3,"time":67},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":15,"stage":0,"time":68},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":52,"stage":0,"time":69},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":6,"stage":2,"time":70},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":43,"stage":2,"time":71},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":11,"stage":1,"time":72},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":48,"stage":1,"time":73},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":2,"stage":3,"time":74},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":39,"stage":3,"time":75},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":16,"stage":0,"time":76},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":53,"stage":0,"time":77},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":7,"stage":2,"time":78},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":44,"stage":2,"time":79},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":12,"stage":1,"time":80},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":49,"stage":1,"time":81},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":3,"stage":3,"time":82},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":40,"stage":3,"time":83},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":17,"stage":0,"time":84},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":54,"stage":0,"time":85},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":8,"stage":2,"time":86},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":45,"stage":2,"time":87},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":13,"stage":1,"time":88},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":50,"stage":1,"time":89},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":4,"stage":3,"time":90},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":41,"stage":3,"time":91},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":18,"stage":0,"time":92},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":55,"stage":0,"time":93},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":9,"stage":2,"time":94},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":46,"stage":2,"time":95},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":0,"stage":4,"time":96},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":37,"stage":4,"time":97},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":14,"stage":1,"time":98},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":51,"stage":1,"time":99},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":5,"stage":3,"time":100},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":42,"stage":3,"time":101},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":19,"stage":0,"time":102},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":56,"stage":0,"time":103},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":10,"stage":2,"time":104},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":47,"stage":2,"time":105},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":1,"stage":4,"time":106},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":38,"stage":4,"time":107},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":15,"stage":1,"time":108},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":52,"stage":1,"time":109},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":6,"stage":3,"time":110},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":43,"stage":3,"time":111},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":20,"stage":0,"time":112},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":57,"stage":0,"time":113},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":11,"stage":2,"time":114},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":48,"stage":2,"time":115},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":2,"stage":4,"time":116},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":39,"stage":4,"time":117},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":16,"stage":1,"time":118},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":53,"stage":1,"time":119},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":7,"stage":3,"time":120},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":44,"stage":3,"time":121},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":21,"stage":0,"time":122},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":58,"stage":0,"time":123},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":12,"stage":2,"time":124},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":49,"stage":2,"time":125},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":3,"stage":4,"time":126},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":40,"stage":4,"time":127},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":17,"stage":1,"time":128},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":54,"stage":1,"time":129},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":8,"stage":3,"time":130},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":45,"stage":3,"time":131},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":22,"stage":0,"time":132},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":59,"stage":0,"time":133},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":13,"stage":2,"time":134},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":50,"stage":2,"time":135},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":4,"stage":4,"time":136},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":41,"stage":4,"time":137},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":18,"stage":1,"time":138},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":55,"stage":1,"time":139},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":9,"stage":3,"time":140},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":46,"stage":3,"time":141},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":23,"stage":0,"time":142},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":60,"stage":0,"time":143},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":0,"stage":5,"time":144},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":37,"stage":5,"time":145},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":14,"stage":2,"time":146},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":51,"stage":2,"time":147},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":5,"stage":4,"time":148},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":42,"stage":4,"time":149},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":19,"stage":1,"time":150},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":56,"stage":1,"time":151},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":10,"stage":3,"time":152},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":47,"stage":3,"time":153},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":24,"stage":0,"time":154},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":61,"stage":0,"time":155},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":1,"stage":5,"time":156},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":38,"stage":5,"time":157},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":15,"stage":2,"time":158},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":52,"stage":2,"time":159},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":6,"stage":4,"time":160},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":43,"stage":4,"time":161},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":20,"stage":1,"time":162},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":57,"stage":1,"time":163},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":11,"stage":3,"time":164},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":48,"stage":3,"time":165},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":25,"stage":0,"time":166},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":62,"stage":0,"time":167},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":2,"stage":5,"time":168},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":39,"stage":5,"time":169},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":16,"stage":2,"time":170},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":53,"stage":2,"time":171},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":7,"stage":4,"time":172},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":44,"stage":4,"time":173},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":21,"stage":1,"time":174},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":58,"stage":1,"time":175},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":12,"stage":3,"time":176},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":49,"stage":3,"time":177},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":26,"stage":0,"time":178},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":63,"stage":0,"time":179},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":3,"stage":5,"time":180},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":40,"stage":5,"time":181},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":17,"stage":2,"time":182},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":54,"stage":2,"time":183},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":8,"stage":4,"time":184},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":45,"stage":4,"time":185},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":22,"stage":1,"time":186},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":59,"stage":1,"time":187},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":13,"stage":3,"time":188},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":50,"stage":3,"time":189},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":27,"stage":0,"time":190},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":64,"stage":0,"time":191},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":4,"stage":5,"time":192},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":41,"stage":5,"time":193},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":18,"stage":2,"time":194},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":55,"stage":2,"time":195},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":9,"stage":4,"time":196},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":46,"stage":4,"time":197},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":23,"stage":1,"time":198},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":60,"stage":1,"time":199},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":0,"stage":6,"time":200},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":37,"stage":6,"time":201},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":14,"stage":3,"time":202},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":51,"stage":3,"time":203},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":28,"stage":0,"time":204},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":65,"stage":0,"time":205},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":5,"stage":5,"time":206},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":42,"stage":5,"time":207},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":19,"stage":2,"time":208},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":56,"stage":2,"time":209},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":10,"stage":4,"time":210},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":47,"stage":4,"time":211},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":24,"stage":1,"time":212},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":61,"stage":1,"time":213},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":1,"stage":6,"time":214},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":38,"stage":6,"time":215},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":15,"stage":3,"time":216},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":52,"stage":3,"time":217},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":29,"stage":0,"time":218},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":66,"stage":0,"time":219},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":6,"stage":5,"time":220},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":43,"stage":5,"time":221},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":20,"stage":2,"time":222},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":57,"stage":2,"time":223},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":11,"stage":4,"time":224},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":48,"stage":4,"time":225},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":25,"stage":1,"time":226},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":62,"stage":1,"time":227},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":2,"stage":6,"time":228},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":39,"stage":6,"time":229},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":16,"stage":3,"time":230},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":53,"stage":3,"time":231},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":30,"stage":0,"time":232},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":67,"stage":0,"time":233},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":7,"stage":5,"time":234},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":44,"stage":5,"time":235},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":21,"stage":2,"time":236},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":58,"stage":2,"time":237},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":12,"stage":4,"time":238},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":49,"stage":4,"time":239},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":26,"stage":1,"time":240},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":63,"stage":1,"time":241},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":3,"stage":6,"time":242},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":40,"stage":6,"time":243},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":17,"stage":3,"time":244},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":54,"stage":3,"time":245},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":31,"stage":0,"time":246},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":68,"stage":0,"time":247},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":8,"stage":5,"time":248},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":45,"stage":5,"time":249},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":22,"stage":2,"time":250},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":59,"stage":2,"time":251},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":13,"stage":4,"time":252},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":50,"stage":4,"time":253},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":27,"stage":1,"time":254},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":64,"stage":1,"time":255},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":4,"stage":6,"time":256},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":41,"stage":6,"time":257},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":18,"stage":3,"time":258},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":55,"stage":3,"time":259},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":32,"stage":0,"time":260},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":69,"stage":0,"time":261},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":9,"stage":5,"time":262},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":46,"stage":5,"time":263},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":23,"stage":2,"time":264},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":60,"stage":2,"time":265},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":0,"stage":7,"time":266},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":37,"stage":7,"time":267},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":14,"stage":4,"time":268},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":51,"stage":4,"time":269},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":28,"stage":1,"time":270},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":65,"stage":1,"time":271},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":5,"stage":6,"time":272},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":42,"stage":6,"time":273},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":19,"stage":3,"time":274},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":56,"stage":3,"time":275},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":33,"stage":0,"time":276},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":70,"stage":0,"time":277},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":10,"stage":5,"time":278},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":47,"stage":5,"time":279},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":24,"stage":2,"time":280},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":61,"stage":2,"time":281},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":1,"stage":7,"time":282},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":38,"stage":7,"time":283},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":15,"stage":4,"time":284},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":52,"stage":4,"time":285},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":29,"stage":1,"time":286},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":66,"stage":1,"time":287},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":6,"stage":6,"time":288},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":43,"stage":6,"time":289},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":20,"stage":3,"time":290},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":57,"stage":3,"time":291},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":34,"stage":0,"time":292},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":71,"stage":0,"time":293},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":11,"stage":5,"time":294},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":48,"stage":5,"time":295},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":25,"stage":2,"time":296},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":62,"stage":2,"time":297},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":2,"stage":7,"time":298},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":39,"stage":7,"time":299},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":16,"stage":4,"time":300},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":53,"stage":4,"time":301},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":30,"stage":1,"time":302},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":67,"stage":1,"time":303},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":7,"stage":6,"time":304},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":44,"stage":6,"time":305},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":21,"stage":3,"time":306},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":58,"stage":3,"time":307},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":35,"stage":0,"time":308},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":72,"stage":0,"time":309},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":12,"stage":5,"time":310},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":49,"stage":5,"time":311},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":26,"stage":2,"time":312},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":63,"stage":2,"time":313},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":3,"stage":7,"time":314},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":40,"stage":7,"time":315},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":17,"stage":4,"time":316},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":54,"stage":4,"time":317},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":31,"stage":1,"time":318},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":68,"stage":1,"time":319},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":8,"stage":6,"time":320},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":45,"stage":6,"time":321},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":22,"stage":3,"time":322},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":59,"stage":3,"time":323},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":36,"stage":0,"time":324},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":73,"stage":0,"time":325},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":13,"stage":5,"time":326},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":50,"stage":5,"time":327},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":27,"stage":2,"time":328},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":64,"stage":2,"time":329},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":4,"stage":7,"time":330},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":41,"stage":7,"time":331},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":18,"stage":4,"time":332},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":55,"stage":4,"time":333},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":32,"stage":1,"time":334},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":69,"stage":1,"time":335},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":9,"stage":6,"time":336},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":46,"stage":6,"time":337},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":23,"stage":3,"time":338},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":60,"stage":3,"time":339},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":0,"stage":8,"time":340},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":37,"stage":8,"time":341},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":14,"stage":5,"time":342},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":51,"stage":5,"time":343},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":28,"stage":2,"time":344},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":65,"stage":2,"time":345},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":5,"stage":7,"time":346},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":42,"stage":7,"time":347},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":19,"stage":4,"time":348},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":56,"stage":4,"time":349},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":33,"stage":1,"time":350},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":70,"stage":1,"time":351},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":10,"stage":6,"time":352},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":47,"stage":6,"time":353},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":24,"stage":3,"time":354},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":61,"stage":3,"time":355},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":1,"stage":8,"time":356},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":38,"stage":8,"time":357},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":15,"stage":5,"time":358},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":52,"stage":5,"time":359},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":29,"stage":2,"time":360},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":66,"stage":2,"time":361},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":6,"stage":7,"time":362},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":43,"stage":7,"time":363},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":20,"stage":4,"time":364},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":57,"stage":4,"time":365},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":34,"stage":1,"time":366},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":71,"stage":1,"time":367},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":11,"stage":6,"time":368},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":48,"stage":6,"time":369},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":25,"stage":3,"time":370},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":62,"stage":3,"time":371},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":2,"stage":8,"time":372},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":39,"stage":8,"time":373},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":16,"stage":5,"time":374},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":53,"stage":5,"time":375},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":30,"stage":2,"time":376},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":67,"stage":2,"time":377},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":7,"stage":7,"time":378},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":44,"stage":7,"time":379},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":21,"stage":4,"time":380},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":58,"stage":4,"time":381},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":35,"stage":1,"time":382},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":72,"stage":1,"time":383},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":12,"stage":6,"time":384},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":49,"stage":6,"time":385},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":26,"stage":3,"time":386},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":63,"stage":3,"time":387},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":3,"stage":8,"time":388},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":40,"stage":8,"time":389},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":17,"stage":5,"time":390},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":54,"stage":5,"time":391},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":31,"stage":2,"time":392},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":68,"stage":2,"time":393},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":8,"stage":7,"time":394},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":45,"stage":7,"time":395},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":22,"stage":4,"time":396},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":59,"stage":4,"time":397},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":36,"stage":1,"time":398},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":73,"stage":1,"time":399},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":13,"stage":6,"time":400},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":50,"stage":6,"time":401},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":27,"stage":3,"time":402},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":64,"stage":3,"time":403},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":4,"stage":8,"time":404},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":41,"stage":8,"time":405},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":18,"stage":5,"time":406},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":55,"stage":5,"time":407},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":32,"stage":2,"time":408},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":69,"stage":2,"time":409},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":9,"stage":7,"time":410},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":46,"stage":7,"time":411},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":23,"stage":4,"time":412},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":60,"stage":4,"time":413},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":14,"stage":6,"time":414},{"local_program_sha256":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06","orientation":"forward","provider":"extra","replica":51,"stage":6,"time":415},{"local_program_sha256":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","orientation":"backward","provider":"extra","replica":28,"stage":3,"time":416},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":65,"stage":3,"time":417},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":5,"stage":8,"time":418},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":42,"stage":8,"time":419},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":19,"stage":5,"time":420},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":56,"stage":5,"time":421},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":33,"stage":2,"time":422},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":70,"stage":2,"time":423},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":10,"stage":7,"time":424},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":47,"stage":7,"time":425},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":24,"stage":4,"time":426},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":61,"stage":4,"time":427},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":15,"stage":6,"time":428},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":52,"stage":6,"time":429},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":29,"stage":3,"time":430},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":66,"stage":3,"time":431},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":6,"stage":8,"time":432},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":43,"stage":8,"time":433},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":20,"stage":5,"time":434},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":57,"stage":5,"time":435},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":34,"stage":2,"time":436},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":71,"stage":2,"time":437},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":11,"stage":7,"time":438},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":48,"stage":7,"time":439},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":25,"stage":4,"time":440},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":62,"stage":4,"time":441},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":16,"stage":6,"time":442},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":53,"stage":6,"time":443},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":30,"stage":3,"time":444},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":67,"stage":3,"time":445},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":7,"stage":8,"time":446},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":44,"stage":8,"time":447},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":21,"stage":5,"time":448},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":58,"stage":5,"time":449},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":35,"stage":2,"time":450},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":72,"stage":2,"time":451},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":12,"stage":7,"time":452},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":49,"stage":7,"time":453},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":26,"stage":4,"time":454},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":63,"stage":4,"time":455},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":17,"stage":6,"time":456},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":54,"stage":6,"time":457},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":31,"stage":3,"time":458},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":68,"stage":3,"time":459},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":8,"stage":8,"time":460},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":45,"stage":8,"time":461},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":22,"stage":5,"time":462},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":59,"stage":5,"time":463},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":36,"stage":2,"time":464},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":73,"stage":2,"time":465},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":13,"stage":7,"time":466},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":50,"stage":7,"time":467},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":27,"stage":4,"time":468},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":64,"stage":4,"time":469},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":18,"stage":6,"time":470},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":55,"stage":6,"time":471},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":32,"stage":3,"time":472},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":69,"stage":3,"time":473},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":9,"stage":8,"time":474},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":46,"stage":8,"time":475},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":23,"stage":5,"time":476},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":60,"stage":5,"time":477},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":14,"stage":7,"time":478},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":51,"stage":7,"time":479},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":28,"stage":4,"time":480},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":65,"stage":4,"time":481},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":19,"stage":6,"time":482},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":56,"stage":6,"time":483},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":33,"stage":3,"time":484},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":70,"stage":3,"time":485},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":10,"stage":8,"time":486},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":47,"stage":8,"time":487},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":24,"stage":5,"time":488},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":61,"stage":5,"time":489},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":15,"stage":7,"time":490},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":52,"stage":7,"time":491},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":29,"stage":4,"time":492},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":66,"stage":4,"time":493},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":20,"stage":6,"time":494},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":57,"stage":6,"time":495},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":34,"stage":3,"time":496},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":71,"stage":3,"time":497},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":11,"stage":8,"time":498},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":48,"stage":8,"time":499},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":25,"stage":5,"time":500},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":62,"stage":5,"time":501},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":16,"stage":7,"time":502},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":53,"stage":7,"time":503},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":30,"stage":4,"time":504},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":67,"stage":4,"time":505},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":21,"stage":6,"time":506},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":58,"stage":6,"time":507},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":35,"stage":3,"time":508},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":72,"stage":3,"time":509},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":12,"stage":8,"time":510},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":49,"stage":8,"time":511},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":26,"stage":5,"time":512},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":63,"stage":5,"time":513},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":17,"stage":7,"time":514},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":54,"stage":7,"time":515},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":31,"stage":4,"time":516},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":68,"stage":4,"time":517},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":22,"stage":6,"time":518},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":59,"stage":6,"time":519},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":36,"stage":3,"time":520},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":73,"stage":3,"time":521},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":13,"stage":8,"time":522},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":50,"stage":8,"time":523},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":27,"stage":5,"time":524},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":64,"stage":5,"time":525},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":18,"stage":7,"time":526},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":55,"stage":7,"time":527},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":32,"stage":4,"time":528},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":69,"stage":4,"time":529},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":23,"stage":6,"time":530},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":60,"stage":6,"time":531},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":14,"stage":8,"time":532},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":51,"stage":8,"time":533},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":28,"stage":5,"time":534},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":65,"stage":5,"time":535},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":19,"stage":7,"time":536},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":56,"stage":7,"time":537},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":33,"stage":4,"time":538},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":70,"stage":4,"time":539},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":24,"stage":6,"time":540},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":61,"stage":6,"time":541},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":15,"stage":8,"time":542},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":52,"stage":8,"time":543},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":29,"stage":5,"time":544},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":66,"stage":5,"time":545},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":20,"stage":7,"time":546},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":57,"stage":7,"time":547},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":34,"stage":4,"time":548},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":71,"stage":4,"time":549},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":25,"stage":6,"time":550},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":62,"stage":6,"time":551},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":16,"stage":8,"time":552},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":53,"stage":8,"time":553},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":30,"stage":5,"time":554},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":67,"stage":5,"time":555},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":21,"stage":7,"time":556},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":58,"stage":7,"time":557},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":35,"stage":4,"time":558},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":72,"stage":4,"time":559},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":26,"stage":6,"time":560},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":63,"stage":6,"time":561},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":17,"stage":8,"time":562},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":54,"stage":8,"time":563},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":31,"stage":5,"time":564},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":68,"stage":5,"time":565},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":22,"stage":7,"time":566},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":59,"stage":7,"time":567},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":36,"stage":4,"time":568},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":73,"stage":4,"time":569},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":27,"stage":6,"time":570},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":64,"stage":6,"time":571},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":18,"stage":8,"time":572},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":55,"stage":8,"time":573},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":32,"stage":5,"time":574},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":69,"stage":5,"time":575},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":23,"stage":7,"time":576},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":60,"stage":7,"time":577},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":28,"stage":6,"time":578},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":65,"stage":6,"time":579},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":19,"stage":8,"time":580},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":56,"stage":8,"time":581},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":33,"stage":5,"time":582},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":70,"stage":5,"time":583},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":24,"stage":7,"time":584},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":61,"stage":7,"time":585},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":29,"stage":6,"time":586},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":66,"stage":6,"time":587},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":20,"stage":8,"time":588},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":57,"stage":8,"time":589},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":34,"stage":5,"time":590},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":71,"stage":5,"time":591},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":25,"stage":7,"time":592},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":62,"stage":7,"time":593},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":30,"stage":6,"time":594},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":67,"stage":6,"time":595},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":21,"stage":8,"time":596},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":58,"stage":8,"time":597},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":35,"stage":5,"time":598},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":72,"stage":5,"time":599},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":26,"stage":7,"time":600},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":63,"stage":7,"time":601},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":31,"stage":6,"time":602},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":68,"stage":6,"time":603},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":22,"stage":8,"time":604},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":59,"stage":8,"time":605},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":36,"stage":5,"time":606},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":73,"stage":5,"time":607},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":27,"stage":7,"time":608},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":64,"stage":7,"time":609},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":32,"stage":6,"time":610},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":69,"stage":6,"time":611},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":23,"stage":8,"time":612},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":60,"stage":8,"time":613},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":28,"stage":7,"time":614},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":65,"stage":7,"time":615},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":33,"stage":6,"time":616},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":70,"stage":6,"time":617},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":24,"stage":8,"time":618},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":61,"stage":8,"time":619},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":29,"stage":7,"time":620},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":66,"stage":7,"time":621},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":34,"stage":6,"time":622},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":71,"stage":6,"time":623},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":25,"stage":8,"time":624},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":62,"stage":8,"time":625},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":30,"stage":7,"time":626},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":67,"stage":7,"time":627},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":35,"stage":6,"time":628},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":72,"stage":6,"time":629},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":26,"stage":8,"time":630},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":63,"stage":8,"time":631},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":31,"stage":7,"time":632},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":68,"stage":7,"time":633},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":36,"stage":6,"time":634},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":73,"stage":6,"time":635},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":27,"stage":8,"time":636},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":64,"stage":8,"time":637},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":32,"stage":7,"time":638},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":69,"stage":7,"time":639},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":28,"stage":8,"time":640},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":65,"stage":8,"time":641},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":33,"stage":7,"time":642},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":70,"stage":7,"time":643},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":29,"stage":8,"time":644},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":66,"stage":8,"time":645},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":34,"stage":7,"time":646},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":71,"stage":7,"time":647},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":30,"stage":8,"time":648},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":67,"stage":8,"time":649},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":35,"stage":7,"time":650},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":72,"stage":7,"time":651},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":31,"stage":8,"time":652},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":68,"stage":8,"time":653},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":36,"stage":7,"time":654},{"local_program_sha256":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","orientation":"backward","provider":"gauge44","replica":73,"stage":7,"time":655},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":32,"stage":8,"time":656},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":69,"stage":8,"time":657},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":33,"stage":8,"time":658},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":70,"stage":8,"time":659},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":34,"stage":8,"time":660},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":71,"stage":8,"time":661},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":35,"stage":8,"time":662},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":72,"stage":8,"time":663},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":36,"stage":8,"time":664},{"local_program_sha256":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638","orientation":"forward","provider":"gauge44","replica":73,"stage":8,"time":665}],"provider_registry":{"extra":{"actual_paid_profile":{"1":2338,"2":512,"3":418,"4":126,"5":82,"8":8},"artifact_semantic_sha256":{"CANONICAL-WORD.json.gz":"c511d5e78aaa846ca0ebae8648caa30cd68620c88841afe10a9df81dcd2d3c58","CLIFFORD-RECIPES.json":"cf410b60c9e3d9e7f99d94b5b28c4e3ae61c4b32892df4e03257b60fe5a37b02","CLIFFORD-REVIEW.json":"6316e335baa284c6e1e8bc7ee31b1d42fddc541d4ac366fdfc7d78bd25d8f9cd","INDEPENDENT-LOCAL-REPLAY.json":"b527dce5557409da71db2f63e16535413ea28cd5d887328779cfe880fb04affa","LOCAL-CHECKS.json":"5981ee5125bd00c7ea960471cf029ebd0bc8c3d6b2360810235194d75c212589","LOCAL-PROGRAMS.json.gz":"937949e654a0bc1c90ea1e40ef040cea69435a53622d5e1e964e47a2b03264fd","RESIDUAL-ADAPTERS.json":"435b2e4ee1e39d0d373dce21591660b8de4834f6e44ff9813d1821e22ff3c9c1"},"artifact_sha256":{"CANONICAL-WORD.json.gz":"e38e2136e5a4a75bb843735a59158543eff04bd06384d73752b220d6938af73d","CLIFFORD-RECIPES.json":"cf410b60c9e3d9e7f99d94b5b28c4e3ae61c4b32892df4e03257b60fe5a37b02","CLIFFORD-REVIEW.json":"1f8a65f2f97628c91b813df1e49e9a3672081e53a924493a10e570afb282e924","INDEPENDENT-LOCAL-REPLAY.json":"39874d664110d1ee85da901e2cd56e7cd0f27e0153813d4608c98122a90815da","LOCAL-CHECKS.json":"ef01cb5b6d1779518282c69a20d1dbcdbf57cb89ba616e2101bb209b37d80286","LOCAL-PROGRAMS.json.gz":"26c2fd119125bfca1ae655bb8a57df064da250370e60a85e1e8e8c4649e6a904","RESIDUAL-ADAPTERS.json":"0102fa3b62b095c14a34d5af95cc321db38e5f5e03a4f226828e8ebf6fdbe20b"},"centers":[92,57,81,224,11,240,9,256],"directory":"providers/extra","orientation_program_sha256":{"backward":"c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a","forward":"0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06"},"ports":[11,19,35,67,131,259,13,21,37,69,133,261,41,73,137,265,49,81,145,273,161,289,193,321,385,14,22,38,70,134,262,26,74,138,266,50,146,274,98,162,290,194,322,386,28,44,140,268,84,148,276,100,164,292,196,324,388,56,88,152,280,104,168,296,200,328,392,112,176,304,208,336,400,224,352,416,448,508,506,502,494,478,446,382,254,505,501,493,477,445,381,253,499,491,475,443,379,251,487,471,439,375,247,463,431,367,239,415,351,223,319,191],"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},"gauge44":{"actual_paid_profile":{"1":2346,"2":504,"3":414,"4":130,"5":82,"8":8},"artifact_semantic_sha256":{"CANONICAL-WORD.json.gz":"499fb645aa5060c301953587784a7b74410c064359e47e96765c22b3e99b59be","CLIFFORD-RECIPES.json":"f1b5a509e39293f5d7ffea7b269fd9e5443e625a9286a022caa1fd4b62af8063","CLIFFORD-REVIEW.json":"54271d1585688ac9260703ebb25a05c161c8f419cec7436a543622b1b1a87112","INDEPENDENT-LOCAL-REPLAY.json":"dd28c06dfd036de2541f9b8669f5bc9598229df7b12a5816b8a77ae52ebca6ff","LOCAL-CHECKS.json":"d32c9a61d161318f32f007aa9980fe001e7ab24d5d000f8843c637dedc306bf2","LOCAL-PROGRAMS.json.gz":"b39fb114ee7ae98e46adea2ad2f6f94b05c73f9f265ab62522b9cd729f7e311d","RESIDUAL-ADAPTERS.json":"df5afb8969525b20e7eb4cf572270b724a9427f8d16f78edbd014c5005191133"},"artifact_sha256":{"CANONICAL-WORD.json.gz":"f69c0ca2c217eab87a231b67e548cd6491286314b1215e19f0b1d7463afd5e91","CLIFFORD-RECIPES.json":"f1b5a509e39293f5d7ffea7b269fd9e5443e625a9286a022caa1fd4b62af8063","CLIFFORD-REVIEW.json":"6154a20efd7dc4fc1f774676daed2bce47c9c2772a4e1c274a15d97f6fc2d783","INDEPENDENT-LOCAL-REPLAY.json":"70b4b787a5a4529452a58e9ac48826e848748a35b95a9b20c5358f4355705058","LOCAL-CHECKS.json":"e52e7feece9cb22e83c1d687c0f98731f8d50b7e8c863732ec662c89453fbcd4","LOCAL-PROGRAMS.json.gz":"81d4aefacaa27f2f215e7d35559d5a079ca521f4ca2eb9a9c6a6bd7062179bff","RESIDUAL-ADAPTERS.json":"89e5779ba4fcc1b1a76bed05c9b36600bc1dc3c6efd7e623865692ec715c30c5"},"centers":[92,57,81,224,11,240,9,256],"directory":"providers/gauge44","orientation_program_sha256":{"backward":"104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a","forward":"4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638"},"ports":[11,19,35,67,131,259,13,21,37,69,133,261,41,73,137,265,49,81,145,273,161,289,193,321,385,14,22,38,70,134,262,26,74,138,266,50,146,274,98,162,290,194,322,386,28,44,140,268,84,148,276,100,164,292,196,324,388,56,88,152,280,104,168,296,200,328,392,112,176,304,208,336,400,224,352,416,448,508,506,502,494,478,446,382,254,505,501,493,477,445,381,253,499,491,475,443,379,251,487,471,439,375,247,463,431,367,239,415,351,223,319,191],"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]}},"replica_lift":{"copies":2,"owners_file_sha256":"cdfdcdec09592b4fd296ec49efe38573c1a61ecb8385b538ce801ee29355695b","parent_template_content_sha256":"84e1c038e40bb86a8e20629a7492c75c2dff1b00c8543720a74f62ab224ef67f","phase_recipe_unchanged":true,"replicas":74,"schedule_content_sha256":"e57f93590a1096bc28dfe174da2a373b7034d02adc4e92056da814f0904f6205","source_replicas":37},"sides":{"0":0,"1":0,"10":1,"11":1,"12":0,"13":1,"14":0,"15":1,"16":0,"17":1,"2":1,"3":1,"4":0,"5":0,"6":1,"7":1,"8":0,"9":0},"solver_status":"exact alternating paths on frozen legal bins","source_owners_sha256":"c41fdf51541ecc91af914f264967f3633570500994f8866daf642440a5d843dd","source_plan_sha256":"c5da66a8061a86ca7d3eab975829488f6c086a59966150b193d614ff0d0c4847","status":"EXPLICIT_T74_ALTERNATING_PATH_EXACT_FILL","windows":{"0,0":[16,[0,1,2,3,4,5,6,7,8,9,10]],"0,1":[8,[11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30]],"0,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144]],"0,11":[8,[145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200]],"0,12":[48,[31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340]],"0,13":[48,[31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340]],"0,14":[32,[97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340]],"0,15":[32,[97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340]],"0,16":[16,[201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340]],"0,17":[16,[201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340]],"0,2":[16,[0,1,2,3,4,5,6,7,8,9,10]],"0,3":[8,[11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30]],"0,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58]],"0,5":[8,[59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96]],"0,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58]],"0,7":[8,[59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96]],"0,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144]],"0,9":[8,[145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200]],"1,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]],"1,1":[8,[15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36]],"1,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156]],"1,11":[8,[157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214]],"1,12":[48,[37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356]],"1,13":[48,[37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356]],"1,14":[32,[107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356]],"1,15":[32,[107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356]],"1,16":[16,[215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356]],"1,17":[16,[215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356]],"1,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]],"1,3":[8,[15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36]],"1,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66]],"1,5":[8,[67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106]],"1,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66]],"1,7":[8,[67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106]],"1,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156]],"1,9":[8,[157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214]],"10,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64]],"10,1":[8,[65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104]],"10,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278]],"10,11":[8,[279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352]],"10,12":[48,[105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486]],"10,13":[48,[105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486]],"10,14":[32,[211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486]],"10,15":[32,[211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486]],"10,16":[16,[353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486]],"10,17":[16,[353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486]],"10,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64]],"10,3":[8,[65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104]],"10,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152]],"10,5":[8,[153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210]],"10,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152]],"10,7":[8,[153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210]],"10,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278]],"10,9":[8,[279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352]],"11,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72]],"11,1":[8,[73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114]],"11,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294]],"11,11":[8,[295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368]],"11,12":[48,[115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498]],"11,13":[48,[115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498]],"11,14":[32,[225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498]],"11,15":[32,[225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498]],"11,16":[16,[369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498]],"11,17":[16,[369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498]],"11,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72]],"11,3":[8,[73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114]],"11,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164]],"11,5":[8,[165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224]],"11,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164]],"11,7":[8,[165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224]],"11,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294]],"11,9":[8,[295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368]],"12,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80]],"12,1":[8,[81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124]],"12,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310]],"12,11":[8,[311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384]],"12,12":[48,[125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510]],"12,13":[48,[125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510]],"12,14":[32,[239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510]],"12,15":[32,[239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510]],"12,16":[16,[385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510]],"12,17":[16,[385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510]],"12,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80]],"12,3":[8,[81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124]],"12,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176]],"12,5":[8,[177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238]],"12,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176]],"12,7":[8,[177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238]],"12,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310]],"12,9":[8,[311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384]],"13,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88]],"13,1":[8,[89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134]],"13,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326]],"13,11":[8,[327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400]],"13,12":[48,[135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522]],"13,13":[48,[135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522]],"13,14":[32,[253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522]],"13,15":[32,[253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522]],"13,16":[16,[401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522]],"13,17":[16,[401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522]],"13,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88]],"13,3":[8,[89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134]],"13,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188]],"13,5":[8,[189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252]],"13,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188]],"13,7":[8,[189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252]],"13,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326]],"13,9":[8,[327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400]],"14,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98]],"14,1":[8,[99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146]],"14,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342]],"14,11":[8,[343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414]],"14,12":[48,[147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532]],"14,13":[48,[147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532]],"14,14":[32,[269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532]],"14,15":[32,[269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532]],"14,16":[16,[415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532]],"14,17":[16,[415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532]],"14,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98]],"14,3":[8,[99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146]],"14,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202]],"14,5":[8,[203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268]],"14,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202]],"14,7":[8,[203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268]],"14,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342]],"14,9":[8,[343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414]],"15,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108]],"15,1":[8,[109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158]],"15,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358]],"15,11":[8,[359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428]],"15,12":[48,[159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542]],"15,13":[48,[159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542]],"15,14":[32,[285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542]],"15,15":[32,[285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542]],"15,16":[16,[429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542]],"15,17":[16,[429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542]],"15,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108]],"15,3":[8,[109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158]],"15,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216]],"15,5":[8,[217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284]],"15,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216]],"15,7":[8,[217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284]],"15,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358]],"15,9":[8,[359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428]],"16,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118]],"16,1":[8,[119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170]],"16,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374]],"16,11":[8,[375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442]],"16,12":[48,[171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552]],"16,13":[48,[171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552]],"16,14":[32,[301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552]],"16,15":[32,[301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552]],"16,16":[16,[443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552]],"16,17":[16,[443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552]],"16,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118]],"16,3":[8,[119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170]],"16,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230]],"16,5":[8,[231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300]],"16,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230]],"16,7":[8,[231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300]],"16,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374]],"16,9":[8,[375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442]],"17,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128]],"17,1":[8,[129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182]],"17,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390]],"17,11":[8,[391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456]],"17,12":[48,[183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562]],"17,13":[48,[183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562]],"17,14":[32,[317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562]],"17,15":[32,[317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562]],"17,16":[16,[457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562]],"17,17":[16,[457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562]],"17,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128]],"17,3":[8,[129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182]],"17,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244]],"17,5":[8,[245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316]],"17,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244]],"17,7":[8,[245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316]],"17,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390]],"17,9":[8,[391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456]],"18,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138]],"18,1":[8,[139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194]],"18,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406]],"18,11":[8,[407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470]],"18,12":[48,[195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572]],"18,13":[48,[195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572]],"18,14":[32,[333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572]],"18,15":[32,[333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572]],"18,16":[16,[471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572]],"18,17":[16,[471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572]],"18,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138]],"18,3":[8,[139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194]],"18,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258]],"18,5":[8,[259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332]],"18,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258]],"18,7":[8,[259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332]],"18,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406]],"18,9":[8,[407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470]],"19,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150]],"19,1":[8,[151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208]],"19,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420]],"19,11":[8,[421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482]],"19,12":[48,[209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580]],"19,13":[48,[209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580]],"19,14":[32,[349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580]],"19,15":[32,[349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580]],"19,16":[16,[483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580]],"19,17":[16,[483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580]],"19,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150]],"19,3":[8,[151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208]],"19,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274]],"19,5":[8,[275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348]],"19,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274]],"19,7":[8,[275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348]],"19,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420]],"19,9":[8,[421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482]],"2,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18]],"2,1":[8,[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42]],"2,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168]],"2,11":[8,[169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228]],"2,12":[48,[43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372]],"2,13":[48,[43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372]],"2,14":[32,[117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372]],"2,15":[32,[117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372]],"2,16":[16,[229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372]],"2,17":[16,[229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372]],"2,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18]],"2,3":[8,[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42]],"2,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74]],"2,5":[8,[75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116]],"2,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74]],"2,7":[8,[75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116]],"2,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168]],"2,9":[8,[169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228]],"20,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162]],"20,1":[8,[163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222]],"20,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434]],"20,11":[8,[435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494]],"20,12":[48,[223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588]],"20,13":[48,[223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588]],"20,14":[32,[365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588]],"20,15":[32,[365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588]],"20,16":[16,[495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588]],"20,17":[16,[495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588]],"20,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162]],"20,3":[8,[163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222]],"20,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290]],"20,5":[8,[291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364]],"20,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290]],"20,7":[8,[291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364]],"20,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434]],"20,9":[8,[435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494]],"21,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174]],"21,1":[8,[175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236]],"21,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448]],"21,11":[8,[449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506]],"21,12":[48,[237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596]],"21,13":[48,[237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596]],"21,14":[32,[381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596]],"21,15":[32,[381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596]],"21,16":[16,[507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596]],"21,17":[16,[507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596]],"21,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174]],"21,3":[8,[175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236]],"21,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306]],"21,5":[8,[307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380]],"21,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306]],"21,7":[8,[307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380]],"21,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448]],"21,9":[8,[449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506]],"22,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186]],"22,1":[8,[187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250]],"22,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462]],"22,11":[8,[463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518]],"22,12":[48,[251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604]],"22,13":[48,[251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604]],"22,14":[32,[397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604]],"22,15":[32,[397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604]],"22,16":[16,[519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604]],"22,17":[16,[519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604]],"22,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186]],"22,3":[8,[187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250]],"22,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322]],"22,5":[8,[323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396]],"22,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322]],"22,7":[8,[323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396]],"22,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462]],"22,9":[8,[463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518]],"23,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198]],"23,1":[8,[199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264]],"23,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476]],"23,11":[8,[477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530]],"23,12":[48,[265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612]],"23,13":[48,[265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612]],"23,14":[32,[413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612]],"23,15":[32,[413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612]],"23,16":[16,[531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612]],"23,17":[16,[531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612]],"23,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198]],"23,3":[8,[199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264]],"23,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338]],"23,5":[8,[339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412]],"23,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338]],"23,7":[8,[339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412]],"23,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476]],"23,9":[8,[477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530]],"24,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212]],"24,1":[8,[213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280]],"24,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488]],"24,11":[8,[489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540]],"24,12":[48,[281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618]],"24,13":[48,[281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618]],"24,14":[32,[427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618]],"24,15":[32,[427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618]],"24,16":[16,[541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618]],"24,17":[16,[541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618]],"24,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212]],"24,3":[8,[213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280]],"24,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354]],"24,5":[8,[355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426]],"24,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354]],"24,7":[8,[355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426]],"24,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488]],"24,9":[8,[489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540]],"25,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226]],"25,1":[8,[227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296]],"25,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500]],"25,11":[8,[501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550]],"25,12":[48,[297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624]],"25,13":[48,[297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624]],"25,14":[32,[441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624]],"25,15":[32,[441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624]],"25,16":[16,[551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624]],"25,17":[16,[551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624]],"25,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226]],"25,3":[8,[227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296]],"25,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370]],"25,5":[8,[371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440]],"25,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370]],"25,7":[8,[371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440]],"25,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500]],"25,9":[8,[501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550]],"26,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240]],"26,1":[8,[241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312]],"26,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512]],"26,11":[8,[513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560]],"26,12":[48,[313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630]],"26,13":[48,[313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630]],"26,14":[32,[455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630]],"26,15":[32,[455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630]],"26,16":[16,[561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630]],"26,17":[16,[561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630]],"26,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240]],"26,3":[8,[241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312]],"26,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386]],"26,5":[8,[387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454]],"26,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386]],"26,7":[8,[387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454]],"26,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512]],"26,9":[8,[513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560]],"27,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254]],"27,1":[8,[255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328]],"27,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524]],"27,11":[8,[525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570]],"27,12":[48,[329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636]],"27,13":[48,[329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636]],"27,14":[32,[469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636]],"27,15":[32,[469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636]],"27,16":[16,[571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636]],"27,17":[16,[571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636]],"27,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254]],"27,3":[8,[255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328]],"27,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402]],"27,5":[8,[403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468]],"27,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402]],"27,7":[8,[403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468]],"27,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524]],"27,9":[8,[525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570]],"28,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270]],"28,1":[8,[271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344]],"28,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534]],"28,11":[8,[535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578]],"28,12":[48,[345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640]],"28,13":[48,[345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640]],"28,14":[32,[481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640]],"28,15":[32,[481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640]],"28,16":[16,[579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640]],"28,17":[16,[579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640]],"28,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270]],"28,3":[8,[271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344]],"28,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416]],"28,5":[8,[417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480]],"28,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416]],"28,7":[8,[417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480]],"28,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534]],"28,9":[8,[535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578]],"29,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286]],"29,1":[8,[287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360]],"29,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544]],"29,11":[8,[545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586]],"29,12":[48,[361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644]],"29,13":[48,[361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644]],"29,14":[32,[493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644]],"29,15":[32,[493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644]],"29,16":[16,[587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644]],"29,17":[16,[587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644]],"29,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286]],"29,3":[8,[287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360]],"29,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430]],"29,5":[8,[431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492]],"29,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430]],"29,7":[8,[431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492]],"29,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544]],"29,9":[8,[545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586]],"3,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]],"3,1":[8,[23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48]],"3,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180]],"3,11":[8,[181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242]],"3,12":[48,[49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388]],"3,13":[48,[49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388]],"3,14":[32,[127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388]],"3,15":[32,[127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388]],"3,16":[16,[243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388]],"3,17":[16,[243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388]],"3,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]],"3,3":[8,[23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48]],"3,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82]],"3,5":[8,[83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126]],"3,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82]],"3,7":[8,[83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126]],"3,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180]],"3,9":[8,[181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242]],"30,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302]],"30,1":[8,[303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376]],"30,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554]],"30,11":[8,[555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594]],"30,12":[48,[377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648]],"30,13":[48,[377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648]],"30,14":[32,[505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648]],"30,15":[32,[505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648]],"30,16":[16,[595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648]],"30,17":[16,[595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648]],"30,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302]],"30,3":[8,[303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376]],"30,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444]],"30,5":[8,[445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504]],"30,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444]],"30,7":[8,[445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504]],"30,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554]],"30,9":[8,[555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594]],"31,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318]],"31,1":[8,[319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392]],"31,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564]],"31,11":[8,[565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602]],"31,12":[48,[393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652]],"31,13":[48,[393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652]],"31,14":[32,[517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652]],"31,15":[32,[517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652]],"31,16":[16,[603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652]],"31,17":[16,[603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652]],"31,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318]],"31,3":[8,[319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392]],"31,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458]],"31,5":[8,[459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516]],"31,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458]],"31,7":[8,[459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516]],"31,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564]],"31,9":[8,[565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602]],"32,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334]],"32,1":[8,[335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408]],"32,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574]],"32,11":[8,[575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610]],"32,12":[48,[409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656]],"32,13":[48,[409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656]],"32,14":[32,[529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656]],"32,15":[32,[529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656]],"32,16":[16,[611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656]],"32,17":[16,[611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656]],"32,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334]],"32,3":[8,[335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408]],"32,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472]],"32,5":[8,[473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528]],"32,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472]],"32,7":[8,[473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528]],"32,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574]],"32,9":[8,[575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610]],"33,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350]],"33,1":[8,[351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422]],"33,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582]],"33,11":[8,[583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616]],"33,12":[48,[423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658]],"33,13":[48,[423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658]],"33,14":[32,[539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658]],"33,15":[32,[539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658]],"33,16":[16,[617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658]],"33,17":[16,[617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658]],"33,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350]],"33,3":[8,[351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422]],"33,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484]],"33,5":[8,[485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538]],"33,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484]],"33,7":[8,[485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538]],"33,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582]],"33,9":[8,[583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616]],"34,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366]],"34,1":[8,[367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436]],"34,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590]],"34,11":[8,[591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622]],"34,12":[48,[437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660]],"34,13":[48,[437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660]],"34,14":[32,[549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660]],"34,15":[32,[549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660]],"34,16":[16,[623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660]],"34,17":[16,[623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660]],"34,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366]],"34,3":[8,[367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436]],"34,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496]],"34,5":[8,[497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548]],"34,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496]],"34,7":[8,[497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548]],"34,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590]],"34,9":[8,[591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622]],"35,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382]],"35,1":[8,[383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450]],"35,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598]],"35,11":[8,[599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628]],"35,12":[48,[451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662]],"35,13":[48,[451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662]],"35,14":[32,[559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662]],"35,15":[32,[559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662]],"35,16":[16,[629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662]],"35,17":[16,[629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662]],"35,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382]],"35,3":[8,[383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450]],"35,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508]],"35,5":[8,[509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558]],"35,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508]],"35,7":[8,[509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558]],"35,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598]],"35,9":[8,[599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628]],"36,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398]],"36,1":[8,[399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464]],"36,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606]],"36,11":[8,[607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634]],"36,12":[48,[465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664]],"36,13":[48,[465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664]],"36,14":[32,[569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664]],"36,15":[32,[569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664]],"36,16":[16,[635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664]],"36,17":[16,[635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664]],"36,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398]],"36,3":[8,[399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464]],"36,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520]],"36,5":[8,[521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568]],"36,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520]],"36,7":[8,[521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568]],"36,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606]],"36,9":[8,[607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634]],"37,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11]],"37,1":[8,[12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]],"37,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145]],"37,11":[8,[146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201]],"37,12":[48,[32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341]],"37,13":[48,[32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341]],"37,14":[32,[98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341]],"37,15":[32,[98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341]],"37,16":[16,[202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341]],"37,17":[16,[202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341]],"37,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11]],"37,3":[8,[12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]],"37,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59]],"37,5":[8,[60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97]],"37,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59]],"37,7":[8,[60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97]],"37,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145]],"37,9":[8,[146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201]],"38,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]],"38,1":[8,[16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37]],"38,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157]],"38,11":[8,[158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215]],"38,12":[48,[38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357]],"38,13":[48,[38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357]],"38,14":[32,[108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357]],"38,15":[32,[108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357]],"38,16":[16,[216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357]],"38,17":[16,[216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357]],"38,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]],"38,3":[8,[16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37]],"38,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67]],"38,5":[8,[68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107]],"38,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67]],"38,7":[8,[68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107]],"38,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157]],"38,9":[8,[158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215]],"39,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19]],"39,1":[8,[20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43]],"39,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169]],"39,11":[8,[170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229]],"39,12":[48,[44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373]],"39,13":[48,[44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373]],"39,14":[32,[118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373]],"39,15":[32,[118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373]],"39,16":[16,[230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373]],"39,17":[16,[230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373]],"39,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19]],"39,3":[8,[20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43]],"39,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75]],"39,5":[8,[76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117]],"39,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75]],"39,7":[8,[76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117]],"39,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169]],"39,9":[8,[170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229]],"4,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]],"4,1":[8,[27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54]],"4,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192]],"4,11":[8,[193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256]],"4,12":[48,[55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404]],"4,13":[48,[55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404]],"4,14":[32,[137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404]],"4,15":[32,[137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404]],"4,16":[16,[257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404]],"4,17":[16,[257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404]],"4,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]],"4,3":[8,[27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54]],"4,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90]],"4,5":[8,[91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136]],"4,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90]],"4,7":[8,[91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136]],"4,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192]],"4,9":[8,[193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256]],"40,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]],"40,1":[8,[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49]],"40,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181]],"40,11":[8,[182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243]],"40,12":[48,[50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389]],"40,13":[48,[50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389]],"40,14":[32,[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389]],"40,15":[32,[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389]],"40,16":[16,[244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389]],"40,17":[16,[244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389]],"40,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]],"40,3":[8,[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49]],"40,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83]],"40,5":[8,[84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127]],"40,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83]],"40,7":[8,[84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127]],"40,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181]],"40,9":[8,[182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243]],"41,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27]],"41,1":[8,[28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55]],"41,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193]],"41,11":[8,[194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257]],"41,12":[48,[56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405]],"41,13":[48,[56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405]],"41,14":[32,[138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405]],"41,15":[32,[138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405]],"41,16":[16,[258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405]],"41,17":[16,[258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405]],"41,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27]],"41,3":[8,[28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55]],"41,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91]],"41,5":[8,[92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137]],"41,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91]],"41,7":[8,[92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137]],"41,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193]],"41,9":[8,[194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257]],"42,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33]],"42,1":[8,[34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63]],"42,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207]],"42,11":[8,[208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273]],"42,12":[48,[64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419]],"42,13":[48,[64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419]],"42,14":[32,[150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419]],"42,15":[32,[150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419]],"42,16":[16,[274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419]],"42,17":[16,[274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419]],"42,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33]],"42,3":[8,[34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63]],"42,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101]],"42,5":[8,[102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149]],"42,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101]],"42,7":[8,[102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149]],"42,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207]],"42,9":[8,[208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273]],"43,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39]],"43,1":[8,[40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71]],"43,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221]],"43,11":[8,[222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289]],"43,12":[48,[72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433]],"43,13":[48,[72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433]],"43,14":[32,[162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433]],"43,15":[32,[162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433]],"43,16":[16,[290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433]],"43,17":[16,[290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433]],"43,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39]],"43,3":[8,[40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71]],"43,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111]],"43,5":[8,[112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161]],"43,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111]],"43,7":[8,[112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161]],"43,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221]],"43,9":[8,[222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289]],"44,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45]],"44,1":[8,[46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79]],"44,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235]],"44,11":[8,[236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305]],"44,12":[48,[80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447]],"44,13":[48,[80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447]],"44,14":[32,[174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447]],"44,15":[32,[174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447]],"44,16":[16,[306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447]],"44,17":[16,[306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447]],"44,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45]],"44,3":[8,[46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79]],"44,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121]],"44,5":[8,[122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173]],"44,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121]],"44,7":[8,[122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173]],"44,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235]],"44,9":[8,[236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305]],"45,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51]],"45,1":[8,[52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87]],"45,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249]],"45,11":[8,[250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321]],"45,12":[48,[88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461]],"45,13":[48,[88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461]],"45,14":[32,[186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461]],"45,15":[32,[186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461]],"45,16":[16,[322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461]],"45,17":[16,[322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461]],"45,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51]],"45,3":[8,[52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87]],"45,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131]],"45,5":[8,[132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185]],"45,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131]],"45,7":[8,[132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185]],"45,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249]],"45,9":[8,[250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321]],"46,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57]],"46,1":[8,[58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95]],"46,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263]],"46,11":[8,[264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337]],"46,12":[48,[96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475]],"46,13":[48,[96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475]],"46,14":[32,[198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475]],"46,15":[32,[198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475]],"46,16":[16,[338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475]],"46,17":[16,[338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475]],"46,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57]],"46,3":[8,[58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95]],"46,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141]],"46,5":[8,[142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197]],"46,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141]],"46,7":[8,[142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197]],"46,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263]],"46,9":[8,[264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337]],"47,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65]],"47,1":[8,[66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105]],"47,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279]],"47,11":[8,[280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353]],"47,12":[48,[106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487]],"47,13":[48,[106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487]],"47,14":[32,[212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487]],"47,15":[32,[212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487]],"47,16":[16,[354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487]],"47,17":[16,[354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487]],"47,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65]],"47,3":[8,[66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105]],"47,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153]],"47,5":[8,[154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211]],"47,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153]],"47,7":[8,[154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211]],"47,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279]],"47,9":[8,[280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353]],"48,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73]],"48,1":[8,[74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115]],"48,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295]],"48,11":[8,[296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369]],"48,12":[48,[116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499]],"48,13":[48,[116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499]],"48,14":[32,[226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499]],"48,15":[32,[226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499]],"48,16":[16,[370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499]],"48,17":[16,[370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499]],"48,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73]],"48,3":[8,[74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115]],"48,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165]],"48,5":[8,[166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225]],"48,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165]],"48,7":[8,[166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225]],"48,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295]],"48,9":[8,[296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369]],"49,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81]],"49,1":[8,[82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125]],"49,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311]],"49,11":[8,[312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385]],"49,12":[48,[126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511]],"49,13":[48,[126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511]],"49,14":[32,[240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511]],"49,15":[32,[240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511]],"49,16":[16,[386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511]],"49,17":[16,[386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511]],"49,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81]],"49,3":[8,[82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125]],"49,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177]],"49,5":[8,[178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239]],"49,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177]],"49,7":[8,[178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239]],"49,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311]],"49,9":[8,[312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385]],"5,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32]],"5,1":[8,[33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62]],"5,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206]],"5,11":[8,[207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272]],"5,12":[48,[63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418]],"5,13":[48,[63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418]],"5,14":[32,[149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418]],"5,15":[32,[149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418]],"5,16":[16,[273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418]],"5,17":[16,[273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418]],"5,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32]],"5,3":[8,[33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62]],"5,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100]],"5,5":[8,[101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148]],"5,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100]],"5,7":[8,[101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148]],"5,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206]],"5,9":[8,[207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272]],"50,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89]],"50,1":[8,[90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135]],"50,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327]],"50,11":[8,[328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401]],"50,12":[48,[136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523]],"50,13":[48,[136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523]],"50,14":[32,[254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523]],"50,15":[32,[254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523]],"50,16":[16,[402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523]],"50,17":[16,[402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523]],"50,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89]],"50,3":[8,[90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135]],"50,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189]],"50,5":[8,[190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253]],"50,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189]],"50,7":[8,[190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253]],"50,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327]],"50,9":[8,[328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401]],"51,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99]],"51,1":[8,[100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147]],"51,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343]],"51,11":[8,[344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415]],"51,12":[48,[148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533]],"51,13":[48,[148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533]],"51,14":[32,[270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533]],"51,15":[32,[270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533]],"51,16":[16,[416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533]],"51,17":[16,[416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533]],"51,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99]],"51,3":[8,[100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147]],"51,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203]],"51,5":[8,[204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269]],"51,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203]],"51,7":[8,[204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269]],"51,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343]],"51,9":[8,[344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415]],"52,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109]],"52,1":[8,[110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159]],"52,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359]],"52,11":[8,[360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429]],"52,12":[48,[160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543]],"52,13":[48,[160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543]],"52,14":[32,[286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543]],"52,15":[32,[286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543]],"52,16":[16,[430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543]],"52,17":[16,[430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543]],"52,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109]],"52,3":[8,[110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159]],"52,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217]],"52,5":[8,[218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285]],"52,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217]],"52,7":[8,[218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285]],"52,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359]],"52,9":[8,[360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429]],"53,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119]],"53,1":[8,[120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171]],"53,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375]],"53,11":[8,[376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443]],"53,12":[48,[172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553]],"53,13":[48,[172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553]],"53,14":[32,[302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553]],"53,15":[32,[302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553]],"53,16":[16,[444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553]],"53,17":[16,[444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553]],"53,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119]],"53,3":[8,[120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171]],"53,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231]],"53,5":[8,[232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301]],"53,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231]],"53,7":[8,[232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301]],"53,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375]],"53,9":[8,[376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443]],"54,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129]],"54,1":[8,[130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183]],"54,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391]],"54,11":[8,[392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457]],"54,12":[48,[184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563]],"54,13":[48,[184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563]],"54,14":[32,[318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563]],"54,15":[32,[318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563]],"54,16":[16,[458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563]],"54,17":[16,[458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563]],"54,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129]],"54,3":[8,[130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183]],"54,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245]],"54,5":[8,[246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317]],"54,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245]],"54,7":[8,[246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317]],"54,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391]],"54,9":[8,[392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457]],"55,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139]],"55,1":[8,[140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195]],"55,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407]],"55,11":[8,[408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471]],"55,12":[48,[196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573]],"55,13":[48,[196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573]],"55,14":[32,[334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573]],"55,15":[32,[334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573]],"55,16":[16,[472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573]],"55,17":[16,[472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573]],"55,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139]],"55,3":[8,[140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195]],"55,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259]],"55,5":[8,[260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333]],"55,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259]],"55,7":[8,[260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333]],"55,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407]],"55,9":[8,[408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471]],"56,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151]],"56,1":[8,[152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209]],"56,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421]],"56,11":[8,[422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483]],"56,12":[48,[210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581]],"56,13":[48,[210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581]],"56,14":[32,[350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581]],"56,15":[32,[350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581]],"56,16":[16,[484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581]],"56,17":[16,[484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581]],"56,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151]],"56,3":[8,[152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209]],"56,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275]],"56,5":[8,[276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349]],"56,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275]],"56,7":[8,[276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349]],"56,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421]],"56,9":[8,[422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483]],"57,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163]],"57,1":[8,[164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223]],"57,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435]],"57,11":[8,[436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495]],"57,12":[48,[224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589]],"57,13":[48,[224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589]],"57,14":[32,[366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589]],"57,15":[32,[366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589]],"57,16":[16,[496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589]],"57,17":[16,[496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589]],"57,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163]],"57,3":[8,[164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223]],"57,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291]],"57,5":[8,[292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365]],"57,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291]],"57,7":[8,[292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365]],"57,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435]],"57,9":[8,[436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495]],"58,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175]],"58,1":[8,[176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237]],"58,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449]],"58,11":[8,[450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507]],"58,12":[48,[238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597]],"58,13":[48,[238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597]],"58,14":[32,[382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597]],"58,15":[32,[382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597]],"58,16":[16,[508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597]],"58,17":[16,[508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597]],"58,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175]],"58,3":[8,[176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237]],"58,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307]],"58,5":[8,[308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381]],"58,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307]],"58,7":[8,[308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381]],"58,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449]],"58,9":[8,[450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507]],"59,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187]],"59,1":[8,[188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251]],"59,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463]],"59,11":[8,[464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519]],"59,12":[48,[252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605]],"59,13":[48,[252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605]],"59,14":[32,[398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605]],"59,15":[32,[398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605]],"59,16":[16,[520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605]],"59,17":[16,[520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605]],"59,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187]],"59,3":[8,[188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251]],"59,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323]],"59,5":[8,[324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397]],"59,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323]],"59,7":[8,[324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397]],"59,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463]],"59,9":[8,[464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519]],"6,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38]],"6,1":[8,[39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70]],"6,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220]],"6,11":[8,[221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288]],"6,12":[48,[71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432]],"6,13":[48,[71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432]],"6,14":[32,[161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432]],"6,15":[32,[161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432]],"6,16":[16,[289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432]],"6,17":[16,[289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432]],"6,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38]],"6,3":[8,[39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70]],"6,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110]],"6,5":[8,[111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160]],"6,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110]],"6,7":[8,[111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160]],"6,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220]],"6,9":[8,[221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288]],"60,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199]],"60,1":[8,[200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265]],"60,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477]],"60,11":[8,[478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531]],"60,12":[48,[266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613]],"60,13":[48,[266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613]],"60,14":[32,[414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613]],"60,15":[32,[414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613]],"60,16":[16,[532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613]],"60,17":[16,[532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613]],"60,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199]],"60,3":[8,[200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265]],"60,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339]],"60,5":[8,[340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413]],"60,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339]],"60,7":[8,[340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413]],"60,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477]],"60,9":[8,[478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531]],"61,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213]],"61,1":[8,[214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281]],"61,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489]],"61,11":[8,[490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541]],"61,12":[48,[282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619]],"61,13":[48,[282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619]],"61,14":[32,[428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619]],"61,15":[32,[428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619]],"61,16":[16,[542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619]],"61,17":[16,[542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619]],"61,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213]],"61,3":[8,[214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281]],"61,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355]],"61,5":[8,[356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427]],"61,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355]],"61,7":[8,[356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427]],"61,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489]],"61,9":[8,[490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541]],"62,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227]],"62,1":[8,[228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297]],"62,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501]],"62,11":[8,[502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551]],"62,12":[48,[298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625]],"62,13":[48,[298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625]],"62,14":[32,[442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625]],"62,15":[32,[442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625]],"62,16":[16,[552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625]],"62,17":[16,[552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625]],"62,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227]],"62,3":[8,[228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297]],"62,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371]],"62,5":[8,[372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441]],"62,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371]],"62,7":[8,[372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441]],"62,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501]],"62,9":[8,[502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551]],"63,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241]],"63,1":[8,[242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313]],"63,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513]],"63,11":[8,[514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561]],"63,12":[48,[314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631]],"63,13":[48,[314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631]],"63,14":[32,[456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631]],"63,15":[32,[456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631]],"63,16":[16,[562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631]],"63,17":[16,[562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631]],"63,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241]],"63,3":[8,[242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313]],"63,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387]],"63,5":[8,[388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455]],"63,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387]],"63,7":[8,[388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455]],"63,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513]],"63,9":[8,[514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561]],"64,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255]],"64,1":[8,[256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329]],"64,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525]],"64,11":[8,[526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571]],"64,12":[48,[330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637]],"64,13":[48,[330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637]],"64,14":[32,[470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637]],"64,15":[32,[470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637]],"64,16":[16,[572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637]],"64,17":[16,[572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637]],"64,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255]],"64,3":[8,[256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329]],"64,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403]],"64,5":[8,[404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469]],"64,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403]],"64,7":[8,[404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469]],"64,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525]],"64,9":[8,[526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571]],"65,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271]],"65,1":[8,[272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345]],"65,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535]],"65,11":[8,[536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579]],"65,12":[48,[346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641]],"65,13":[48,[346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641]],"65,14":[32,[482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641]],"65,15":[32,[482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641]],"65,16":[16,[580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641]],"65,17":[16,[580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641]],"65,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271]],"65,3":[8,[272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345]],"65,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417]],"65,5":[8,[418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481]],"65,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417]],"65,7":[8,[418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481]],"65,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535]],"65,9":[8,[536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579]],"66,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287]],"66,1":[8,[288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361]],"66,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545]],"66,11":[8,[546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587]],"66,12":[48,[362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645]],"66,13":[48,[362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645]],"66,14":[32,[494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645]],"66,15":[32,[494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645]],"66,16":[16,[588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645]],"66,17":[16,[588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645]],"66,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287]],"66,3":[8,[288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361]],"66,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431]],"66,5":[8,[432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493]],"66,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431]],"66,7":[8,[432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493]],"66,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545]],"66,9":[8,[546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587]],"67,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303]],"67,1":[8,[304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377]],"67,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555]],"67,11":[8,[556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595]],"67,12":[48,[378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649]],"67,13":[48,[378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649]],"67,14":[32,[506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649]],"67,15":[32,[506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649]],"67,16":[16,[596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649]],"67,17":[16,[596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649]],"67,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303]],"67,3":[8,[304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377]],"67,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445]],"67,5":[8,[446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505]],"67,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445]],"67,7":[8,[446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505]],"67,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555]],"67,9":[8,[556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595]],"68,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319]],"68,1":[8,[320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393]],"68,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565]],"68,11":[8,[566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603]],"68,12":[48,[394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653]],"68,13":[48,[394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653]],"68,14":[32,[518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653]],"68,15":[32,[518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653]],"68,16":[16,[604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653]],"68,17":[16,[604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653]],"68,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319]],"68,3":[8,[320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393]],"68,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459]],"68,5":[8,[460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517]],"68,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459]],"68,7":[8,[460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517]],"68,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565]],"68,9":[8,[566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603]],"69,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335]],"69,1":[8,[336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409]],"69,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575]],"69,11":[8,[576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611]],"69,12":[48,[410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657]],"69,13":[48,[410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657]],"69,14":[32,[530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657]],"69,15":[32,[530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657]],"69,16":[16,[612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657]],"69,17":[16,[612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657]],"69,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335]],"69,3":[8,[336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409]],"69,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473]],"69,5":[8,[474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529]],"69,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473]],"69,7":[8,[474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529]],"69,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575]],"69,9":[8,[576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611]],"7,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44]],"7,1":[8,[45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78]],"7,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234]],"7,11":[8,[235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304]],"7,12":[48,[79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446]],"7,13":[48,[79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446]],"7,14":[32,[173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446]],"7,15":[32,[173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446]],"7,16":[16,[305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446]],"7,17":[16,[305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446]],"7,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44]],"7,3":[8,[45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78]],"7,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120]],"7,5":[8,[121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172]],"7,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120]],"7,7":[8,[121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172]],"7,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234]],"7,9":[8,[235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304]],"70,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351]],"70,1":[8,[352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423]],"70,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583]],"70,11":[8,[584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617]],"70,12":[48,[424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659]],"70,13":[48,[424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659]],"70,14":[32,[540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659]],"70,15":[32,[540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659]],"70,16":[16,[618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659]],"70,17":[16,[618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659]],"70,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351]],"70,3":[8,[352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423]],"70,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485]],"70,5":[8,[486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539]],"70,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485]],"70,7":[8,[486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539]],"70,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583]],"70,9":[8,[584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617]],"71,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367]],"71,1":[8,[368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437]],"71,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591]],"71,11":[8,[592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623]],"71,12":[48,[438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661]],"71,13":[48,[438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661]],"71,14":[32,[550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661]],"71,15":[32,[550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661]],"71,16":[16,[624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661]],"71,17":[16,[624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661]],"71,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367]],"71,3":[8,[368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437]],"71,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497]],"71,5":[8,[498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549]],"71,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497]],"71,7":[8,[498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549]],"71,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591]],"71,9":[8,[592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623]],"72,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383]],"72,1":[8,[384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451]],"72,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599]],"72,11":[8,[600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629]],"72,12":[48,[452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663]],"72,13":[48,[452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663]],"72,14":[32,[560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663]],"72,15":[32,[560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663]],"72,16":[16,[630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663]],"72,17":[16,[630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663]],"72,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383]],"72,3":[8,[384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451]],"72,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509]],"72,5":[8,[510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559]],"72,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509]],"72,7":[8,[510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559]],"72,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599]],"72,9":[8,[600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629]],"73,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399]],"73,1":[8,[400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465]],"73,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607]],"73,11":[8,[608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635]],"73,12":[48,[466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665]],"73,13":[48,[466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665]],"73,14":[32,[570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665]],"73,15":[32,[570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665]],"73,16":[16,[636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665]],"73,17":[16,[636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665]],"73,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399]],"73,3":[8,[400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465]],"73,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521]],"73,5":[8,[522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569]],"73,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521]],"73,7":[8,[522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569]],"73,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607]],"73,9":[8,[608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635]],"8,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50]],"8,1":[8,[51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86]],"8,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248]],"8,11":[8,[249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320]],"8,12":[48,[87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460]],"8,13":[48,[87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460]],"8,14":[32,[185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460]],"8,15":[32,[185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460]],"8,16":[16,[321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460]],"8,17":[16,[321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460]],"8,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50]],"8,3":[8,[51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86]],"8,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130]],"8,5":[8,[131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184]],"8,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130]],"8,7":[8,[131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184]],"8,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248]],"8,9":[8,[249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320]],"9,0":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56]],"9,1":[8,[57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94]],"9,10":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262]],"9,11":[8,[263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336]],"9,12":[48,[95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474]],"9,13":[48,[95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474]],"9,14":[32,[197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474]],"9,15":[32,[197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474]],"9,16":[16,[337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474]],"9,17":[16,[337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474]],"9,2":[16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56]],"9,3":[8,[57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94]],"9,4":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140]],"9,5":[8,[141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196]],"9,6":[32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140]],"9,7":[8,[141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196]],"9,8":[48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262]],"9,9":[8,[263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336]]}} \ No newline at end of file diff --git a/research/capped-fusion-t74-k554/PRICE.json b/research/capped-fusion-t74-k554/PRICE.json new file mode 100644 index 0000000000..c41b950145 --- /dev/null +++ b/research/capped-fusion-t74-k554/PRICE.json @@ -0,0 +1,123 @@ +{ + "status": "PASS_EXACT_ARITHMETIC_ONLY_PENDING_FULL_ADMISSION", + "prices": { + "native": { + "root": { + "lower": "0.001679671795504737621542", + "upper": "0.001679671795504737621543", + "lower_endpoint_residual_upper": "-2.214843238935323432073938893534855946978454725883380247191670198954729E-25", + "upper_endpoint_residual_lower": "2.700126917211241084768417233750364339987396100484466423632185848624352E-24", + "strict_rational_signs": true, + "moment_minus_one_at_current_k_required_rate": [ + "-0.002870901781943869507709008174039951600690116611395906463473618176265266", + "-0.002870901781943869507709008174039951600690116611395906463473618176191082" + ], + "nominal_k_ceiling_interval": [ + "0.001676855229071321886206381217337894076302355284707188159342538611752683", + "0.001676855229071321886207377866439279392922418267609489064799178863936182" + ] + }, + "moments": [ + { + "endpoint": "839835897752368810771/500000000000000000000000", + "accept": true, + "mercator_residual": [ + "-5971205559779550112184163352720098399495653/26959946667150639794667015087019630673637144422540572481103610249216", + "-5971205559779550112184163352720098399495651/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two_residual": [ + "-44297/200000000000000000000000000000", + "-55371/250000000000000000000000000000" + ] + }, + { + "endpoint": "1679671795504737621543/1000000000000000000000000", + "accept": false, + "mercator_residual": [ + "36397638841276465291309668235027524493751241/13479973333575319897333507543509815336818572211270286240551805124608", + "18198819420638232645654834117513762246875621/6739986666787659948666753771754907668409286105635143120275902562304" + ], + "base_two_residual": [ + "1350063/500000000000000000000000000000", + "2700127/1000000000000000000000000000000" + ] + } + ], + "outer": { + "complex_b": "839835897752368810771/500000000000000000000000", + "bit_c": "1733427039589844234749/1000000000000000000000000", + "kappa": "1676855229071321/1000000000000000000", + "kappa_decimal": "0.001676855229071321", + "binding": "complex", + "strict_constraints_passed": 47, + "controls_rejected": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ] + } + }, + "conservative": { + "root": { + "lower": "0.00167967179265877105202", + "upper": "0.001679671792658771052021", + "lower_endpoint_residual_upper": "-5.049272477586136135798678107830013841507105262202038802418257022965858E-25", + "upper_endpoint_residual_lower": "2.416683993351547199687986237949547805302378623519523316271126931033384E-24", + "strict_rational_signs": true, + "moment_minus_one_at_current_k_required_rate": [ + "-0.002870901773664105570158483130477446858764617530230225522856376540343864", + "-0.002870901773664105570158483130477446858764617530230225522856376540269680" + ], + "nominal_k_ceiling_interval": [ + "0.001676855226234891862111568849431110493467335322946343478701079175369697", + "0.001676855226234891862112565498532501473434881467922152178684471836032915" + ] + }, + "moments": [ + { + "endpoint": "83983589632938552601/50000000000000000000000", + "accept": true, + "mercator_residual": [ + "-6806405835181690224448760866098662996463265/13479973333575319897333507543509815336818572211270286240551805124608", + "-212700182349427819514023777065583218639477/421249166674228746791672110734681729275580381602196445017243910144" + ], + "base_two_residual": [ + "-1262319429171566558719/2500000000000000000000000000000000000000000000", + "-1009853543337253246947/2000000000000000000000000000000000000000000000" + ] + }, + { + "endpoint": "1679671792658771052021/1000000000000000000000000", + "accept": false, + "mercator_residual": [ + "32576835786057171933027423569808193095310333/13479973333575319897333507543509815336818572211270286240551805124608", + "16288417893028585966513711784904096547655167/6739986666787659948666753771754907668409286105635143120275902562304" + ], + "base_two_residual": [ + "6041708070917619306649/2500000000000000000000000000000000000000000000", + "24166842283670477226737/10000000000000000000000000000000000000000000000" + ] + } + ], + "outer": { + "complex_b": "83983589632938552601/50000000000000000000000", + "bit_c": "1733427039589844234749/1000000000000000000000000", + "kappa": "1676855226234891/1000000000000000000", + "kappa_decimal": "0.001676855226234891", + "binding": "complex", + "strict_constraints_passed": 47, + "controls_rejected": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ] + } + } + }, + "gain_over_pr1061": "62605049/250000000000000000", + "gain_percent": "0.0000149339208928752995350720010745176338680104426106738137703909496989036537167", + "profile_sha256": "932453b2b045f73c81aa2b6f169a05ae2426c573965bbf4f5d3998b63b78a38f", + "scope": "Conditional PR645 framework and PR589 bit assumptions retained. Owner, native and global admission are separate." +} diff --git a/research/capped-fusion-t74-k554/PROFILE.json b/research/capped-fusion-t74-k554/PROFILE.json new file mode 100644 index 0000000000..6a814d39b7 --- /dev/null +++ b/research/capped-fusion-t74-k554/PROFILE.json @@ -0,0 +1 @@ +{"1":1559100,"2":339000,"3":277392,"4":84912,"5":54612,"8":5328,"48":22748} \ No newline at end of file diff --git a/research/capped-fusion-t74-k554/README.md b/research/capped-fusion-t74-k554/README.md new file mode 100644 index 0000000000..f40aef2d14 --- /dev/null +++ b/research/capped-fusion-t74-k554/README.md @@ -0,0 +1,62 @@ +# Capped phase-cell fusion outer (PR1673) on the T74 pivot-566+554 supplier + +Conditional final kappa = **0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997996640490086748910957328658012158594**. **What changed relative to PR1839, PR1875, PR1876 and PR1897: the supplier native and conservative complex endpoints are recertified to 1e-30000 (accept at the endpoint, reject at endpoint + 1e-30000) with the repaired even-term fine Mercator engine, the independent fine base-two engine and the exact-atanh oracle stage; the engines now evaluate in directed-rounding integer fixed point (monotone, floor for lower bounds and ceiling for upper bounds), which gives the same enclosure semantics as the exact-rational originals at a small fraction of the cost. Every free slack of the ledger sits at 1e-30010 or below (r0, layout slack, q gap and endpoint gap 1e-30010, epsilon = 1 - 2e-30010, beta = 1 - 6e-30010, zeta 1e-30012, stop 1e-30016, backoff 1e-30022, kappa floor grid 1e-30046). kappa exceeds M6LI's PR1897 (1e-500 grid) by 2.00336e-500, rohanarun's PR1876 (1e-400 endpoint, slacks 1e-420) by 8.11857e-401, PR1875 by 6.06686e-301 and PR1839 by 6.56133e-91. Credit: Josie Elliston (#1956, the bootstrap-cutoff carry repair), M6LI (#1897), rohanarun (#1876, #1875, #1828 slack and endpoint refinements; #1319, #1297 supplier), chafreaky (#1786), Vlado Vojdanovski (#1673), mdumitrean (#1625), midhatn, philippeVV (#1519, the odd-term Mercator finding), Kothe and the existing lineage.** **Credit first: the fine source-prime padding is PR1786 (chafreaky / Chafik Boukhalfa), using Tim Trudgian's effective prime number theorem (vendored verbatim: `vendor/pr1786/FINE-PRIME-PADDING.md`); this package changes only its explicit parameter point (epsilon is free: epsilon = 1 - 2e-30010, `outer/FINE-PADDING-COMPOSITION.md`) and combines it with this series' gauge-free interiors and radix-distributed union schedule, using the explicit Strassen boundary (the structured boundary of the previous package is no longer needed and not used).** The underlying construction is Vlado Vojdanovski's PR1673 (capped phase-cell fusion, its proof, PHASE-LAYOUT-AUDIT.md and exact evidence), on this repository's T74 supplier (PR1661's pivot-566 stack plus the pivot-554 kernel, certified complex endpoint 0.00167975495612554452133567...), with every free strict slack of PR1673 at 1e-30010 or below and b = certified endpoint - 1e-30010 (`outer/RETUNED-SLACKS.md`). Three changes are **new in this package series and not in PR1673 or PR1699** (the third, listed last, is new in this package): (1) the radix-distributed sparse-union schedule (`outer/UNION-SCHEDULE.md`, `outer/sched_test.py`, independent review simulation `outer/sched_review.py` by LeverRank), union row eps + 1/2 - xi instead of eps + beta + 1/2 - xi; (2) **structured boundary solves** (`outer/STRUCTURED-BOUNDARY.md`, executable exact check `outer/struct_check.py`): within a phase cell the Gaussian blocks factor exactly as D_r T D_c with T Toeplitz, the diagonals cancel through every Schur step, so every boundary segment block, coupling block, block-LU pivot and inverse pivot has constant displacement rank (proved bound 14, observed <= 4, flat in the segment index), is stored by Gohberg-Semencul / Kailath-Kung-Morf generators computed offline, and is applied by FFT in O(r W log W) ring operations per right-hand-side column, i.e. polylog per entry; the boundary row has exponent eps - xi + 1/2 + o(1), **tau_eff = 2 + 1e-30010** (tau_eff = 2 itself is not claimed; the polylog factors are absorbed by the strict slack). The boundary row and the union row now have the same exponent eps + 1/2 - xi and both bind together with main = fused Gaussian; the cap xi > 1/2 holds with margin 0.00084; kappa is +2.20e-7 over the previous package (rectangular k = 5, tau_eff = 2.1567081, outer/RECT-BOUNDARY.md, the documented fallback). The unproven omega_C <= 9/4 premise is not used. The union schedule and the structured boundary are new constructions that require independent review; the structured argument's precision section (STRUCTURED-BOUNDARY.md section 5) is an error argument from PR1673's audited bounds, not a verified stability theorem, and the real-regime check at large p has not been run. Conditional on all inherited hypotheses. (3) **gauge-free interiors** (`outer/GAUGEFREE-INTERIORS.md`, executable `outer/check_gaugefree.py`): the linear part of the local gauge is exactly a fractional centre shift of the Toeplitz kernel (broad and narrow, exact identities); the shifted Gaussian symbol is accretive (Jacobi triple product, Re phi >= mu = poly(p)^-1 on the unit circle), so SHALLOW-TOEPLITZ sec. 9 extends from SPD to accretive Toeplitz tiles; only the quadratic chirp remains (range O(a B^2/d)), the precision guard becomes beta + 2 xi - eps <= 1 - r - zeta, and the union tag check becomes 1 - beta > 0 (tag work is paid per visit). beta = 0.9966, xi = 0.5017, eps = 0.9999944. + +* `outer/check_ledger.py` = PR1673's `frontier_fusion/check_frontier_fusion.py`, unchanged formulas and inequalities, retuned strict slack constants (R0/ZETA/SLACK/GAP/STOP/FLOOR/BACKOFF at the top), supplier inputs read from this package (`outer/B.json`, `new/SPEC.json`). +* `outer/independent_check.py`: PR1673's independent balance derivation, same adaptation. `outer/replay_evidence.py`: PR1673's 19 supplier-independent exact checks, unmodified. +* `vendor/pr1673/capped-phase-fusion`: PR1673 (head 2569871f) verbatim, with its proof `phase_fusion_note.tex` (T74 substitution section is parameterised by the supplier rate). +* `verify_release.py` runs the supplier's unchanged `verify.py` and the outer checks, then binds the admitted complex endpoint, profile and bit endpoint to the ledger. + +Credits: PR1673 (Vlado Vojdanovski, with AI assistance): capped phase-cell fusion outer construction, its proof and exact evidence, vendored verbatim under vendor/pr1673; Israel Gohberg and Aleksandr Semencul, Thomas Kailath, Sun-Yuan Kung and Martin Morf, Robert Bitmead and Brian Anderson, Victor Pan (structured Toeplitz-like matrix algorithms); Francois Le Gall, Josh Alman, Ran Duan, Virginia Vassilevska Williams, Yinzhan Xu, Zixuan Xu, Renfei Zhou (rectangular matrix multiplication exponents of the fallback packages), Chafik Boukhalfa (PR1699: specialisation of PR1673's matrix boundary to an established exponent). The radix-distributed union schedule and the structured boundary solves are new in this package series; IdeaLiterature's screens of the real chirp-weighted blocks and LeverRank's independent schedule simulation supported them. Supplier: PR1625 (mdumitrean) pivot-566 helper-donor kernel; PR1661 (midhatn) 400-digit endpoint-grid refinement of that stack; pivot-554 kernel (kernel566.py search by LeverRank/jeremykothe2 tooling, PR1672); PR1297, PR1319, PR1424, PR1485, PR1574 (Rohan Arun) T74 exact fill and cold kernels; PR1274, PR1479, PR1510, PR1513, PR1536, PR1578 (Jeremy Kothe) endpoint and outer-witness lineage; PR1534, PR1549 (midhatn); PR1519 (philippeVV) fine-Mercator soundness repair; PR1286, PR1193 (Jeremy Diviney), PR1148 (Thomas DiFiore) and the retained supplier lineage. Research direction, prioritisation and release strategy: jeremykothe2. Implementation assistance: oh-my-pi. + +**Margins are asymptotic.** *(Inherited pkg8-era figures, superseded by the paragraph below, which gives the current point epsilon = 1 - 2e-30010, beta = 1 - 6e-30010; the numbers in this paragraph describe the earlier package.)* The earlier parameters sat close to several walls: 1 - beta = 3.35e-3 (record header g log L, tag work per visit, support g polylog p = o(p)), membership 1 - beta - 2(1-eps) = 3.34e-3, 1 - eps = 5.6e-6, cap xi - 1/2 = 1.67e-3, and the global router margin is only 9.4e-9. Every claim of the form 'polylog p is o(p^margin)' holds only for sufficiently large p and rests on the strict 1e-30010 slacks; this is the same status as the earlier packages' margins, but with much smaller exponents. + +**Margins are asymptotic, and now with exponent margin 2e-30010** (1 - epsilon = 2e-30010, 1 - beta = 6e-30010, membership gap 2e-30010): every 'eventually' of the proofs needs p beyond an astronomically large cutoff; no practical cutoff is claimed. Epsilon < 1 strictly and kappa < q always. + +Python 3.11+, SymPy 1.14.0 is only needed for the vendored PR1673 evidence checks that import it. + +--- + +# pivot 554 helper-donor kernel (k554-signed-001) stacked on the previous record + +Adds the exact helper-donor kernel k554-signed-001 (pivot 554, found by LeverRank/kernel566) to the previous record's local words: re-solved frames, fresh natives, PLAN rebound, SPEC refrozen, certified fine endpoints and exact outer witness of the base package. kappa 0.001676938111022438771190100017020725032555691674761792047536039179. + +kappa = 0.001676938111022438771190100017020725032555691674761792047536039179. `new/CHAIN.json` lists every kernel step; `new/rebuild_chain.py` re-verifies each step against its own base words (exact B + early-cleanup map over all rows, remaining cleanup, interfaces). Pivot reads: every inserted read of the pivot q must see the row of q equal to s*I with s = +1 or -1 (new/pivotcheck.py). A pivot restored by a sign-flipping cleanup gate (e.g. 554: `scale q by -1`) is read as -q after the restore with the coefficient taken with that sign; exactness is proven by the unchanged map check. Tamper controls (signs unaccounted; each new coefficient moved one dyadic step) must all fail the map check. + +Credits: pivot-554 helper-donor kernel generalising PR1625 (kernel566.py; sign-aware pivot-read check pivotcheck.py). PR1625 (mdumitrean): pivot-566 helper-donor kernel, words, edits, rebuild.py, rebind.py. PR1319, PR1297, PR1424, PR1485, PR1574 (rohanarun); PR1274, PR1378... (see README) and the 1e-200/1e-300/1e-400 refinement PR1479, PR1510, PR1513, PR1536, PR1578 (jeremykothe2); PR1534, PR1549 (midhatn); PR1519 (philippeVV, fine Mercator engine soundness finding); PR1286, PR1193 (jeremydiviney), PR1148 (Thomas DiFiore) and the retained lineage. Research direction, prioritisation and release strategy: jeremykothe2. Implementation assistance: oh-my-pi. + +--- +# PR1625's pivot-566 helper-donor kernel on the T74 exact fill, with certified 1e-30000 endpoints and a 1e-29995 outer witness + +**Current claim (matches `CLAIM.json` and `new/SPEC.json`): conditional kappa = 0.001676938111022438771190100017020725032555691674761792047536039179544860041426416167047617951325080392375254668024881417704785844941873659190796874311269827844869294021609609878761760222726040503052361411290178071724514229511402997717835482222843694901217948470487965568309887619068847172953045805114461684934711435396733506293734841325861343304787721299532310229772589857694912111395953739686988727269468587554963277272937736454132255987090515404981010625380300398405414878988986157122637397706184264087627982251269279798737026724345745293965473508101366799393414789255206473161090950205950222122146222214078495368679130218674743146981670162403132582245706410548976470471745261542621302339241637171485342456816268520436435015281896393166247367278251553892803720247630029686984490078449352925557594904328569557484936591314303562431384381815420956360401044641472858822422582249979327207407410771660534313638231315935852892804132000147855397374322839591253536678984113084406988061438073184576016444328921205389213529360577549973971376403629568215377310772683219872177641391235708289818177925111881904300159619886665581137346322368568517117054240697628828913445767477326813624632908438476547455879789107389590165055563621760005781866188169710716495393304278850831707997384951261122215314912573099782120041249291001704783534963738038572909971460841194675956590556076487792844912046546289858480261722453906692121870900082361801253111254144535093557728890773576633275758296564385411181157194862013091717849684584397938692558192964504781548675242535472712168931345518712335315915091266802943695072033856713124737821702995413450878780710543025022928367906358090455917086551989910908356551317048398786986223728008709261755659180657097881480210424400144326299522878899777309399785895823672660416198403019568310343066278519210175123753322433148335319042110990102411115200155300905387480079481700793678398050055515674040740856110030688345147844637789304089124913488117865786102166259717537500608759271291542722618322268281881663249358096379805154548573054994939237543547344173213952238264923740581810541229342858729478428954424334131984148528784253998363568146237934288204812018977227175503767320972634467026605192430135456053386113854884936860690294856101608528249351841900676852113360746683010464546201975712535358643485273158405560713865159800025122453589321193849172272066813081451220206058867971739737852070562324696516989207167963722931205291831473897915831792236815542295351188421063491836041247452594134942209248413959680506248294593138389527422611136953102302258580121119666547884229014665725387964957084758968413322045525425313159249785544693731687537315908301437954586432098708787436507280265297509916984377327757196545848017185878187062075159807032253568563028327500466582827335502867854520125997555385653463180702511918745834613175695522817685388291478286861612733969705688420644803538993179921273082708231874645832277385151428336442791128121978844066863554759096512774567579514289358707813509712718614130837562928206888921092674847318865226502728725179504977454401235880436947166740879502845747251596396655438160627530891850366869113895456020655205727893563542322622934338187248429303755141424186144474851853038306051923346395342354169281469594504892858930927902734348204335524896282268283840385003189021115481306575985862301793725780239151376869964584730266367336592691055607610651395063452603950944137862475446094930322214251358925052162286516401501833382682009320185880700417626331391478426609811488522913323132102482939912440342675871636751981019800624634556412964612021651509481849038354557327885118381399789737921596751588189136821311831572343974889880678147466701932258512936242526046436206816962331619699576207481390195922724823856070618674582904131192629686384802772248025853565678688314716666529945311819044893560583315670136120200275855626940106396462406527068931089988702153309519230955113826416851095731603794043292915725451350181670888284691076554151637367282132699085416188720367321383556752795675446405859930575697456927411763363545818313874769811153200067443291026490825427143755817384089318952827706975802328578654060907310215933377202379529380163975222129749560910405469286325637889228656375209046139691727565799369454169799212172154190968007377296424461690352125762595869274922547147525570129817756823199696525210212593270375402119926487508947288180067142456329591203283997566500022674847080431168662174637209570629416830805601156788805418143373182215558446650310703543647015694751991619953590707511324503909687011954702203413782642378782037876483375951368505794557953578496314592205135043591193566218868778919000859827161236488817139192560862291428323398653291362388365138930281949623180624723430911220942364686086046811881095915076746280981830204413463502784589382914033720262163341801603895164465674237717521333553167444602702811423316239713043005712564513772123853640035325065916924660396852728500005955179986648160252906063818799410347442766786664711055874019008578881083537349681430773130796175261193827304599951725282101645776758227174040896025563972981356206057403055309359397803272752587584779898438292225351510689231016155941311614820345064156818468803931273430749310658977969794877739340106809807004217252335064678107177709738012342060949858124985939230944824099910816271686161045402302285297508303681740813423348350907451994012462784540355981010175250712507883425235359201011808190666715806901660337144936235013148504434618824507245850842711973003744446139783867771723508396116379467414673415606715716625914128533840969111912668685753089611477414283825465766233324600402108966568083865071195380389644064013225659789744058092069645276517941125418069973350260300280165435974786063150831838352844310895510990318838354096171074350901696604159609422545044432761405299893043166541471867539675148486601560709246012708765545511597405073650829192121506104352681979794721015327502789766595183378343313723972484630114099556180557404294775235619155991070995527689166962206915248692621723625349339886515813623371808024686285707580920325672974427246775594726257411915539820593521399646428719846155809016057142699866621674513998351006749905500243107644939008808283763056501335942666191769933208506315238830408038282952426951835706158652627835482438894937789837153427367984447438051922524608125636636354724642013592812413107221430038029951167528733632716495615098437698583723053533447798933250326700341673333994491349324617054234374857974757947615668818142972436911989201090528370744441973134132489090952568566403607460351786192700714317580878597847073275756461350544869658254948076345268993614534959881068956246376804772024874092287169129213186992223561462651658309780876752930386455758693852694419490316659070860880743872739756880986904608018185984447853004026912027028273674529733461856841101564521508287143103037105067406368884230169363092631082755618313589906637262234129963011384967274857835139637864747427281583226400504907023008806698966457880414815368581397227078662183740420462942245571835386209001540438595088462864815007422004248638126993194256733512441492762449359278264922627792929285604902259734784403139315955611635003088223285824742574585458199873484901143020578529226315336078237949517482509692606200070152399485636376460680083740681021982344306694849027211113016447096401664870109144789682310713027431057384988031850550073244022390664796252560251451047216241213622375149340154216946861782898546303245835481369726611482902356440118142802032911748577808744084580778888911583089537842528650350224300921031540555865720176640122675904405012834212606926720618076289350828192187374984894089231066370630648217898798896854426065721884878592112635879124018176081793622544776554917666612551712871940751135017411377174225478399645409241946348408968428229073749874922687804564946639149976097593853489919634179725302583519573365757810136809822693526329471277325032409077196569397908967330248117771231446718887760986447476076588633927432181839026436879618786438853924243552028724202149273586302070473159717257943700945527157809011120941201529129788112093374491395033762472838884021537166728636994436301630665161113541049013409799618516961971476705317102922179678760146451898465363215347773093120951670829714701916443141270735200245820497008506142137601082528684204057140216430536629443137761846135272920564936772781919878233766540547322707811014534785957220140510623262662299343688283812806778629871242749277818029936608902411376290956165421313339767652702964419424693427929795158225848307752402086866409298570827428830545979466593659732831201670303380333570266312497272799132209681506621971049738347072828669221324163330170520592810183637637084676061595353012884871526329217462580337694487152011554983679272629347872552272518691638301740526482861621518288819594890421541872633329221995265917763392018304235223710211877106016863005554214940071097592447423155732624240717137321612736711511015452334444244516915061963673208003062941532292298709576423406637199353790437669830561829911320018003588451801530555126063671274612572553492770019219854791346853529899217083993804001606413511906618984636285538071695085513529572393748324787169923762281249473751546125440467353229002557361226236674635339436866734922913588421644861984589171440144253273958082163140915326761894534071656568137443244291662187835317160943823412816299475701782833976092311688640981763963728493263436400943578122515811767475034937219257215640249300435151568809787937128054000271594403310948533139517857990326033962436461201598318153082901330418743578769240898590057345795829717851017043935795818891434187053885338008250148874777092005912883517999782964815867469662105182116763677981910973490277023174288291105221418269158586756990709428422258931331442794504592971213986331014533822819316821047908153050267474761529581470496327848025323027806364632033755649712473796125592228231866383200012128177464973234171077910612178261832411844451327540658886299846731331960517943677908866544491234822877726722608013231560973012977712928113553017511539323668523359646877817602388003417812687721442241818362060758935286678602512028457556322432966860496534005973185496234116477130021431674556455724709800620103308407729226922684038249705160650604896025216208815549465459682105347120826071162670172323777604724415197632836186075282884471606443456595251082216687911538792058088617154935477327331611707604852599408953090562317165764901586091510839742905904169286077141775199951431996332141976528202006263439398577377694506562160327542781285057223145500080567894256936192104539532877544352557327014219884470270365898840818498910201120508939952099877099720125578677214600835678617522169579215244883617583224197071677669304447578449721695589326557080911289822172061232340430764951103351599537784081168550992450354599464306633252877984996323071735638212830249012125486137788763260240891048087053849765686283457059743121403444156442434650092054570938652942415947381592814566634431149031023214916834305254458008262138465921898971414412933926955648154529822504803874360101183545710678445298023496236357526280439620594953936970736132761346050554194072969850892802948707228511672212584586522459338679891063201992970976168849230988075980782268063321703100204105023867793359171663271120284689216266982922854555024458257194082880055670679251104989805518404654208118408971091397544413690740524617333256625860315671131348038003541725250012752470040117945491193565910672258306452166479239821822013167232978752210217065148213007997704617037581406969510024983642886094271501468515266517951412212678737863672374815850850018617167169404724193804196755226918630965977916620235037471936721474981760628389091696282830495083442946558386495173677129758843046535838765135261122211278015936644081113146013862655555473632728900177060404803909932570717096973233380397678154770570806159305328853159769847239408357381063591160857884936553235371301103805176084499744960861799096564455069188415173167466307325300507550789057356996012675411971914689885179790635217876635528742729289074038515582958823940756956282983982013297931392208702531339786326606085898964704306490183276443673432665409714392781588142314113003879544653826652456905279400423892864645145732150442385519751256630020969800111816195991768662067877844919742610629349456167364098842554260162810595843651246109839484140616200074396692161189445190771678850343616248833964152149294400909855021088301430637435077258954376881056167952757841603623150114848723868296455274843131964942644809739308334847250591037638159933773303030266553644713708830512000152768829599928357599043658354782218018604632389949399820228309873566731644105967969411392566463659821308439256239024768765466932891350654938606302906507157591494480884912600616501977681873739893405341267961274488122366978988526043488327734498352473374470344425684195823197530049518654219041369495526538909792142894614436674356956779117253565744461001646077291258616721028615171489377225797248963434748615709621863224494162425093903405418908099536448372409615645800088500708000326863586343258941824395046674640894829867490410076274904303597563905414607619538415264240951244758012373279165979420578572764543801612784311044524671534411110470778947786791611869579075129825637914942374298443150726849182979180295889400445095841912728739025398599890800774013815552097491946061432696683059850908007684892130277014649129866533075391480756752616874917082950665615788569283989718523234950496323961843015310890061750616561544250497511367802721749620997692277424816590831045033667753129456587899216950209169192979420525209830749278011259435256629864158365514213967842968168852592255041056372878403978961231539607315363463824015865789036667647691679656765508135153206123784725092541720945622842906505096885988904944731675837028018001025369395696577970702714790856223322126194193086879362041008496505122567070083836633891608966742224926341734754378992241704703243946477594438680084470924808222981898241634435942817665042296423620945634192168991400779159174135163441203854172667463449799823859132238474271344875663382011115657821650061331564093476251376766151284211905634835598395726437036943697945398550666243562475047103495260078498713415945222861217223171191565427545908948803739406056259045194404209652395524496033012280547163425869609206017318807219351721432592317710506582161595503691169181574298010469974027909045375705070521426723500918468327100399762174003571496690116771511985310875084366530193825729519512792584187969264095544191303231245159595600158757195018937452448153918214771803047236892338699087191418543548127176631207008647905211976016479693344991363133604423145030530786983149981370565686142920349543376635283587834198046392613205009938873884317306158749934987122636533735554280431472885838392469748433188218244359361739850329083230877907986952326531659062931518445494292395883081770960571149009946528303538416903468568251787904875888959724011669751379689737745645781536063724368281057535501651300779278159221234236286476121483406748542795836599283974286399156586351721302901945910999424737242212435193890764123794068613318807291025634632455033216836347178547306991763011371294447804930704701076731794985624544867144232618127801807016743557525975223094237419800926860726343207303307490100223761773175419194741775266790808437768846346409513854007597404533426060629802937997434365138785933283771190883963112026714630358610871566529511577973773030641278181999794138862952860277849836957045243572727803772994044145219612484151101958595754233134772206594546257843194920354988050720562487373090358396902105101130905837416215041528213742332237544479754016802420848946663972948503196038233831486326015598974745250367099024402883536680710078680762442499569967224988002820831131489501714654935338950677916179417687378341621029590525586118145500385979674551635569073802595703509410104399056700082765735783514023916990580895035122998824139043522887937954243773818239486908817691218594461231775612498171814739761413223626548921134907470266749601882455318834051789070693294645378614273559817817669746175386190129207670796969347985925964201887739954957753063968991721994851537886826528718670187266951754691015100558554402416365382385571832699593516591871870129088950860959141365335405217475952569409437291705958132591035713852844020829390425243231152363311794058641932466821316123556220896978638238220851910854724225235801007566651687786293048920022864118873127653443897973287588289387355188527675762544818352972527202121956442164497960525118889429669158090847617248951856454184175011498584011151403843803616755070289562925291847693557468307471261855527743027793546388523180320303004531983787654968848885848044699382269524772992632828988529578250814217690251050538376318335987796054397392497819218945083583664479090210799067472301403668337559717597696977088660955704497252993776510793040389765797660003249309625621362413925006069689309741971348529472497910193831688377960993355293627778448218590992466907233023703434373342057619370142024150125919309597715211156119767719732799607180802790498035895181361368464888110051483059351056184478484935493907429774952809935838380670176114207577213231055350562935778210633178408589597114305208221445655571987043537222818641682257047013012523444306760980045634005807686693738653391512637351420386342471114731815863473555201852437480757773007117982214562511842789783403459207342446159950243392750801338546694453486882568558848221354119195364009948864482241943581175911046898758169191479049496589974376791349764450442378828930324034667011081601620280965349871472897408240015827835518911156870088245687077093734365098735053286572410319803080845798477163786287405364614064557437293304038102544036292654227764945227264663048205357008355771555088876595623139814435346749309964251946324880814583325021791421487797394988004538164305707469202106410211746503094306261906393808913646542952700315906267119779115998936128115065250206974734764465723585855511288580743400943809404288053471362642477523155475104031429412338193516993778125188851380426304674403369331302000716910342442997402937084557795367644496744142127987816340111528592554037797331020548717415225820119609382845549093796192490788732113363701319748743582000057303130051864228415577489842331046903247484601487466945180308802933831335767729683043613008237949546121375297802081297570627860665109297721191437971730304701194425144397124039096483670712819736875268727402950591193053215181214096094048991393513777953150345340375660727343308643780150161106624994355510672070504545638446348452832252739655357173432358505096323375391303231882706135850625263417142649071194773339832168083329388229371358567930229577131216277825259179573015218766375412085298526771708373976067632393542346710047549333985975581637892627834271510655196435256189543806335151275352311851042677322949803447199292923778361766440734496397738456055035681622997810149954634752627304431261203403272402323263787629123971290482208451728904179443479389133519955703392435705474476748581704437622129709874923772469427028692459169602692805773639884662839746902870259093711807913191778518892984073217487857897145970076468785664351978921228123955117538280981756811931365956219580769189165945354676982348448641247423518916350607877458000174846036861863407457585325426314682733609519279784663870218253170105990573783095295023636803500871717068656715873633323087889492672610932474421508618433271859746984902531599213685724749939166049437563039991443426494641652084430858140240110164289828469966850406832046716413390246110504245355115799426391378253248390613249284106740790339822458676277775822335702599336006873832060694120069151050502014160550879568956384777357561859297390815082320829238627565303595738227693040342653965811892001847940938696513716543372327453960265811436008036854866115271237812510903990539558847305647245954573152782787927223519635147727442216430929838945633240618968678002759612737346710149551481908355465926257591837274267945140065675067487109210401442076201140299815065215337544433220665579426653603156460913576244881143145816448433738435651908257707727075610250384686423897417587261466555923582154604137885444936333821387834125809275860172638633835215739911477550980579247697382084916194531361048661532192816958299987572396642484438585923345173977858953684709725360571645392436476987259650911307276196399085956903945476705317120950973221080222867047309737747692333164724006655517007030727397960981567443221606976290010701795178049647288909166395148988516523192292581698055459163120683313344444026844836973153374353724642859131405325364718843964487074859668019409627048319805633617946336241192339134443576925361983436149277034101251407931959500054852494406073752219382170270967693958490164322312794878286345936957582386357275444677552426326439427826509522110738746691329185514606540626514423926874666224032806665098968650564881401857662657770710747087290859146102020115348143461159085941199326422716587378456255513417188700369411413129886379359732827155687107299430516909440159150380295166927316885689919350464777363564940285040026385166191840356368272064334076945688910500707807400058611344300435064124118815434239882300439634498123276176222834094588002203477029431703120666721026088295166015938208578787452447617470420981110681742739501589729089688874701219977168675643400393501019031636735986156822800481179704399515441333154708852980193106051030371025975971140726105231868543289435682591068444682077058566949230294979329627187207330557461522535158209452349970946341295444060370265323350453604017667009504931558488322362480477139404005020402210256373133185810213186000671100094991969672203880497368249472670172473685829890560841738110667750353843071701215593780773237695292015553765731821037415644534697332757544054136342442611065425983461993557816127218299747813249898673155023681652001011599808410703519043808486258338062380633014322224632525851242478791268521796713383807610953638108916481582615453738864215354784246899761520394834810677248132444520115686989454496860603289963464336818674004697427066812628688013998463105270784005072590903591611313839737107838258436291376002487538111360585948203215629334421029248469146775627736729719342208489763395020681781452795833958136949380550036079100240398898889389849252608470062554378594962388685336357216755803837358816405620086072071176469517413795119595374249497832288900760644287948928311592218296413287328446577953788769594394339392514655278303538552555898922916252237259193439724646836560387747782111580693016237997784295593736191244946353544825573071081996645657175132549264602309166640190368655194868986750821808317633143747707688421453957800726547186638452809961959598731886280385650251823377199879643189111713690739645357494689387177711802146134749530592168168345624819545768693067168247301464137758737197018183738459575407555878161118760337275800081444696169086781775351213559112592993901434041121776782474650001633695434512031485285878558145263662365998253819157684573117531084220496817004897291154580464223101825601472092884251530232116661317651093337450030754076385822339417218860692479003613744609946316742314705543165710124459051394714878279134401672107226267803609962193138856792900484752902470520988587601414384933191291734854382395352282440797296885048506472379194229156342632002047812524843665970679080511973109865435364195788209865506917401954381665308062805413955228942862559405525303081470994335666784273579330975462174029875904075898214925437624320830778377604879902231705539088003972242375377163407504527814387215373929932820075952230730426187028489575444103627085194228781668465866370988482938198356199186534115745201920103677043251693174081020976062447761863590800579906886792181777742156009319795711044728813206351019920026269505396107764339207145221124052247470443607598597587645190602090898656393448033976533512873855955558373569073339246213325780229074048560949817806949497316398904489248318359547212746157764423183115761075256922766267618079444938445813063835981835010994749992496473677964144699862848532795286090926800899287362007760422533315435261506883732730881416381102028953640704570824671628009653080447900107160879845692008662375543341315556602935585967178117417888778897290474772529202668543319405216581861939313989165528089002442284106034577658902238120359877735839515337028680433053906722552550112469834286060372350860574351417497289384736471316626435105419859303651191641688482246351373444910432004807499661747545743852735773951796400956829673627476930591077714821117321938939833629321273339251945988549324006347858721428672217073279201404982327048814275767668487297709151847166846535088862479817919558871368253784881856779677863322827191561030423171537141499273357419285754704716833361187674582343986237237692438415259332625783983116733381800900460222397323284250868786343994394788994902404316901505097884132648222151414666520620426510105297854178242827766461180834905113351654939640062268961710435818005801545652951317962034361168726330599538762471676175173142834999121236110829467611015580441113147230820805782376570114219089495025121520377794043802755823155726739524707725064037703823183239107593726211002817594000930907418336833002191704555498162694662951500177437533637636236526542426405871904716033621074598208259974898055136925076890506911662227843075729721088945361179443033888514118101765714605660570081703889081290352471957232733096474597143587427513149349441235603115170807314766819690916461840670765355185557145150574895932631957029622339939331433062312662160947510923628612832693366690266324282667263012748994681083128312244663092078762661670884620179330465333540556247754952323421647854838853067976410464698977307188346637472243433519928634884352898827118795531859968411629234230142452547815455293828191489346254416881420131891794892006179487962449454328255960370697140568252052117352403135646265616847028480359990651312756222525345703057441274397348423131133519206169750143760940495428327571443302517577793343817131232163337460799191445414521093967097768020040009124406618799134508572594865415545733082611903447363205053399679280466225447828065672067013683072700409996479377492034127043613313142083323303252598237482197977041825109125217265807438496985359178873990235040632703410757212992684257978266892371099574041803001116360527242454731039628003509480212936796016070849356307326874445244694613184227040547876249454860310855291709202587683952223299614002361514379233494057064415805125651873200661981783610693866709877502288471558528849013350292481490997002098643734196426389302765576887806702683520438195134076182871874440167504482536200724127294730237118998213289733578198193096736145393971065351440121160309265360611074281395676822838425123395624337580004512050906419792013446424519561887820322722352795382697922724720586116098321679355829281216053221544575197854933325467153190731781269595109321813702001210141005079058500427271530017294470975739588531980913398025472984747853535346332936782107718073250112634615576905849349729426007173515308774793632551331548457905761985389071350673859689825834455165581049813779413410893036210666629871429981752611375976113163585083916305328620635549969684841540512125954127315174132052436151737157453326453989239979774559279793439306704479725990879371873758431967899255544838520913793468798410265438414058761727828916398010011794293479338609008701632640094869758086116687822663579552889453295620436152433018178780959981009298635043456792229176183205573655961277019484629834405625657823439667975383081223561409531277928510330062223878169457235353215167872644414697606476383146068019078036635949964184601129360284345115229483223563470538486959294272394668382966150890714115541117626082230445033508522907847338366916544187050461188142159105764444419207908163634494858706986260718589047620566355797827276845671641382755691829574310032203463252511926577105575017156898242680400241676402135123443699548847784163452701360656963120332012196904406099810500939548855289200756349948125270136369115720179488348223166567556426750575505829871418494997431496186899683765071536442457879724031537699131391498764706296237329680181548447277626471381254661126461870186053866731602237830710851475114362398985200833901699730078395666173510940080897885127861074026069852517512230261037822937769721902523746594677296313909339728442592170478309968166563795886470725687169371570343237766648564624293676814897564660183948624653983220651015570223111111063411069208145026916505750178505396201485964736603173758304426890642320941343986735785840981998174241788605920496845867590522740602437870132041320891216702447068621932429816304404408688048793505449697460005880830572873942797539743526974512159482068018134260735403850449616518787945200829222216943987909305108459238654168752178660355713789866268964706697686302929174468029925079040023565299988000338479503549977962465046711184737460146735813018789414003140411202698059730314217897319920063105016870252192203939794197361184499151530989877844193647602178787706099058911799959406668704250070077270503186215484153123852819961560954703612763118612400881746773464298614500409830675266484857039952530194273450918189329190156340525887491303896212784663097469087678773345166471788122377053704101542878683823430584307274687198184395387155451001942832598016438871364542258271725501428445938231271525782841978870390113468080836582770603359494989669143385890354312904276390282192498748237605143216982577303242656269227604778431876039016370295745792329594482596190014263128084656952979015645458320504270612477451398551761009846404021306309206586373876097772270522982581530998935456838201677112207424845174275972239187023936223350388407712319110197317172430129184930706994848456532437516441632844455073011404286435127820809532904367514776851581984803637248579684895988401922834769849638431402123060927571901167269603315134543317314872784492750634083055022268376270800016756425125616990569517656484203281617892699105306474376713760560394500472847201119270221543761360213807312000108767753942898778079561250003555302364717499659209040621** (the supplier's own strict-assembly kappa; the package kappa above is the outer ledger's). + +## Credit and lineage +The construction gain is PR1625 (mdumitrean): a seven-insert helper-donor kernel for cold pivot 566 on the two local words of PR1297, as vendored in PR1319 (H1 +1, H2 -2, H3 +1 per call on both words; owners, dispatch, parent and idle remainder reused byte-for-byte). `new/gauge44-word-566.json.gz`, `new/extra-word-566.json.gz`, `new/EDITS.json`, `new/rebuild.py`, `new/rebind.py` and the rebound `new/PLAN.json`/`new/PROFILE.json` are PR1625's. The T74 construction is PR1319 (rohanarun) over PR1297's four cold kernels (rohanarun; kernel 531 PR1274 jeremykothe2, kernel 543 PR1286 rohanarun). The outer-witness / endpoint refinement lineage: PR1424, PR1485, PR1574 (rohanarun); PR1479, PR1510, PR1513, PR1536, PR1578 (jeremykothe2); PR1534, PR1549 (midhatn); the soundness repair of the fine Mercator engine is PR1519 (philippeVV); PR1625's own 1e-200 stack is the baseline compared against. + +## What this package adds on top of PR1625 +1. Certified complex endpoints (native and conservative, recomputed for the new global profile) at 1e-30000: the retained engines certify the inherited 1e-24 bracket containing each endpoint, and finer-constant copies of both engines (`code/fine_mercator.py`: 2^-99876 outward rounding, 99876 (even) Mercator terms, 15042 exponential terms; `code/fine_moment.py`: 2^-99933 outward rounding, 31522 log terms, 15042 exponential terms; both evaluate in directed-rounding integer fixed point, floor for lower bounds and ceiling for upper bounds) certify accept at the endpoint and reject at endpoint + 1e-30000, both required. Repaired engine (even term count, asserted) plus the independent exact atanh oracle stage (`code/oracle_check.py`, stage `fine-engine-oracle`). +2. Outer witness settings in `new/SPEC.json:outer_refinement`: grid_digits 29995 (the final kappa grid), margin_digits 30005 (eta = beta = 10^-30005), bootstrap_steps 11116, endpoint_digits 30000; `dec()` prints 30120 significant digits. The bootstrap chain is evaluated in exact integers on a 2^-120084 grid: the internal parameter s is replaced by its floor on the grid and every exponent is rounded down (a smaller exponent or parameter only weakens the bootstrap; the difference is far below the kappa grid), every strict condition is checked exactly, and every stage's cutoff carries the previous constant: with ell_j >= log2 C_j, stage j needs L_j*gap_j^2 >= 36 and L_j*gap_j >= 2(4+ell_j), and the next constant is C_large + C_old*2^(L_j*(a_{j+1}-a_j)) (PR387 PROOF, FINITE_BIT_ACCOUNTING.md), i.e. ell_{j+1} = max(512, ell_j + ceil(L_j*(a_{j+1}-a_j))) + 1; L_j is the least power of two (up to one doubling) meeting both inequalities, both are asserted exactly in integers at proof time for every stage of both branches, and a control asserts that the uncarried cutoffs max(ceil(36/gap^2), ceil(2(4+512)/gap)) of the earlier lineage FAIL the carry rule from stage 2 on (finding of PR1956, Josie Elliston; repair (a)). kappa is unchanged (it is computed from the chain end only). `ASSEMBLY.json` records per-step SHA-256 digests of the exponent, gap and log2 C bound, the cutoff exponent and the carry size instead of the full values. +3. `verify.py` additionally: rebuilds both shipped words from PR1297's pinned words (`new/rebuild.py`), runs the retained `audit_local.py` on them, runs the lineage native chain on both (or reuses hash-checked cached natives), rebinds the PLAN (`new/rebind.py`, must equal `new/PLAN.json` beyond bind-rebound receipt hashes), then the strict T74 chain on `new/PLAN.json` and `new/SPEC.json`; the fine-engine results are memoised across stages (`code/fine_cache.py`, keyed by engine hash and arguments). + +4. Stage `lemmag-labels` (beside the frame-only `local-replay`; `code/lemmag_stage.py` with `code/lemmag_checks.py`, vendored verbatim from PR1964 by thakrarsagar / Sagar Thakrar; Lemma G by DreamingOfClouds, PR509 / PR516): runs the Lemma G extended-label check (`label_check`, strict and permissive readings) and the adapter rule (`adapter_rule`) on each provider's emitted LOCAL-PROGRAMS in both orientations, asserting 0 violations, and requires the three physically wrong adapter mutants that the frame-only replay accepts (X exit straddle, Y entry straddle, Z exit adapters moved before a phase-B add) to be REJECTED on every provider. + +The top-level PLAN.json/SPEC.json are the unchanged PR1424/PR1319 files used by the owner reconstruction and parent lift checks; the strict stage uses `new/`. All 47 strict outer inequalities, the rejection controls and next-grid rejection hold (checked offline with the package's own outer witness and engine). The remaining gap to the exact root is the 1e-30000 endpoint bracket; the displayed digits are set by the 1e-29995 grid. + +--- +## PR1424's original description (SUPERSEDED settings and profile; kept for credit and context only) + +Conditional candidate κ = **0.001676855229071321886206381217337893**, an absolute increase of **6.2381217337893E-23** over PR1377 (0.001676855229071321886144). **Certificate refinement only: the construction, scalar words, provider inventory, owners and paid profile are unchanged.** This is a tiny numerical improvement, not a new kernel or practical speedup. + +**Draft: complete new-package admission is pending.** An exact discovery run on previously verified PR1319 owner and invoice receipts passes both rational moment engines, all 47 strict outer inequalities, and four outer rejection controls. The full portable finite pipeline and a separate closed-form bootstrap audit will run after draft publication. The unchanged PR1297 native providers will be explicitly source-bound reused; no fresh native replay or hosted CI success is claimed. + +The three witness settings are frozen in `SPEC.json:outer_refinement`: 12 bootstrap iterations, eta = beta = 10^-40 with target backoff 10^-43, and a 10^-36 final κ grid. The inherited complex and bit endpoint grids and their native/surcharge models remain unchanged. Every bootstrap cutoff is recomputed from the exact gap. The next final κ grid point rejects for this witness. No optimality over all outer parameters is claimed. + +The recurrence is a_(j+1) = (1-s)s + s a_j. Its closed form is a_j = s - (s-a_0)s^j; 0 < a_0 < s < 1 gives a finite increasing chain below s. This only changes witnesses to the inherited conditional bootstrap and outer lemmas, whose assumptions remain in force. Root endpoints, arithmetic engines and finite construction are inherited unchanged. + +Reproduce complete admission with `python3 -B verify.py --work /absolute/new/work --base-native-from /bound/base/native --extra-native-from /bound/extra/native`, or omit the two reuse flags for fresh native supplier runs. The output directory must not exist and assertions must be enabled. `evidence/OUTER-DISCOVERY.json` is discovery evidence, not a completed new-package replay. `evidence/pr1377/` contains predecessor receipts; inherited `PRICE.json` and input/parent receipts are not new verification. + +Conditional finite construction only. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape, exact recovery, analytic transfer, PR559 recurrence correction and PR589 bit H1-H5 assumptions remain. No unconditional theorem, full Lean certification, or global packing claim. + +Credit Rohan Arun PR1319 (74-replica exact fill) and PR1297 (four cold kernels); Jeremy Kothe PR1377 (finer final grid), PR1019 and PR1274; Jeremy Diviney PR1193; Thomas DiFiore PR1148; Hao Yan and retained owner/controller lineage; eumemic and icekylinx/Zhihao Chen for the exact outer assembly; the PR547/548/559 recurrence and PR589 bit suppliers. Prepared by Rohan Arun with substantial OpenAI Codex assistance. Apache-2.0; predecessor notices and bytes are retained. No independent human or proof-assistant verification is claimed. + +Next: complete finite replay and independent witness audit, then mark ready if they pass. Continue searching for a new paid construction; this numerical gain does not resolve the decoder frame-realization problem. diff --git a/research/capped-fusion-t74-k554/RELEASE.json b/research/capped-fusion-t74-k554/RELEASE.json new file mode 100644 index 0000000000..ce8f7c0bec --- /dev/null +++ b/research/capped-fusion-t74-k554/RELEASE.json @@ -0,0 +1,27 @@ +{ + "package_dir": "research/capped-fusion-t74-k554", + "base": "origin/main", + "title_suffix": "recertified 1e-30000 supplier endpoint and 1e-30010 slacks (kappa +2.00336e-500 over PR1897): fine source-prime padding (PR1786) at the free epsilon -> 1 point, with gauge-free interiors and the radix-distributed union schedule on PR1673's capped phase-cell fusion outer, pivot-566+554 T74 supplier", + "summary": "Capped phase-cell fusion outer (PR1673, Vlado Vojdanovski) on this repository's T74 supplier (pivot-566 and pivot-554 helper-donor kernels, certified complex endpoint 0.00167975495612554452133567...), free strict slacks at 1e-30010 or below, with fine source-prime padding (PR1786, chafreaky / Chafik Boukhalfa, via Tim Trudgian's prime theorem; vendored) which makes the grouped chirp guard beta + 2 xi - 2 < 1, the fractional-shift gauge-free interiors with accretive shallow circuits (PR1758, outer/GAUGEFREE-INTERIORS.md), the radix-distributed union schedule with per-visit tag work, and the explicit Strassen boundary. New here: epsilon is a free parameter of the PR1786 ledger (every row holds for every 1-epsilon > 1e-30010), so the explicit point is epsilon = 1 - 2e-30010, beta = 1 - 6e-30010, giving kappa = 0.00167975495612554452133567099392070257..., 3.4e-30013 below the supplier's complex saving q, hence the ceiling of any outer of this form (outer/FINE-PADDING-COMPOSITION.md). 62 strict inequalities, 17 rejecting controls, an independent balance derivation with an epsilon sweep, PR1786's finite prime/underflow controls and the gauge-free identity checks are regenerated; the supplier's full native admission is rerun. Conditional, with all inherited all-size hypotheses and the cited prime theorem; the fine-padding lemmas (PR1786 is a draft) and the composition need independent review; asymptotic margins are 2e-30010. Endpoint recertification: native and conservative complex endpoints refined to 1e-30000 (accept at endpoint, reject at endpoint + 1e-30000) with the repaired fine engines evaluated in directed-rounding integer fixed point; kappa exceeds PR1897 by 2.00336e-500, PR1876 by 8.11857e-401, PR1875 by 6.06686e-301 and PR1839 by 6.56133e-91 (62 strict inequalities, 17 rejecting controls).", + "credits": "PR1786 (chafreaky / Chafik Boukhalfa): fine source-prime padding, its proof and checks, vendored under vendor/pr1786; Tim Trudgian: effective prime number theorem (arXiv:1401.2689). PR1673 (Vlado Vojdanovski, with AI assistance): capped phase-cell fusion outer construction, its proof and exact evidence, vendored under vendor/pr1673. PR1758 (IdeaOuter and contributors): fractional-shift gauge-free interiors, accretive shallow-circuit lemma, per-visit tag accounting. Jeremy Kothe and contributors (PR1731 ledger lineage, radix-union schedule), LeverRank (independent schedule simulation), Gohberg, Semencul, Kailath, Kung, Morf, Bitmead, Anderson, Pan (structured Toeplitz-like algorithms of the retained alternative), Francois Le Gall et al. and Chafik Boukhalfa (PR1699). Supplier: PR1625 (mdumitrean), PR1661 (midhatn), pivot-554 kernel (PR1672 lineage) and the PR1319/PR1297/PR1274/PR1286 lineage as in earlier packages. PR1956 (Josie Elliston: the bootstrap-cutoff carry finding and repair), PR1897 (M6LI), PR1876, PR1875 and PR1828 (rohanarun): the endpoint and slack refinements that this package exceeds; rohanarun also PR1319 and PR1297; chafreaky PR1786; Vlado Vojdanovski PR1673; mdumitrean PR1625; midhatn; philippeVV PR1519 (odd-term Mercator finding); Kothe and the existing lineage.", + "required": [ + "verify.py", + "verify_release.py", + "MANIFEST.json", + "outer/check_ledger.py", + "outer/RETUNED-SLACKS.md", + "outer/CLASSICAL-BOUNDARY.md", + "outer/UNION-SCHEDULE.md", + "outer/sched_test.py", + "outer/sched_review.py", + "outer/RECT-BOUNDARY.md", + "outer/STRUCTURED-BOUNDARY.md", + "outer/struct_check.py", + "outer/GAUGEFREE-INTERIORS.md", + "outer/check_gaugefree.py", + "outer/FINE-PADDING-COMPOSITION.md", + "outer/check_fine_padding.py", + "vendor/pr1786/FINE-PRIME-PADDING.md", + "vendor/pr1786/NOTICE.md" + ] +} diff --git a/research/capped-fusion-t74-k554/SOURCE-PIN-REFINEMENT.json b/research/capped-fusion-t74-k554/SOURCE-PIN-REFINEMENT.json new file mode 100644 index 0000000000..23d7a6f997 --- /dev/null +++ b/research/capped-fusion-t74-k554/SOURCE-PIN-REFINEMENT.json @@ -0,0 +1,7 @@ +{ + "predecessor_pr": 1377, + "predecessor_head": "7b6b538212812e01c45a51966837598a197a799b", + "construction_pr": 1319, + "construction_head": "603defe58aac018c6a8457840481390a15846fe4", + "scope": "Only outer witness settings and their assembly implementation change; unchanged native words explicitly reused." +} diff --git a/research/capped-fusion-t74-k554/SOURCE-PIN.json b/research/capped-fusion-t74-k554/SOURCE-PIN.json new file mode 100644 index 0000000000..e7415786b7 --- /dev/null +++ b/research/capped-fusion-t74-k554/SOURCE-PIN.json @@ -0,0 +1,13 @@ +{ + "parent_pr": "https://github.com/CrocSwap/integer-mult-bounds/pull/1297", + "parent_head": "4abf710a7f0d2a46f522f3f13c15769d003f9495", + "parent_package": "research/global-mixed-four-cold-kernels", + "local_words_unchanged": true, + "source_files": { + "inputs/DISPATCH.json": "b7b971df9dce435556145df307e2bb5138d87e5aa933f1fe61fcc5b5163301c4", + "inputs/GLOBAL-TEMPLATE.json.gz": "21297b20f1f2dc76eb9dd8124416068c3cb096bab9df17fa4da19bc68dfe082e", + "inputs/OWNERS.json.gz": "3a56f578b2db5647cf6cb811bc6263c7a802ae3e31e9e672596d43185e4e5c9f", + "inputs/PLAN.json": "163431bf8d3bc0d9b894994b1a3cfa7947367b2243b3c0b3a97d740195a1cb08", + "vendor/build_parent.py": "82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e" + } +} diff --git a/research/capped-fusion-t74-k554/SPEC.json b/research/capped-fusion-t74-k554/SPEC.json new file mode 100644 index 0000000000..5158049eef --- /dev/null +++ b/research/capped-fusion-t74-k554/SPEC.json @@ -0,0 +1,7299 @@ +{ + "call_order": [ + [ + 0, + 0 + ], + [ + 0, + 37 + ], + [ + 0, + 1 + ], + [ + 0, + 38 + ], + [ + 0, + 2 + ], + [ + 0, + 39 + ], + [ + 0, + 3 + ], + [ + 0, + 40 + ], + [ + 0, + 4 + ], + [ + 0, + 41 + ], + [ + 1, + 0 + ], + [ + 1, + 37 + ], + [ + 0, + 5 + ], + [ + 0, + 42 + ], + [ + 1, + 1 + ], + [ + 1, + 38 + ], + [ + 0, + 6 + ], + [ + 0, + 43 + ], + [ + 1, + 2 + ], + [ + 1, + 39 + ], + [ + 0, + 7 + ], + [ + 0, + 44 + ], + [ + 1, + 3 + ], + [ + 1, + 40 + ], + [ + 0, + 8 + ], + [ + 0, + 45 + ], + [ + 1, + 4 + ], + [ + 1, + 41 + ], + [ + 0, + 9 + ], + [ + 0, + 46 + ], + [ + 2, + 0 + ], + [ + 2, + 37 + ], + [ + 1, + 5 + ], + [ + 1, + 42 + ], + [ + 0, + 10 + ], + [ + 0, + 47 + ], + [ + 2, + 1 + ], + [ + 2, + 38 + ], + [ + 1, + 6 + ], + [ + 1, + 43 + ], + [ + 0, + 11 + ], + [ + 0, + 48 + ], + [ + 2, + 2 + ], + [ + 2, + 39 + ], + [ + 1, + 7 + ], + [ + 1, + 44 + ], + [ + 0, + 12 + ], + [ + 0, + 49 + ], + [ + 2, + 3 + ], + [ + 2, + 40 + ], + [ + 1, + 8 + ], + [ + 1, + 45 + ], + [ + 0, + 13 + ], + [ + 0, + 50 + ], + [ + 2, + 4 + ], + [ + 2, + 41 + ], + [ + 1, + 9 + ], + [ + 1, + 46 + ], + [ + 3, + 0 + ], + [ + 3, + 37 + ], + [ + 0, + 14 + ], + [ + 0, + 51 + ], + [ + 2, + 5 + ], + [ + 2, + 42 + ], + [ + 1, + 10 + ], + [ + 1, + 47 + ], + [ + 3, + 1 + ], + [ + 3, + 38 + ], + [ + 0, + 15 + ], + [ + 0, + 52 + ], + [ + 2, + 6 + ], + [ + 2, + 43 + ], + [ + 1, + 11 + ], + [ + 1, + 48 + ], + [ + 3, + 2 + ], + [ + 3, + 39 + ], + [ + 0, + 16 + ], + [ + 0, + 53 + ], + [ + 2, + 7 + ], + [ + 2, + 44 + ], + [ + 1, + 12 + ], + [ + 1, + 49 + ], + [ + 3, + 3 + ], + [ + 3, + 40 + ], + [ + 0, + 17 + ], + [ + 0, + 54 + ], + [ + 2, + 8 + ], + [ + 2, + 45 + ], + [ + 1, + 13 + ], + [ + 1, + 50 + ], + [ + 3, + 4 + ], + [ + 3, + 41 + ], + [ + 0, + 18 + ], + [ + 0, + 55 + ], + [ + 2, + 9 + ], + [ + 2, + 46 + ], + [ + 4, + 0 + ], + [ + 4, + 37 + ], + [ + 1, + 14 + ], + [ + 1, + 51 + ], + [ + 3, + 5 + ], + [ + 3, + 42 + ], + [ + 0, + 19 + ], + [ + 0, + 56 + ], + [ + 2, + 10 + ], + [ + 2, + 47 + ], + [ + 4, + 1 + ], + [ + 4, + 38 + ], + [ + 1, + 15 + ], + [ + 1, + 52 + ], + [ + 3, + 6 + ], + [ + 3, + 43 + ], + [ + 0, + 20 + ], + [ + 0, + 57 + ], + [ + 2, + 11 + ], + [ + 2, + 48 + ], + [ + 4, + 2 + ], + [ + 4, + 39 + ], + [ + 1, + 16 + ], + [ + 1, + 53 + ], + [ + 3, + 7 + ], + [ + 3, + 44 + ], + [ + 0, + 21 + ], + [ + 0, + 58 + ], + [ + 2, + 12 + ], + [ + 2, + 49 + ], + [ + 4, + 3 + ], + [ + 4, + 40 + ], + [ + 1, + 17 + ], + [ + 1, + 54 + ], + [ + 3, + 8 + ], + [ + 3, + 45 + ], + [ + 0, + 22 + ], + [ + 0, + 59 + ], + [ + 2, + 13 + ], + [ + 2, + 50 + ], + [ + 4, + 4 + ], + [ + 4, + 41 + ], + [ + 1, + 18 + ], + [ + 1, + 55 + ], + [ + 3, + 9 + ], + [ + 3, + 46 + ], + [ + 0, + 23 + ], + [ + 0, + 60 + ], + [ + 5, + 0 + ], + [ + 5, + 37 + ], + [ + 2, + 14 + ], + [ + 2, + 51 + ], + [ + 4, + 5 + ], + [ + 4, + 42 + ], + [ + 1, + 19 + ], + [ + 1, + 56 + ], + [ + 3, + 10 + ], + [ + 3, + 47 + ], + [ + 0, + 24 + ], + [ + 0, + 61 + ], + [ + 5, + 1 + ], + [ + 5, + 38 + ], + [ + 2, + 15 + ], + [ + 2, + 52 + ], + [ + 4, + 6 + ], + [ + 4, + 43 + ], + [ + 1, + 20 + ], + [ + 1, + 57 + ], + [ + 3, + 11 + ], + [ + 3, + 48 + ], + [ + 0, + 25 + ], + [ + 0, + 62 + ], + [ + 5, + 2 + ], + [ + 5, + 39 + ], + [ + 2, + 16 + ], + [ + 2, + 53 + ], + [ + 4, + 7 + ], + [ + 4, + 44 + ], + [ + 1, + 21 + ], + [ + 1, + 58 + ], + [ + 3, + 12 + ], + [ + 3, + 49 + ], + [ + 0, + 26 + ], + [ + 0, + 63 + ], + [ + 5, + 3 + ], + [ + 5, + 40 + ], + [ + 2, + 17 + ], + [ + 2, + 54 + ], + [ + 4, + 8 + ], + [ + 4, + 45 + ], + [ + 1, + 22 + ], + [ + 1, + 59 + ], + [ + 3, + 13 + ], + [ + 3, + 50 + ], + [ + 0, + 27 + ], + [ + 0, + 64 + ], + [ + 5, + 4 + ], + [ + 5, + 41 + ], + [ + 2, + 18 + ], + [ + 2, + 55 + ], + [ + 4, + 9 + ], + [ + 4, + 46 + ], + [ + 1, + 23 + ], + [ + 1, + 60 + ], + [ + 6, + 0 + ], + [ + 6, + 37 + ], + [ + 3, + 14 + ], + [ + 3, + 51 + ], + [ + 0, + 28 + ], + [ + 0, + 65 + ], + [ + 5, + 5 + ], + [ + 5, + 42 + ], + [ + 2, + 19 + ], + [ + 2, + 56 + ], + [ + 4, + 10 + ], + [ + 4, + 47 + ], + [ + 1, + 24 + ], + [ + 1, + 61 + ], + [ + 6, + 1 + ], + [ + 6, + 38 + ], + [ + 3, + 15 + ], + [ + 3, + 52 + ], + [ + 0, + 29 + ], + [ + 0, + 66 + ], + [ + 5, + 6 + ], + [ + 5, + 43 + ], + [ + 2, + 20 + ], + [ + 2, + 57 + ], + [ + 4, + 11 + ], + [ + 4, + 48 + ], + [ + 1, + 25 + ], + [ + 1, + 62 + ], + [ + 6, + 2 + ], + [ + 6, + 39 + ], + [ + 3, + 16 + ], + [ + 3, + 53 + ], + [ + 0, + 30 + ], + [ + 0, + 67 + ], + [ + 5, + 7 + ], + [ + 5, + 44 + ], + [ + 2, + 21 + ], + [ + 2, + 58 + ], + [ + 4, + 12 + ], + [ + 4, + 49 + ], + [ + 1, + 26 + ], + [ + 1, + 63 + ], + [ + 6, + 3 + ], + [ + 6, + 40 + ], + [ + 3, + 17 + ], + [ + 3, + 54 + ], + [ + 0, + 31 + ], + [ + 0, + 68 + ], + [ + 5, + 8 + ], + [ + 5, + 45 + ], + [ + 2, + 22 + ], + [ + 2, + 59 + ], + [ + 4, + 13 + ], + [ + 4, + 50 + ], + [ + 1, + 27 + ], + [ + 1, + 64 + ], + [ + 6, + 4 + ], + [ + 6, + 41 + ], + [ + 3, + 18 + ], + [ + 3, + 55 + ], + [ + 0, + 32 + ], + [ + 0, + 69 + ], + [ + 5, + 9 + ], + [ + 5, + 46 + ], + [ + 2, + 23 + ], + [ + 2, + 60 + ], + [ + 7, + 0 + ], + [ + 7, + 37 + ], + [ + 4, + 14 + ], + [ + 4, + 51 + ], + [ + 1, + 28 + ], + [ + 1, + 65 + ], + [ + 6, + 5 + ], + [ + 6, + 42 + ], + [ + 3, + 19 + ], + [ + 3, + 56 + ], + [ + 0, + 33 + ], + [ + 0, + 70 + ], + [ + 5, + 10 + ], + [ + 5, + 47 + ], + [ + 2, + 24 + ], + [ + 2, + 61 + ], + [ + 7, + 1 + ], + [ + 7, + 38 + ], + [ + 4, + 15 + ], + [ + 4, + 52 + ], + [ + 1, + 29 + ], + [ + 1, + 66 + ], + [ + 6, + 6 + ], + [ + 6, + 43 + ], + [ + 3, + 20 + ], + [ + 3, + 57 + ], + [ + 0, + 34 + ], + [ + 0, + 71 + ], + [ + 5, + 11 + ], + [ + 5, + 48 + ], + [ + 2, + 25 + ], + [ + 2, + 62 + ], + [ + 7, + 2 + ], + [ + 7, + 39 + ], + [ + 4, + 16 + ], + [ + 4, + 53 + ], + [ + 1, + 30 + ], + [ + 1, + 67 + ], + [ + 6, + 7 + ], + [ + 6, + 44 + ], + [ + 3, + 21 + ], + [ + 3, + 58 + ], + [ + 0, + 35 + ], + [ + 0, + 72 + ], + [ + 5, + 12 + ], + [ + 5, + 49 + ], + [ + 2, + 26 + ], + [ + 2, + 63 + ], + [ + 7, + 3 + ], + [ + 7, + 40 + ], + [ + 4, + 17 + ], + [ + 4, + 54 + ], + [ + 1, + 31 + ], + [ + 1, + 68 + ], + [ + 6, + 8 + ], + [ + 6, + 45 + ], + [ + 3, + 22 + ], + [ + 3, + 59 + ], + [ + 0, + 36 + ], + [ + 0, + 73 + ], + [ + 5, + 13 + ], + [ + 5, + 50 + ], + [ + 2, + 27 + ], + [ + 2, + 64 + ], + [ + 7, + 4 + ], + [ + 7, + 41 + ], + [ + 4, + 18 + ], + [ + 4, + 55 + ], + [ + 1, + 32 + ], + [ + 1, + 69 + ], + [ + 6, + 9 + ], + [ + 6, + 46 + ], + [ + 3, + 23 + ], + [ + 3, + 60 + ], + [ + 8, + 0 + ], + [ + 8, + 37 + ], + [ + 5, + 14 + ], + [ + 5, + 51 + ], + [ + 2, + 28 + ], + [ + 2, + 65 + ], + [ + 7, + 5 + ], + [ + 7, + 42 + ], + [ + 4, + 19 + ], + [ + 4, + 56 + ], + [ + 1, + 33 + ], + [ + 1, + 70 + ], + [ + 6, + 10 + ], + [ + 6, + 47 + ], + [ + 3, + 24 + ], + [ + 3, + 61 + ], + [ + 8, + 1 + ], + [ + 8, + 38 + ], + [ + 5, + 15 + ], + [ + 5, + 52 + ], + [ + 2, + 29 + ], + [ + 2, + 66 + ], + [ + 7, + 6 + ], + [ + 7, + 43 + ], + [ + 4, + 20 + ], + [ + 4, + 57 + ], + [ + 1, + 34 + ], + [ + 1, + 71 + ], + [ + 6, + 11 + ], + [ + 6, + 48 + ], + [ + 3, + 25 + ], + [ + 3, + 62 + ], + [ + 8, + 2 + ], + [ + 8, + 39 + ], + [ + 5, + 16 + ], + [ + 5, + 53 + ], + [ + 2, + 30 + ], + [ + 2, + 67 + ], + [ + 7, + 7 + ], + [ + 7, + 44 + ], + [ + 4, + 21 + ], + [ + 4, + 58 + ], + [ + 1, + 35 + ], + [ + 1, + 72 + ], + [ + 6, + 12 + ], + [ + 6, + 49 + ], + [ + 3, + 26 + ], + [ + 3, + 63 + ], + [ + 8, + 3 + ], + [ + 8, + 40 + ], + [ + 5, + 17 + ], + [ + 5, + 54 + ], + [ + 2, + 31 + ], + [ + 2, + 68 + ], + [ + 7, + 8 + ], + [ + 7, + 45 + ], + [ + 4, + 22 + ], + [ + 4, + 59 + ], + [ + 1, + 36 + ], + [ + 1, + 73 + ], + [ + 6, + 13 + ], + [ + 6, + 50 + ], + [ + 3, + 27 + ], + [ + 3, + 64 + ], + [ + 8, + 4 + ], + [ + 8, + 41 + ], + [ + 5, + 18 + ], + [ + 5, + 55 + ], + [ + 2, + 32 + ], + [ + 2, + 69 + ], + [ + 7, + 9 + ], + [ + 7, + 46 + ], + [ + 4, + 23 + ], + [ + 4, + 60 + ], + [ + 6, + 14 + ], + [ + 6, + 51 + ], + [ + 3, + 28 + ], + [ + 3, + 65 + ], + [ + 8, + 5 + ], + [ + 8, + 42 + ], + [ + 5, + 19 + ], + [ + 5, + 56 + ], + [ + 2, + 33 + ], + [ + 2, + 70 + ], + [ + 7, + 10 + ], + [ + 7, + 47 + ], + [ + 4, + 24 + ], + [ + 4, + 61 + ], + [ + 6, + 15 + ], + [ + 6, + 52 + ], + [ + 3, + 29 + ], + [ + 3, + 66 + ], + [ + 8, + 6 + ], + [ + 8, + 43 + ], + [ + 5, + 20 + ], + [ + 5, + 57 + ], + [ + 2, + 34 + ], + [ + 2, + 71 + ], + [ + 7, + 11 + ], + [ + 7, + 48 + ], + [ + 4, + 25 + ], + [ + 4, + 62 + ], + [ + 6, + 16 + ], + [ + 6, + 53 + ], + [ + 3, + 30 + ], + [ + 3, + 67 + ], + [ + 8, + 7 + ], + [ + 8, + 44 + ], + [ + 5, + 21 + ], + [ + 5, + 58 + ], + [ + 2, + 35 + ], + [ + 2, + 72 + ], + [ + 7, + 12 + ], + [ + 7, + 49 + ], + [ + 4, + 26 + ], + [ + 4, + 63 + ], + [ + 6, + 17 + ], + [ + 6, + 54 + ], + [ + 3, + 31 + ], + [ + 3, + 68 + ], + [ + 8, + 8 + ], + [ + 8, + 45 + ], + [ + 5, + 22 + ], + [ + 5, + 59 + ], + [ + 2, + 36 + ], + [ + 2, + 73 + ], + [ + 7, + 13 + ], + [ + 7, + 50 + ], + [ + 4, + 27 + ], + [ + 4, + 64 + ], + [ + 6, + 18 + ], + [ + 6, + 55 + ], + [ + 3, + 32 + ], + [ + 3, + 69 + ], + [ + 8, + 9 + ], + [ + 8, + 46 + ], + [ + 5, + 23 + ], + [ + 5, + 60 + ], + [ + 7, + 14 + ], + [ + 7, + 51 + ], + [ + 4, + 28 + ], + [ + 4, + 65 + ], + [ + 6, + 19 + ], + [ + 6, + 56 + ], + [ + 3, + 33 + ], + [ + 3, + 70 + ], + [ + 8, + 10 + ], + [ + 8, + 47 + ], + [ + 5, + 24 + ], + [ + 5, + 61 + ], + [ + 7, + 15 + ], + [ + 7, + 52 + ], + [ + 4, + 29 + ], + [ + 4, + 66 + ], + [ + 6, + 20 + ], + [ + 6, + 57 + ], + [ + 3, + 34 + ], + [ + 3, + 71 + ], + [ + 8, + 11 + ], + [ + 8, + 48 + ], + [ + 5, + 25 + ], + [ + 5, + 62 + ], + [ + 7, + 16 + ], + [ + 7, + 53 + ], + [ + 4, + 30 + ], + [ + 4, + 67 + ], + [ + 6, + 21 + ], + [ + 6, + 58 + ], + [ + 3, + 35 + ], + [ + 3, + 72 + ], + [ + 8, + 12 + ], + [ + 8, + 49 + ], + [ + 5, + 26 + ], + [ + 5, + 63 + ], + [ + 7, + 17 + ], + [ + 7, + 54 + ], + [ + 4, + 31 + ], + [ + 4, + 68 + ], + [ + 6, + 22 + ], + [ + 6, + 59 + ], + [ + 3, + 36 + ], + [ + 3, + 73 + ], + [ + 8, + 13 + ], + [ + 8, + 50 + ], + [ + 5, + 27 + ], + [ + 5, + 64 + ], + [ + 7, + 18 + ], + [ + 7, + 55 + ], + [ + 4, + 32 + ], + [ + 4, + 69 + ], + [ + 6, + 23 + ], + [ + 6, + 60 + ], + [ + 8, + 14 + ], + [ + 8, + 51 + ], + [ + 5, + 28 + ], + [ + 5, + 65 + ], + [ + 7, + 19 + ], + [ + 7, + 56 + ], + [ + 4, + 33 + ], + [ + 4, + 70 + ], + [ + 6, + 24 + ], + [ + 6, + 61 + ], + [ + 8, + 15 + ], + [ + 8, + 52 + ], + [ + 5, + 29 + ], + [ + 5, + 66 + ], + [ + 7, + 20 + ], + [ + 7, + 57 + ], + [ + 4, + 34 + ], + [ + 4, + 71 + ], + [ + 6, + 25 + ], + [ + 6, + 62 + ], + [ + 8, + 16 + ], + [ + 8, + 53 + ], + [ + 5, + 30 + ], + [ + 5, + 67 + ], + [ + 7, + 21 + ], + [ + 7, + 58 + ], + [ + 4, + 35 + ], + [ + 4, + 72 + ], + [ + 6, + 26 + ], + [ + 6, + 63 + ], + [ + 8, + 17 + ], + [ + 8, + 54 + ], + [ + 5, + 31 + ], + [ + 5, + 68 + ], + [ + 7, + 22 + ], + [ + 7, + 59 + ], + [ + 4, + 36 + ], + [ + 4, + 73 + ], + [ + 6, + 27 + ], + [ + 6, + 64 + ], + [ + 8, + 18 + ], + [ + 8, + 55 + ], + [ + 5, + 32 + ], + [ + 5, + 69 + ], + [ + 7, + 23 + ], + [ + 7, + 60 + ], + [ + 6, + 28 + ], + [ + 6, + 65 + ], + [ + 8, + 19 + ], + [ + 8, + 56 + ], + [ + 5, + 33 + ], + [ + 5, + 70 + ], + [ + 7, + 24 + ], + [ + 7, + 61 + ], + [ + 6, + 29 + ], + [ + 6, + 66 + ], + [ + 8, + 20 + ], + [ + 8, + 57 + ], + [ + 5, + 34 + ], + [ + 5, + 71 + ], + [ + 7, + 25 + ], + [ + 7, + 62 + ], + [ + 6, + 30 + ], + [ + 6, + 67 + ], + [ + 8, + 21 + ], + [ + 8, + 58 + ], + [ + 5, + 35 + ], + [ + 5, + 72 + ], + [ + 7, + 26 + ], + [ + 7, + 63 + ], + [ + 6, + 31 + ], + [ + 6, + 68 + ], + [ + 8, + 22 + ], + [ + 8, + 59 + ], + [ + 5, + 36 + ], + [ + 5, + 73 + ], + [ + 7, + 27 + ], + [ + 7, + 64 + ], + [ + 6, + 32 + ], + [ + 6, + 69 + ], + [ + 8, + 23 + ], + [ + 8, + 60 + ], + [ + 7, + 28 + ], + [ + 7, + 65 + ], + [ + 6, + 33 + ], + [ + 6, + 70 + ], + [ + 8, + 24 + ], + [ + 8, + 61 + ], + [ + 7, + 29 + ], + [ + 7, + 66 + ], + [ + 6, + 34 + ], + [ + 6, + 71 + ], + [ + 8, + 25 + ], + [ + 8, + 62 + ], + [ + 7, + 30 + ], + [ + 7, + 67 + ], + [ + 6, + 35 + ], + [ + 6, + 72 + ], + [ + 8, + 26 + ], + [ + 8, + 63 + ], + [ + 7, + 31 + ], + [ + 7, + 68 + ], + [ + 6, + 36 + ], + [ + 6, + 73 + ], + [ + 8, + 27 + ], + [ + 8, + 64 + ], + [ + 7, + 32 + ], + [ + 7, + 69 + ], + [ + 8, + 28 + ], + [ + 8, + 65 + ], + [ + 7, + 33 + ], + [ + 7, + 70 + ], + [ + 8, + 29 + ], + [ + 8, + 66 + ], + [ + 7, + 34 + ], + [ + 7, + 71 + ], + [ + 8, + 30 + ], + [ + 8, + 67 + ], + [ + 7, + 35 + ], + [ + 7, + 72 + ], + [ + 8, + 31 + ], + [ + 8, + 68 + ], + [ + 7, + 36 + ], + [ + 7, + 73 + ], + [ + 8, + 32 + ], + [ + 8, + 69 + ], + [ + 8, + 33 + ], + [ + 8, + 70 + ], + [ + 8, + 34 + ], + [ + 8, + 71 + ], + [ + 8, + 35 + ], + [ + 8, + 72 + ], + [ + 8, + 36 + ], + [ + 8, + 73 + ] + ], + "data": { + "owners_sha256": "cdfdcdec09592b4fd296ec49efe38573c1a61ecb8385b538ce801ee29355695b", + "plan_sha256": "e9ca855b0ccba243868aa7bd24b42f9e59f2f554bfe10521143591073e72ea18" + }, + "dispatch": [ + [ + 0, + 0, + "extra" + ], + [ + 0, + 37, + "extra" + ], + [ + 0, + 1, + "extra" + ], + [ + 0, + 38, + "extra" + ], + [ + 0, + 2, + "extra" + ], + [ + 0, + 39, + "extra" + ], + [ + 0, + 3, + "extra" + ], + [ + 0, + 40, + "extra" + ], + [ + 0, + 4, + "extra" + ], + [ + 0, + 41, + "extra" + ], + [ + 1, + 0, + "extra" + ], + [ + 1, + 37, + "extra" + ], + [ + 0, + 5, + "extra" + ], + [ + 0, + 42, + "extra" + ], + [ + 1, + 1, + "extra" + ], + [ + 1, + 38, + "extra" + ], + [ + 0, + 6, + "extra" + ], + [ + 0, + 43, + "extra" + ], + [ + 1, + 2, + "extra" + ], + [ + 1, + 39, + "extra" + ], + [ + 0, + 7, + "extra" + ], + [ + 0, + 44, + "extra" + ], + [ + 1, + 3, + "extra" + ], + [ + 1, + 40, + "extra" + ], + [ + 0, + 8, + "extra" + ], + [ + 0, + 45, + "extra" + ], + [ + 1, + 4, + "extra" + ], + [ + 1, + 41, + "extra" + ], + [ + 0, + 9, + "extra" + ], + [ + 0, + 46, + "extra" + ], + [ + 2, + 0, + "extra" + ], + [ + 2, + 37, + "extra" + ], + [ + 1, + 5, + "extra" + ], + [ + 1, + 42, + "extra" + ], + [ + 0, + 10, + "extra" + ], + [ + 0, + 47, + "extra" + ], + [ + 2, + 1, + "extra" + ], + [ + 2, + 38, + "extra" + ], + [ + 1, + 6, + "extra" + ], + [ + 1, + 43, + "extra" + ], + [ + 0, + 11, + "extra" + ], + [ + 0, + 48, + "extra" + ], + [ + 2, + 2, + "extra" + ], + [ + 2, + 39, + "extra" + ], + [ + 1, + 7, + "extra" + ], + [ + 1, + 44, + "extra" + ], + [ + 0, + 12, + "extra" + ], + [ + 0, + 49, + "extra" + ], + [ + 2, + 3, + "extra" + ], + [ + 2, + 40, + "extra" + ], + [ + 1, + 8, + "extra" + ], + [ + 1, + 45, + "extra" + ], + [ + 0, + 13, + "extra" + ], + [ + 0, + 50, + "extra" + ], + [ + 2, + 4, + "extra" + ], + [ + 2, + 41, + "extra" + ], + [ + 1, + 9, + "extra" + ], + [ + 1, + 46, + "extra" + ], + [ + 3, + 0, + "extra" + ], + [ + 3, + 37, + "extra" + ], + [ + 0, + 14, + "extra" + ], + [ + 0, + 51, + "extra" + ], + [ + 2, + 5, + "extra" + ], + [ + 2, + 42, + "extra" + ], + [ + 1, + 10, + "extra" + ], + [ + 1, + 47, + "extra" + ], + [ + 3, + 1, + "extra" + ], + [ + 3, + 38, + "extra" + ], + [ + 0, + 15, + "extra" + ], + [ + 0, + 52, + "extra" + ], + [ + 2, + 6, + "extra" + ], + [ + 2, + 43, + "extra" + ], + [ + 1, + 11, + "extra" + ], + [ + 1, + 48, + "extra" + ], + [ + 3, + 2, + "extra" + ], + [ + 3, + 39, + "extra" + ], + [ + 0, + 16, + "extra" + ], + [ + 0, + 53, + "extra" + ], + [ + 2, + 7, + "extra" + ], + [ + 2, + 44, + "extra" + ], + [ + 1, + 12, + "extra" + ], + [ + 1, + 49, + "extra" + ], + [ + 3, + 3, + "extra" + ], + [ + 3, + 40, + "extra" + ], + [ + 0, + 17, + "extra" + ], + [ + 0, + 54, + "extra" + ], + [ + 2, + 8, + "extra" + ], + [ + 2, + 45, + "extra" + ], + [ + 1, + 13, + "extra" + ], + [ + 1, + 50, + "extra" + ], + [ + 3, + 4, + "extra" + ], + [ + 3, + 41, + "extra" + ], + [ + 0, + 18, + "extra" + ], + [ + 0, + 55, + "extra" + ], + [ + 2, + 9, + "extra" + ], + [ + 2, + 46, + "extra" + ], + [ + 4, + 0, + "extra" + ], + [ + 4, + 37, + "extra" + ], + [ + 1, + 14, + "extra" + ], + [ + 1, + 51, + "extra" + ], + [ + 3, + 5, + "extra" + ], + [ + 3, + 42, + "extra" + ], + [ + 0, + 19, + "extra" + ], + [ + 0, + 56, + "extra" + ], + [ + 2, + 10, + "extra" + ], + [ + 2, + 47, + "extra" + ], + [ + 4, + 1, + "extra" + ], + [ + 4, + 38, + "extra" + ], + [ + 1, + 15, + "extra" + ], + [ + 1, + 52, + "extra" + ], + [ + 3, + 6, + "extra" + ], + [ + 3, + 43, + "extra" + ], + [ + 0, + 20, + "extra" + ], + [ + 0, + 57, + "extra" + ], + [ + 2, + 11, + "extra" + ], + [ + 2, + 48, + "extra" + ], + [ + 4, + 2, + "extra" + ], + [ + 4, + 39, + "extra" + ], + [ + 1, + 16, + "extra" + ], + [ + 1, + 53, + "extra" + ], + [ + 3, + 7, + "extra" + ], + [ + 3, + 44, + "extra" + ], + [ + 0, + 21, + "extra" + ], + [ + 0, + 58, + "extra" + ], + [ + 2, + 12, + "extra" + ], + [ + 2, + 49, + "extra" + ], + [ + 4, + 3, + "extra" + ], + [ + 4, + 40, + "extra" + ], + [ + 1, + 17, + "extra" + ], + [ + 1, + 54, + "extra" + ], + [ + 3, + 8, + "extra" + ], + [ + 3, + 45, + "extra" + ], + [ + 0, + 22, + "extra" + ], + [ + 0, + 59, + "extra" + ], + [ + 2, + 13, + "extra" + ], + [ + 2, + 50, + "extra" + ], + [ + 4, + 4, + "extra" + ], + [ + 4, + 41, + "extra" + ], + [ + 1, + 18, + "extra" + ], + [ + 1, + 55, + "extra" + ], + [ + 3, + 9, + "extra" + ], + [ + 3, + 46, + "extra" + ], + [ + 0, + 23, + "extra" + ], + [ + 0, + 60, + "extra" + ], + [ + 5, + 0, + "extra" + ], + [ + 5, + 37, + "extra" + ], + [ + 2, + 14, + "extra" + ], + [ + 2, + 51, + "extra" + ], + [ + 4, + 5, + "extra" + ], + [ + 4, + 42, + "extra" + ], + [ + 1, + 19, + "extra" + ], + [ + 1, + 56, + "extra" + ], + [ + 3, + 10, + "extra" + ], + [ + 3, + 47, + "extra" + ], + [ + 0, + 24, + "extra" + ], + [ + 0, + 61, + "extra" + ], + [ + 5, + 1, + "extra" + ], + [ + 5, + 38, + "extra" + ], + [ + 2, + 15, + "extra" + ], + [ + 2, + 52, + "extra" + ], + [ + 4, + 6, + "extra" + ], + [ + 4, + 43, + "extra" + ], + [ + 1, + 20, + "extra" + ], + [ + 1, + 57, + "extra" + ], + [ + 3, + 11, + "extra" + ], + [ + 3, + 48, + "extra" + ], + [ + 0, + 25, + "extra" + ], + [ + 0, + 62, + "extra" + ], + [ + 5, + 2, + "extra" + ], + [ + 5, + 39, + "extra" + ], + [ + 2, + 16, + "extra" + ], + [ + 2, + 53, + "extra" + ], + [ + 4, + 7, + "extra" + ], + [ + 4, + 44, + "extra" + ], + [ + 1, + 21, + "extra" + ], + [ + 1, + 58, + "extra" + ], + [ + 3, + 12, + "extra" + ], + [ + 3, + 49, + "extra" + ], + [ + 0, + 26, + "extra" + ], + [ + 0, + 63, + "extra" + ], + [ + 5, + 3, + "extra" + ], + [ + 5, + 40, + "extra" + ], + [ + 2, + 17, + "extra" + ], + [ + 2, + 54, + "extra" + ], + [ + 4, + 8, + "extra" + ], + [ + 4, + 45, + "extra" + ], + [ + 1, + 22, + "extra" + ], + [ + 1, + 59, + "extra" + ], + [ + 3, + 13, + "extra" + ], + [ + 3, + 50, + "extra" + ], + [ + 0, + 27, + "extra" + ], + [ + 0, + 64, + "extra" + ], + [ + 5, + 4, + "extra" + ], + [ + 5, + 41, + "extra" + ], + [ + 2, + 18, + "extra" + ], + [ + 2, + 55, + "extra" + ], + [ + 4, + 9, + "extra" + ], + [ + 4, + 46, + "extra" + ], + [ + 1, + 23, + "extra" + ], + [ + 1, + 60, + "extra" + ], + [ + 6, + 0, + "extra" + ], + [ + 6, + 37, + "extra" + ], + [ + 3, + 14, + "extra" + ], + [ + 3, + 51, + "extra" + ], + [ + 0, + 28, + "extra" + ], + [ + 0, + 65, + "extra" + ], + [ + 5, + 5, + "extra" + ], + [ + 5, + 42, + "extra" + ], + [ + 2, + 19, + "extra" + ], + [ + 2, + 56, + "extra" + ], + [ + 4, + 10, + "extra" + ], + [ + 4, + 47, + "extra" + ], + [ + 1, + 24, + "extra" + ], + [ + 1, + 61, + "extra" + ], + [ + 6, + 1, + "extra" + ], + [ + 6, + 38, + "extra" + ], + [ + 3, + 15, + "extra" + ], + [ + 3, + 52, + "extra" + ], + [ + 0, + 29, + "extra" + ], + [ + 0, + 66, + "extra" + ], + [ + 5, + 6, + "extra" + ], + [ + 5, + 43, + "extra" + ], + [ + 2, + 20, + "extra" + ], + [ + 2, + 57, + "extra" + ], + [ + 4, + 11, + "extra" + ], + [ + 4, + 48, + "extra" + ], + [ + 1, + 25, + "extra" + ], + [ + 1, + 62, + "extra" + ], + [ + 6, + 2, + "extra" + ], + [ + 6, + 39, + "extra" + ], + [ + 3, + 16, + "extra" + ], + [ + 3, + 53, + "extra" + ], + [ + 0, + 30, + "extra" + ], + [ + 0, + 67, + "extra" + ], + [ + 5, + 7, + "extra" + ], + [ + 5, + 44, + "extra" + ], + [ + 2, + 21, + "extra" + ], + [ + 2, + 58, + "extra" + ], + [ + 4, + 12, + "extra" + ], + [ + 4, + 49, + "extra" + ], + [ + 1, + 26, + "extra" + ], + [ + 1, + 63, + "extra" + ], + [ + 6, + 3, + "extra" + ], + [ + 6, + 40, + "extra" + ], + [ + 3, + 17, + "extra" + ], + [ + 3, + 54, + "extra" + ], + [ + 0, + 31, + "extra" + ], + [ + 0, + 68, + "extra" + ], + [ + 5, + 8, + "extra" + ], + [ + 5, + 45, + "extra" + ], + [ + 2, + 22, + "extra" + ], + [ + 2, + 59, + "extra" + ], + [ + 4, + 13, + "extra" + ], + [ + 4, + 50, + "extra" + ], + [ + 1, + 27, + "extra" + ], + [ + 1, + 64, + "extra" + ], + [ + 6, + 4, + "extra" + ], + [ + 6, + 41, + "extra" + ], + [ + 3, + 18, + "extra" + ], + [ + 3, + 55, + "extra" + ], + [ + 0, + 32, + "extra" + ], + [ + 0, + 69, + "extra" + ], + [ + 5, + 9, + "extra" + ], + [ + 5, + 46, + "extra" + ], + [ + 2, + 23, + "extra" + ], + [ + 2, + 60, + "extra" + ], + [ + 7, + 0, + "extra" + ], + [ + 7, + 37, + "extra" + ], + [ + 4, + 14, + "extra" + ], + [ + 4, + 51, + "extra" + ], + [ + 1, + 28, + "extra" + ], + [ + 1, + 65, + "extra" + ], + [ + 6, + 5, + "extra" + ], + [ + 6, + 42, + "extra" + ], + [ + 3, + 19, + "extra" + ], + [ + 3, + 56, + "extra" + ], + [ + 0, + 33, + "extra" + ], + [ + 0, + 70, + "extra" + ], + [ + 5, + 10, + "extra" + ], + [ + 5, + 47, + "extra" + ], + [ + 2, + 24, + "extra" + ], + [ + 2, + 61, + "extra" + ], + [ + 7, + 1, + "extra" + ], + [ + 7, + 38, + "extra" + ], + [ + 4, + 15, + "extra" + ], + [ + 4, + 52, + "extra" + ], + [ + 1, + 29, + "extra" + ], + [ + 1, + 66, + "extra" + ], + [ + 6, + 6, + "extra" + ], + [ + 6, + 43, + "extra" + ], + [ + 3, + 20, + "extra" + ], + [ + 3, + 57, + "extra" + ], + [ + 0, + 34, + "extra" + ], + [ + 0, + 71, + "extra" + ], + [ + 5, + 11, + "extra" + ], + [ + 5, + 48, + "extra" + ], + [ + 2, + 25, + "extra" + ], + [ + 2, + 62, + "extra" + ], + [ + 7, + 2, + "extra" + ], + [ + 7, + 39, + "extra" + ], + [ + 4, + 16, + "extra" + ], + [ + 4, + 53, + "extra" + ], + [ + 1, + 30, + "extra" + ], + [ + 1, + 67, + "extra" + ], + [ + 6, + 7, + "extra" + ], + [ + 6, + 44, + "extra" + ], + [ + 3, + 21, + "extra" + ], + [ + 3, + 58, + "extra" + ], + [ + 0, + 35, + "extra" + ], + [ + 0, + 72, + "extra" + ], + [ + 5, + 12, + "extra" + ], + [ + 5, + 49, + "extra" + ], + [ + 2, + 26, + "extra" + ], + [ + 2, + 63, + "extra" + ], + [ + 7, + 3, + "extra" + ], + [ + 7, + 40, + "extra" + ], + [ + 4, + 17, + "extra" + ], + [ + 4, + 54, + "extra" + ], + [ + 1, + 31, + "extra" + ], + [ + 1, + 68, + "extra" + ], + [ + 6, + 8, + "extra" + ], + [ + 6, + 45, + "extra" + ], + [ + 3, + 22, + "extra" + ], + [ + 3, + 59, + "extra" + ], + [ + 0, + 36, + "extra" + ], + [ + 0, + 73, + "extra" + ], + [ + 5, + 13, + "extra" + ], + [ + 5, + 50, + "extra" + ], + [ + 2, + 27, + "extra" + ], + [ + 2, + 64, + "extra" + ], + [ + 7, + 4, + "extra" + ], + [ + 7, + 41, + "extra" + ], + [ + 4, + 18, + "extra" + ], + [ + 4, + 55, + "extra" + ], + [ + 1, + 32, + "extra" + ], + [ + 1, + 69, + "extra" + ], + [ + 6, + 9, + "extra" + ], + [ + 6, + 46, + "extra" + ], + [ + 3, + 23, + "extra" + ], + [ + 3, + 60, + "extra" + ], + [ + 8, + 0, + "extra" + ], + [ + 8, + 37, + "extra" + ], + [ + 5, + 14, + "extra" + ], + [ + 5, + 51, + "extra" + ], + [ + 2, + 28, + "extra" + ], + [ + 2, + 65, + "extra" + ], + [ + 7, + 5, + "extra" + ], + [ + 7, + 42, + "extra" + ], + [ + 4, + 19, + "extra" + ], + [ + 4, + 56, + "extra" + ], + [ + 1, + 33, + "extra" + ], + [ + 1, + 70, + "extra" + ], + [ + 6, + 10, + "extra" + ], + [ + 6, + 47, + "extra" + ], + [ + 3, + 24, + "extra" + ], + [ + 3, + 61, + "extra" + ], + [ + 8, + 1, + "extra" + ], + [ + 8, + 38, + "extra" + ], + [ + 5, + 15, + "extra" + ], + [ + 5, + 52, + "extra" + ], + [ + 2, + 29, + "extra" + ], + [ + 2, + 66, + "extra" + ], + [ + 7, + 6, + "extra" + ], + [ + 7, + 43, + "extra" + ], + [ + 4, + 20, + "extra" + ], + [ + 4, + 57, + "extra" + ], + [ + 1, + 34, + "extra" + ], + [ + 1, + 71, + "extra" + ], + [ + 6, + 11, + "extra" + ], + [ + 6, + 48, + "extra" + ], + [ + 3, + 25, + "extra" + ], + [ + 3, + 62, + "extra" + ], + [ + 8, + 2, + "extra" + ], + [ + 8, + 39, + "extra" + ], + [ + 5, + 16, + "extra" + ], + [ + 5, + 53, + "extra" + ], + [ + 2, + 30, + "extra" + ], + [ + 2, + 67, + "extra" + ], + [ + 7, + 7, + "extra" + ], + [ + 7, + 44, + "extra" + ], + [ + 4, + 21, + "extra" + ], + [ + 4, + 58, + "extra" + ], + [ + 1, + 35, + "extra" + ], + [ + 1, + 72, + "extra" + ], + [ + 6, + 12, + "extra" + ], + [ + 6, + 49, + "extra" + ], + [ + 3, + 26, + "extra" + ], + [ + 3, + 63, + "extra" + ], + [ + 8, + 3, + "extra" + ], + [ + 8, + 40, + "extra" + ], + [ + 5, + 17, + "extra" + ], + [ + 5, + 54, + "extra" + ], + [ + 2, + 31, + "extra" + ], + [ + 2, + 68, + "extra" + ], + [ + 7, + 8, + "extra" + ], + [ + 7, + 45, + "extra" + ], + [ + 4, + 22, + "extra" + ], + [ + 4, + 59, + "extra" + ], + [ + 1, + 36, + "extra" + ], + [ + 1, + 73, + "extra" + ], + [ + 6, + 13, + "extra" + ], + [ + 6, + 50, + "extra" + ], + [ + 3, + 27, + "extra" + ], + [ + 3, + 64, + "extra" + ], + [ + 8, + 4, + "extra" + ], + [ + 8, + 41, + "extra" + ], + [ + 5, + 18, + "extra" + ], + [ + 5, + 55, + "extra" + ], + [ + 2, + 32, + "extra" + ], + [ + 2, + 69, + "extra" + ], + [ + 7, + 9, + "extra" + ], + [ + 7, + 46, + "extra" + ], + [ + 4, + 23, + "extra" + ], + [ + 4, + 60, + "extra" + ], + [ + 6, + 14, + "extra" + ], + [ + 6, + 51, + "extra" + ], + [ + 3, + 28, + "extra" + ], + [ + 3, + 65, + "gauge44" + ], + [ + 8, + 5, + "gauge44" + ], + [ + 8, + 42, + "gauge44" + ], + [ + 5, + 19, + "gauge44" + ], + [ + 5, + 56, + "gauge44" + ], + [ + 2, + 33, + "gauge44" + ], + [ + 2, + 70, + "gauge44" + ], + [ + 7, + 10, + "gauge44" + ], + [ + 7, + 47, + "gauge44" + ], + [ + 4, + 24, + "gauge44" + ], + [ + 4, + 61, + "gauge44" + ], + [ + 6, + 15, + "gauge44" + ], + [ + 6, + 52, + "gauge44" + ], + [ + 3, + 29, + "gauge44" + ], + [ + 3, + 66, + "gauge44" + ], + [ + 8, + 6, + "gauge44" + ], + [ + 8, + 43, + "gauge44" + ], + [ + 5, + 20, + "gauge44" + ], + [ + 5, + 57, + "gauge44" + ], + [ + 2, + 34, + "gauge44" + ], + [ + 2, + 71, + "gauge44" + ], + [ + 7, + 11, + "gauge44" + ], + [ + 7, + 48, + "gauge44" + ], + [ + 4, + 25, + "gauge44" + ], + [ + 4, + 62, + "gauge44" + ], + [ + 6, + 16, + "gauge44" + ], + [ + 6, + 53, + "gauge44" + ], + [ + 3, + 30, + "gauge44" + ], + [ + 3, + 67, + "gauge44" + ], + [ + 8, + 7, + "gauge44" + ], + [ + 8, + 44, + "gauge44" + ], + [ + 5, + 21, + "gauge44" + ], + [ + 5, + 58, + "gauge44" + ], + [ + 2, + 35, + "gauge44" + ], + [ + 2, + 72, + "gauge44" + ], + [ + 7, + 12, + "gauge44" + ], + [ + 7, + 49, + "gauge44" + ], + [ + 4, + 26, + "gauge44" + ], + [ + 4, + 63, + "gauge44" + ], + [ + 6, + 17, + "gauge44" + ], + [ + 6, + 54, + "gauge44" + ], + [ + 3, + 31, + "gauge44" + ], + [ + 3, + 68, + "gauge44" + ], + [ + 8, + 8, + "gauge44" + ], + [ + 8, + 45, + "gauge44" + ], + [ + 5, + 22, + "gauge44" + ], + [ + 5, + 59, + "gauge44" + ], + [ + 2, + 36, + "gauge44" + ], + [ + 2, + 73, + "gauge44" + ], + [ + 7, + 13, + "gauge44" + ], + [ + 7, + 50, + "gauge44" + ], + [ + 4, + 27, + "gauge44" + ], + [ + 4, + 64, + "gauge44" + ], + [ + 6, + 18, + "gauge44" + ], + [ + 6, + 55, + "gauge44" + ], + [ + 3, + 32, + "gauge44" + ], + [ + 3, + 69, + "gauge44" + ], + [ + 8, + 9, + "gauge44" + ], + [ + 8, + 46, + "gauge44" + ], + [ + 5, + 23, + "gauge44" + ], + [ + 5, + 60, + "gauge44" + ], + [ + 7, + 14, + "gauge44" + ], + [ + 7, + 51, + "gauge44" + ], + [ + 4, + 28, + "gauge44" + ], + [ + 4, + 65, + "gauge44" + ], + [ + 6, + 19, + "gauge44" + ], + [ + 6, + 56, + "gauge44" + ], + [ + 3, + 33, + "gauge44" + ], + [ + 3, + 70, + "gauge44" + ], + [ + 8, + 10, + "gauge44" + ], + [ + 8, + 47, + "gauge44" + ], + [ + 5, + 24, + "gauge44" + ], + [ + 5, + 61, + "gauge44" + ], + [ + 7, + 15, + "gauge44" + ], + [ + 7, + 52, + "gauge44" + ], + [ + 4, + 29, + "gauge44" + ], + [ + 4, + 66, + "gauge44" + ], + [ + 6, + 20, + "gauge44" + ], + [ + 6, + 57, + "gauge44" + ], + [ + 3, + 34, + "gauge44" + ], + [ + 3, + 71, + "gauge44" + ], + [ + 8, + 11, + "gauge44" + ], + [ + 8, + 48, + "gauge44" + ], + [ + 5, + 25, + "gauge44" + ], + [ + 5, + 62, + "gauge44" + ], + [ + 7, + 16, + "gauge44" + ], + [ + 7, + 53, + "gauge44" + ], + [ + 4, + 30, + "gauge44" + ], + [ + 4, + 67, + "gauge44" + ], + [ + 6, + 21, + "gauge44" + ], + [ + 6, + 58, + "gauge44" + ], + [ + 3, + 35, + "gauge44" + ], + [ + 3, + 72, + "gauge44" + ], + [ + 8, + 12, + "gauge44" + ], + [ + 8, + 49, + "gauge44" + ], + [ + 5, + 26, + "gauge44" + ], + [ + 5, + 63, + "gauge44" + ], + [ + 7, + 17, + "gauge44" + ], + [ + 7, + 54, + "gauge44" + ], + [ + 4, + 31, + "gauge44" + ], + [ + 4, + 68, + "gauge44" + ], + [ + 6, + 22, + "gauge44" + ], + [ + 6, + 59, + "gauge44" + ], + [ + 3, + 36, + "gauge44" + ], + [ + 3, + 73, + "gauge44" + ], + [ + 8, + 13, + "gauge44" + ], + [ + 8, + 50, + "gauge44" + ], + [ + 5, + 27, + "gauge44" + ], + [ + 5, + 64, + "gauge44" + ], + [ + 7, + 18, + "gauge44" + ], + [ + 7, + 55, + "gauge44" + ], + [ + 4, + 32, + "gauge44" + ], + [ + 4, + 69, + "gauge44" + ], + [ + 6, + 23, + "gauge44" + ], + [ + 6, + 60, + "gauge44" + ], + [ + 8, + 14, + "gauge44" + ], + [ + 8, + 51, + "gauge44" + ], + [ + 5, + 28, + "gauge44" + ], + [ + 5, + 65, + "gauge44" + ], + [ + 7, + 19, + "gauge44" + ], + [ + 7, + 56, + "gauge44" + ], + [ + 4, + 33, + "gauge44" + ], + [ + 4, + 70, + "gauge44" + ], + [ + 6, + 24, + "gauge44" + ], + [ + 6, + 61, + "gauge44" + ], + [ + 8, + 15, + "gauge44" + ], + [ + 8, + 52, + "gauge44" + ], + [ + 5, + 29, + "gauge44" + ], + [ + 5, + 66, + "gauge44" + ], + [ + 7, + 20, + "gauge44" + ], + [ + 7, + 57, + "gauge44" + ], + [ + 4, + 34, + "gauge44" + ], + [ + 4, + 71, + "gauge44" + ], + [ + 6, + 25, + "gauge44" + ], + [ + 6, + 62, + "gauge44" + ], + [ + 8, + 16, + "gauge44" + ], + [ + 8, + 53, + "gauge44" + ], + [ + 5, + 30, + "gauge44" + ], + [ + 5, + 67, + "gauge44" + ], + [ + 7, + 21, + "gauge44" + ], + [ + 7, + 58, + "gauge44" + ], + [ + 4, + 35, + "gauge44" + ], + [ + 4, + 72, + "gauge44" + ], + [ + 6, + 26, + "gauge44" + ], + [ + 6, + 63, + "gauge44" + ], + [ + 8, + 17, + "gauge44" + ], + [ + 8, + 54, + "gauge44" + ], + [ + 5, + 31, + "gauge44" + ], + [ + 5, + 68, + "gauge44" + ], + [ + 7, + 22, + "gauge44" + ], + [ + 7, + 59, + "gauge44" + ], + [ + 4, + 36, + "gauge44" + ], + [ + 4, + 73, + "gauge44" + ], + [ + 6, + 27, + "gauge44" + ], + [ + 6, + 64, + "gauge44" + ], + [ + 8, + 18, + "gauge44" + ], + [ + 8, + 55, + "gauge44" + ], + [ + 5, + 32, + "gauge44" + ], + [ + 5, + 69, + "gauge44" + ], + [ + 7, + 23, + "gauge44" + ], + [ + 7, + 60, + "gauge44" + ], + [ + 6, + 28, + "gauge44" + ], + [ + 6, + 65, + "gauge44" + ], + [ + 8, + 19, + "gauge44" + ], + [ + 8, + 56, + "gauge44" + ], + [ + 5, + 33, + "gauge44" + ], + [ + 5, + 70, + "gauge44" + ], + [ + 7, + 24, + "gauge44" + ], + [ + 7, + 61, + "gauge44" + ], + [ + 6, + 29, + "gauge44" + ], + [ + 6, + 66, + "gauge44" + ], + [ + 8, + 20, + "gauge44" + ], + [ + 8, + 57, + "gauge44" + ], + [ + 5, + 34, + "gauge44" + ], + [ + 5, + 71, + "gauge44" + ], + [ + 7, + 25, + "gauge44" + ], + [ + 7, + 62, + "gauge44" + ], + [ + 6, + 30, + "gauge44" + ], + [ + 6, + 67, + "gauge44" + ], + [ + 8, + 21, + "gauge44" + ], + [ + 8, + 58, + "gauge44" + ], + [ + 5, + 35, + "gauge44" + ], + [ + 5, + 72, + "gauge44" + ], + [ + 7, + 26, + "gauge44" + ], + [ + 7, + 63, + "gauge44" + ], + [ + 6, + 31, + "gauge44" + ], + [ + 6, + 68, + "gauge44" + ], + [ + 8, + 22, + "gauge44" + ], + [ + 8, + 59, + "gauge44" + ], + [ + 5, + 36, + "gauge44" + ], + [ + 5, + 73, + "gauge44" + ], + [ + 7, + 27, + "gauge44" + ], + [ + 7, + 64, + "gauge44" + ], + [ + 6, + 32, + "gauge44" + ], + [ + 6, + 69, + "gauge44" + ], + [ + 8, + 23, + "gauge44" + ], + [ + 8, + 60, + "gauge44" + ], + [ + 7, + 28, + "gauge44" + ], + [ + 7, + 65, + "gauge44" + ], + [ + 6, + 33, + "gauge44" + ], + [ + 6, + 70, + "gauge44" + ], + [ + 8, + 24, + "gauge44" + ], + [ + 8, + 61, + "gauge44" + ], + [ + 7, + 29, + "gauge44" + ], + [ + 7, + 66, + "gauge44" + ], + [ + 6, + 34, + "gauge44" + ], + [ + 6, + 71, + "gauge44" + ], + [ + 8, + 25, + "gauge44" + ], + [ + 8, + 62, + "gauge44" + ], + [ + 7, + 30, + "gauge44" + ], + [ + 7, + 67, + "gauge44" + ], + [ + 6, + 35, + "gauge44" + ], + [ + 6, + 72, + "gauge44" + ], + [ + 8, + 26, + "gauge44" + ], + [ + 8, + 63, + "gauge44" + ], + [ + 7, + 31, + "gauge44" + ], + [ + 7, + 68, + "gauge44" + ], + [ + 6, + 36, + "gauge44" + ], + [ + 6, + 73, + "gauge44" + ], + [ + 8, + 27, + "gauge44" + ], + [ + 8, + 64, + "gauge44" + ], + [ + 7, + 32, + "gauge44" + ], + [ + 7, + 69, + "gauge44" + ], + [ + 8, + 28, + "gauge44" + ], + [ + 8, + 65, + "gauge44" + ], + [ + 7, + 33, + "gauge44" + ], + [ + 7, + 70, + "gauge44" + ], + [ + 8, + 29, + "gauge44" + ], + [ + 8, + 66, + "gauge44" + ], + [ + 7, + 34, + "gauge44" + ], + [ + 7, + 71, + "gauge44" + ], + [ + 8, + 30, + "gauge44" + ], + [ + 8, + 67, + "gauge44" + ], + [ + 7, + 35, + "gauge44" + ], + [ + 7, + 72, + "gauge44" + ], + [ + 8, + 31, + "gauge44" + ], + [ + 8, + 68, + "gauge44" + ], + [ + 7, + 36, + "gauge44" + ], + [ + 7, + 73, + "gauge44" + ], + [ + 8, + 32, + "gauge44" + ], + [ + 8, + 69, + "gauge44" + ], + [ + 8, + 33, + "gauge44" + ], + [ + 8, + 70, + "gauge44" + ], + [ + 8, + 34, + "gauge44" + ], + [ + 8, + 71, + "gauge44" + ], + [ + 8, + 35, + "gauge44" + ], + [ + 8, + 72, + "gauge44" + ], + [ + 8, + 36, + "gauge44" + ], + [ + 8, + 73, + "gauge44" + ] + ], + "expected": { + "gain_baseline_kappa": "13414839829209/8000000000000000", + "hosted_residuals": 319680, + "rank_mass": 4816512, + "actual_73column_sigmas": 11142, + "cross_replica_helper_roles": 296300, + "idle_remainders": 22748, + "idle_remainder_profile": { + "48": 22748 + }, + "global_profile": { + "1": 1559100, + "2": 339000, + "3": 277392, + "4": 84912, + "5": 54612, + "8": 5328, + "48": 22748 + }, + "live": 66304, + "physical": 66794, + "conservative_kappa_decimal": "0.001676855226234891862111568849431109", + "kappa_decimal": "0.001676855229071321886206381217337893", + "complex_lower": "839835897752368810771/500000000000000000000000", + "conservative_complex_lower": "83983589632938552601/50000000000000000000000", + "kappa": "1676855229071321886206381217337893/1000000000000000000000000000000000000", + "assembly_controls_rejected": 114, + "provider_counts": { + "extra": 417, + "gauge44": 249 + }, + "mutations_rejected": 15 + }, + "geometry": { + "charged_prefix_bits": 2048, + "dimension": 73, + "pairs": 4, + "parent_helpers": 504, + "parent_idle": 149184, + "parent_live": 111664, + "parent_physical": 112178, + "replicas": 74, + "stages": 9 + }, + "name": "mixed-t74-exact-fill", + "pivot_swap": { + "recipe": "construction/leaver/PIVOT-SWAP-k8.json", + "sha256": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb" + }, + "providers": { + "extra": { + "inventory": { + "4": 40, + "5": 48, + "7": 38, + "8": 114, + "9": 240 + }, + "native_negative_controls": 25, + "phase_edges": 2902, + "expected_profile": { + "1": 2338, + "2": 512, + "3": 418, + "4": 126, + "5": 82, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "c511d5e78aaa846ca0ebae8648caa30cd68620c88841afe10a9df81dcd2d3c58", + "LOCAL-PROGRAMS.json.gz": "937949e654a0bc1c90ea1e40ef040cea69435a53622d5e1e964e47a2b03264fd", + "LOCAL-CHECKS.json": "5981ee5125bd00c7ea960471cf029ebd0bc8c3d6b2360810235194d75c212589", + "INDEPENDENT-LOCAL-REPLAY.json": "b527dce5557409da71db2f63e16535413ea28cd5d887328779cfe880fb04affa", + "CLIFFORD-RECIPES.json": "cf410b60c9e3d9e7f99d94b5b28c4e3ae61c4b32892df4e03257b60fe5a37b02", + "CLIFFORD-REVIEW.json": "6316e335baa284c6e1e8bc7ee31b1d42fddc541d4ac366fdfc7d78bd25d8f9cd", + "RESIDUAL-ADAPTERS.json": "435b2e4ee1e39d0d373dce21591660b8de4834f6e44ff9813d1821e22ff3c9c1" + }, + "entering": 192, + "entrance": 368, + "width_digest": "ec44b5b214538eafbd921a70a1881e38212a3e101ebf7f35427b971a6447de3f", + "program_hashes": { + "backward": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a", + "forward": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + "artifacts": { + "LOCAL-CHECKS.json": "ef01cb5b6d1779518282c69a20d1dbcdbf57cb89ba616e2101bb209b37d80286", + "CLIFFORD-RECIPES.json": "cf410b60c9e3d9e7f99d94b5b28c4e3ae61c4b32892df4e03257b60fe5a37b02", + "RESIDUAL-ADAPTERS.json": "0102fa3b62b095c14a34d5af95cc321db38e5f5e03a4f226828e8ebf6fdbe20b" + }, + "complete_contract": { + "local": { + "backward": { + "events": 24759, + "macros": 19695, + "real_component_primitives": 198846, + "prefix_l1": "14824960514790439145421/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98381, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24759, + "macros": 19695, + "real_component_primitives": 198798, + "prefix_l1": "5530697291943336383/2048", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98349, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 368, + "terminal_codimension": 214, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 40, + "5": 48, + "7": 38, + "8": 114, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 386928, + "local_primitive_bound": 10034720958654, + "compiler": 25934336, + "children": 3484, + "paid_profile": { + "1": 2338, + "2": 512, + "3": 418, + "4": 126, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a", + "forward": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "c511d5e78aaa846ca0ebae8648caa30cd68620c88841afe10a9df81dcd2d3c58", + "LOCAL-PROGRAMS.json.gz": "937949e654a0bc1c90ea1e40ef040cea69435a53622d5e1e964e47a2b03264fd", + "LOCAL-CHECKS.json": "5981ee5125bd00c7ea960471cf029ebd0bc8c3d6b2360810235194d75c212589", + "INDEPENDENT-LOCAL-REPLAY.json": "b527dce5557409da71db2f63e16535413ea28cd5d887328779cfe880fb04affa", + "CLIFFORD-RECIPES.json": "cf410b60c9e3d9e7f99d94b5b28c4e3ae61c4b32892df4e03257b60fe5a37b02", + "CLIFFORD-REVIEW.json": "6316e335baa284c6e1e8bc7ee31b1d42fddc541d4ac366fdfc7d78bd25d8f9cd", + "RESIDUAL-ADAPTERS.json": "435b2e4ee1e39d0d373dce21591660b8de4834f6e44ff9813d1821e22ff3c9c1" + } + }, + "semantic_phase_sha256": "6316e335baa284c6e1e8bc7ee31b1d42fddc541d4ac366fdfc7d78bd25d8f9cd", + "expected_local": { + "forward": { + "events": 24759, + "macros": 19695, + "real_component_primitives": 198798, + "prefix_l1": "5530697291943336383/2048", + "coefficient_work_primitive_count": 98349 + }, + "backward": { + "events": 24759, + "macros": 19695, + "real_component_primitives": 198846, + "prefix_l1": "14824960514790439145421/64", + "coefficient_work_primitive_count": 98381 + } + }, + "wrappers": 240 + }, + "gauge44": { + "inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + }, + "native_negative_controls": 25, + "phase_edges": 2902, + "expected_profile": { + "1": 2346, + "2": 504, + "3": 414, + "4": 130, + "5": 82, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "499fb645aa5060c301953587784a7b74410c064359e47e96765c22b3e99b59be", + "LOCAL-PROGRAMS.json.gz": "b39fb114ee7ae98e46adea2ad2f6f94b05c73f9f265ab62522b9cd729f7e311d", + "LOCAL-CHECKS.json": "d32c9a61d161318f32f007aa9980fe001e7ab24d5d000f8843c637dedc306bf2", + "INDEPENDENT-LOCAL-REPLAY.json": "dd28c06dfd036de2541f9b8669f5bc9598229df7b12a5816b8a77ae52ebca6ff", + "CLIFFORD-RECIPES.json": "f1b5a509e39293f5d7ffea7b269fd9e5443e625a9286a022caa1fd4b62af8063", + "CLIFFORD-REVIEW.json": "54271d1585688ac9260703ebb25a05c161c8f419cec7436a543622b1b1a87112", + "RESIDUAL-ADAPTERS.json": "df5afb8969525b20e7eb4cf572270b724a9427f8d16f78edbd014c5005191133" + }, + "entering": 192, + "entrance": 372, + "width_digest": "3e2624964db4f881ad1404d94ec595b3d1baba07bef90cf9037d802cc6299d11", + "program_hashes": { + "backward": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a", + "forward": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + "artifacts": { + "LOCAL-CHECKS.json": "e52e7feece9cb22e83c1d687c0f98731f8d50b7e8c863732ec662c89453fbcd4", + "CLIFFORD-RECIPES.json": "f1b5a509e39293f5d7ffea7b269fd9e5443e625a9286a022caa1fd4b62af8063", + "RESIDUAL-ADAPTERS.json": "89e5779ba4fcc1b1a76bed05c9b36600bc1dc3c6efd7e623865692ec715c30c5" + }, + "complete_contract": { + "local": { + "backward": { + "events": 24759, + "macros": 19695, + "real_component_primitives": 198846, + "prefix_l1": "14824960514790439145421/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98381, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24759, + "macros": 19695, + "real_component_primitives": 198798, + "prefix_l1": "5530697291943336383/2048", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98349, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 372, + "terminal_codimension": 214, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 386928, + "local_primitive_bound": 10034720958654, + "compiler": 25934336, + "children": 3484, + "paid_profile": { + "1": 2346, + "2": 504, + "3": 414, + "4": 130, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a", + "forward": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "499fb645aa5060c301953587784a7b74410c064359e47e96765c22b3e99b59be", + "LOCAL-PROGRAMS.json.gz": "b39fb114ee7ae98e46adea2ad2f6f94b05c73f9f265ab62522b9cd729f7e311d", + "LOCAL-CHECKS.json": "d32c9a61d161318f32f007aa9980fe001e7ab24d5d000f8843c637dedc306bf2", + "INDEPENDENT-LOCAL-REPLAY.json": "dd28c06dfd036de2541f9b8669f5bc9598229df7b12a5816b8a77ae52ebca6ff", + "CLIFFORD-RECIPES.json": "f1b5a509e39293f5d7ffea7b269fd9e5443e625a9286a022caa1fd4b62af8063", + "CLIFFORD-REVIEW.json": "54271d1585688ac9260703ebb25a05c161c8f419cec7436a543622b1b1a87112", + "RESIDUAL-ADAPTERS.json": "df5afb8969525b20e7eb4cf572270b724a9427f8d16f78edbd014c5005191133" + } + }, + "semantic_phase_sha256": "54271d1585688ac9260703ebb25a05c161c8f419cec7436a543622b1b1a87112", + "expected_local": { + "forward": { + "events": 24759, + "macros": 19695, + "real_component_primitives": 198798, + "prefix_l1": "5530697291943336383/2048", + "coefficient_work_primitive_count": 98349 + }, + "backward": { + "events": 24759, + "macros": 19695, + "real_component_primitives": 198846, + "prefix_l1": "14824960514790439145421/64", + "coefficient_work_primitive_count": 98381 + } + }, + "wrappers": 240 + } + }, + "schema": "witness-spec/1", + "width_spot_helpers": [ + 258, + 270, + 282, + 294 + ], + "outer_refinement": { + "grid_digits": 36, + "margin_digits": 40, + "bootstrap_steps": 12 + } +} diff --git a/research/capped-fusion-t74-k554/audit_fast.py b/research/capped-fusion-t74-k554/audit_fast.py new file mode 100644 index 0000000000..252cf3c68a --- /dev/null +++ b/research/capped-fusion-t74-k554/audit_fast.py @@ -0,0 +1,87 @@ +"""Run audit_allcold.py with the same checks and byte-identical outputs, faster. + +1. copy.deepcopy -> pickle round-trip (equal, independent copies with the same aliasing for the plain + dict/list/tuple/int/str data the audit copies; the mutation controls deep-copy the whole template per control). +2. The mutation controls (independent of each other: each is deepcopy -> mutate -> audit -> must be rejected) are sharded + over AUDIT_FAST_SHARDS processes. Every control still runs and must be rejected; shard 0 merges the control names in + their original order and writes the report exactly as the unmodified script does. +Usage: audit_fast.py AUDIT_SCRIPT BASE HOSTED REPORT [--mutation-controls] (run via run_portable.py like the original) +""" +import copy, json, os, pickle, subprocess, sys, time +from pathlib import Path + +_real = copy.deepcopy + + +def _fast(x, memo=None): + if memo is not None: + return _real(x, memo) + return pickle.loads(pickle.dumps(x, pickle.HIGHEST_PROTOCOL)) + + +copy.deepcopy = _fast +script = Path(sys.argv[1]).resolve() +shards = int(os.environ.get('AUDIT_FAST_SHARDS', '1')) +shard = int(os.environ.get('AUDIT_FAST_SHARD', '0')) +src = script.read_text(encoding='utf-8') +if shards > 1 and '--mutation-controls' in sys.argv[2:]: + old_reject = """def reject(name,mut): + if '--mutation-controls' not in sys.argv[4:]:return + q=copy.deepcopy(ct);mut(q) + try:audit(q) + except(AssertionError,KeyError,IndexError,ValueError,TypeError):controls.append(name) + else:raise AssertionError('ACCEPTED '+name) +""" + new_reject = """_idx=[0];_own=[] +def reject(name,mut): + if '--mutation-controls' not in sys.argv[4:]:return + i=_idx[0];_idx[0]+=1 + if i%_AF_SHARDS!=_AF_SHARD:return + q=copy.deepcopy(ct);mut(q) + try:audit(q) + except(AssertionError,KeyError,IndexError,ValueError,TypeError):controls.append(name);_own.append((i,name)) + else:raise AssertionError('ACCEPTED '+name) +""" + marker = "\nreport=dict(status='PASS_INDEPENDENT_ASYNC_WHOLE_OWNER_CONTROLLER_PHASES_AND_SPECTATORS'" + assert src.count(old_reject) == 1 and src.count(marker) == 1, 'audit script layout changed' + merge = """ +import json as _j,sys as _s,time as _t +_part=Path(os.environ['AUDIT_FAST_PARTIAL']) +if _AF_SHARD!=0: + _part.with_suffix('.tmp').write_text(_j.dumps([_idx[0],_own]));_part.with_suffix('.tmp').replace(_part.with_name(_part.name+'.%d'%_AF_SHARD));_s.exit(0) +_all=list(_own);_total=_idx[0] +for _k in range(1,_AF_SHARDS): + _f=_part.with_name(_part.name+'.%d'%_k) + while not _f.exists(): + _t.sleep(0.2) + assert all(_p.poll() in (None,0) for _p in _AF_PROCS),'a mutation-control shard failed' + _n,_o=_j.loads(_f.read_text());_f.unlink();assert _n==_total,'shards disagree on control count';_all+=[tuple(x) for x in _o] +assert sorted(i for i,_ in _all)==list(range(_total)),'every control must run exactly once and be rejected' +controls[:]=[n for i,n in sorted(_all)] +for _p in _AF_PROCS:assert _p.wait()==0 +""" + src = src.replace(old_reject, new_reject).replace(marker, merge + marker) + if shard == 0: + part = Path(sys.argv[4]).parent / '.audit-fast-partial' + env0 = dict(os.environ, AUDIT_FAST_PARTIAL=str(part)) + os.environ['AUDIT_FAST_PARTIAL'] = str(part) + rp = Path(os.environ['MULTICOLD_SOURCE']) / 'code/run_portable.py' + procs = [] + part.parent.mkdir(parents=True, exist_ok=True) + for old in part.parent.glob(part.name + '.*'): + old.unlink() + for k in range(1, shards): + e = dict(os.environ, AUDIT_FAST_SHARD=str(k)) + procs.append(subprocess.Popen([sys.executable, '-B', str(rp), str(Path(__file__).resolve()), str(script)] + sys.argv[2:], + env=e, stdout=subprocess.DEVNULL, stderr=subprocess.PIPE, + creationflags=getattr(subprocess, 'CREATE_NO_WINDOW', 0))) + g = {'_AF_SHARDS': shards, '_AF_SHARD': 0, '_AF_PROCS': procs} + else: + os.environ.setdefault('AUDIT_FAST_PARTIAL', str(Path(sys.argv[4]).parent / '.audit-fast-partial')) + g = {'_AF_SHARDS': shards, '_AF_SHARD': shard, '_AF_PROCS': []} +else: + g = {} +g.update({'__file__': str(script), '__name__': '__main__'}) +sys.argv = sys.argv[1:] +sys.path.insert(0, str(script.parent)) +exec(compile(src, str(script), 'exec'), g) diff --git a/research/capped-fusion-t74-k554/audit_mixed.py b/research/capped-fusion-t74-k554/audit_mixed.py new file mode 100644 index 0000000000..5a39945459 --- /dev/null +++ b/research/capped-fusion-t74-k554/audit_mixed.py @@ -0,0 +1,17 @@ +import argparse,collections,json,copy +from pathlib import Path +import independent_core as A +ap=argparse.ArgumentParser();ap.add_argument('--parent',type=Path,required=True);ap.add_argument('--data',type=Path,required=True);ap.add_argument('--provider',action='append',required=True);ap.add_argument('--out',type=Path,required=True);a=ap.parse_args();dirs={p:Path(d) for p,d in (x.split('=',1) for x in a.provider)};plan=A.read(a.data/'PLAN.json');dispatch={(s,r):p for s,r,p in A.read(a.data/'DISPATCH.json')};roles=A.read(a.data/'OWNERS.json.gz');parent=A.read(a.parent);phases=A.read(a.parent.parent.parent/'work/complex-nine-native/DATA-PHASES.json');canonical=A.read(a.parent.parent/'CANONICAL-WORD.json.gz');inventories={};words={};replays={};profiles={};prefix=[] +A.require(len(dispatch)==len(plan['order']) and set(dispatch.values())==set(dirs),'complete provider dispatch') +A.require({(c['stage'],c['replica']):c['provider'] for c in plan['provider_calls']}==dispatch,'plan dispatch binding') +for pid,d in dirs.items(): + w,r=A.read(d/'CANONICAL-WORD.json.gz'),A.read(d/'INDEPENDENT-LOCAL-REPLAY.json');A.require(r['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY','native status');A.require(r['canonical_word_sha256']==A.filehash(d/'CANONICAL-WORD.json.gz'),'word binding');A.require(set(r['local'])=={'forward','backward'},'both orientations');A.require(w['ports']==canonical['ports'],'common ports');A.require([A.basis(w['frames'][f]) for f in w['center_frames']]==[A.basis(canonical['frames'][f]) for f in canonical['center_frames']],'common ordered center frames');A.EXPECTED_WIDTHS=collections.Counter(plan['provider_registry'][pid]['widths']);ws,paid=A.local_inventory(w,r);A.require(ws==plan['provider_registry'][pid]['widths'],'ordered provider widths');inventories[pid]=ws;profiles[pid]=paid;words[pid]=w;replays[pid]=r;prefix.extend(x['prefix_bits_upper'] for x in r['local'].values()) +pid=next(iter(dirs));A.EXPECTED_WIDTHS=collections.Counter(inventories[pid]);A.T=plan['T'];A.EXPECTED_IDLE={int(k):v for k,v in A.read(a.data/'CONSTRUCTION.json')['idle'].items()};ctx=A.make_context(parent,phases,canonical['ports'],words[pid],replays[pid],roles);A.require(set(ctx['order'])==set(dispatch),'complete dispatch calls');ctx['call_widths']={c:inventories[p] for c,p in dispatch.items()};ctx['aggregate_paid']=collections.Counter() +for p in dispatch.values():ctx['aggregate_paid'].update(profiles[p]) +ctx.update(max_local_prefix=max(prefix),local_profiles=profiles,width_inventories={p:dict(collections.Counter(ws)) for p,ws in inventories.items()});pending=A.check_pending_axes(ctx);receipt=A.check_roles(ctx,roles);A.require(receipt['profile']=={int(k):v for k,v in plan['profile'].items()},'aggregate profile binding');receipt['controls_rejected']=A.controls(ctx,roles) +# A wrong provider at one changed call must fail the literal width predicate. +call=next(c for c,p in dispatch.items() if p=='extra');bad=dict(ctx,call_widths=dict(ctx['call_widths']));bad['call_widths'][call]=inventories['gauge44'] +try:A.check_roles(bad,roles) +except ValueError as e:A.require(str(e)=='whole-helper residual width','wrong provider control predicate');receipt['controls_rejected'].append(dict(name='wrong_provider_at_changed_call',reason=str(e))) +else:raise ValueError('accepted incorrect provider') +receipt.update(disjoint_pending_child_axis_checks=pending,provider_counts=dict(collections.Counter(dispatch.values())),input_sha256={str(p):A.filehash(p) for p in [a.data/'PLAN.json',a.data/'DISPATCH.json',a.data/'OWNERS.json.gz',a.parent]+[d/'CANONICAL-WORD.json.gz' for d in dirs.values()]});a.out.write_text(json.dumps(receipt,indent=2)+'\n');print('PASS_INDEPENDENT_MIXED_OWNER',len(receipt['controls_rejected']),flush=True) diff --git a/research/capped-fusion-t74-k554/code/assemble.py b/research/capped-fusion-t74-k554/code/assemble.py new file mode 100644 index 0000000000..fb76d9bac5 --- /dev/null +++ b/research/capped-fusion-t74-k554/code/assemble.py @@ -0,0 +1,286 @@ +"""Gauge44 complete global admission with the retained native exact-complex moment. + +Prepared with OpenAI Codex assistance. The rational engines and outer +constraints are retained from PR547/PR548 and their preserved ancestry. +The bit operator is the cited unchanged PR589 supplier (PR555's punctured +R439 word, v = 111, decoder constant 63, two A-section transports), shipped +as inputs/PR589-EXPECTED.json and pinned by git blob id. Its rank-mass +deficit is derived from the word's parameters, T(2Kv - L*cst) at nine +stages (PR545/PR555 rank-mass identity), not hard-coded. The complex owner +and invoice inputs must be freshly emitted by the packaged physical replay. +All conservative admission guards and conservative moment/outer witnesses run +before the PR559 native-complex correction. The bit surcharge is retained. +""" +from pathlib import Path +from fractions import Fraction as Q +from decimal import Decimal, localcontext +import argparse,json,hashlib,importlib.util,os,sys +from collections import Counter +assert __debug__, 'Assertions required' +P=Path(sys.argv[1] if __name__=='__main__' else os.environ['GAIN_PR564_SOURCE']).resolve() +read=lambda p:json.loads(p.read_text()) +sha=lambda p:hashlib.sha256(p.read_bytes()).hexdigest() +hash_ok=lambda x:isinstance(x,str) and len(x)==64 and all(t in '0123456789abcdef'for t in x) +digest=lambda x:hashlib.sha256(json.dumps(x,separators=(',',':')).encode()).hexdigest() +def load(n): + s=importlib.util.spec_from_file_location(n,P/'engines'/(n+'.py'));m=importlib.util.module_from_spec(s);s.loader.exec_module(m);return m +M,B,A=[load(n)for n in ('moment','base_two_moment','outer')] +import hashlib +try: + from gmpy2 import mpz # optional accelerator, identical integer results +except ImportError: + mpz=int +def dec(x): + with localcontext()as ctx:ctx.prec=30120;return str(Decimal(x.numerator)/Decimal(x.denominator)) +import sys as _sys;_sys.path.insert(0,str(Path(__file__).resolve().parent));import fine_moment as BF,fine_mercator as MF,fine_cache as FC +from witness import SPEC,DISPATCH,CALL_ORDER,COUNTS,PIDS,X,DISCOVER,pin,SPOT,spot_widths,GEO,REPLICAS,CALLS,DATA,DEFICIT,PAYLOAD,PARENT_LIVE,PARENT_PHYSICAL,PARENT_IDLE,PARENT_HELPERS +# Cited bit supplier: PR589's tune/EXPECTED.json (merged on main as research/e8-bit-p111-tuned/tune/EXPECTED.json). +BIT_PATH=Path(__file__).resolve().parents[1]/'inputs/PR589-EXPECTED.json' +BIT_BLOB='e293ddc557742637f9f679f083a1a282d87b1b13' +# Nine-stage bit template (PR463/PR510 chain, 32 replicas): L stages, T replicas, K=(L-1)//2 pairs, moment width M=1+7L. +BIT_L,BIT_T=9,32;BIT_K=(BIT_L-1)//2;BIT_M=1+7*BIT_L +def git_blob(data):return hashlib.sha1(b'blob '+str(len(data)).encode()+b'\0'+data).hexdigest() +def load_bit(data): + """The pinned supplier record: its full record (word parameters) and its nine-stage price.""" + assert git_blob(data)==BIT_BLOB,'bit supplier blob pin' + return json.loads(data) +def bit_deficit(word,live): + """Rank-mass deficit M*live - mass = T(2Kv - L*cst) of a v-port bit word with decoder constant cst (PR545/PR555). + cst is the sum of the retained totals' COPY ranks and live = 2KvT data wires; both are cross-checked here, and the + caller checks the result against the priced profile, so neither v nor cst is free.""" + v,cst,ranks=word['v'],word['decoder_constant'],word['copy_ranks'] + assert type(v)is int and type(cst)is int and all(type(r)is int and 00;return d + + +def assemble(owner,invoice,owner_sha,invoice_sha): + # These are admission receipts, not optional collections of successful rows. + # Require both orientations and every finite check before pricing anything. + assert owner['status']=='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE' + assert invoice['status']=='PASS_INDEPENDENT_MIXED_ASYNC_SCALAR_PREFIX_AND_FINITE_INVOICE' + assert all(hash_ok(x)for x in (owner_sha,invoice_sha,owner['template_sha256'],owner['controller_audit_sha256'],invoice['parent_template_sha256'])) + checks={'local_primitive_bound','logical','router','literal','mass','precision','tape','row','halving'} + assert set(invoice['strict_checks'])==checks + assert all(invoice['strict_checks'][name] is True for name in checks) + assert set(invoice['providers'])==set(PIDS) + assert invoice['provider_counts']==COUNTS + assert owner['all_live_owners_per_call_distinct'] is True + # R (helpers per provider word) is read from the invoice and must be shared by every provider; n=2v+R. + R=invoice['helpers'];assert type(R) is int and R>0 and all(p['helpers']==R for p in invoice['providers'].values()) + assert owner['owners_per_call']==2*112+R and owner['actual_helper_owner_charts']==owner['hosted_residuals']==CALLS*R==pin('expected.hosted_residuals',owner['hosted_residuals']) + pin('expected.rank_mass',owner['rank_mass']) + pin('expected.actual_73column_sigmas',owner['actual_73column_sigmas']);pin('expected.cross_replica_helper_roles',owner['cross_replica_helper_roles']) + pin('expected.idle_remainders',owner['explicit_idle_remainder_children']) + assert invoice['complete_invocation_sweeps']==invoice['bridge_sweeps']==CALLS + assert invoice['live']==owner['live'] and invoice['physical']==owner['physical'] + assert invoice['centres']==8 + assert invoice['physical_stock_identity']==dict(data_and_owner_families=DATA,local_helpers=R,private_centres=8,coefficient_work=2) + assert sum(invoice['physical_stock_identity'].values())==invoice['physical'] + assert invoice['controller_audit_sha256']==owner['controller_audit_sha256'] + for pid,p in invoice['providers'].items(): + assert set(p['local'])=={'forward','backward'} + assert p['helpers']==R and p['centres']==8 and p['n']==2*112+R and p['v']==112 and p['h']==9 + K='providers.'+pid+'.';pin(K+'entering',p['entering_helpers']);pin(K+'entrance',p['entrance_rank']) + pin(K+'inventory',p['width_inventory']) + assert all(type(w) is int and 0=0 for n in idle.values()) + idle=+idle;assert sum(idle.values())==owner['explicit_idle_remainder_children'] + pin('expected.idle_remainder_profile',{str(r):n for r,n in sorted(idle.items())}) + paid.update(idle) + assert dict(paid)=={int(r):n for r,n in owner['paid_profile'].items()} + assert invoice['compiler']==64*74**3 + assert invoice['local_adapters']==max(p['local_adapters']for p in invoice['providers'].values()) + assert invoice['local_primitive_bound']==max(p['local_primitive_bound']for p in invoice['providers'].values()) + # Recount the retained dedicated-bank envelope independently. Its geometry + # stays fixed, while every local primitive and wrapper comes from the actual + # selected provider/orientation sums above. + parent_live,parent_physical,parent_idle=PARENT_LIVE,PARENT_PHYSICAL,PARENT_IDLE + parent_banks,rem=divmod(parent_live-2*112*4*REPLICAS,9);assert rem==0 and parent_physical==parent_live+PARENT_HELPERS+8+2 # five bank groups with 8,8,8,8,5 active lanes and R0=504 helpers; shared private work is restored + assert owner['source_idle_children_charged']==parent_idle + bridges,shifts=2*112*CALLS,4*112*REPLICAS;moves=2*shifts + nonlocal_items=(4*112*REPLICAS*9+2*112*REPLICAS*9+2*CALLS*R+parent_idle+9*parent_banks+bridges+shifts+moves+parent_live+parent_physical+invoice['wrapper_elementary_factors_charged']) + outside=8*nonlocal_items+64*73 + pervertex=(invoice['selected_real_component_primitives']+bridges+shifts+moves+parent_live+(CALLS*invoice['local_adapters']+outside)*invoice['compiler']+64*parent_physical) + rebased=pervertex+65*(invoice['physical']-parent_physical)+(invoice['live']-parent_live) + assert invoice['unhosted_pervertex']==pervertex and invoice['hosted_rebased_pervertex']==rebased + used=max(pervertex,rebased) + prior=invoice['retained_prior_overcharge'] + if prior is not None: + assert hash_ok(prior['sha256']) and type(prior['previous_pervertex_allowance']) is int and prior['previous_pervertex_allowance']>0 + assert prior['added_complete_new_pervertex']==pervertex + assert prior['policy']=='Retain old allowance and add entire fresh mixed recount.' + used=max(used,prior['previous_pervertex_allowance']+pervertex) + assert invoice['conservative_pervertex_used']==used + finite=invoice['finite'] + assert 02*48*48) + assert actual_checks==invoice['strict_checks'] and all(actual_checks.values()) + bit_record=load_bit(BIT_PATH.read_bytes()) + bit=bit_record['nine'] + assert 'nine-stage' in bit['pipeline'] and '32 replicas' in bit['pipeline'] + c=Q(bit['bit_lower']) + bit_D=bit_deficit(bit_record['word'],bit['bit']['live']) + H={int(r):n for r,n in owner['paid_profile'].items()};pin('expected.global_profile',owner['paid_profile']) + # Claimed lower endpoints come from the spec; discovery derives them with the same certified moment engine. + # Either way they are verified below (accepted at b, rejected at b+1e-24). + if DISCOVER:b=Q(M.certify(H,73,owner['live'],False)['lower']);conservative_b=Q(M.certify(H,73,owner['live'],True)['lower']) + else:b=Q(X['complex_lower']);conservative_b=Q(X['conservative_complex_lower']) + assert owner['template_sha256']==invoice['template_sha256'] and owner_sha==invoice['owner_audit_sha256'] + pin('expected.live',owner['live']);pin('expected.physical',owner['physical']);assert owner['deficit']==DEFICIT + assert owner['banked_residuals']==0 + def check_moment(side,h,m,W,lower,deficit,bad,digits=24): + assert m*W-sum(r*n for r,n in h.items())==deficit and m*m>2*max(h)**2 + rows=[] + def certify(z,accept,eM,eB): + if eM is MF: # finer engines: memoised across stages and prefetched concurrently (fine_cache.py); results are the engines' own outputs + l,u=FC.moment('fine_mercator',h,m,W,z,bad);ll,uu=FC.moment('fine_moment',None,m,W,z,False,list(h.items())) + if bad: + fl,fu=FC.moment('fine_moment',None,m,W,z,False,[(1,32*m*m*sum(h.values()))]);ll+=fl/10**16;uu+=fu/10**16 + else: + l,u=eM.moment(h,m,W,z,bad);ll,uu=eB.moment(m,W,list(h.items()),z) + if bad: + fl,fu=eB.moment(m,W,[(1,32*m*m*sum(h.values()))],z);ll+=fl/10**16;uu+=fu/10**16 + assert (u<1 and uu<1)if accept else(l>1 and ll>1) + rows.append(dict(side=side,surcharge=bad,endpoint=str(z),accept=accept,mercator=[str(l-1),str(u-1)],base_two=[str(ll-1),str(uu-1)])) + coarse=Q((lower*10**24).__floor__(),10**24) # retained engines certify the inherited 1e-24 bracket containing the endpoint + certify(coarse,True,M,B);certify(coarse+Q(1,10**24),False,M,B) + if digits>24: # finer-constant copies of both engines certify the 1e-digits bracket (accept at the endpoint, reject at endpoint+1e-digits) + FC.prefetch([dict(name=nm,H=hh,m=m,W=W,z=zz,bad=bb,entries=ee) for zz in (lower,lower+Q(1,10**digits)) for nm,hh,bb,ee in [('fine_mercator',h,bad,None),('fine_moment',None,False,list(h.items()))]+([('fine_moment',None,False,[(1,32*m*m*sum(h.values()))])] if bad else [])]) + certify(lower,True,MF,BF);certify(lower+Q(1,10**digits),False,MF,BF) + return rows + bitH={int(r):n for r,n in bit['profile'].items()} + assert BIT_M==64 and sum(r*n for r,n in bitH.items())==bit['bit']['rank_mass'] + bit_moments=check_moment('bit',bitH,BIT_M,bit['bit']['live'],c,bit_D,True) + conservative_moments=check_moment('conservative_complex',H,73,owner['live'],conservative_b,DEFICIT,True,SPEC['outer_refinement']['endpoint_digits']) + assert bit['bit']['two_level_coefficient_bits']0 for v in options.values()) + grid=10**options["grid_digits"]; margin_grid=10**options["margin_digits"] + eta=beta=Q(1,margin_grid);s=min(c,(1-beta)*bb)-Q(1,1000*margin_grid);assert 0= 36 and + # L_j*gap_j >= 2*(4+ell_j), where ell_j >= log2 C_j and C_j dominates the stage's fresh constants (< 2^PAYLOAD) PLUS THE CARRIED previous constant: the next constant + # is C_large + C_old*2^(L_j*(a_{j+1}-a_j)), so ell_{j+1} = max(PAYLOAD, ell_j + ceil(L_j*(a_{j+1}-a_j))) + 1. L_j is the least power of two (up to one extra doubling) + # meeting both inequalities; a larger cutoff satisfies the same hypotheses, and kappa is computed from the chain end only. + KB=int(3.6*options["margin_digits"])+64;ONE=mpz(1)<>KB + g=min((S-A_)*ONE,(ONE-A_-S)*ONE,ONE*ONE-A_*ONE-S*(ONE-O),(ONE-S)*ONE) # gap = g/ONE^2: the same four terms as min(s-a,1-a-s,1-a-s*(1-old),1-s) + assert O0 + N2=2*(4+ell)*ONE2 + e=max(N1.bit_length()-(2*g.bit_length()-1)+2,N2.bit_length()-g.bit_length()+2,0);cut=1<=N1 and cut*g>=N2 # both lemma inequalities with the carried log2 C bound ell + carry=-((-(cut*(A_-O)))>>KB) # ceil(L*(a_{j+1}-a_j)): log2 of the factor 2^(L*Delta a) carried into the next stage's constant + if step<7: # control: the UNCARRIED least cutoff of the old formula cannot pay the carry from stage 2 on (shortfall ratio about 2(1-s)) + Lu=max(-(-N1//(g*g)),-(-2*(4+PAYLOAD)*ONE2//g)) + if unc_prev is not None: + cu=-((-(unc_prev[0]*unc_prev[1]))>>KB);unc_failed.append(Lu*g<2*(4+cu)*ONE2);assert unc_failed[-1],step + unc_prev=(Lu,A_-O) + h=lambda v:hashlib.sha256(('%x'%int(v)).encode()).hexdigest() + cuts.append(dict(step=step,grid_bits=KB,exponent_numerator_sha256=h(A_),gap_numerator_sha256=h(g),log2C_bound_sha256=h(ell),cutoff_log2_power_of_two_exponent=e,carry_bits_bit_length=int(carry).bit_length())) + ell=max(PAYLOAD,ell+carry)+1;O=A_ + cuts.append(dict(control='uncarried_cutoffs_fail_carry_rule',stages_checked=list(range(2,2+len(unc_failed))),all_rejected=all(unc_failed))) + chain=[chain0,Q(int(O),int(ONE))] + q=chain[-1]*(1-2*eta);margin=(1-eta)*q/(1+q);ticks=margin*grid;k=Q((ticks.numerator-1)//ticks.denominator,grid) + bridge={'semantic':{'C0':{'base':2,'exponent':210000},'strict_literal_gap':1},'rows':{'degree_gap':Q(10**6)-Q(51*20161,25)}} + outer=A.assembly(chain[-1],bb,bridge,k,eta=eta,beta=beta);assert len(outer['strict_constraints'])==47 and all(v>0 for v in outer['strict_constraints'].values()) + controls=[] + for name,kk,ee,be in [('next_grid',k+Q(1,grid),eta,beta),('zero_eta',k,Q(0),beta),('zero_beta',k,eta,Q(0)),('unit_beta',k,eta,Q(1))]: + try:A.assembly(chain[-1],bb,bridge,kk,eta=ee,beta=be) + except AssertionError:controls.append(name) + else:raise AssertionError(name) + return k,cuts,outer,controls + def outer_witness(bb): # memoised across stages (fine_cache.memo): the exact outer witness is a pure function of these inputs and the two source files + return FC.memo('outer_witness',(str(bb),str(c),json.dumps(SPEC['outer_refinement'],sort_keys=True),PAYLOAD,sha(Path(__file__)),sha(Path(A.__file__))),lambda:_outer_witness_raw(bb)) + conservative_k,conservative_cuts,conservative_outer,conservative_controls=outer_witness(conservative_b) + pin('expected.conservative_kappa_decimal',dec(conservative_k)) + # Only after every conservative supplier/admission/outer check succeeds is + # the reviewed native exact-complex recurrence selected. Bit charge stays. + native_moments=check_moment('complex',H,73,owner['live'],b,DEFICIT,False,SPEC['outer_refinement']['endpoint_digits']) + k,cuts,outer,controls=outer_witness(b) + pin('expected.kappa_decimal',dec(k)) + assert M.moment(H,73,owner['live'],b,True)[0]>1 + assert M.moment(bitH,64,bit['bit']['live'],c+Q(1,10**24),False)[1]<1 + model_controls=['native_complex_endpoint_rejected_with_old_surcharge','omitting_bit_surcharge_would_fail_next_endpoint_rejection'] + moments=bit_moments+native_moments + input_hashes={'owner_audit':owner_sha,'fresh_invoice':invoice_sha,'package:inputs/PR589-EXPECTED.json':sha(BIT_PATH)} + input_hashes.update({'engines/'+name+'.py':sha(P/'engines'/(name+'.py'))for name in ('moment','base_two_moment','outer')}) + return dict(status='PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY',kappa=str(k),kappa_decimal=dec(k),complex_lower=str(b),complex_decimal=dec(b),bit_lower=str(c),bit_decimal=dec(c),binding='complex',gain_over_pr635_percent=dec(100*(k/Q(X['gain_baseline_kappa'])-1)),complex_profile=H,provider_counts=invoice['provider_counts'],surcharge_model={'complex':False,'bit':True},conservative_complex_lower=str(conservative_b),conservative_complex_decimal=dec(conservative_b),conservative_kappa=str(conservative_k),conservative_kappa_decimal=dec(conservative_k),conservative_moments=conservative_moments,conservative_bootstrap=conservative_cuts,conservative_outer={n:str(v)for n,v in conservative_outer['strict_constraints'].items()},conservative_controls=conservative_controls,model_controls=model_controls,native_correction_gain=dec(k-conservative_k),template_sha256=owner['template_sha256'],input_sha256=input_hashes,bit_supplier=dict(pr=589,repository='CrocSwap/integer-mult-bounds',commit='a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46',merged_as='b3eb785ac5b4b1ca2beea0f80db078a505626a90',path='research/e8-bit-p111-tuned/tune/EXPECTED.json',git_blob_sha1=BIT_BLOB,word=dict(v=bit_record['word']['v'],decoder_constant=bit_record['word']['decoder_constant'],copy_ranks=bit_record['word']['copy_ranks']),derived_deficit=bit_D,deficit_formula='T(2Kv-L*cst), L=%d T=%d K=%d M=%d'%(BIT_L,BIT_T,BIT_K,BIT_M),replay_scope='Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit.'),moments=moments,bootstrap=cuts,outer={n:str(v)for n,v in outer['strict_constraints'].items()},controls=controls,scope='Conditional R480 seven-slot k8 construction with a source-bound replica count. The owner map attains the fixed-inventory bin bound. The full conservative invoice, native moment correction, PR589 bit surcharge and 47 outer inequalities are checked. Local admission and all-size/compiler, mutable-source, whole-call hosting, precision/tape, exact-recovery, analytic-transfer and bit H1-H5 assumptions remain.') +if __name__=='__main__': + import sys + package,C,out=map(Path,sys.argv[1:4]);assert package.resolve()==P and not out.exists() + owner_path=C/'audit/OWNERS-AND-PROFILE.json';invoice_path=C/'audit/PREFIX-AND-INVOICE.json' + owner,invoice=read(owner_path),read(invoice_path) + assert owner['template_sha256']==read(C/'hosted/HOSTED.json')['template_sha256'] + r=assemble(owner,invoice,sha(owner_path),sha(invoice_path));out.write_text(json.dumps(r,indent=2)+'\n');print(r['status'],r['kappa_decimal']) diff --git a/research/capped-fusion-t74-k554/code/assembly_controls.py b/research/capped-fusion-t74-k554/code/assembly_controls.py new file mode 100644 index 0000000000..1928c311af --- /dev/null +++ b/research/capped-fusion-t74-k554/code/assembly_controls.py @@ -0,0 +1,260 @@ +"""Independent admission controls for the N-provider native-complex assembly (per-provider controls). + +Prepared with OpenAI Codex assistance; Apache-2.0. Mutation receipts are +rebound to their new owner digest, so unrelated stale hashes cannot conceal +an incomplete width, provider, orientation, paid-profile or finite check. +The fresh physical replay remains a separate prerequisite. +""" +import argparse +import copy +import itertools +import math +import hashlib +import json +import os +from pathlib import Path +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * + +assert __debug__, 'Assertions required' +P = Path(__file__).resolve().parent +sha = lambda p: hashlib.sha256(p.read_bytes()).hexdigest() +digest = lambda x: hashlib.sha256(json.dumps(x, sort_keys=True, separators=(',', ':')).encode()).hexdigest() + + +def verify(owner_path, invoice_path, source_package): + os.environ['GAIN_PR564_SOURCE'] = str(source_package.resolve()) + from assemble import assemble + owner = json.loads(owner_path.read_text()) + invoice = json.loads(invoice_path.read_text()) + baseline = assemble(owner, invoice, sha(owner_path), sha(invoice_path)) + + def empty_maps(o, i): + i['strict_checks'] = {} + i['providers'] = {} + + def understated_stock(o, i): + o['physical'] -= 1 + i['physical'] -= 1 + i['physical_stock_identity']['coefficient_work'] -= 1 + + def changed_profile(o, i): + o['paid_profile']['1'] += 2 + o['paid_profile']['2'] -= 1 + + def wrong_orientation(o, i): + c = next(c for c in i['selected_calls'] if c['stage'] == 0) + c['orientation'] = 'backward' + p = i['providers'][c['provider_id']] + z = p['local']['backward'] + c['program_sha256'] = p['program_hashes']['backward'] + for name in ('events', 'macros', 'real_component_primitives', + 'coefficient_work_primitive_count', 'pre_wrappers', 'post_wrappers'): + c[name] = z[name] + i['selected_real_component_primitives'] = sum(c['real_component_primitives'] for c in i['selected_calls']) + i['selected_coefficient_work_primitive_count'] = sum(c['coefficient_work_primitive_count'] for c in i['selected_calls']) + + def understated_prefix(o, i): + for p in i['providers'].values(): + for z in p['local'].values(): + z['prefix_bits'], z['prefix_l1'] = 1, '1' + i['global_prefix_bits'] = 1 + 37 + CALLS + CALLS + 4 + + def reordered_calls(o, i): + i['selected_calls'][0], i['selected_calls'][1] = i['selected_calls'][1], i['selected_calls'][0] + + def no_cold_wrappers(o, i): + for p in i['providers'].values(): + p['entering_helpers'] -= 4 + for z in p['local'].values():z['pre_wrappers'] = z['post_wrappers'] = p['entering_helpers'] + for c in i['selected_calls']: + c['entering_helpers'] = c['pre_wrappers'] = c['post_wrappers'] = i['providers'][c['provider_id']]['entering_helpers'] + i['wrapper_elementary_factors_charged'] = sum(2*c['pre_wrappers'] for c in i['selected_calls'])*i['factors_per_wrapper'] + + controls = [ + ('empty_certification_maps', empty_maps), + ('failed_invoice_status', lambda o, i: i.__setitem__('status', 'FAIL')), + ('nonboolean_precision_check', lambda o, i: i['strict_checks'].__setitem__('precision', 'true')), + ('wrong_owner_role_count', lambda o, i: o.__setitem__('actual_helper_owner_charts', o['actual_helper_owner_charts'] - 1)), + ('understated_physical_stock', understated_stock), + ('changed_profile_same_rank_mass', changed_profile), + ('insufficient_finite_C0', lambda o, i: i['finite'].__setitem__('required_C0_bits', 210001)), + ('missing_finite_check', lambda o, i: i['strict_checks'].pop('halving')), + ('wrong_reflected_orientation_selfconsistent_totals', wrong_orientation), + ('missing_selected_call', lambda o, i: i['selected_calls'].pop()), + ('wrong_selected_primitive_sum', lambda o, i: i.__setitem__('selected_real_component_primitives', i['selected_real_component_primitives'] - 1)), + ('wrong_selected_coefficient_work_sum', lambda o, i: i.__setitem__('selected_coefficient_work_primitive_count', i['selected_coefficient_work_primitive_count'] - 1)), + ('unpaid_wrapper_factors', lambda o, i: i.__setitem__('wrapper_elementary_factors_charged', i['wrapper_elementary_factors_charged'] - 144)), + ('wrong_global_compiler', lambda o, i: i.__setitem__('compiler', 1)), + ('wrong_global_adapter_maximum', lambda o, i: i.__setitem__('local_adapters', 1)), + ('understated_exact_prefix_and_global_sum', understated_prefix), + ('wrong_global_prefix_sum', lambda o, i: i.__setitem__('global_prefix_bits', 224)), + ('wrong_row_prefix_reserve', lambda o, i: i.__setitem__('row_prefix_extra', 0)), + ('wrong_parent_geometry_charge', lambda o, i: i.__setitem__('unhosted_pervertex', 1)), + ('wrong_rebased_geometry_charge', lambda o, i: i.__setitem__('hosted_rebased_pervertex', 1)), + ('wrong_complete_pervertex_envelope', lambda o, i: i.__setitem__('conservative_pervertex_used', 1)), + ('wrong_prior_added_complete_invoice', lambda o, i: i['retained_prior_overcharge'].__setitem__('added_complete_new_pervertex', 1)), + ('wrong_finite_router_bits', lambda o, i: i['finite'].__setitem__('router_bits', 1)), + ('wrong_finite_literal_bits', lambda o, i: i['finite'].__setitem__('literal_bits', 1)), + ('wrong_finite_physical_stock_bits', lambda o, i: i['finite'].__setitem__('physical_stock_bits', 1)), + ('wrong_finite_row_coefficient', lambda o, i: i['finite'].__setitem__('physical_row_coefficient', 1)), + ('reordered_complete_calls', reordered_calls), + ('understated_explicit_idle_remainders', lambda o, i: o.__setitem__('explicit_idle_remainder_children', o['explicit_idle_remainder_children']-1)), + ('understated_actual_chart_types', lambda o, i: o.__setitem__('actual_73column_sigmas', o['actual_73column_sigmas']-1)), + ('wrong_cross_replica_role_count', lambda o, i: o.__setitem__('cross_replica_helper_roles', o['cross_replica_helper_roles']-1)), + ('old_no_cold_wrapper_counts_selfconsistent', no_cold_wrappers), + ] + + def resync(i, c): + p = i['providers'][c['provider_id']] + c['program_sha256'] = p['program_hashes'][c['orientation']] + c['entering_helpers'], c['entrance_rank'] = p['entering_helpers'], p['entrance_rank'] + for name in ('events','macros','real_component_primitives','coefficient_work_primitive_count','pre_wrappers','post_wrappers'): + c[name] = p['local'][c['orientation']][name] + + # Every provider gets the full per-provider control set, substituting a partner provider where needed. + for P in PIDS: + Qp = partner(P) if len(PIDS)>1 else '__unregistered__' + widths = invoice['providers'][P]['widths'] + + def forged_program_hash(o, i, P=P): + i['providers'][P]['program_hashes']['forward'] = '0' * 64 + for c in i['selected_calls']: + if c['provider_id'] == P: + c['program_sha256'] = '0' * 64 + + def wrong_selected_call(o, i, P=P): + c = next(c for c in i['selected_calls'] if c['provider_id'] == P) + d = next(d for d in i['selected_calls'] if d is not c and (d['provider_id'] != P or len(PIDS)==1) and (d['stage'] - c['stage']) % 2 == 0) + c['stage'], d['stage'], c['replica'], d['replica'] = d['stage'], c['stage'], d['replica'], c['replica'] + + def stale_program(o, i, P=P, Qp=Qp): + p = i['providers'][P] + p['program_hashes'] = copy.deepcopy(i['providers'][Qp]['program_hashes']) + for c in i['selected_calls']: + if c['provider_id'] == P: + c['program_sha256'] = p['program_hashes'][c['orientation']] + + def stale_profile(o, i, P=P, Qp=Qp): + p = i['providers'][P] + p['paid_profile'] = copy.deepcopy(i['providers'][Qp]['paid_profile']) + p['children'] = sum(p['paid_profile'].values()) + + def moved(o, i, P=P): + a = next(c for c in i['selected_calls'] if c['provider_id'] == P) + b = next(c for c in i['selected_calls'] if c['provider_id'] != P and c['orientation'] == a['orientation']) + a['provider_id'], b['provider_id'] = b['provider_id'], a['provider_id'] + resync(i, a); resync(i, b) + + def compensating(o, i, P=P, Qp=Qp): + # Two dishonest profiles that cancel exactly in the dispatch-weighted aggregate. + g = math.gcd(COUNTS[P], COUNTS[Qp]); dp, dq = COUNTS[Qp] // g, COUNTS[P] // g + p, q = i['providers'][P], i['providers'][Qp] + p['paid_profile']['1'] += dp; q['paid_profile']['1'] -= dq + p['children'] += dp; q['children'] -= dq + + def forged_recipe(o, i, P=P): + name = 'CLIFFORD-RECIPES.json' + i['providers'][P]['artifacts'][name] = '0'*64 + o['source_artifacts']['providers/'+P+'/'+name] = '0'*64 + + def forged_phase(o, i, P=P): + i['providers'][P]['semantic_artifact_sha256']['CLIFFORD-REVIEW.json'] = '0'*64 + o['provider_phase_semantic_sha256'][P] = i['provider_phase_semantic_sha256'][P] = '0'*64 + + controls += [ + (P + ':missing_provider', lambda o, i, P=P: i['providers'].pop(P)), + (P + ':missing_backward_orientation', lambda o, i, P=P: i['providers'][P]['local'].pop('backward')), + (P + ':unpaid_scalar_primitive', lambda o, i, P=P: i['providers'][P]['local']['forward'].__setitem__('real_component_primitives', i['providers'][P]['local']['forward']['real_component_primitives'] - 1)), + (P + ':wrong_local_artifact_binding', lambda o, i, P=P: i['providers'][P]['artifacts'].__setitem__('LOCAL-PROGRAMS.json.gz', '0' * 64)), + (P + ':false_dirty_restoration', lambda o, i, P=P: i['providers'][P]['local']['backward'].__setitem__('all_dirty_helper_columns_restored', False)), + (P + ':wrong_declared_provider_count', lambda o, i, P=P: i['provider_counts'].__setitem__(P, i['provider_counts'][P] + 1)), + (P + ':wrong_local_compiler', lambda o, i, P=P: i['providers'][P].__setitem__('compiler', 1)), + (P + ':wrong_local_adapter_charge', lambda o, i, P=P: i['providers'][P].__setitem__('local_adapters', 1)), + (P + ':wrong_local_primitive_bound', lambda o, i, P=P: i['providers'][P].__setitem__('local_primitive_bound', 1)), + (P + ':forged_provider_and_call_program_hash', forged_program_hash), + (P + ':provider_at_wrong_call', wrong_selected_call), + (P + ':stale_partner_program_consistent_call_hashes', stale_program), + (P + ':stale_partner_profile_consistent_child_total', stale_profile), + (P + ':relocated_against_partner_same_counts', moved), + (P + ':compensating_false_profiles_with_' + Qp, compensating), + (P + ':synchronized_forged_source_recipe_hash', forged_recipe), + (P + ':synchronized_forged_phase_review_semantics', forged_phase), + ] + if len(PIDS)==1: + # Cross-provider substitutions require a second actual supplier. + # All single-provider program, phase, profile and dispatch bindings + # retain their direct mutations above and in the controller audit. + partner_only = {P+':stale_partner_program_consistent_call_hashes', + P+':stale_partner_profile_consistent_child_total', + P+':relocated_against_partner_same_counts', + P+':compensating_false_profiles_with_'+Qp} + controls = [(name, fn) for name, fn in controls if name not in partner_only] + # Width order and inventory: swap the first helper of every pair of distinct widths (same inventory), + # and shift one unit between them (same total). + first = {} + for h, w in enumerate(widths): + first.setdefault(w, h) + for wa, wb in itertools.combinations(sorted(first), 2): + def swap(o, i, P=P, a=first[wa], b=first[wb]): + w = i['providers'][P]['widths']; w[a], w[b] = w[b], w[a] + def shift(o, i, P=P, a=first[wa], b=first[wb]): + w = i['providers'][P]['widths']; w[a] += 1; w[b] -= 1 + controls.append((P + ':width_order_swap_%d_%d' % (wa, wb), swap)) + controls.append((P + ':width_inventory_shift_%d_%d' % (wa, wb), shift)) + for h in SPOT: + def cold_swap(o, i, P=P, h=h): + w = i['providers'][P]['widths']; j = w.index(9 if w[h] != 9 else 8); w[h], w[j] = w[j], w[h] # never the identity + controls.append((P + ':cold_helper_width_swap_%d' % h, cold_swap)) + rejected = [] + accepted = [] + for name, mutate in controls: + o, i = copy.deepcopy(owner), copy.deepcopy(invoice) + mutate(o, i) + oh = digest(o) + i['owner_audit_sha256'] = oh + try: + assemble(o, i, oh, digest(i)) + except (AssertionError, KeyError): + rejected.append(name) + else: + # Discovery has no pinned values to reject spec-only mutations; the strict run must reject every control. + if not DISCOVER: + raise AssertionError('Invalid admission receipt accepted: ' + name) + accepted.append(name) + try: + assemble(owner, invoice, '0' * 64, sha(invoice_path)) + except AssertionError: + rejected.append('wrong_owner_receipt_hash') + else: + raise AssertionError('Wrong owner digest accepted') + pin('expected.assembly_controls_rejected', len(rejected)) + assert baseline['controls'] == ['next_grid', 'zero_eta', 'zero_beta', 'unit_beta'] + assert baseline['conservative_controls'] == baseline['controls'] + assert baseline['surcharge_model'] == {'complex': False, 'bit': True} + assert len(baseline['model_controls']) == 2 + return dict( + status='PASS_EXACT_MIXED_048_ALLCOLD_NATIVE_ASSEMBLY_ADMISSION_NEGATIVE_CONTROLS', + valid_receipt_kappa=baseline['kappa'], + input_sha256=baseline['input_sha256'], + assembler_sha256=sha(Path(__file__).resolve().parent / 'assemble.py'), + rejected_controls=rejected, + discovery_accepted_controls=accepted, + exact_outer_controls=baseline['controls'], + conservative_outer_controls=baseline['conservative_controls'], + recurrence_model_controls=baseline['model_controls'], + scope='Complete receipt schema; ordered widths and both reflected providers; exact program, work and paid-profile binding; independently recounted compiler, conservative envelope and finite inequalities. Does not replace fresh physical replay.', + ) + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--source-package', type=Path, required=True) + ap.add_argument('--owner', type=Path, required=True) + ap.add_argument('--invoice', type=Path, required=True) + ap.add_argument('--out', type=Path, required=True) + a = ap.parse_args() + assert not a.out.exists() + result = verify(a.owner, a.invoice, a.source_package) + a.out.write_text(json.dumps(result, indent=2) + '\n') + print(result['status'], len(result['rejected_controls'])) diff --git a/research/capped-fusion-t74-k554/code/audit_allcold.py b/research/capped-fusion-t74-k554/code/audit_allcold.py new file mode 100644 index 0000000000..0c94f0bec6 --- /dev/null +++ b/research/capped-fusion-t74-k554/code/audit_allcold.py @@ -0,0 +1,254 @@ +"""OpenAI Codex independent serialized ASYNCHRONOUS controller/spectator audit. +Imports no emitter, optimizer, expander, edge-coloring, or source hosting code. +CLI: BASE HOSTED REPORT [--mutation-controls] +Each provider is independently read from BASE/providers, never from a baseline width histogram. +OpenAI Codex two-provider width-seven extension; retains all inherited independent controller checks. +The exact 63 width-seven and 9 plain calls are frozen below. +""" +import sys,json,gzip,hashlib,copy +assert __debug__, 'Assertions must remain enabled' +from pathlib import Path +from collections import Counter,defaultdict +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +from generated_identity import artifact_identities +BASE,OUT,REPORT=map(lambda p:Path(p).resolve(),sys.argv[1:4]);read=lambda p:json.loads(gzip.decompress(p.read_bytes())if p.suffix=='.gz'else p.read_bytes()) +parent=read(BASE/'split-centres/GLOBAL-TEMPLATE.json.gz') +ph=read(BASE/'work/complex-nine-native/DATA-PHASES.json') +ct=read(OUT/'GLOBAL-TEMPLATE.json.gz');summary=read(OUT/'HOSTED.json') +sha=lambda p:hashlib.sha256(p.read_bytes()).hexdigest() +provider_ids=PIDS +providers={};registry={};phase_semantic_hashes={};artifact_semantic_hashes={} +required_artifacts={'work/complex-nine-native/DATA-PHASES.json'} +provider_files=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json', + 'INDEPENDENT-LOCAL-REPLAY.json','RESIDUAL-ADAPTERS.json','CLIFFORD-RECIPES.json','CLIFFORD-REVIEW.json') +for pid in provider_ids: + p=BASE/'providers'/pid + c=read(p/'CANONICAL-WORD.json.gz');checks=read(p/'LOCAL-CHECKS.json') + programs=read(p/'LOCAL-PROGRAMS.json.gz');replay=read(p/'INDEPENDENT-LOCAL-REPLAY.json') + phase=read(p/'CLIFFORD-REVIEW.json');adapters=read(p/'RESIDUAL-ADAPTERS.json')['recipes'] + widths=[len(c['frames'][c['final'][2*c['v']+h]])-len(c['frames'][c['start'][2*c['v']+h]])for h in range(c['R'])] # HPE: residual width |final|-|start| + assert tuple(widths[h]for h in SPOT)==spot_widths();pin('providers.%s.inventory'%pid,{str(k):v for k,v in sorted(Counter(widths).items())}) + canonical_sha=sha(p/'CANONICAL-WORD.json.gz');programs_sha=sha(p/'LOCAL-PROGRAMS.json.gz') + assert replay['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert replay['canonical_word_sha256']==canonical_sha and replay['local_programs_sha256']==programs_sha + assert replay['v']==c['v'] and replay['helpers']==c['R'] + assert set(programs)==set(checks)==set(replay['local'])==set(replay['paid_profiles'])=={'forward','backward'} + for orientation,events in programs.items(): + ck=checks[orientation];rr=replay['local'][orientation] + assert hashlib.sha256(json.dumps(events,sort_keys=True,separators=(',',':')).encode()).hexdigest()==ck['sha256'] + assert ck['events']==len(events) and ck['all_columns']==2*c['v']+c['R'] + assert ck['private_centers_cleared'] and ck['private_coefficient_stream_cleared_after_each_macro'] + assert rr['all_exact_columns']==2*c['v']+c['R'] and rr['private_work_erased'] + literal=Counter(e[-1]for e in events if e[0]in('climb','center')) + assert dict(literal)=={int(r):n for r,n in ck['paid_profile'].items()}=={int(r):n for r,n in c['local_profile'].items()} + assert ck['paid_profile']==replay['paid_profiles'][orientation] + assert phase['canonical_word_sha256']==canonical_sha and phase['recipe_sha256']==sha(p/'CLIFFORD-RECIPES.json') + assert phase['all_child_equalities_include_global_phase'] + artifact_semantic_hashes[pid]=artifact_identities(p) + pin('providers.%s.artifact_semantic_sha256'%pid,artifact_semantic_hashes[pid]) + phase_semantic_hashes[pid]=artifact_semantic_hashes[pid]['CLIFFORD-REVIEW.json'] + for h,w in enumerate(widths): + assert 0>i)&1==0);a=q^(1<>i&1 else 0)for i in order]+[1<2*max(paid)**2 + return dict(profile=dict(sorted(paid.items())),mass=mass,hosted=HOSTED,entering=entering,cross_replica=cross,sigma_digest=digest.hexdigest(),sigmas=sigmas,idle_remainders=len(wanted),busy_family_checks=len(roles),invocations=CALLS) + +r=audit(ct);raw=gzip.decompress((OUT/'GLOBAL-TEMPLATE.json.gz').read_bytes());assert hashlib.sha256(raw).hexdigest()==summary['template_sha256'];assert r['profile']=={int(k):v for k,v in summary['global_profile'].items()};assert r['sigmas']==read(OUT/'ACTUAL-SIGMAS.json.gz');assert r['sigma_digest']==summary['sigma_stream_sha256'] +assert all(hashlib.sha256((BASE/name).read_bytes()).hexdigest()==value for name,value in summary['source_artifacts'].items()) +controls=[] +def reject(name,mut): + if '--mutation-controls' not in sys.argv[4:]:return + q=copy.deepcopy(ct);mut(q) + try:audit(q) + except(AssertionError,KeyError,IndexError,ValueError,TypeError):controls.append(name) + else:raise AssertionError('ACCEPTED '+name) +enter=lambda q:next(o for c in q['calls']for o in c['owners'][(2*V):]if o[1][0]==4) +reject('alias two whole owners',lambda q:q['calls'][0]['owners'].__setitem__((2*V+1),q['calls'][0]['owners'][(2*V)])) +reject('helper on active data family',lambda q:q['calls'][0]['owners'][(2*V)].__setitem__(0,q['calls'][0]['owners'][0][0])) +reject('owner in private namespace',lambda q:q['calls'][0]['owners'][(2*V)].__setitem__(0,DATA)) +reject('wrong residual width',lambda q:enter(q)[1].__setitem__(3,enter(q)[1][3]-1)) +reject('wrong spectator coordinate',lambda q:enter(q)[1][4].__setitem__(0,72)) +reject('omit idle remainder',lambda q:q['idle_children'].pop()) +reject('understate physical reserve',lambda q:q.__setitem__('physical',PHYSICAL-1)) +# Single-provider dispatch still has all source/program/width binding controls. +if len(provider_ids)==1: + P=provider_ids[0] + at_p=lambda q:next(c for c in q['calls']if c['provider_id']==P) + narrow=next(h for h in range(R)if providers[P]['widths'][h]<9) + reject(P+': wrong provider at its invocation',lambda q:at_p(q).__setitem__('provider_id','__unregistered__')) + reject(P+': stale per-call local program hash',lambda q:at_p(q).__setitem__('local_program_sha256','0'*64)) + reject(P+': stale serialized provider program',lambda q:q['local_providers'][P]['local_programs']['forward'].pop()) + reject(P+': unbound residual adapter hash',lambda q:q['local_providers'][P].__setitem__('residual_adapter_sha256','0'*64)) + reject(P+': wrong provider width registry',lambda q:q['local_providers'][P]['widths'].__setitem__(narrow,providers[P]['widths'][narrow]-1)) + reject(P+': wrong per-call residual width',lambda q:at_p(q)['owners'][2*V+narrow][1].__setitem__(3,at_p(q)['owners'][2*V+narrow][1][3]-1)) + reject(P+': wrong sweep provider',lambda q:next(e for e in q['execution_schedule']if e['kind']=='local_cover_sweep').__setitem__('provider_id','__unregistered__')) + reject(P+': entering helper width silently restored to nine',lambda q:q['local_providers'][P]['widths'].__setitem__(narrow,9)) +else: + # Per-provider substitution controls: every provider is swapped against a partner provider. + for P in provider_ids: + Qp=partner(P) + at_p=lambda q,P=P:next(c for c in q['calls']if c['provider_id']==P) + diff=[h for h in range(R)if providers[P]['widths'][h]!=providers[Qp]['widths'][h]] + narrow=next(h for h in range(R)if providers[P]['widths'][h]<9) + reject(P+': wrong provider at its invocation',lambda q,P=P,Qp=Qp,at_p=at_p:at_p(q).__setitem__('provider_id',Qp)) + reject(P+': stale per-call local program hash',lambda q,Qp=Qp,at_p=at_p:at_p(q).__setitem__('local_program_sha256',registry[Qp]['local_program_checks'][at_p(q)['orientation']]['sha256'])) + reject(P+': stale serialized provider program',lambda q,P=P,Qp=Qp:q['local_providers'][P].__setitem__('local_programs',registry[Qp]['local_programs'])) + reject(P+': unbound residual adapter hash',lambda q,P=P:q['local_providers'][P].__setitem__('residual_adapter_sha256','0'*64)) + if diff:reject(P+': partner width in provider width registry',lambda q,P=P,Qp=Qp,h=diff[0]:q['local_providers'][P]['widths'].__setitem__(h,providers[Qp]['widths'][h])) + reject(P+': wrong per-call residual width',lambda q,at_p=at_p,h=narrow:at_p(q)['owners'][2*V+h][1].__setitem__(3,at_p(q)['owners'][2*V+h][1][3]-1)) + reject(P+': wrong sweep provider',lambda q,P=P,Qp=Qp:next(e for e in q['execution_schedule']if e['kind']=='local_cover_sweep'and DISPATCH[e['stage'],e['replica']]==P).__setitem__('provider_id',Qp)) + reject(P+': entering helper width silently restored to nine',lambda q,P=P,h=narrow:q['local_providers'][P]['widths'].__setitem__(h,9)) + +report=dict(status='PASS_INDEPENDENT_ASYNC_WHOLE_OWNER_CONTROLLER_PHASES_AND_SPECTATORS',template_sha256=summary['template_sha256'],complex_template_sha256=summary['template_sha256'],complex_live=DATA,complex_profile=r['profile'],complex_hosted_residuals=HOSTED,physical=PHYSICAL,rank_mass=r['mass'],deficit=DEFICIT,entering_helper_roles=r['entering'],cross_replica_helper_roles=r['cross_replica'],one_owner_per_complete_invocation=True,helper_busy_family_window_checks=r['busy_family_checks'],complete_invocations=r['invocations'],actual_orthogonal_73column_maps=len(r['sigmas']),actual_sigma_stream_sha256=r['sigma_digest'],all_actual_residual_and_spectator_charts=True,idle_remainders=r['idle_remainders'],mutations_rejected=controls,mutation_controls_run='--mutation-controls' in sys.argv[4:],provider_phase_semantic_sha256=phase_semantic_hashes,provider_artifact_semantic_sha256=artifact_semantic_hashes,widths_by_provider={pid:dict(sorted(Counter(providers[pid]['widths']).items()))for pid in provider_ids},provider_counts=dict(Counter(c['provider_id']for c in ct['calls'])),all_provider_program_phase_and_wrapper_bindings=True,scope='Independent exact asynchronous chronology, per-replica phase projection, owner/chart/paid-profile audit. Uses per-invocation local providers bound by exact scalar, phase and residual-wrapper receipts; all-size compilation and complete coefficient invoice are separate inherited obligations.') +REPORT.parent.mkdir(parents=True,exist_ok=True) +REPORT.write_text(json.dumps(report,indent=2)+'\n');print(json.dumps(report,indent=2)) + +owners=dict(status='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE',template_sha256=summary['template_sha256'],paid_profile=r['profile'],live=DATA,physical=PHYSICAL,rank_mass=r['mass'],deficit=DEFICIT,hosted_residuals=HOSTED,banked_residuals=0,all_live_owners_per_call_distinct=True,owners_per_call=N,actual_helper_owner_charts=HOSTED,actual_73column_sigmas=len(r['sigmas']),cross_replica_helper_roles=r['cross_replica'],explicit_idle_remainder_children=r['idle_remainders'],source_idle_children_charged=sum(x['replicas']for x in parent['idle_children']),source_artifacts=summary['source_artifacts'],provider_phase_semantic_sha256=phase_semantic_hashes,provider_artifact_semantic_sha256=artifact_semantic_hashes,controller_audit_sha256=hashlib.sha256(REPORT.read_bytes()).hexdigest()) +(REPORT.parent/'OWNERS-AND-PROFILE.json').write_text(json.dumps(owners,indent=2)+'\n') + +# Literal residual frames are a compact export of the already checked offsets, +# not another global replay. Every row names its actual inherited axes. +frames=[] +for z in ct['idle_children']: + axes=list(map(int,ph['recipes'][z['port']]['idle_children'][z['child']]['orthogonal_axes'])) + tail=axes[z['pending_offset']:] + assert len(tail)==z['rank'] + frames.append(dict(z,orthogonal_axes=tail)) +frame_raw=json.dumps(frames,sort_keys=True,separators=(',',':')).encode() +portable=bytearray(gzip.compress(frame_raw,mtime=0));portable[9]=255 +(OUT/'IDLE-REMAINDER-FRAMES.json.gz').write_bytes(bytes(portable)) +frame_receipt=dict(status='PASS_LITERAL_IDLE_REMAINDER_FRAMES',template_sha256=summary['template_sha256'], + uncompressed_frames_sha256=hashlib.sha256(frame_raw).hexdigest(),children=len(frames), + rank_profile=dict(sorted(Counter(z['rank']for z in frames).items())), + source_data_phase_sha256=hashlib.sha256((BASE/'work/complex-nine-native/DATA-PHASES.json').read_bytes()).hexdigest(), + scope='Actual orthogonal axes after the independently checked whole-owner prefix in each inherited pending child.') +(REPORT.parent/'IDLE-REMAINDER-FRAMES.json').write_text(json.dumps(frame_receipt,indent=2)+'\n') diff --git a/research/capped-fusion-t74-k554/code/bind_providers_portable.py b/research/capped-fusion-t74-k554/code/bind_providers_portable.py new file mode 100644 index 0000000000..97e28da17e --- /dev/null +++ b/research/capped-fusion-t74-k554/code/bind_providers_portable.py @@ -0,0 +1,67 @@ +"""Bind freshly verified plain and width-seven four-cold providers to the frozen literal owner plan. +Prepared with OpenAI Codex assistance; Apache-2.0. All byte-stable native +files are pinned to the plan. Only validated phase-receipt timing/serialization +and directory fields are rebound; no dispatch, width or owner choice changes. +""" +import argparse,copy,gzip,hashlib,json,shutil +from collections import Counter +from pathlib import Path +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +from generated_identity import artifact_identities +assert __debug__, 'Assertions required' +ap=argparse.ArgumentParser(description=__doc__) +for name in ('baseline','plan','out'):ap.add_argument('--'+name,type=Path,required=True) +ap.add_argument('--provider',action='append',required=True,help='PID=DIR');a=ap.parse_args();assert not a.out.exists();a.out.mkdir(parents=True) +def read(p):return json.loads(gzip.decompress(p.read_bytes())if p.suffix=='.gz'else p.read_bytes()) +def sha(p):return hashlib.sha256(p.read_bytes()).hexdigest() +base=a.out/'base';shutil.copytree(a.baseline/'complex-global/base',base) +ap2=dict(x.split('=',1)for x in a.provider);dirs={k:Path(v)for k,v in ap2.items()};assert set(dirs)==set(PIDS) +for pid,src in dirs.items():shutil.copytree(src,base/'providers'/pid) +pin('data.plan_sha256',sha(a.plan)) +plan=read(a.plan);original=copy.deepcopy(plan);sources={};helpers=set() # R: helper count per provider word; all providers must agree +assert set(plan['provider_registry'])==set(dirs) +assert {(c['stage'],c['replica']):c['provider']for c in plan['provider_calls']}==DISPATCH,'PLAN dispatch differs from spec dispatch' +stable=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json','INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-RECIPES.json','RESIDUAL-ADAPTERS.json') +for pid,desc in plan['provider_registry'].items(): + d=base/'providers'/pid + word,program,checks,native,phase=[read(d/name)for name in('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json','INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-REVIEW.json')] + assert (word['v'],word['h'],len(word['centers']))==(112,9,8) and type(word['R']) is int and word['R']>0;helpers.add(word['R']) + assert word['ports']==desc['ports'] and word['centers']==desc['centers'] + widths=[len(word['frames'][word['final'][r]])-len(word['frames'][word['start'][r]])for r in range(2*112,2*112+word['R'])] # HPE: residual width |final|-|start| + assert tuple(widths[h]for h in SPOT)==spot_widths() + assert widths==desc['widths'];pin('providers.%s.inventory'%pid,{str(k):v for k,v in sorted(Counter(widths).items())}) + assert native['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + pin('providers.%s.native_negative_controls'%pid,len(native['negative_controls_rejected'])) + assert native['canonical_word_sha256']==sha(d/'CANONICAL-WORD.json.gz') and native['local_programs_sha256']==sha(d/'LOCAL-PROGRAMS.json.gz') + assert phase['status']=='PASS_NEW_WORD_EXACT_LOCAL_PHASE_RECIPES' + assert phase['canonical_word_sha256']==sha(d/'CANONICAL-WORD.json.gz') and phase['recipe_sha256']==sha(d/'CLIFFORD-RECIPES.json') + assert phase['all_child_equalities_include_global_phase'] is True and phase['endpoint_adapters']==224 + pin('providers.%s.phase_edges'%pid,phase['directed_edges']) + assert set(program)==set(checks)=={'forward','backward'} + expected={int(r):n for r,n in checks['forward']['paid_profile'].items()};pin('providers.%s.expected_profile'%pid,checks['forward']['paid_profile']) + for orientation,events in program.items(): + profile=Counter() + for e in events: + if e[0]=='climb':profile[e[5]]+=1 + elif e[0]=='center':profile[e[4]]+=1 + assert dict(profile)==expected=={int(r):n for r,n in checks[orientation]['paid_profile'].items()}=={int(r):n for r,n in native['paid_profiles'][orientation].items()} + assert hashlib.sha256(json.dumps(events,separators=(',',':')).encode()).hexdigest()==checks[orientation]['sha256'] + identities=artifact_identities(d) + pin('providers.%s.artifact_semantic_sha256'%pid,identities) + assert identities==desc['artifact_semantic_sha256'] + for name in ('LOCAL-CHECKS.json','CLIFFORD-RECIPES.json','RESIDUAL-ADAPTERS.json'): + assert sha(d/name)==desc['artifact_sha256'][name],(pid,name,'changed non-reference artifact') + for c in plan['provider_calls']: + if c['provider']==pid: + assert c['orientation']==('forward'if c['stage']%2==0 else'backward') + assert c['local_program_sha256']==checks[c['orientation']]['sha256'] + desc['directory']='providers/'+pid + desc['artifact_sha256']={name:sha(d/name)for name in desc['artifact_sha256']} + sources[pid]=dict(artifact_sha256=desc['artifact_sha256'],canonical_content_sha256=hashlib.sha256(json.dumps(word,sort_keys=True,separators=(',',':')).encode()).hexdigest(),all_phase_edges=phase['directed_edges']) +assert len(helpers)==1,'providers disagree on helper count R: %s'%sorted(helpers) +plan['runtime_source_plan_sha256']=sha(a.plan) +(a.out/'PLAN.json').write_text(json.dumps(plan,indent=2)+'\n') +receipt=dict(status='PASS_FROZEN_048_ALLCOLD_DISPATCH_FRESH_PROVIDER_BINDING',source_plan_sha256=sha(a.plan),runtime_plan_sha256=sha(a.out/'PLAN.json'),providers=sources,only_rebound_fields=['provider_registry.directory','provider_registry.artifact_sha256','runtime_source_plan_sha256']) +(a.out/'BINDING.json').write_text(json.dumps(receipt,indent=2)+'\n') +print(receipt['status']) diff --git a/research/capped-fusion-t74-k554/code/bit_supplier_controls.py b/research/capped-fusion-t74-k554/code/bit_supplier_controls.py new file mode 100644 index 0000000000..e86b8527b4 --- /dev/null +++ b/research/capped-fusion-t74-k554/code/bit_supplier_controls.py @@ -0,0 +1,111 @@ +"""Negative controls for the cited PR589 bit supplier and its derived rank-mass deficit. + +Apache-2.0. Each control mutates one input of the changed bit-supplier sites in assemble.py (the pinned record, the +deficit derivation from the word's parameters, the profile/live binding, the claimed endpoint) and runs the unchanged +assemble() on the fresh owner/invoice receipts. Every control must be rejected; the unmutated run must pass. +`revert_hardcoded_9984` restores the PR543 constant the parent package hard-coded: with PR589's word it must fail. +""" +import argparse +import copy +import hashlib +import json +import os +import tempfile +from fractions import Fraction as Q +from pathlib import Path +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) + +assert __debug__, 'Assertions required' +sha = lambda p: hashlib.sha256(p.read_bytes()).hexdigest() + + +def verify(owner_path, invoice_path, source_package): + os.environ['GAIN_PR564_SOURCE'] = str(source_package.resolve()) + import assemble as A + owner = json.loads(owner_path.read_text()) + invoice = json.loads(invoice_path.read_text()) + args = (owner, invoice, sha(owner_path), sha(invoice_path)) + baseline = A.assemble(*args) + data = A.BIT_PATH.read_bytes() + record = A.load_bit(data) + word = record['word'] + assert A.bit_deficit(word, record['nine']['bit']['live']) == 10272 == 32 * (8 * 111 - 9 * 63) + + real_load, real_deficit = A.load_bit, A.bit_deficit + + def with_record(mutate): + def load(d): + r = copy.deepcopy(real_load(d)); mutate(r); return r + return load + + def shift_profile(r): # one rank-1 child becomes rank 2: rank mass +1, totals unchanged + p = r['nine']['profile']; p['1'] -= 1; p['2'] += 1; r['nine']['bit']['rank_mass'] += 1 + + bumped = data.replace(record['nine']['bit_lower'].encode(), + str(Q(record['nine']['bit_lower']) + Q(1, 10**24)).encode(), 1) + assert bumped != data + pr543 = (source_package / 'inputs/PR543-EXPECTED.json').read_bytes() + controls = [ + # deficit site: the parent's hard-coded constant, restored + ('revert_hardcoded_9984', dict(bit_deficit=lambda w, live: 9984)), + # deficit site: each word parameter perturbed alone + ('ports_112', dict(load_bit=with_record(lambda r: r['word'].__setitem__('v', 112)))), + ('decoder_constant_64_copy_ranks_unchanged', dict(load_bit=with_record(lambda r: r['word'].__setitem__('decoder_constant', 64)))), + # v=111, cst=64 derives 32*(888-576)=9984: consistent word, wrong for the priced profile + ('decoder_constant_64_with_one_copy_rank_8', dict(load_bit=with_record(lambda r: (r['word'].__setitem__('decoder_constant', 64), r['word']['copy_ranks'].__setitem__(0, 8))))), + ('eight_retained_totals', dict(load_bit=with_record(lambda r: (r['word'].__setitem__('copy_ranks', [7] * 8), r['word'].__setitem__('decoder_constant', 56))))), + ('live_minus_one', dict(load_bit=with_record(lambda r: r['nine']['bit'].__setitem__('live', r['nine']['bit']['live'] - 1)))), + # profile binding: same totals, rank mass +1 + ('profile_rank_mass_plus_one', dict(load_bit=with_record(shift_profile))), + ('profile_rank_mass_receipt_mismatch', dict(load_bit=with_record(lambda r: r['nine']['bit'].__setitem__('rank_mass', r['nine']['bit']['rank_mass'] + 1)))), + # endpoint: the next 1e-24 grid point + ('bit_lower_next_grid', dict(load_bit=with_record(lambda r: r['nine'].__setitem__('bit_lower', str(Q(r['nine']['bit_lower']) + Q(1, 10**24)))))), + ('not_nine_stage_record', dict(load_bit=with_record(lambda r: r['nine'].__setitem__('pipeline', r['nine']['pipeline'].replace('nine-stage', 'eleven-stage'))))), + # pinned-input site: tampered bytes and the parent's PR543 file under the PR589 pin + ('tampered_bytes_next_grid', dict(read=bumped)), + ('pr543_file_under_pr589_pin', dict(read=pr543)), + ] + rejected = [] + scratch = Path(tempfile.mkdtemp(prefix='bitctl-')) + for name, patch in controls: + saved_path = A.BIT_PATH + try: + if 'read' in patch: + tmp = scratch / (name + '.json'); tmp.write_bytes(patch['read']); A.BIT_PATH = tmp + A.load_bit = patch.get('load_bit', real_load) + A.bit_deficit = patch.get('bit_deficit', real_deficit) + try: + A.assemble(*args) + except (AssertionError, KeyError): + rejected.append(name) + else: + raise AssertionError('Invalid bit supplier accepted: ' + name) + finally: + A.load_bit, A.bit_deficit, A.BIT_PATH = real_load, real_deficit, saved_path + if 'read' in patch: + tmp.unlink() + scratch.rmdir() + assert rejected == [n for n, _ in controls] + again = A.assemble(*args) + assert again['kappa'] == baseline['kappa'] and again['bit_lower'] == baseline['bit_lower'] + return dict( + status='PASS_PR589_BIT_SUPPLIER_DERIVED_DEFICIT_NEGATIVE_CONTROLS', + kappa=baseline['kappa_decimal'], bit_lower=baseline['bit_lower'], bit_decimal=baseline['bit_decimal'], + binding=baseline['binding'], bit_supplier=baseline['bit_supplier'], + derived_deficit=baseline['bit_supplier']['derived_deficit'], + rejected_controls=rejected, + assembler_sha256=sha(Path(__file__).resolve().parent / 'assemble.py'), + ) + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--source-package', type=Path, required=True) + ap.add_argument('--owner', type=Path, required=True) + ap.add_argument('--invoice', type=Path, required=True) + ap.add_argument('--out', type=Path, required=True) + a = ap.parse_args() + assert not a.out.exists() + result = verify(a.owner, a.invoice, a.source_package) + a.out.write_text(json.dumps(result, indent=2) + '\n', newline='\n') + print(result['status'], len(result['rejected_controls'])) diff --git a/research/capped-fusion-t74-k554/code/emit_allcold.py b/research/capped-fusion-t74-k554/code/emit_allcold.py new file mode 100644 index 0000000000..7627f7717f --- /dev/null +++ b/research/capped-fusion-t74-k554/code/emit_allcold.py @@ -0,0 +1,150 @@ +"""Two-provider width-seven whole-owner derivative, adapted with OpenAI Codex assistance. +Based on PR514 and its credited PR484/507 lineage. +CLI: --base VERIFIED_VARIANT --owners ASYNC-OWNERS.json.gz --plan ASYNC-PLAN.json --out OUT +No optimizer or unpublished word builder runs. The frozen map explicitly names +one whole helper per family per complete invocation, plus borrowed spectators. +""" +import sys,json,gzip,hashlib,copy,argparse +from pathlib import Path +from collections import Counter,defaultdict +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +parser=argparse.ArgumentParser(description=__doc__) +parser.add_argument('--base',type=Path,required=True);parser.add_argument('--owners',type=Path,required=True);parser.add_argument('--plan',type=Path,required=True);parser.add_argument('--out',type=Path,required=True) +a=parser.parse_args();BASE,MAP,PLAN,OUT=(p.resolve()for p in(a.base,a.owners,a.plan,a.out));assert not OUT.exists();OUT.mkdir(parents=True) +class OH: + @staticmethod + def idle_basis(q): + z=next(i for i in range(9)if not(q>>i)&1);u=q^(1<>i&1 else 0)for i in order]+[1<0 and all(x['R']==R for x in registry.values()),'providers disagree on helper count R' + assert replay['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert replay['canonical_word_sha256']==sha(directory/'CANONICAL-WORD.json.gz')and replay['local_programs_sha256']==sha(directory/'LOCAL-PROGRAMS.json.gz') + widths=[len(pc['frames'][pc['final'][2*V+h]])-len(pc['frames'][pc['start'][2*V+h]])for h in range(R)] # HPE: residual width |final|-|start| + assert widths==plan['provider_registry'][provider_id]['widths'] + for name in provider_files: + value=sha(directory/name);assert value==plan['provider_registry'][provider_id]['artifact_sha256'][name] + source_artifacts[f'providers/{provider_id}/{name}']=value + registry[provider_id]=dict(local_programs=programs,canonical_word_sha256=sha(directory/'CANONICAL-WORD.json.gz'),local_programs_sha256=sha(directory/'LOCAL-PROGRAMS.json.gz'),local_program_checks=checks,exact_local_clifford_recipe_sha256=sha(directory/'CLIFFORD-RECIPES.json'),residual_adapter_sha256=sha(directory/'RESIDUAL-ADAPTERS.json'),v=V,h=9,R=R,ports=pc['ports'],centers=pc['centers'],widths=widths) +assert len(roles)==CALLS*R # one whole-owner role per (call, provider helper) +selected={(c['stage'],c['replica']):c for c in plan['provider_calls']} +assert len(selected)==CALLS and set(selected)==set(call_order) +assert Counter(c['provider']for c in selected.values())==COUNTS +per_call_widths={(c['stage'],c['replica']):c['widths']for c in plan['per_call_widths']} +for key,c in selected.items(): + assert c['time']==at[key] and c['provider']in registry + assert per_call_widths[key]==registry[c['provider']]['widths'] +for key in('local_programs','exact_local_clifford_recipe_sha256','residual_adapter_sha256'):t.pop(key) +t['local_providers']=registry +rank={z['child']:z['rank']for z in parent['idle_children']};side={};pairs={} +for e in parent['execution_schedule']: + if e['kind']=='idle_cover_sweep': + for sd,ch in enumerate(e['child_indices']):side[ch]=sd;pairs[ch]=e['pair'] +bycall=defaultdict(dict);used=defaultdict(set);sigmas={};digest=hashlib.sha256();entering=0 +for z in roles: + s,rep,h=z['stage'],z['replica'],z['helper'];i,cp,off,w,f=z['child'],z['copy'],z['offset'],z['width'],z['family'];orp,port=divmod(cp,V) + assert 0<=s<9 and 0<=rep=0 and off+w<=rank[i] + assert z['time']==at[s,rep] and z['time'] in plan['windows'][f'{orp},{i}'][1] + B=OH.idle_basis(canon['ports'][port]);pending=list(map(int,ph['recipes'][port]['idle_children'][i]['orthogonal_axes']));assert len(pending)==rank[i] + occ=[B.index(v)for v in pending[off:off+w]];sp=OH.spectators(canon['ports'][port],pending,off,w)if w<9 else[] + order=occ+sp+[j for j in range(M)if j not in occ and j not in sp];assert len(order)==len(set(order))==M + sigma=[B[j]for j in order];sigmahash=hashlib.sha256(json.dumps(sigma,separators=(',',':')).encode()).hexdigest();sigmas[sigmahash]=sigma + route=[4,i,off,w,sp]if w<9 else[3,i,off];bycall[s,rep][h]=[f,route];entering+=w<9 + cells=set(range(off,off+w));assert not used[i,orp,port]&cells;used[i,orp,port]|=cells + digest.update(json.dumps([s,rep,h,f,sigmahash],separators=(',',':')).encode()+b'\n') +for c in t['calls']: + k=(c['stage'],c['replica']);assert set(bycall[k])==set(range(R)) + c['owners']=c['owners'][:(2*V)]+[bycall[k][h]for h in range(R)];assert len({f for f,r in c['owners']})==2*V+R and all(f2*max(paid)**2 + +assert all(c['local_program_sha256']==registry[c['provider_id']]['local_program_checks'][c['orientation']]['sha256']for c in t['calls']) +t['provider_dispatch']='For each indivisible local_cover_sweep, execute local_providers[call.provider_id].local_programs[call.orientation] with that provider residual adapters and Clifford recipes. The sweep provider_id must equal its call provider_id.' +raw=json.dumps(t,sort_keys=True,separators=(',',':')).encode();(OUT/'GLOBAL-TEMPLATE.json.gz').write_bytes(gzip.compress(raw,mtime=0)) +res=dict(status='EMITTED_MIXED_PROVIDER_ASYNCHRONOUS_WHOLE_OWNER_COMPLEX_TEMPLATE', + template_sha256=hashlib.sha256(raw).hexdigest(), + parent_template_sha256=hashlib.sha256(gzip.decompress((BASE/'split-centres/GLOBAL-TEMPLATE.json.gz').read_bytes())).hexdigest(), + live=DATA,physical=physical,global_profile=dict(sorted(paid.items())), + rank_mass=sum(r*n for r,n in paid.items()),deficit=DEFICIT,maxchild=max(paid), + hosted_residuals=len(roles),banks_per_stage=[0]*9,entering_helper_roles=entering, + unique_actual_73column_sigmas=len(sigmas),sigma_stream_sha256=digest.hexdigest(), + cross_replica_helper_roles=sum(z['replica']!=z['owner_replica']for z in roles), + asynchronous_order_sha256=hashlib.sha256(json.dumps(call_order,separators=(',',':')).encode()).hexdigest(), + source_artifacts=source_artifacts,provider_counts=dict(Counter(c['provider_id']for c in t['calls'])), + scope='Two actual verified plain/width-seven providers dispatched per complete invocation; independent controller/spectator/normalization and complete finite invoice admission required.') +(OUT/'HOSTED.json').write_text(json.dumps(res,indent=2)+'\n');(OUT/'ACTUAL-SIGMAS.json.gz').write_bytes(gzip.compress(json.dumps(sigmas,separators=(',',':')).encode(),mtime=0));print(json.dumps(res,indent=2)) diff --git a/research/capped-fusion-t74-k554/code/fine_cache.py b/research/capped-fusion-t74-k554/code/fine_cache.py new file mode 100644 index 0000000000..b121840b8e --- /dev/null +++ b/research/capped-fusion-t74-k554/code/fine_cache.py @@ -0,0 +1,135 @@ +"""Hash-keyed memo + parallel prefetch for the finer-constant rational moment engines (package code). + +The finer engines are deterministic pure functions of (engine source, H, m, W, z, bad). Several package stages +(assembly, admission controls, bit controls, geometry controls) each run the same assembler on the same valid inputs; this module +lets them share one computation: each result is stored in the directory named by FINE_ENGINE_CACHE (set by verify.py to a +directory inside the work directory), keyed by sha256 over (engine file sha256, all arguments). Without that variable nothing is cached +and nothing changes. `prefetch` computes the independent enclosures concurrently in worker processes (this file run as a script). +""" +import hashlib, json, os, subprocess, sys, time +from fractions import Fraction as F +from pathlib import Path + +HERE = Path(__file__).resolve().parent +ENGINE_FILES = {'fine_mercator': HERE / 'fine_mercator.py', 'fine_moment': HERE / 'fine_moment.py'} + + +def _sha(p): + return hashlib.sha256(Path(p).read_bytes()).hexdigest() + + +def _key(name, H, m, W, z, bad, entries=None): + blob = json.dumps([name, _sha(ENGINE_FILES[name]), sorted(H.items()) if H is not None else None, m, W, str(z), bool(bad), + entries], sort_keys=True) + return hashlib.sha256(blob.encode()).hexdigest() + + +def _compute(name, H, m, W, z, bad, entries): + if name == 'fine_mercator': + import fine_mercator as E + return E.moment(H, m, W, z, bad) + import fine_moment as E + return E.moment(m, W, entries if entries is not None else list(H.items()), z) + + +def _dump(res): + return [[str(x.numerator), str(x.denominator)] for x in res] + + +def _load(raw): + return tuple(F(int(a), int(b)) for a, b in raw) + + +def _log(d, what, name, key, t0): + try: + with open(Path(d) / 'LOG.txt', 'a') as f: + f.write('%s %s %s %.1fs pid=%d\n' % (what, name, key[:12], time.monotonic() - t0, os.getpid())) + except OSError: + pass + + +def memo(name, key_parts, fn): + """Pickle memo of a deterministic pure computation (used for the exact outer witness): key = sha256 of key_parts.""" + d = os.environ.get('FINE_ENGINE_CACHE') + if not d: + return fn() + import pickle + t0 = time.monotonic() + k = hashlib.sha256(repr((name, key_parts)).encode()).hexdigest() + p = Path(d) / (name + '-' + k + '.pkl') + if p.is_file(): + try: + blob = p.read_bytes() + rec = pickle.loads(blob) + if rec['key'] == k: + _log(d, 'HIT', name, k, t0) + return rec['value'] + except Exception: + pass + val = fn() + Path(d).mkdir(parents=True, exist_ok=True) + tmp = p.with_suffix('.tmp%d' % os.getpid()) + tmp.write_bytes(pickle.dumps(dict(key=k, value=val), pickle.HIGHEST_PROTOCOL)) + tmp.replace(p) + _log(d, 'MISS', name, k, t0) + return val + + +def moment(name, H, m, W, z, bad=False, entries=None): + """fine_mercator.moment(H,m,W,z,bad) or fine_moment.moment(m,W,entries or H.items(),z), memoised on disk when enabled.""" + d = os.environ.get('FINE_ENGINE_CACHE') + if not d: + return _compute(name, H, m, W, z, bad, entries) + k = _key(name, H, m, W, z, bad, entries) + p = Path(d) / (k + '.json') + t0 = time.monotonic() + if p.is_file(): + try: + rec = json.loads(p.read_text()) + if rec['key'] == k and rec['check'] == hashlib.sha256((k + json.dumps(rec['result'])).encode()).hexdigest(): + _log(d, 'HIT', name, k, t0) + return _load(rec['result']) + except (ValueError, KeyError, OSError): + pass + res = _compute(name, H, m, W, z, bad, entries) + Path(d).mkdir(parents=True, exist_ok=True) + raw = _dump(res) + tmp = p.with_suffix('.tmp%d' % os.getpid()) + tmp.write_text(json.dumps(dict(key=k, result=raw, check=hashlib.sha256((k + json.dumps(raw)).encode()).hexdigest()))) + tmp.replace(p) + _log(d, 'MISS', name, k, t0) + return res + + +def prefetch(tasks, workers=None): + """tasks: list of dicts(name,H,m,W,z,bad,entries). Computes the missing ones concurrently into the cache.""" + d = os.environ.get('FINE_ENGINE_CACHE') + if not d: + return + Path(d).mkdir(parents=True, exist_ok=True) + todo = [t for t in tasks if not (Path(d) / (_key(t['name'], t['H'], t['m'], t['W'], t['z'], t['bad'], t.get('entries')) + '.json')).is_file()] + if not todo: + return + workers = max(1, min(int(workers or os.environ.get('FINE_ENGINE_WORKERS') or 8), len(todo), os.cpu_count() or 1)) + procs = [] + for w in range(workers): + chunk = todo[w::workers] + spec = Path(d) / ('.tasks%d-%d.json' % (os.getpid(), w)) + spec.write_text(json.dumps([dict(name=t['name'], H=sorted(t['H'].items()) if t['H'] is not None else None, m=t['m'], W=t['W'], + z=str(t['z']), bad=bool(t['bad']), entries=t.get('entries')) for t in chunk])) + procs.append((subprocess.Popen([sys.executable, '-B', str(Path(__file__).resolve()), str(spec)], stdout=subprocess.DEVNULL, + stderr=subprocess.PIPE, creationflags=getattr(subprocess, 'CREATE_NO_WINDOW', 0)), spec)) + for pr, spec in procs: + err = pr.communicate()[1] + spec.unlink() + if pr.returncode: + raise RuntimeError('fine-engine prefetch worker failed: ' + err.decode('utf-8', 'replace')[-800:]) + + +if __name__ == '__main__': + sys.set_int_max_str_digits(0) + sys.path.insert(0, str(HERE)) + for t in json.loads(Path(sys.argv[1]).read_text()): + H = {int(r): int(n) for r, n in t['H']} if t['H'] is not None else None + entries = [tuple(e) for e in t['entries']] if t.get('entries') is not None else None + moment(t['name'], H, t['m'], t['W'], F(t['z']), t['bad'], entries) diff --git a/research/capped-fusion-t74-k554/code/fine_mercator.py b/research/capped-fusion-t74-k554/code/fine_mercator.py new file mode 100644 index 0000000000..b305dd1482 --- /dev/null +++ b/research/capped-fusion-t74-k554/code/fine_mercator.py @@ -0,0 +1,72 @@ +"""Finer-constant copy of the retained Mercator moment engine (engines/moment.py): same algorithm and enclosure logic, evaluated in directed-rounding +integer fixed point on the 2^-99876 grid instead of exact rationals (same enclosure semantics, far faster). +99876 (even) Mercator terms (tail bounded by the next term), 15042 exponential terms. + +Soundness of the integer evaluation: every quantity is non-negative and every operation is monotone, so flooring every intermediate gives a lower +bound and ceiling every intermediate gives an upper bound; the alternating Mercator sum tracks separate lower/upper term bounds and subtracts +upper terms from the lower sum (and lower terms from the upper sum). The enclosure is then outward-rounded to the 2^-99876 grid.""" +from fractions import Fraction as F +try: + from gmpy2 import mpz # optional accelerator: identical integer results, much faster +except ImportError: + mpz = int +from functools import lru_cache +from math import factorial +DYAD = 1 << 99876 +LOGN = 99877 # the loop sums n = 1..LOGN-1 = 99876 terms: an EVEN alternating partial sum lies BELOW log(1+z), as the retained engine (n = 1..224) does +EXPN = 15042 +def floor(x): return F(x.numerator*DYAD//x.denominator, DYAD) +def ceil(x): return -floor(-x) +@lru_cache(None) +def mercator(y): + """Enclosure [s, s + next term] of log(y) for 1 <= y <= 3/2 by the alternating Mercator series in z = y-1.""" + z=y-1 + assert 0 <= z <= F(1,2) + assert (LOGN - 1) % 2 == 0, 'an even number of terms is required: an odd partial sum lies above the log' + p,q=mpz(z.numerator),mpz(z.denominator) + tl=tu=mpz(DYAD); sl=su=0 + for n in range(1, LOGN): + tl=tl*p//q; tu=-((-tu*p)//q) # z^n bounds + lo=tl//n; hi=-((-tu)//n) + if n & 1: sl+=lo; su+=hi + else: sl-=hi; su-=lo + tu=-((-tu*p)//q) # z^LOGN upper bound + su+=-((-tu)//LOGN) + return F(int(sl),DYAD), F(int(su),DYAD) + +@lru_cache(None) +def logarithm(x): + assert x >= 1 + k = 0 + while x >= 2: x /= 2; k += 1 + j = int(x >= F(3, 2)) + if j: x /= F(3, 2) + a,b=mercator(x); c,d=mercator(F(3,2)); e,f=mercator(F(4,3)) + return floor(a+(k+j)*c+k*e), ceil(b+(k+j)*d+k*f) + +def exponential(l,u): + """Outward enclosure of exp on [l,u] (0 <= l <= u < 1/10) on the 2^-99876 grid: lower = partial sum through x^(EXPN-1)/(EXPN-1)! + (all terms positive), upper = partial sum at u plus 2*u^EXPN/EXPN! (the tail is at most u^EXPN/EXPN! / (1 - u/(EXPN+1)) <= 2 u^EXPN/EXPN!).""" + assert 0 <= l <= u < F(1,10) + xl=mpz(l.numerator)*DYAD//l.denominator; xu=-((-mpz(u.numerator)*DYAD)//u.denominator) + # lower: Taylor sum through x^(EXPN-1)/(EXPN-1)! with every term floored; upper: same with ceilings plus the tail 2*x^EXPN/EXPN! + # (nested floors/ceilings: floor(floor(v/2^k)/j) = floor(v/(j 2^k)), so the shift form is the same rounding) + tl=sl=mpz(DYAD); th=sh=mpz(DYAD) + for j in range(1, EXPN): + tl=((xl*tl)>>99876)//j; sl+=tl + c=-((-xu*th)>>99876); th=-((-c)//j); sh+=th + c=-((-xu*th)>>99876); tn=-((-c)//EXPN) + sh+=2*tn+2 + return F(int(sl),DYAD), F(int(sh),DYAD) + +def moment(H,m,W,a,bad=False): + lo=hi=F(0) + for r,n in H.items(): + assert 0 < r < m and n > 0 + l,u=logarithm(F(m,r)); e,f=exponential(a*l,a*u) + p=F(r*n,m*W);lo+=p*e;hi+=p*f + if bad: + l,u=logarithm(F(m));e,f=exponential(a*l,a*u) + p=F(32*m*sum(H.values()),10**16*W) + lo+=p*e;hi+=p*f + return floor(lo),ceil(hi) diff --git a/research/capped-fusion-t74-k554/code/fine_moment.py b/research/capped-fusion-t74-k554/code/fine_moment.py new file mode 100644 index 0000000000..d78ee65eb5 --- /dev/null +++ b/research/capped-fusion-t74-k554/code/fine_moment.py @@ -0,0 +1,59 @@ +"""Higher-precision independent base-two moment enclosure (same algorithm as base_two_moment.py, finer constants), evaluated in directed-rounding +integer fixed point on the 2^-99933 grid (lower bounds: floor every non-negative intermediate; upper bounds: ceil every intermediate), which is +monotone and therefore sound; same enclosure semantics as the exact-rational original, far faster.""" +from fractions import Fraction as Q +from functools import lru_cache +try: + from gmpy2 import mpz # optional accelerator: identical integer results, much faster +except ImportError: + mpz = int +GRID = 1 << 99933 +LOG_TERMS = 31522 +EXP_TERMS = 15042 +def require(c, msg): + if not c: raise ValueError(msg) +def _cd(a, b): return -((-a)//b) +SH = 99933 +@lru_cache(None) +def log_unit(x): + require(1 <= x <= 2, "logarithm range") + z = (x-1)/(x+1) + p, q = mpz(z.numerator), mpz(z.denominator) + p2, q2 = p*p, q*q + pl = GRID*p//q; ph = _cd(GRID*p, q) # z^1 bounds + sl = sh = mpz(0) + for j in range(LOG_TERMS): + sl += pl//(2*j+1); sh += _cd(ph, 2*j+1) + pl = pl*p2//q2; ph = _cd(ph*p2, q2) # z^(2j+3) + # tail 2 z^(2N+1) / ((2N+1)(1-z^2)), rounded up; ph = z^(2N+1) upper bound + tail = _cd(2*ph*q2, (2*LOG_TERMS+1)*(q2-p2)) + return Q(int(2*sl), GRID), Q(int(2*sh+tail), GRID) +def log_bounds(x): + require(x >= 1, "logarithm range") + k = 0 + while x > 2: + x /= 2; k += 1 + lo, hi = log_unit(x) + l2, u2 = log_unit(Q(2)) + lo, hi = lo+k*l2, hi+k*u2 + return Q((lo*GRID).__floor__(), GRID), Q((hi*GRID).__ceil__(), GRID) +def exp_bounds(x): + """Outward enclosure of exp(x), 0 <= x < 1, on the 1/GRID grid: lower = partial sum through x^(EXP_TERMS-1)/(EXP_TERMS-1)! (positive terms), + upper = partial sum + 2*x^EXP_TERMS/EXP_TERMS! (tail <= that for x < 1).""" + require(0 <= x < 1, "exponential range") + xl = mpz(x.numerator)*GRID//x.denominator; xu = _cd(mpz(x.numerator)*GRID, x.denominator) + tl = th = mpz(GRID); sl = sh = mpz(GRID) + for j in range(1, EXP_TERMS): + tl = ((tl*xl) >> SH)//j; th = _cd(-((-th*xu) >> SH), j) + sl += tl; sh += th + tn = _cd(-((-th*xu) >> SH), EXP_TERMS) + return Q(int(sl), GRID), Q(int(sh+2*tn+2), GRID) +def moment(m, W, entries, saving): + lo = hi = Q(0) + for t, count in entries: + t, count = int(t), int(count) + require(0 < t < m and count > 0, "improper child") + l, u = log_bounds(Q(m, t)) + lo += Q(t*count, m*W)*exp_bounds(saving*l)[0] + hi += Q(t*count, m*W)*exp_bounds(saving*u)[1] + return Q((lo*GRID).__floor__(), GRID), Q((hi*GRID).__ceil__(), GRID) diff --git a/research/capped-fusion-t74-k554/code/freeze_spec.py b/research/capped-fusion-t74-k554/code/freeze_spec.py new file mode 100644 index 0000000000..e4e72b5a07 --- /dev/null +++ b/research/capped-fusion-t74-k554/code/freeze_spec.py @@ -0,0 +1,29 @@ +"""Freeze independently recomputed discovery values before strict replay.""" +import argparse +import json +from pathlib import Path + +ap = argparse.ArgumentParser(description=__doc__) +ap.add_argument('--spec', type=Path, required=True) +ap.add_argument('--discovery', type=Path, required=True) +a = ap.parse_args() +spec = json.loads(a.spec.read_text()) +for line in (a.discovery/'WITNESS-RECORD.jsonl').read_text().splitlines(): + key, value = json.loads(line) + parts = key.split('.') + if len(parts)>3 and parts[0]=='providers' and parts[2]=='artifacts': + parts = parts[:3] + ['.'.join(parts[3:])] + target = spec + for part in parts[:-1]: + target = target.setdefault(part, {}) + if parts[-1] in target: + assert target[parts[-1]]==value, 'Conflicting independent recomputations: '+key + target[parts[-1]] = value +assembly = json.loads((a.discovery/'ASSEMBLY.json').read_text()) +for key in ('complex_lower','conservative_complex_lower','kappa','kappa_decimal','conservative_kappa_decimal'): + spec['expected'][key] = assembly[key] +spec['expected']['assembly_controls_rejected'] = 69 +spec['expected']['provider_counts'] = {'gauge44':333} +spec['expected']['mutations_rejected'] = 15 +a.spec.write_text(json.dumps(spec, indent=2)+'\n') +print('Frozen exact witness for strict replay:', assembly['kappa_decimal']) diff --git a/research/capped-fusion-t74-k554/code/generated_identity.py b/research/capped-fusion-t74-k554/code/generated_identity.py new file mode 100644 index 0000000000..74a9b60479 --- /dev/null +++ b/research/capped-fusion-t74-k554/code/generated_identity.py @@ -0,0 +1,62 @@ +"""Proof-relevant identities for generated artifacts, independent of gzip streams. + +Immutable source archives retain their exact byte hashes. For freshly emitted +artifacts, gzip identity is the exact decompressed payload and JSON identity +retains every field. Only CLIFFORD-REVIEW's root timing field is excluded. +Literal receipt references are checked against actual files before replacing +the three gzip references (and the phase recipe reference) with content hashes. +Prepared with OpenAI Codex assistance; Apache-2.0. +""" +from pathlib import Path +import copy +import gzip +import hashlib +import json +import math + +if not __debug__: + raise RuntimeError('Assertions must remain enabled') + +FILES=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json', + 'INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-RECIPES.json', + 'CLIFFORD-REVIEW.json','RESIDUAL-ADAPTERS.json') + +def sha(path): + return hashlib.sha256(Path(path).read_bytes()).hexdigest() + +def json_identity(value): + return hashlib.sha256(json.dumps(value,sort_keys=True,separators=(',',':'),allow_nan=False).encode('utf-8')).hexdigest() + +def payload_identity(path): + return hashlib.sha256(gzip.decompress(Path(path).read_bytes())).hexdigest() + +def phase_value(directory,value=None): + directory=Path(directory) + value=copy.deepcopy(json.loads((directory/'CLIFFORD-REVIEW.json').read_bytes())if value is None else value) + assert value['canonical_word_sha256']==sha(directory/'CANONICAL-WORD.json.gz'),'stale phase canonical word reference' + assert value['recipe_sha256']==sha(directory/'CLIFFORD-RECIPES.json'),'stale phase recipe reference' + seconds=value.pop('seconds') + assert type(seconds)in(int,float) and math.isfinite(seconds) and seconds>=0,'invalid phase timing metadata' + value['canonical_word_sha256']=payload_identity(directory/'CANONICAL-WORD.json.gz') + value['recipe_sha256']=json_identity(json.loads((directory/'CLIFFORD-RECIPES.json').read_bytes())) + return value + +def native_value(directory,value=None): + directory=Path(directory) + value=copy.deepcopy(json.loads((directory/'INDEPENDENT-LOCAL-REPLAY.json').read_bytes())if value is None else value) + for field,name in [('canonical_word_sha256','CANONICAL-WORD.json.gz'),('local_programs_sha256','LOCAL-PROGRAMS.json.gz')]: + assert value[field]==sha(directory/name),'stale native artifact reference: '+field + value[field]=payload_identity(directory/name) + return value + +def artifact_identities(directory): + directory=Path(directory) + result={} + for name in FILES: + path=directory/name + if name.endswith('.gz'): + result[name]=payload_identity(path) + else: + value=phase_value(directory)if name=='CLIFFORD-REVIEW.json'else native_value(directory)if name=='INDEPENDENT-LOCAL-REPLAY.json'else json.loads(path.read_bytes()) + result[name]=json_identity(value) + return result diff --git a/research/capped-fusion-t74-k554/code/invoice_allcold.py b/research/capped-fusion-t74-k554/code/invoice_allcold.py new file mode 100644 index 0000000000..fadb158181 --- /dev/null +++ b/research/capped-fusion-t74-k554/code/invoice_allcold.py @@ -0,0 +1,331 @@ +"""Fresh call-specific mixed-provider finite invoice. + +Prepared with OpenAI Codex assistance, Apache-2.0. The scalar/Horner recount +and finite inequalities are adapted from the retained PR558 -> PR552 -> +PR531 invoice_final.py, whose notices and sources are preserved in the package. +Every call selects a hash-bound provider. Shared compiler reserves use maxima; +primitive work, coefficient work, local children and wrappers are also summed +from actual selected provider/orientation records. +""" +import argparse, gzip, hashlib, json +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +from generated_identity import artifact_identities +from collections import Counter +from fractions import Fraction as Q +from pathlib import Path +assert __debug__, 'Assertions required' + +def read(path): + data=path.read_bytes() + return json.loads(gzip.decompress(data) if path.suffix=='.gz' else data) +def filehash(path): return hashlib.sha256(path.read_bytes()).hexdigest() +def contenthash(path): + data=path.read_bytes() + return hashlib.sha256(gzip.decompress(data) if path.suffix=='.gz' else data).hexdigest() +def programhash(events): + return hashlib.sha256(json.dumps(events,separators=(',',':')).encode()).hexdigest() + +def recount_provider(local_dir, registry): + cp=local_dir/'CANONICAL-WORD.json.gz'; pp=local_dir/'LOCAL-PROGRAMS.json.gz' + rp=local_dir/'INDEPENDENT-LOCAL-REPLAY.json' + w,programs,replay=read(cp),read(pp),read(rp) + checks=read(local_dir/'LOCAL-CHECKS.json') + assert set(programs)=={'forward','backward'} + assert replay['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert replay['canonical_word_sha256']==filehash(cp)==registry['canonical_word_sha256'] + assert replay['local_programs_sha256']==filehash(pp)==registry['local_programs_sha256'] + assert programs==registry['local_programs'] + assert checks==registry['local_program_checks'] + assert filehash(local_dir/'CLIFFORD-RECIPES.json')==registry['exact_local_clifford_recipe_sha256'] + assert filehash(local_dir/'RESIDUAL-ADAPTERS.json')==registry['residual_adapter_sha256'] + v,helpers,h,m=w['v'],w['R'],w['h'],73 + assert (v,h)==(112,9) and type(helpers) is int and helpers>0 + assert registry['v']==v and registry['R']==helpers and registry['h']==h + assert registry['ports']==w['ports'] and registry['centers']==w['centers'] + assert replay['v']==v and replay['helpers']==helpers + n=2*v+helpers + widths = [len(w['frames'][w['final'][r]])-len(w['frames'][w['start'][r]]) for r in range(2*v, 2*v+helpers)] # HPE: |final|-|start| + terminal_codim = sum(h-len(w['frames'][w['final'][r]]) for r in range(2*v, 2*v+helpers)) # HPE: 0 for FULL-ended helpers + ends = {r: f for r, f in enumerate(w['final']) if r >= 2*v and f != 1} + assert len(widths) == helpers + entrances = {r: f for r, f in enumerate(w['start']) if r >= 2*v and f != 0} + entering = len(entrances) + wrapped = {**entrances, **{r: 0 for r in ends if r not in entrances}} # COLD-HPE: cold hyperplane-ended helpers carry wrappers too + cold_ends = len(wrapped) - len(entrances) + assert entering == replay['entering_helpers'] + local = {} + for orientation, events in programs.items(): + # Endpoint equality and native frames were already independently + # replayed on all n columns in the hash-bound receipt above. + env = {('L', r): Q(1) for r in range(n)} + peak = Q(1) + real = macros = workops = 0 + paid = Counter() + wrappers = {'pre': set(), 'post': set()} + for event in events: + tag = event[0] + if tag == 'climb': + paid[event[5]] += 1 + elif tag == 'center': + paid[event[4]] += 1 + elif tag == 'residual_adapter': + _, kind, register, frame, *end = event + assert kind in wrappers and wrapped.get(register) == frame + assert end == ([ends[register]] if register in ends else []) # HPE: R_{E,U}^-1 and L_{E,U}^-1 name U + assert register not in wrappers[kind] + wrappers[kind].add(register) + elif tag == 'scalar': + macros += 1 + scalar = event[1] + op, target = scalar[0], tuple(scalar[1]) + if op == 'clear': + env[target] = Q(0) + count = 1 + elif op == 'copy': + env[target] = env[tuple(scalar[2])] + count = 1 + elif op == 'scale': + q = Q(scalar[2], scalar[3]) + numerator, denominator = abs(q.numerator), q.denominator + assert numerator and numerator & (numerator-1) == 0 + assert denominator & (denominator-1) == 0 + env[target] *= abs(q) + count = abs(numerator.bit_length()-denominator.bit_length()) + int(q < 0) + elif op == 'add': + source = tuple(scalar[2]) + q = Q(scalar[3], scalar[4]) + numerator, denominator = abs(q.numerator), q.denominator + assert source != target and numerator > 0 + assert denominator & (denominator-1) == 0 + acc, count = 0, 1 # clear coefficient work + for i, bit in enumerate(bin(numerator)[2:]): + if i: + acc *= 2 + count += 1 + peak = max(peak, acc*env[source]) + if bit == '1': + acc += 1 + count += 1 + peak = max(peak, acc*env[source]) + value = Q(acc) + for _ in range(denominator.bit_length()-1): + value /= 2 + count += 1 + peak = max(peak, value*env[source]) + assert value == abs(q) + count += 2 # signed accumulation and work clear + env[target] = env.get(target, Q(0)) + abs(q)*env[source] + workops += count + else: + raise AssertionError(op) + real += 2*count + peak = max(peak, env[target]) + else: + assert tag in ('adapter', 'phase') + assert wrappers['pre'] == wrappers['post'] == set(wrapped) + assert all(value == 0 for register, value in env.items() if register[0] == 'C') + prior = replay['local'][orientation] + assert prior['all_exact_columns'] == n and prior['private_work_erased'] + assert peak == Q(prior['prefix_l1_upper']) and peak < 2**prior['charged_payload_bits'] + bits = peak.numerator.bit_length()-peak.denominator.bit_length()+1 + assert bits == prior['prefix_bits_upper'] + assert real == checks[orientation]['real_component_primitive_bound'] + assert macros == checks[orientation]['scalar_macros'] + assert dict(paid) == {int(r): count for r, count in checks[orientation]['paid_profile'].items()} + assert dict(paid) == {int(r): count for r, count in replay['paid_profiles'][orientation].items()} + local[orientation] = dict( + events=len(events), macros=macros, real_component_primitives=real, + prefix_l1=str(peak), prefix_bits=bits, + coefficient_work_primitive_count=workops, all_exact_columns=n, + dirty_helper_columns=helpers, all_dirty_helper_columns_restored=True, + private_centres_and_coefficient_work_cleared=True, + pre_wrappers=len(wrappers['pre']), post_wrappers=len(wrappers['post']), + endpoint_evidence='Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json') + + centres = len(w['centers']) + children = sum(checks['forward']['paid_profile'].values()) + assert checks['forward']['paid_profile'] == checks['backward']['paid_profile'] + macro_bound = max(row['macros'] for row in local.values()) + compiler = 64*(m+1)**3 + adapters = 16*(macro_bound+children+n+centres)+64*m + primitive_bound = max(row['real_component_primitives'] for row in local.values())+adapters*compiler + + assert widths==registry['widths'] + artifacts={f.name:filehash(f) for f in local_dir.iterdir() if f.is_file()} + phase_review=read(local_dir/'CLIFFORD-REVIEW.json') + return dict(local=local,helpers=helpers,centres=centres,v=v,h=h,n=n, + entering_helpers=entering,entrance_rank=sum(len(w['frames'][f]) for f in w['start'][2*v:]), + terminal_codimension=terminal_codim, hyperplane_ended_helpers=len(ends), # HPE: always reported (0 for FULL-ended words) + **({'cold_hyperplane_ended_helpers': cold_ends} if cold_ends else {}), # COLD-HPE: absent without cold ends + width_inventory=dict(sorted(Counter(widths).items())),widths=widths, + local_adapters=adapters,local_primitive_bound=primitive_bound, + compiler=compiler,children=children,artifacts=artifacts, + paid_profile=checks['forward']['paid_profile'], + program_hashes={o:programhash(events) for o,events in programs.items()},semantic_artifact_sha256=artifact_identities(local_dir)) + + +def run(base, hosted, audit, out, retained_invoice=None): + local_dir=base/'split-centres' + parent=read(local_dir/'GLOBAL-TEMPLATE.json.gz') + template_path=hosted/'GLOBAL-TEMPLATE.json.gz' + template=read(template_path); summary=read(hosted/'HOSTED.json') + owners=read(audit/'OWNERS-AND-PROFILE.json'); control=read(audit/'ASYNC-AUDIT.json') + template_hash=contenthash(template_path) + assert template_hash==control['complex_template_sha256']==owners['template_sha256']==summary['template_sha256'] + assert owners['status']=='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE' + assert template['recipe']==parent['recipe'] + assert 'local_programs' not in template + assert set(template['local_providers'])==set(PIDS) + providers={pid:recount_provider(base/'providers'/pid,registry) + for pid,registry in template['local_providers'].items()} + for pid,p in providers.items(): + assert owners['provider_phase_semantic_sha256'][pid]==control['provider_phase_semantic_sha256'][pid]==p['semantic_artifact_sha256']['CLIFFORD-REVIEW.json'] + # The fresh controller admission must cite precisely these provider bytes. + for name in ('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json', + 'INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-RECIPES.json', + 'CLIFFORD-REVIEW.json','RESIDUAL-ADAPTERS.json'): + path='providers/'+pid+'/'+name + assert summary['source_artifacts'][path]==p['artifacts'][name] + assert owners['source_artifacts'][path]==p['artifacts'][name] + # R is read from the provider words (all must agree); the parent dedicated-bank + # envelope keeps its own helper count R0 from the parent split-centres word. + assert len({p['helpers'] for p in providers.values()})==1,'providers disagree on helper count R' + v,h,m,centres=112,9,73,8 + helpers=next(iter(providers.values()))['helpers']; n=2*v+helpers + assert all((p['v'],p['h'],p['centres'],p['n'])==(v,h,centres,n) for p in providers.values()) + parent_helpers=read(local_dir/'CANONICAL-WORD.json.gz')['R'] + stages,replicas,blocks_per_stream=GEO['stages'],REPLICAS,GEO['pairs'] + call_count=len(template['calls']) + assert call_count==stages*replicas==control['complete_invocations'] + assert control['one_owner_per_complete_invocation'] + assert len({(c['stage'],c['replica']) for c in template['calls']})==call_count + parent_calls={(c['stage'],c['replica']):c for c in parent['calls']} + sweeps=[e for e in template['execution_schedule'] if e['kind']=='local_cover_sweep'] + assert len(sweeps)==call_count + selected=[]; selected_paid=Counter(); provider_counts=Counter(); orientation_counts=Counter() + scalar=coefficient_work=macros=0; wrapper_factors=0 + factors_per_wrapper=2*(m-1) + for c in template['calls']: + pid,orientation=c['provider_id'],c['orientation']; p=providers[pid] + old=parent_calls[(c['stage'],c['replica'])] + assert orientation==old['orientation'] and c['owners'][:2*v]==old['owners'][:2*v] + assert c['local_program_sha256']==p['program_hashes'][orientation] + r=p['local'][orientation] + scalar+=r['real_component_primitives']; coefficient_work+=r['coefficient_work_primitive_count']; macros+=r['macros'] + wrapper_factors+=(r['pre_wrappers']+r['post_wrappers'])*factors_per_wrapper + provider_counts[pid]+=1; orientation_counts[(pid,orientation)]+=1 + selected_paid.update({int(k):v for k,v in p['paid_profile'].items()}) + selected.append(dict(stage=c['stage'],replica=c['replica'],provider_id=pid,orientation=orientation, + program_sha256=c['local_program_sha256'],events=r['events'],macros=r['macros'], + real_component_primitives=r['real_component_primitives'], + coefficient_work_primitive_count=r['coefficient_work_primitive_count'], + entering_helpers=p['entering_helpers'],entrance_rank=p['entrance_rank'], + pre_wrappers=r['pre_wrappers'],post_wrappers=r['post_wrappers'])) + assert provider_counts==COUNTS + # The sweep registry is executable: no hidden use of the historical supplier. + by_call={(c['stage'],c['replica']):c for c in template['calls']} + for e in sweeps: + c=by_call[(e['stage'],e['replica'])] + assert e['provider_id']==c['provider_id'] + assert set(p['compiler'] for p in providers.values())=={64*(m+1)**3} + compiler=64*(m+1)**3 + adapters=max(p['local_adapters'] for p in providers.values()) + primitive_bound=max(p['local_primitive_bound'] for p in providers.values()) + bridge_steps=sum(event['kind']=='bridge' for event in parent['recipe']) + bridge_sweeps=sum(event['kind']=='bridge' for event in template['execution_schedule']) + assert bridge_sweeps==replicas*bridge_steps + bridge_additions=2*v*bridge_sweeps + shifts=blocks_per_stream*v*replicas; moves=2*shifts + parent_live,parent_physical=parent['live'],parent['physical'] + assert (parent_live,parent_physical,sum(c['replicas'] for c in parent['idle_children']))==(PARENT_LIVE,PARENT_PHYSICAL,PARENT_IDLE) + assert parent_helpers==PARENT_HELPERS + data_stock=2*v*blocks_per_stream*replicas + assert (parent_live-data_stock)%stages==0 + parent_banks=(parent_live-data_stock)//stages + assert parent_banks>=0 and parent_physical==parent_live+parent_helpers+centres+2 + nonlocal_items=(4*v*replicas*stages+2*v*replicas*stages+2*call_count*helpers + +sum(child['replicas'] for child in parent['idle_children'])+stages*parent_banks + +bridge_additions+shifts+moves+parent_live+parent_physical+wrapper_factors) + outside=8*nonlocal_items+64*m + parent_pervertex=(scalar+bridge_additions+shifts+moves+parent_live + +(call_count*adapters+outside)*compiler+64*parent_physical) + live,physical=template['live'],template['physical'] + mass,profile=owners['rank_mass'],owners['paid_profile'] + assert m*live-mass==owners['deficit']==DEFICIT + assert mass==sum(int(r)*count for r,count in profile.items()) + assert physical==live+helpers+centres+2 + assert live==owners['live'] and physical==owners['physical'] + assert live<=parent_live and physical<=parent_physical + assert not template['bank_padding']['families'] + assert owners['explicit_idle_remainder_children']<=owners['source_idle_children_charged'] + # The old dedicated-bank geometry is only a conservative reserve envelope. + # Its singular program is never used as evidence for a mixed invocation. + rebased=parent_pervertex+65*(physical-parent_physical)+(live-parent_live) + used=max(rebased,parent_pervertex); retained=None; payload=PAYLOAD + if retained_invoice is not None: + previous=read(retained_invoice) + assert previous['compiler']==compiler and previous['charged_prefix_bits']==512 + previous_bound=previous['conservative_pervertex_used'] + used=max(used,previous_bound+parent_pervertex) + retained=dict(sha256=filehash(retained_invoice),previous_pervertex_allowance=previous_bound, + added_complete_new_pervertex=parent_pervertex,policy='Retain old allowance and add entire fresh mixed recount.') + half=m//2; group=2**(half*half) + for i in range(1,half+1): group*=2**(2*i)-1 + stock,streamed_mass=group*physical,group*mass + logical=group*used+64; router=compiler*(logical+1)*(stock+1)**2 + g_bound,e_bound,c0=2**30000,2**100000,2**210000 + total_mass=streamed_mass+e_bound + literal=2*g_bound*stock**2+8*streamed_mass+4*stock+4+32*m + row=2*stock.bit_length()+9909+252+2*payload + maxchild=max(map(int,profile)) + inequalities=dict(local_primitive_bound=primitive_bound<2**48, + logical=logical<2**6050,router=router2*maxchild*maxchild) + assert all(inequalities.values()) + localbits=max(r['prefix_bits'] for p in providers.values() for r in p['local'].values()) + input_l2_bits=(m+1)//2 + required_prefix=localbits+input_l2_bits+call_count+bridge_sweeps+4 + assert required_prefix= oracle_upper (so L <= ln <= U) and be tight (width below 2^-(bits-40) resp. 2^-(grid bits-40)). +Also asserts the Mercator term count is even (an odd alternating partial sum lies above the log). +""" +import sys +from fractions import Fraction as F +try: + from gmpy2 import mpz # optional accelerator, identical results +except ImportError: + mpz = int +from pathlib import Path +sys.path.insert(0, str(Path(__file__).resolve().parent)) +import fine_mercator as FM, fine_moment as BF +assert (FM.LOGN - 1) % 2 == 0, 'fine_mercator must sum an even number of terms' +# Exact 2*atanh enclosure in directed-rounding integer fixed point on a 2^-OB grid (OB = max engine bits + 128, strictly finer than both engines); +# N terms with 3^-2N below 2^-OB, tail bounded by the geometric series. Written separately from both engines. +OB = max(FM.DYAD.bit_length(), BF.GRID.bit_length()) - 1 + 128 +N = int(OB / 3.1699) + 20 +ONE = 1 << OB + + +def atanh2(z): + p, q = mpz(z.numerator), mpz(z.denominator) + p2, q2 = p*p, q*q + pl = ONE*p//q + ph = -((-ONE*p)//q) + sl = sh = mpz(0) + for j in range(N): + sl += pl//(2*j+1) + sh += -((-ph)//(2*j+1)) + pl = pl*p2//q2 + ph = -((-ph*p2)//q2) + tail = -((-2*ph*q2)//((2*N+1)*(q2-p2))) + return F(int(2*sl), ONE), F(int(2*sh + tail), ONE) + + +LN2 = atanh2(F(1, 3)) + + +def oracle(x): + assert x >= 1 + k = 0 + while x >= 2: + x /= 2 + k += 1 + lo, hi = atanh2((x-1)/(x+1)) + return lo + k*LN2[0], hi + k*LN2[1] + + +# inner Mercator enclosures (before any outward rounding): the constants log(3/2), log(4/3) and sample reductions +for y in (F(3, 2), F(4, 3), F(5, 4), F(1), F(7, 6)): + lo_o, hi_o = oracle(y) if y >= 1 else (None, None) + L, U = FM.mercator(y) + assert L <= lo_o and U >= hi_o, ('false inner Mercator enclosure', y) +tight = {'fine_mercator': F(1, 2**(FM.DYAD.bit_length() - 1 - 40)), 'fine_moment': F(1, 2**(BF.GRID.bit_length() - 1 - 40))} +inputs = [F(73, t) for t in range(1, 73)] + [F(73), F(43), F(189), F(352)] +checked = 0 +for x in inputs: + lo_o, hi_o = oracle(x) + for name, (L, U) in (('fine_mercator', FM.logarithm(x)), ('fine_moment', BF.log_bounds(x))): + assert L <= lo_o, ('false lower log bound', name, x) + assert U >= hi_o, ('false upper log bound', name, x) + assert U - L < tight[name], ('enclosure not tight', name, x) + checked += 1 +print('PASS_FINE_ENGINE_LOG_ORACLE inputs=%d enclosures=%d' % (len(inputs), checked)) diff --git a/research/capped-fusion-t74-k554/code/prepare_global.py b/research/capped-fusion-t74-k554/code/prepare_global.py new file mode 100644 index 0000000000..655c9470f6 --- /dev/null +++ b/research/capped-fusion-t74-k554/code/prepare_global.py @@ -0,0 +1,124 @@ +"""Bind a frozen explicit owner map to exact native local artifacts. + +This preparer nominates a witness. The separate serialized controller audit, +finite invoice, two exact moment engines and strict pinned replay admit it. +Apache-2.0; prepared with OpenAI assistance. See NOTICE.md. +""" +import argparse +from collections import Counter, defaultdict +import gzip +import hashlib +import json +from pathlib import Path +import shutil + +from generated_identity import artifact_identities, FILES + +assert __debug__, 'Assertions required' + + +def read(path): + raw = Path(path).read_bytes() + return json.loads(gzip.decompress(raw) if str(path).endswith('.gz') else raw) + + +def sha(path): + return hashlib.sha256(Path(path).read_bytes()).hexdigest() + + +def dump(path, value): + Path(path).write_text(json.dumps(value, indent=2) + '\n') + + +ap = argparse.ArgumentParser(description=__doc__) +ap.add_argument('--parent', type=Path, required=True) +ap.add_argument('--owners', type=Path, required=True) +ap.add_argument('--local', type=Path, required=True) +ap.add_argument('--data', type=Path, required=True) +args = ap.parse_args() +args.data.mkdir(parents=True, exist_ok=True) +parent_path = args.parent / 'data/PLAN.json' +assert sha(parent_path) == '258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda' +plan = read(parent_path) +word = read(args.local / 'CANONICAL-WORD.json.gz') +checks = read(args.local / 'LOCAL-CHECKS.json') +assert (word['v'], word['h'], word['R']) == (112, 9, 492) +widths = [len(word['frames'][word['final'][224+h]]) - + len(word['frames'][word['start'][224+h]]) for h in range(492)] +profile = {int(k): v for k, v in word['local_profile'].items()} +assert profile == {1: 2514, 2: 404, 3: 448, 4: 160, 5: 56, 8: 8} +assert Counter(widths) == {4: 52, 5: 48, 7: 34, 8: 114, 9: 244} +assert sum(widths) == 3794 +owners = read(args.owners) +assert len(owners) == 72 * 492 +order = [tuple(x) for x in plan['order']] +times = {x: i for i, x in enumerate(order)} +used, call_helpers, call_families = defaultdict(set), defaultdict(set), defaultdict(set) +for z in owners: + key = (z['stage'], z['replica']) + h, i, rep, port = z['helper'], z['child'], z['owner_replica'], z['port'] + assert key in times and 0 <= h < 492 and 0 <= rep < 8 and 0 <= port < 112 + assert z['time'] == times[key] and h not in call_helpers[key] + assert z['family'] not in call_families[key] + call_helpers[key].add(h) + call_families[key].add(z['family']) + cap, allowed = plan['windows'][f'{rep},{i}'] + assert z['time'] in allowed and z['width'] == widths[h] + assert z['copy'] == rep * 112 + port + assert z['family'] == rep * 896 + (2*plan['pairs'][str(i)] + plan['sides'][str(i)])*112 + port + assert 0 <= z['offset'] and z['offset'] + z['width'] <= cap + cells = set(range(z['offset'], z['offset'] + z['width'])) + group = (i, rep, port) + assert not used[group] & cells + used[group].update(cells) +assert set(call_helpers) == set(order) +assert all(hs == set(range(492)) for hs in call_helpers.values()) +idle = Counter() +for key, (cap, _) in plan['windows'].items(): + rep, i = map(int, key.split(',')) + for port in range(112): + cells = used[i, rep, port] + assert cells == set(range(len(cells))) + left = cap - len(cells) + if left: + idle[left] += 1 +global_profile = Counter({r: 72*n for r, n in profile.items()}) + idle +assert sum(r*n for r, n in global_profile.items()) == 520704 +assert 73*7168 - sum(r*n for r, n in global_profile.items()) == 2560 +pid = 'gauge44' +for c in plan['provider_calls']: + c['provider'] = pid + c['local_program_sha256'] = checks[c['orientation']]['sha256'] +for c in plan['per_call_widths']: + c['widths'] = widths +artifacts = {name: sha(args.local / name) for name in FILES} +identities = artifact_identities(args.local) +plan['provider_registry'] = {pid: dict( + directory='providers/' + pid, artifact_sha256=artifacts, + ports=word['ports'], centers=word['centers'], widths=widths, + actual_paid_profile=word['local_profile'], + orientation_program_sha256={k: v['sha256'] for k, v in checks.items()}, + artifact_semantic_sha256=identities)} +plan.update(status='FROZEN_EXPLICIT_GAUGE44_WHOLE_OWNER_NOMINATION', + mode='gauge44-all72', profile=dict(sorted(global_profile.items())), + solver_status='deterministic-capacity-matching', gap=None, + source_plan_sha256=sha(parent_path), + source_owners_sha256=sha(args.parent / 'data/OWNERS.json.gz'), + assignment_sha256=sha(args.owners)) +target_owners = args.data / 'OWNERS.json.gz' +if args.owners.resolve() != target_owners.resolve(): + shutil.copyfile(args.owners, target_owners) +dump(args.data / 'PLAN.json', plan) +spec = dict(schema='witness-spec/1', name='gauge44-all72', + data=dict(plan_sha256=sha(args.data / 'PLAN.json'), owners_sha256=sha(target_owners)), + dispatch=[[s, r, pid] for s in range(9) for r in range(8)], + call_order=plan['order'], width_spot_helpers=[264, 276, 288, 300], + providers={pid: {}}, expected=dict(gain_baseline_kappa='0.001636241501576388')) +dump(args.data / 'SPEC.json', spec) +dump(args.data / 'PREPARATION.json', dict( + status='PASS_EXPLICIT_MAP_AND_FRESH_PROVIDER_NOMINATION', + parent_plan_sha256=sha(parent_path), source_owners_sha256=sha(args.owners), + global_profile=dict(sorted(global_profile.items())), idle_profile=dict(sorted(idle.items())), + roles=len(owners), rank_mass=520704, deficit=2560, + remaining='Independent emitted-controller audit, fresh finite invoice, exact moments and outer assembly.')) +print('Prepared all72 gauge44 candidate:', dict(sorted(global_profile.items()))) diff --git a/research/capped-fusion-t74-k554/code/restore_parent.py b/research/capped-fusion-t74-k554/code/restore_parent.py new file mode 100644 index 0000000000..21135f898a --- /dev/null +++ b/research/capped-fusion-t74-k554/code/restore_parent.py @@ -0,0 +1,67 @@ +"""Materialize the omitted generated PR558 parent, then require its reviewed hash. + +The integrated review contains the native inputs and INTEGRATION.json but +omits GLOBAL-TEMPLATE.json.gz. This is only the deterministic template +binding from the inherited prepare_supplier_base.py; no old circuit or +phase calculation is rerun. The whole exact payload must match the review. +""" +import argparse +import copy +import gzip +import hashlib +import json +from pathlib import Path +import shutil + +assert __debug__, 'Assertions required' +ap=argparse.ArgumentParser(description=__doc__) +ap.add_argument('--source',type=Path,required=True) +ap.add_argument('--baseline',type=Path,required=True) +ap.add_argument('--out',type=Path,required=True) +a=ap.parse_args() +read=lambda p:json.loads(gzip.decompress(p.read_bytes())if p.suffix=='.gz'else p.read_bytes()) +sha=lambda p:hashlib.sha256(p.read_bytes()).hexdigest() +assert not a.out.exists() +base=a.out/'complex-global/base' +shutil.copytree(a.baseline/'complex-global/base',base) +d=base/'split-centres' +parent=a.source/'vendor/pr558/vendor/pr552/complex-global/vendor535/inputs/ROUND20-PARENT-TEMPLATE.json.gz' +old=read(parent);can=read(d/'CANONICAL-WORD.json.gz') +checks=read(d/'LOCAL-CHECKS.json');programs=read(d/'LOCAL-PROGRAMS.json.gz') +v,h,r=can['v'],can['h'],can['R'];c=len(can['centers']);m,t,l,k=73,8,9,4 +assert(v,h,r,c)==(112,9,504,8) +widths=[h-len(can['frames'][f])for f in can['start'][2*v:]] +data=2*k*t*v;live=data+l*r;physical=live+r+c+2 +word=copy.deepcopy(old) +word.update(version='round20-new-supplier-dedicated-bank-parent-v1',live=live,physical=physical,local_programs=programs) +word['private_namespace']={'centers':[live,live+c],'reserved_tableau':[live+c,live+c+r],'coefficient':[physical-2,physical]} +for call in word['calls']: + s,rep=call['stage'],call['replica'];owners=copy.deepcopy(call['owners'][:2*v]) + for helper,w in enumerate(widths): + route=[2,rep]if w==9 else[2,rep*w,w,list(range(t*w,t*w+9-w))] + owners.append([data+s*r+helper,route]) + call['owners']=owners;call['local_program_sha256']=checks[call['orientation']]['sha256'] +children=[] +for s in range(l): + for helper,w in enumerate(widths): + axes=list(range(t*w,m)) + children.append(dict(family=data+s*r+helper,rank=len(axes),axis_indices=axes,orthogonal_axes=[1< R helper map +# (verify.py checks the spec value against the constructor's HELPER-MAP.json) +SPOT=tuple(SPEC.get('width_spot_helpers',(270,282,294,306))) +# A pivot swap moves a kernel family's pivot role p -> x; the old pivot p becomes an ordinary cold helper and its width +# goes 8 -> 9 (construction/layers, PR641 PROOF-NOTE-PIVOT). Expected spot widths are derived from the package's pinned +# pivot-swap recipe (path and sha256 in the spec), not from free data: 9 at a swapped-out pivot, 8 otherwise. +_PKG=Path(os.environ['WITNESS_SPEC']).resolve().parents[1] +def _old_pivots(): + ps=SPEC.get('pivot_swap') + if not ps:return frozenset() + raw=(_PKG/ps['recipe']).read_bytes();import hashlib + assert hashlib.sha256(raw).hexdigest()==ps['sha256'],'pivot-swap recipe pin' + return frozenset(s['pivot']for s in json.loads(raw)['swaps']) +OLD_PIVOTS=_old_pivots() +def spot_widths(v=112): + """Expected residual widths at the spot helpers (helper indices) of the gauge44 provider.""" + return tuple(9 if 2*v+h in OLD_PIVOTS else 8 for h in SPOT) +PIDS=tuple(sorted(set(DISPATCH.values()))) +COUNTS=dict(Counter(DISPATCH.values())) +assert DISCOVER or set(PROVIDERS)==set(PIDS),'spec providers differ from dispatch providers' +def lookup(key): + """Dotted spec path; a segment may itself contain dots when it names a file (split at most once per known file suffix).""" + v=SPEC;parts=key.split('.') + while parts: + for n in range(len(parts),0,-1): + k='.'.join(parts[:n]) + if isinstance(v,dict) and k in v:v=v[k];parts=parts[n:];break + else:raise KeyError('spec has no key %s'%key) + return v +def pin(key,got): + """Strict mode: got must equal the spec value at dotted key; the failure names the key.""" + if DISCOVER: + if os.environ.get('WITNESS_RECORD'): # discovery bookkeeping only: append (key, value) for the spec writer + with open(os.environ['WITNESS_RECORD'],'a')as f:f.write(json.dumps([key,got],default=str)+chr(10)) + return got + want=lookup(key) + assert got==want,'SPEC MISMATCH %s: expected %s got %s'%(key,json.dumps(want)[:400],json.dumps(got,default=str)[:400]) + return got +def partner(pid): + """A different provider for substitution controls (next in sorted order).""" + assert len(PIDS)>1 + return PIDS[(PIDS.index(pid)+1)%len(PIDS)] + +# Replica-sensitive quantities are frozen by the independently checked parent lift. +GEO=SPEC['geometry'] +REPLICAS=GEO['replicas']; CALLS=GEO['stages']*REPLICAS +assert type(REPLICAS) is int and REPLICAS>0 +assert (GEO['stages'],GEO['pairs'],GEO['dimension'])==(9,4,73) +assert set(CALL_ORDER)=={(s,r) for s in range(GEO['stages']) for r in range(REPLICAS)} +DATA=2*112*GEO['pairs']*REPLICAS +DEFICIT=DATA-64*CALLS +PAYLOAD=GEO['charged_prefix_bits'] +assert PAYLOAD==1<<(192+(GEO['dimension']+1)//2+2*CALLS+4).bit_length() +PARENT_LIVE=GEO['parent_live'];PARENT_PHYSICAL=GEO['parent_physical'];PARENT_IDLE=GEO['parent_idle'];PARENT_HELPERS=GEO['parent_helpers'] +assert PARENT_PHYSICAL==PARENT_LIVE+PARENT_HELPERS+8+2 diff --git a/research/capped-fusion-t74-k554/construction/leaver/PIVOT-SWAP-k8.json b/research/capped-fusion-t74-k554/construction/leaver/PIVOT-SWAP-k8.json new file mode 100644 index 0000000000..7a8edeb1e4 --- /dev/null +++ b/research/capped-fusion-t74-k554/construction/leaver/PIVOT-SWAP-k8.json @@ -0,0 +1 @@ +{"input_content_sha256": "00aeefe0c778ff64125628d7c869ae1aa27db60911f0289a2d4283af5cff85d2", "output_content_sha256": "377ab10c2bf6173498c8af15f8654060331ec9ee232e58cc75956dc015b23685", "swaps": [{"pivot": 482, "new_pivot": 554, "entrance": [24], "gates": [{"part": "B", "index": 331, "before": ["add", 554, 482, -1, 1, [24]], "after": ["add", 482, 554, -1, 1, [24]]}, {"part": "B", "index": 332, "before": ["add", 616, 482, 2, 1, [24]], "after": ["add", 616, 554, -2, 1, [24]]}, {"part": "B", "index": 333, "before": ["add", 618, 482, -2, 1, [24]], "after": ["add", 618, 554, 2, 1, [24]]}, {"part": "B", "index": 334, "before": ["add", 664, 482, 1, 1, [24]], "after": ["add", 664, 554, -1, 1, [24]]}, {"part": "B", "index": 335, "before": ["add", 666, 482, -1, 1, [24]], "after": ["add", 666, 554, 1, 1, [24]]}]}, {"pivot": 483, "new_pivot": 555, "entrance": [24], "gates": [{"part": "B", "index": 468, "before": ["add", 123, 483, 1, 1, [24]], "after": ["add", 123, 555, -1, 1, [24]]}, {"part": "B", "index": 504, "before": ["add", 187, 483, -1, 1, [24]], "after": ["add", 187, 555, 1, 1, [24]]}, {"part": "B", "index": 734, "before": ["add", 555, 483, -1, 1, [24]], "after": ["add", 483, 555, -1, 1, [24]]}]}, {"pivot": 494, "new_pivot": 566, "entrance": [24], "gates": [{"part": "B", "index": 128, "before": ["add", 628, 494, 2, 1, [24]], "after": ["add", 628, 566, -2, 1, [24]]}, {"part": "B", "index": 130, "before": ["add", 628, 494, -2, 1, [24]], "after": ["add", 628, 566, 2, 1, [24]]}, {"part": "B", "index": 230, "before": ["add", 676, 494, -2, 1, [24]], "after": ["add", 676, 566, 2, 1, [24]]}, {"part": "B", "index": 232, "before": ["add", 676, 494, 2, 1, [24]], "after": ["add", 676, 566, -2, 1, [24]]}, {"part": "B", "index": 750, "before": ["add", 566, 494, -1, 1, [24]], "after": ["add", 494, 566, -1, 1, [24]]}]}, {"pivot": 495, "new_pivot": 567, "entrance": [24], "gates": [{"part": "B", "index": 49, "before": ["add", 211, 495, -1, 1, [24]], "after": ["add", 211, 567, 1, 1, [24]]}, {"part": "B", "index": 477, "before": ["add", 147, 495, 1, 1, [24]], "after": ["add", 147, 567, -1, 1, [24]]}, {"part": "B", "index": 752, "before": ["add", 567, 495, -1, 1, [24]], "after": ["add", 495, 567, -1, 1, [24]]}]}, {"pivot": 507, "new_pivot": 531, "entrance": [30], "gates": [{"part": "B", "index": 459, "before": ["add", 115, 507, -1, 1, [30]], "after": ["add", 115, 531, 1, 1, [30]]}, {"part": "B", "index": 495, "before": ["add", 179, 507, 1, 1, [30]], "after": ["add", 179, 531, -1, 1, [30]]}, {"part": "B", "index": 770, "before": ["add", 531, 507, -1, 1, [30]], "after": ["add", 507, 531, -1, 1, [30]]}]}, {"pivot": 519, "new_pivot": 543, "entrance": [30], "gates": [{"part": "B", "index": 486, "before": ["add", 155, 519, -1, 1, [30]], "after": ["add", 155, 543, 1, 1, [30]]}, {"part": "B", "index": 521, "before": ["add", 219, 519, 1, 1, [30]], "after": ["add", 219, 543, -1, 1, [30]]}, {"part": "B", "index": 788, "before": ["add", 543, 519, -1, 1, [30]], "after": ["add", 519, 543, -1, 1, [30]]}]}]} \ No newline at end of file diff --git a/research/capped-fusion-t74-k554/evidence/ADMISSION-CONTROLS.json b/research/capped-fusion-t74-k554/evidence/ADMISSION-CONTROLS.json new file mode 100644 index 0000000000..f4869aed2f --- /dev/null +++ b/research/capped-fusion-t74-k554/evidence/ADMISSION-CONTROLS.json @@ -0,0 +1,147 @@ +{ + "status": "PASS_EXACT_MIXED_048_ALLCOLD_NATIVE_ASSEMBLY_ADMISSION_NEGATIVE_CONTROLS", + "valid_receipt_kappa": "1676855229071321/1000000000000000000", + "input_sha256": { + "owner_audit": "8fc4e5d64dbccddfc6d5dade51636954c90d803fd34da515589cb738a7cbbd21", + "fresh_invoice": "ccc6bf27bb134678de96e66eba348382cdd0cd451d38a112166f139e38257198", + "package:inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c" + }, + "assembler_sha256": "c712b045155e08177210d8280632d42cf1cf7faef9ceb3626f4eb9d27e99f8f7", + "rejected_controls": [ + "empty_certification_maps", + "failed_invoice_status", + "nonboolean_precision_check", + "wrong_owner_role_count", + "understated_physical_stock", + "changed_profile_same_rank_mass", + "insufficient_finite_C0", + "missing_finite_check", + "wrong_reflected_orientation_selfconsistent_totals", + "missing_selected_call", + "wrong_selected_primitive_sum", + "wrong_selected_coefficient_work_sum", + "unpaid_wrapper_factors", + "wrong_global_compiler", + "wrong_global_adapter_maximum", + "understated_exact_prefix_and_global_sum", + "wrong_global_prefix_sum", + "wrong_row_prefix_reserve", + "wrong_parent_geometry_charge", + "wrong_rebased_geometry_charge", + "wrong_complete_pervertex_envelope", + "wrong_prior_added_complete_invoice", + "wrong_finite_router_bits", + "wrong_finite_literal_bits", + "wrong_finite_physical_stock_bits", + "wrong_finite_row_coefficient", + "reordered_complete_calls", + "understated_explicit_idle_remainders", + "understated_actual_chart_types", + "wrong_cross_replica_role_count", + "old_no_cold_wrapper_counts_selfconsistent", + "extra:missing_provider", + "extra:missing_backward_orientation", + "extra:unpaid_scalar_primitive", + "extra:wrong_local_artifact_binding", + "extra:false_dirty_restoration", + "extra:wrong_declared_provider_count", + "extra:wrong_local_compiler", + "extra:wrong_local_adapter_charge", + "extra:wrong_local_primitive_bound", + "extra:forged_provider_and_call_program_hash", + "extra:provider_at_wrong_call", + "extra:stale_partner_program_consistent_call_hashes", + "extra:stale_partner_profile_consistent_child_total", + "extra:relocated_against_partner_same_counts", + "extra:compensating_false_profiles_with_gauge44", + "extra:synchronized_forged_source_recipe_hash", + "extra:synchronized_forged_phase_review_semantics", + "extra:width_order_swap_4_5", + "extra:width_inventory_shift_4_5", + "extra:width_order_swap_4_7", + "extra:width_inventory_shift_4_7", + "extra:width_order_swap_4_8", + "extra:width_inventory_shift_4_8", + "extra:width_order_swap_4_9", + "extra:width_inventory_shift_4_9", + "extra:width_order_swap_5_7", + "extra:width_inventory_shift_5_7", + "extra:width_order_swap_5_8", + "extra:width_inventory_shift_5_8", + "extra:width_order_swap_5_9", + "extra:width_inventory_shift_5_9", + "extra:width_order_swap_7_8", + "extra:width_inventory_shift_7_8", + "extra:width_order_swap_7_9", + "extra:width_inventory_shift_7_9", + "extra:width_order_swap_8_9", + "extra:width_inventory_shift_8_9", + "extra:cold_helper_width_swap_258", + "extra:cold_helper_width_swap_270", + "extra:cold_helper_width_swap_282", + "extra:cold_helper_width_swap_294", + "gauge44:missing_provider", + "gauge44:missing_backward_orientation", + "gauge44:unpaid_scalar_primitive", + "gauge44:wrong_local_artifact_binding", + "gauge44:false_dirty_restoration", + "gauge44:wrong_declared_provider_count", + "gauge44:wrong_local_compiler", + "gauge44:wrong_local_adapter_charge", + "gauge44:wrong_local_primitive_bound", + "gauge44:forged_provider_and_call_program_hash", + "gauge44:provider_at_wrong_call", + "gauge44:stale_partner_program_consistent_call_hashes", + "gauge44:stale_partner_profile_consistent_child_total", + "gauge44:relocated_against_partner_same_counts", + "gauge44:compensating_false_profiles_with_extra", + "gauge44:synchronized_forged_source_recipe_hash", + "gauge44:synchronized_forged_phase_review_semantics", + "gauge44:width_order_swap_4_5", + "gauge44:width_inventory_shift_4_5", + "gauge44:width_order_swap_4_7", + "gauge44:width_inventory_shift_4_7", + "gauge44:width_order_swap_4_8", + "gauge44:width_inventory_shift_4_8", + "gauge44:width_order_swap_4_9", + "gauge44:width_inventory_shift_4_9", + "gauge44:width_order_swap_5_7", + "gauge44:width_inventory_shift_5_7", + "gauge44:width_order_swap_5_8", + "gauge44:width_inventory_shift_5_8", + "gauge44:width_order_swap_5_9", + "gauge44:width_inventory_shift_5_9", + "gauge44:width_order_swap_7_8", + "gauge44:width_inventory_shift_7_8", + "gauge44:width_order_swap_7_9", + "gauge44:width_inventory_shift_7_9", + "gauge44:width_order_swap_8_9", + "gauge44:width_inventory_shift_8_9", + "gauge44:cold_helper_width_swap_258", + "gauge44:cold_helper_width_swap_270", + "gauge44:cold_helper_width_swap_282", + "gauge44:cold_helper_width_swap_294", + "wrong_owner_receipt_hash" + ], + "discovery_accepted_controls": [], + "exact_outer_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "conservative_outer_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "recurrence_model_controls": [ + "native_complex_endpoint_rejected_with_old_surcharge", + "omitting_bit_surcharge_would_fail_next_endpoint_rejection" + ], + "scope": "Complete receipt schema; ordered widths and both reflected providers; exact program, work and paid-profile binding; independently recounted compiler, conservative envelope and finite inequalities. Does not replace fresh physical replay." +} diff --git a/research/capped-fusion-t74-k554/evidence/ASSEMBLY.json b/research/capped-fusion-t74-k554/evidence/ASSEMBLY.json new file mode 100644 index 0000000000..6e9debfd55 --- /dev/null +++ b/research/capped-fusion-t74-k554/evidence/ASSEMBLY.json @@ -0,0 +1,345 @@ +{ + "status": "PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY", + "kappa": "1676855229071321/1000000000000000000", + "kappa_decimal": "0.001676855229071321", + "complex_lower": "839835897752368810771/500000000000000000000000", + "complex_decimal": "0.001679671795504737621542", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_decimal": "0.001733427039589844234749", + "binding": "complex", + "gain_over_pr635_percent": "0.00001493392089287529953507200107451763386801044261067381377039094969890365", + "complex_profile": { + "1": 1559100, + "2": 339000, + "3": 277392, + "4": 84912, + "5": 54612, + "8": 5328, + "48": 22748 + }, + "provider_counts": { + "extra": 417, + "gauge44": 249 + }, + "surcharge_model": { + "complex": false, + "bit": true + }, + "conservative_complex_lower": "83983589632938552601/50000000000000000000000", + "conservative_complex_decimal": "0.00167967179265877105202", + "conservative_kappa": "1676855226234891/1000000000000000000", + "conservative_kappa_decimal": "0.001676855226234891", + "conservative_moments": [ + { + "side": "conservative_complex", + "surcharge": true, + "endpoint": "83983589632938552601/50000000000000000000000", + "accept": true, + "mercator": [ + "-6806405835181690224448760866098662996463265/13479973333575319897333507543509815336818572211270286240551805124608", + "-212700182349427819514023777065583218639477/421249166674228746791672110734681729275580381602196445017243910144" + ], + "base_two": [ + "-1262319429171566558719/2500000000000000000000000000000000000000000000", + "-1009853543337253246947/2000000000000000000000000000000000000000000000" + ] + }, + { + "side": "conservative_complex", + "surcharge": true, + "endpoint": "1679671792658771052021/1000000000000000000000000", + "accept": false, + "mercator": [ + "32576835786057171933027423569808193095310333/13479973333575319897333507543509815336818572211270286240551805124608", + "16288417893028585966513711784904096547655167/6739986666787659948666753771754907668409286105635143120275902562304" + ], + "base_two": [ + "6041708070917619306649/2500000000000000000000000000000000000000000000", + "24166842283670477226737/10000000000000000000000000000000000000000000000" + ] + } + ], + "conservative_bootstrap": [ + { + "exponent": "4192287738342239998793546541716065354822479394952504746695396802722811494258653351156134799/2500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "6891743304687631256446759104452998249890555047495253304603197277188505741346648843865201/2500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "4737228485815" + }, + { + "exponent": "209958395289004825064670673441866405152976690564457726807264250497955608380189027562355414602494129444673994785984686662024239359291937801/125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "578793341556437828991599159512500641806935542273192735749502044391619810972437644585397505870555326005214015313337975760640708062199/125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1679095795282918005" + }, + { + "exponent": "10497948655508176595571868458140641130861660576046074567561000407184318167703190656223447902788358220571713504140876804928959786696907717863131576336767528005274541809037499026541229599/6250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "48609142479553114793910654751819264298953925432438999592815681832296809343776552097211641779428286495859123195071040213303092282136868423663232471994725458190962500973458770401/6250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "595150244109829297064936" + }, + { + "exponent": "524897435201783583481837332621859055800516945817191292780894409216690114250864323826076746829557388793618504772910662953994329079390058669047135701579438613092972886289883719405919984875114046576043938231344027060996843358120363001/312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "4082370274411829980705738333529297932808707219105590783309885749135676173923253170442611206381495227089337046005670920609941330952864298420561386907027113710116280594080015124885953423956061768655972939003156641879636999/312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "210949139446989141199132369390" + }, + { + "exponent": "26244871760292954835702602220249734667736558553822134745835996088018903793098499532638480446507748371415315687472777715993536840165557889970903854938896541089867562328336505072828129676544571827228822216608542244060114810955735027778990229374582283049904495824586553202347284399/15625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "342852109855909878505038965753633677865254164003911981096206901500467361519553492251628584684312527222284006463159834442110029096145061103458910132437671663494927171870323455428172771177783391457755939885189044264972221009770625417716950095504175413446797652715601/15625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "74770261583247044565376594268026518" + }, + { + "exponent": "1312243588014664855596672007580509359529389450216020993791740743074983110870686776104111076293958112276115455452177774142955453600007314051342211642855601608112512920704424845554376050096390803813809703753702970272743102614082976492205627436769976157124556714309693250567205872632198749275977690485405638677100325754031828201/781250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "28793950898925902625805726159158979006208259256925016889129313223895888923706041887723884544547822225857044546399992685948657788357144398391887487079295575154445623949903609196186190296246297029727256897385917023507794372563230023842875443285690306749432794127367801250724022309514594361322899674245968171799/781250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "26502084966466938934950098161304289644502" + }, + { + "exponent": "65612179400733244217112925969114224113545671773544603247557414474917424050762280637842063810475860380640289901431573670690878878750797207503127810987769708634308270318169510176729446170103287233567351112868477483145000197992856747972521171118242989418347285856326362911650662873545450954268678763341755938326966821610863738673358196876099017458620850976097329373166299199/39062500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "2418219356206375153210108695205396752442585525082575949237719362157936189524139619359710098568426329309121121249202792496872189012230291365691729681830489823270553829896712766432648887131522516854999802007143252027478828881757010581652714143673637088349337126454549045731321236658244061673033178389136261326641803123900982541379149023902670626833700801/39062500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "9393580986577732870361425243903883610643762776" + } + ], + "conservative_outer": { + "bit_positive": "65612179400733244217112925969114224113545671773544603247557414474917424050762280637842063810475860380640289901431573670690878878750797207503127810987769708634308270318169510176729446170103287233567351112868477483145000197992856747972521171118242989418347285856326362911650662873545450954268678763341755938326966821610863738673358196876099017458620850976097329373166299199/39062500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_above_bit": "2418324030885775886454328226455396752442585525082575949237719362157936189524139619359710098568426329309121121249202792496872189012230291365691729681830489823270553829896712766432648887131522516854999802007143252027478828881757010581652714143673637088349337126454549045731321236658244061673033178389136261326641803123900982541379149023902670626833700801/39062500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_below_one_over32": "1478516410367061447399/50000000000000000000000", + "beta_positive": "1/1000000000000000000000000", + "beta_below_one": "999999999999999999999999/1000000000000000000000000", + "leaf_saving_above_bit": "2418258418706375153210108695205396752442585525082575949237719362157936189524139619359710098568426329309121121249202792496872189012230291365691729681830489823270553829896712766432648887131522516854999802007143252027478828881757010581652714143673637088349337126454549045731321236658244061673033178389136261326641803123900982541379149023902670626833700801/39062500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_positive": "32806089700366622108556397372377711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801/19531250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_internal": "65612179400733244217112925969114224113545671773544603247557414474917424050762280637842063810475860380640289901431573670690878878750797207503127810987769708634308270318169510176729446170103287233567351112868477483145000197992856747972521171118242989418347285856326362911650662873545450954268678763341755938326966821610863738673358196876099017458620850976097329373166299199/19531250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_leaf": "1209194821532588309849271460528667490445406308213061519222107238493443012186120571960492891348023640514941200914502827822106785384993896480053367968726232681343911223218674552726501173011931361714733468354684494491222559441076498147574329593007936787164086910513130849228572268991995576287470857873331472419259228528772102134428247870148211412434309021350976097329373166299199/19531250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_positive": "32806089700366622108561280184877711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801/19531250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_below_one": "19498443910299633377891438719815122288676471381226153667490445406308213061519222107238493443012186120571960492891348023640514941200914502827822106785384993896480053367968726232681343911223218674552726501173011931361714733468354684494491222559441076498147574329593007936787164086910513130849228572268991995576287470857873331472419259228528772102134428247870148211412434309021350976097329373166299199/19531250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_reservations": "1/4000000000000000000000000", + "lambda_above_tau": "65612179400733244217112925969114224113545671773544603247557414474917424050762280637842063810475860380640289901431573670690878878750797207503127810987769708634308270318169510176729446170103287233567351112868477483145000197992856747972521171118242989418347285856326362911650662873545450954268678763341755938326966821610863738673358196876099017458620850976097329373166299199/39062500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_sigma": "2418389643065176619698545339381365866666699070754349493840966919572411106948190381640347940632236805169501761539104224070542879891109042162899232809641477592979188138167030935942825616577692620142233369358256120504961973881955003438400686664844755331338755473740405372094232887321117607123987447067899603082580130090722593405117822382099546725851159421850976097329373166299199/39062500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_internal": "65612179400733244217112925969114224113545671773544603247557414474917424050762280637842063810475860380640289901431573670690878878750797207503127810987769708634308270318169510176729446170103287233567351112868477483145000197992856747972521171118242989418347285856326362911650662873545450954268678763341755938326966821610863738673358196876099017458620850976097329373166299199/39062500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_prime_above_lambda": "65612179400733244217112925969114224113545671773544603247557414474917424050762280637842063810475860380640289901431573670690878878750797207503127810987769708634308270318169510176729446170103287233567351112868477483145000197992856747972521171118242989418347285856326362911650662873545450954268678763341755938326966821610863738673358196876099017458620850976097329373166299199/39062500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_leaf": "1209194821532588309849271460528667490445406308213061519222107238493443012186120571960492891348023640514941200914502827822106785384993896480053367968726232681343911223218674552726501173011931361714733468354684494491222559441076498147574329593007936787164086910513130849228572268991995576287470857873331472419259228528772102134428247870148211412434309021350976097329373166299199/19531250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_reservations": "1/4000000000000000000000000", + "lambda_prime_below_one": "32806089700366622108556397372377711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801/19531250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_positive": "19531249999999999999999980468750000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000/19564056089700366622108556397372377711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801", + "epsilon_below_one": "32806089700366622108575928622377711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801/19564056089700366622108556397372377711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801", + "guard_width": "32806089700366622108575928622377711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801/19564056089700366622108556397372377711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801", + "K_geometry": "14681243589700366622108561280184877711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801/19564056089700366622108556397372377711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801000000000000000000000000", + "K_dominates_log": "32806089700366622108561247378788010956906510212566147631843270163168164634445383206912865200875398650146745602094988545605630759578388520201533729556207018022774454138059152312552568830149294173506180170899291856959819258146488517440139155292391856536920161629551504289334060663816462158708214895094914936843378370698937519576317058942085771197044171389080317359667825406896894050882039268009822350976097329373166299199/19564056089700366622108556397372377711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801000000000000000000000000", + "record_suffix": "32806089700366622108575928622377711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801/19564056089700366622108556397372377711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801", + "phase_local": "262448717602932976868587864922931990221606841634373287698725426005676733999890632537458764115572554646423295362658823062001042353176868725446786231861249742662400878356975523543145190267618572304420671959815772324956684979663697056001581239204856369503899854478495946779185452290224546214108209012150945902831082365585617212641502459240681056256046436298042837472627662257440061369576427103915429350976097329373166299199/156512448717602932976868451178979021690588228950190770660076436749534295507846223142092052455902511035424316056869215810875880470392683977377423145716920048828159573056250190138549248710214250603578187990615904549106282132253162524044070219524471388014819405363255936505702687304715894953206171421848064035389700233137013348220645926171769823182924574017038814308700525527829192191221365014669606408000000000000000000000000", + "phase_boundary": "52489743520586595373701921739714637751023681481756759637576026378240327722912118863816799393563726306970449867286174361296666039029686823508269658325210680134742433356823412703746222096218089441870279467092133039930979177133677820745405619627745957648375563873746742217035608517508583649171071533699717591070895855974938636124761521824822509916387222666991390512207239994086308392484415368230302950976097329373166299199/31302489743520586595373690235795804338117645790038154132015287349906859101569244628418410491180502207084863211373843162175176094078536795475484629143384009765631914611250038027709849742042850120715637598123180909821256426450632504808814043904894277602963881072651187301140537460943178990641234284369612807077940046627402669644129185234353964636584914803407762861740105105565838438244273002933921281600000000000000000000000", + "gamma_sublinear": "1/2000000000000000000000000", + "cell_above_band": "39062499999999999999999941373443910299633377891443602627622288676471381226153667490445406308213061519222107238493443012186120571960492891348023640514941200914502827822106785384993896480053367968726232681343911223218674552726501173011931361714733468354684494491222559441076498147574329593007936787164086910513130849228572268991995576287470857873331472419259228528772102134428247870148211412434309021350976097329373166299199/78256224358801466488434225589489510845294114475095385330038218374767147753923111571046026227951255517712158028434607905437940235196341988688711572858460024414079786528125095069274624355107125301789093995307952274553141066126581262022035109762235694007409702681627968252851343652357947476603085710924032017694850116568506674110322963085884911591462287008519407154350262763914596095610682507334803204000000000000000000000000", + "prime_interval_packing": "32806089700366622108575928622377711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801/19564056089700366622108556397372377711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801", + "alpha_positive": "65612179400733244217132293188665722280435128991295292641397863854955103115223275968419422188689278078186252710746964905090689558663885692379426944171213121542721086169332919631208657606930619620779678997887360495245085789791804022948916595851315358389345832036543567502169973753303331309479642626102919360555907512825606047157057830413313669062615923518932105947233516385545917953552666101710623350976097329373166299199/39128112179400733244217112794744755422647057237547692665019109187383573876961555785523013113975627758856079014217303952718970117598170994344355786429230012207039893264062547534637312177553562650894546997653976137276570533063290631011017554881117847003704851340813984126425671826178973738301542855462016008847425058284253337055161481542942455795731143504259703577175131381957298047805341253667401602000000000000000000000000", + "alpha_below_one": "39062499999999999999999980501556089700366622108556397372377711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801/39128112179400733244217112794744755422647057237547692665019109187383573876961555785523013113975627758856079014217303952718970117598170994344355786429230012207039893264062547534637312177553562650894546997653976137276570533063290631011017554881117847003704851340813984126425671826178973738301542855462016008847425058284253337055161481542942455795731143504259703577175131381957298047805341253667401602000000000000000000000000", + "alpha_below_one_fourth": "9716415865449450066837145905497523133381329180395627873613379432990938366125165670412333856305217661635833500843579023274651839840878862893709519663136289930217252229846303964028119386781460043102857070415606673823897547476030853729805472124428146392536867003166952464104247982791440103265906071239401082851300357058237728216633312555322300279870169952545993788346549329103778593997782647315139777149023902670626833700801/39128112179400733244217112794744755422647057237547692665019109187383573876961555785523013113975627758856079014217303952718970117598170994344355786429230012207039893264062547534637312177553562650894546997653976137276570533063290631011017554881117847003704851340813984126425671826178973738301542855462016008847425058284253337055161481542942455795731143504259703577175131381957298047805341253667401602000000000000000000000000", + "delta_positive": "1/8000000000000000000000000", + "delta_below_one_eighth": "999999999999999999999999/8000000000000000000000000", + "short_record_fallback": "761655812767036571821952632734845285489890826887319866038201233356274079126828408470865725845299771203255676213184136319408967830451452351176594151273840502065834724144605343324258604938778593310306651377382409947399676226664015400262134475883819877843116137363057093882481580488049410171363228008623498391070427774773406479689709732033476425377021405666824880719795281122812592748662313201597134195255626176749748316594229114789742793742034177379085706089066145511182775986922812296952203913785488781039624818956640214272047400549129901898707991709086079554390978062306388340106653628710771612861078023943231703608992547889036406829044052155339023426326486068943488431381220578599406179612426221988088147477187622061324819981301249112623041406094781170565799877588041601/764220941003920571176115484272358504348575336670853372363654476316085427284405386435996349882336479665157793246431717826542385109339277233288198953695898675918747915313721631535885003467843020525284121047929221431183018223892395136933936618771832949291110377750273127469251402855058080826202008895742500172801270669614322989358622686385594839760373896567572335491701784803853477496198071360691437539062500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "small_field_exposure": "1/1000000000000000000000000", + "artificial_boundary": "1095849589740823463814947824374000442625805697927195357397744627966860220384308782665400200722580903725728206739473397450448682047259993144975314244190536787881768100983681164953412300241553900922446805880895502723194233399845796673316767671051570699054501759432379813722392003995004170846625561013292251551578209317410389978789180680511746011843402174878532828883287897819348793919326285880053924199947071708011880501102403/156512448717602932976868451178979021690588228950190770660076436749534295507846223142092052455902511035424316056869215810875880470392683977377423145716920048828159573056250190138549248710214250603578187990615904549106282132253162524044070219524471388014819405363255936505702687304715894953206171421848064035389700233137013348220645926171769823182924574017038814308700525527829192191221365014669606408000000000000000000000000", + "literal_scalar_guard": "1", + "row_product_gap": "23971789/25", + "balanced_prefix_above_kappa": "16865211419871894406169514645259704351613972605837533057131641002325717468746086953869327840580269637515247169452190277567277542501060138953442163179127449123122146634380540013286889164530713093306136541124352407699284061515514446904375619883640519926906549378065622155048116075820304088477815631468145925867023574005874523129875847225699657327970837651274640053339799968829864491772715169159152309/19564056089700366622108556397372377711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801000000000000000000", + "coordinate_movement_above_kappa": "110022125932814529612925969114224113545671773544603247557414474917424050762280637842063810475860380640289901431573670690878878750797207503127810987769708634308270318169510176729446170103287233567351112868477483145000197992856747972521171118242989418347285856326362911650662873545450954268678763341755938326966821610863738673358196876099017458620850976097329373166299199/39062500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_phase_layer_above_kappa": "16865191855815804705802892536703306979236261282308914283285308492771123776959148473091435079073712649701367741412683168915301183016001339867944991001234234508116043114433907982013121845874624316524811093850853580711215423230247915259060114374863079367983047525639951748056052862984390998990946480696718194859019150293345381003207319644958885856742939785702887923488011381264173513123691266488525475299199/19564056089700366622108556397372377711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801000000000000000000000000", + "bulk_exposure_above_kappa": "110022125932814529612925969114224113545671773544603247557414474917424050762280637842063810475860380640289901431573670690878878750797207503127810987769708634308270318169510176729446170103287233567351112868477483145000197992856747972521171118242989418347285856326362911650662873545450954268678763341755938326966821610863738673358196876099017458620850976097329373166299199/39062500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "Gaussian_arithmetic_above_kappa": "26984318707738941349504601323859129590204644845811434117564293094166554258206800645413031783421874432210516043083997335455667708516637423240010288908710703981989331095062231989985255344593052172508493018525465025330785860139556583401685486305047391324126977152479325041084922508476573452077635859577605750379233294696870094881132827980378680253525442376467671955491891362562092208187320367984016860699199/31302489743520586595373690235795804338117645790038154132015287349906859101569244628418410491180502207084863211373843162175176094078536795475484629143384009765631914611250038027709849742042850120715637598123180909821256426450632504808814043904894277602963881072651187301140537460943178990641234284369612807077940046627402669644129185234353964636584914803407762861740105105565838438244273002933921281600000000000000000000000", + "scalar_work_above_kappa": "134921671794919065548989495053521237440534069523171645683206795509051146058181757150176729963135600112308097927578015111886243980523422312542040133255126378369971069555097688075021345997589615969667766881721320434606203853838849043589689453560346718856328893172099306833392865393726519618335655900973739675928184168334467042912338250224856487152538803344625368296866611163073224955532697450602591638299199/156512448717602932976868451178979021690588228950190770660076436749534295507846223142092052455902511035424316056869215810875880470392683977377423145716920048828159573056250190138549248710214250603578187990615904549106282132253162524044070219524471388014819405363255936505702687304715894953206171421848064035389700233137013348220645926171769823182924574017038814308700525527829192191221365014669606408000000000000000000000000", + "dimension_above_kappa": "19498443910299633394756615959999516694845986026485858019104418012145746118650863109564210911758273074441288333471617661155762110653104780395099649286445132849922216547096175355803490545603758687839615665703725024667851274592707092193775284074955523402523194213233527863693713464976135285897344648089296084054103102326019257339442833234403295232010275473569805539383271960295991029437129341996163690772715169159152309/19564056089700366622108556397372377711323528618773846332509554593691786938480777892761506556987813879428039507108651976359485058799085497172177893214615006103519946632031273767318656088776781325447273498826988068638285266531645315505508777440558923501852425670406992063212835913089486869150771427731008004423712529142126668527580740771471227897865571752129851788587565690978649023902670626833700801000000000000000000" + }, + "conservative_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "model_controls": [ + "native_complex_endpoint_rejected_with_old_surcharge", + "omitting_bit_surcharge_would_fail_next_endpoint_rejection" + ], + "native_correction_gain": "2.83643E-12", + "template_sha256": "65c840660ec6f75713d8d478e38a52f5e4e871ed1e5b5477f95895ea349a7eb2", + "input_sha256": { + "owner_audit": "8fc4e5d64dbccddfc6d5dade51636954c90d803fd34da515589cb738a7cbbd21", + "fresh_invoice": "ccc6bf27bb134678de96e66eba348382cdd0cd451d38a112166f139e38257198", + "package:inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c" + }, + "bit_supplier": { + "pr": 589, + "repository": "CrocSwap/integer-mult-bounds", + "commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "merged_as": "b3eb785ac5b4b1ca2beea0f80db078a505626a90", + "path": "research/e8-bit-p111-tuned/tune/EXPECTED.json", + "git_blob_sha1": "e293ddc557742637f9f679f083a1a282d87b1b13", + "word": { + "v": 111, + "decoder_constant": 63, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ] + }, + "derived_deficit": 10272, + "deficit_formula": "T(2Kv-L*cst), L=9 T=32 K=4 M=64", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "moments": [ + { + "side": "bit", + "surcharge": true, + "endpoint": "1733427039589844234749/1000000000000000000000000", + "accept": true, + "mercator": [ + "-43100600330766044577088869872467188970742291/26959946667150639794667015087019630673637144422540572481103610249216", + "-43100600330766044577088869872467188970742289/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "-799345163337715793503/500000000000000000000000000000000000000000000", + "-3197378653350863173989/2000000000000000000000000000000000000000000000" + ] + }, + { + "side": "bit", + "surcharge": true, + "endpoint": "6933708158359376939/4000000000000000000000", + "accept": false, + "mercator": [ + "22502934905675809315035333485365686073718547/13479973333575319897333507543509815336818572211270286240551805124608", + "5625733726418952328758833371341421518429637/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two": [ + "8346798366759439729359/5000000000000000000000000000000000000000000000", + "16693606733518879458833/10000000000000000000000000000000000000000000000" + ] + }, + { + "side": "complex", + "surcharge": false, + "endpoint": "839835897752368810771/500000000000000000000000", + "accept": true, + "mercator": [ + "-5971205559779550112184163352720098399495653/26959946667150639794667015087019630673637144422540572481103610249216", + "-5971205559779550112184163352720098399495651/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "-44297/200000000000000000000000000000", + "-55371/250000000000000000000000000000" + ] + }, + { + "side": "complex", + "surcharge": false, + "endpoint": "1679671795504737621543/1000000000000000000000000", + "accept": false, + "mercator": [ + "36397638841276465291309668235027524493751241/13479973333575319897333507543509815336818572211270286240551805124608", + "18198819420638232645654834117513762246875621/6739986666787659948666753771754907668409286105635143120275902562304" + ], + "base_two": [ + "1350063/500000000000000000000000000000", + "2700127/1000000000000000000000000000000" + ] + } + ], + "bootstrap": [ + { + "exponent": "419228774543352861270408587177625745747420379065174254579704705332791525569079405031194385559/250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "689174332831544115090742904425378068174235434825745420295294667208474430920594968805614441/250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "4737228453333" + }, + { + "exponent": "209958395644747681223074666370458461500281346318165082562872538132328586580347144110687676855549647807012474899784235470605434556243113944011/125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "578793344521469674998670567100407515960931834917437127461867671413419652855889312323144450352192987525100215764529394565443756886055989/125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1679095778079636247" + }, + { + "exponent": "104979486732954673237090251959918759457839942836493294863342317545970754714244247871240598544703114069824864518625178880851881660551858609221431892784478216296106635302514285519596452257519/62500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "486091428109284580560594021496058710788506705136657682454029245285755752128759401455296885930175135481374821119148118339448141390778568107215521783703893364697485714480403547742481/62500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "595150235995383974327200" + }, + { + "exponent": "52489743609114813642271524200820456404436110365236298507733230914226425682240106427267605966648652979195532830184602982614481017443377895408308753554838523530816127134673158925968693288298825952307207553855434637911827039636751727062851/31250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "408237030915892059435934072513216447263701492266769085773574317759893572732394033351347020804467169815397017385518982556622104591691246445161476469183872865326841074031306711701174047692792446144565362088172960363248272937149/31250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "210949135856002397248974559927" + }, + { + "exponent": "26244871804761182484480353120379440810346129619116412586996489702453809363338844247786082606425600720944645113260618136630162229387058470323211984975465960208326561086364157832174706212952789750127715805226161133317715158412679444343474085664133721442038663158101478321995416357231879/15625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "342852113355009748754428128533787133587413003510297546190636661155752213917393574399279055354886739381863369837770612941529676788015024534039791673438913635842167825293787047210249872284194773838866682284841587320555656525914335866278557961336841898521678004583642768121/15625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "74770260057057757241518730770401369" + }, + { + "exponent": "13122435902380762380357341649262569035085239414009091577802576064058200711192435704252094412336462645782620101043801154990384062810905058981978314456028100863699056138700522813466838985490329972708318457287253366133707899754258409550096854974473335431140604614643642969673516453702647545172404782068475864572024946635987291280231291/7812500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "287939512415801528584152092289115908422197423935941799288807564295747905587663537354217379898956198845009615937189094941018021685543971899136300943861299477186533161014509670027291681542712746633866292100245741590449903145025526664568859395385356357030326483546297352454827595217931524135427975053364012708719768709/7812500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "26502084335705851402175021854345669074689" + }, + { + "exponent": "6561217951190381333906605093623944787355965539612516200645106951407826915866095646342820600592922324290630021900587774262753353941778229880283498882250397131249433751020449346623412219863978203340545146577238960698174577202206022681611354192984478347472051166203169760648159448905175343004340709173398984691872652337001787933898232337214253022535867166449534483569778488507964639/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "241821938908104022262700311949983799354893048592173084133904353657179399407077675709369978099412225737246646058221770119716501117749602868750566248979550653376587780136021796659454853422761039301825422797793977318388645807015521652527948833796830239351840551094824656995659290826601015308127347662998212066101767662785746977464132833550465516430221511492035361/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "9393580731174250430778101990171498302890374509" + } + ], + "outer": { + "bit_positive": "6561217951190381333906605093623944787355965539612516200645106951407826915866095646342820600592922324290630021900587774262753353941778229880283498882250397131249433751020449346623412219863978203340545146577238960698174577202206022681611354192984478347472051166203169760648159448905175343004340709173398984691872652337001787933898232337214253022535867166449534483569778488507964639/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_above_bit": "241832406376055212644034460387483799354893048592173084133904353657179399407077675709369978099412225737246646058221770119716501117749602868750566248979550653376587780136021796659454853422761039301825422797793977318388645807015521652527948833796830239351840551094824656995659290826601015308127347662998212066101767662785746977464132833550465516430221511492035361/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_below_one_over32": "14785164102247631189229/500000000000000000000000", + "beta_positive": "1/1000000000000000000000000", + "beta_below_one": "999999999999999999999999/1000000000000000000000000", + "leaf_saving_above_bit": "241825845158104022262700311949983799354893048592173084133904353657179399407077675709369978099412225737246646058221770119716501117749602868750566248979550653376587780136021796659454853422761039301825422797793977318388645807015521652527948833796830239351840551094824656995659290826601015308127347662998212066101767662785746977464132833550465516430221511492035361/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_positive": "3280608975595190666953295985594021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_internal": "6561217951190381333906605093623944787355965539612516200645106951407826915866095646342820600592922324290630021900587774262753353941778229880283498882250397131249433751020449346623412219863978203340545146577238960698174577202206022681611354192984478347472051166203169760648159448905175343004340709173398984691872652337001787933898232337214253022535867166449534483569778488507964639/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_leaf": "120919483797003201512684062580085523622233880261626154583152821935541107530454703950331331870306705790947613659132785647632513312228743212605163407988657577085425139501761918779074050123600383629116051944043565898155021078084963032286656028252608104154267747598578531667590293572749412829406678172208279432035575704045210490520000315007569972468133291613184130034483569778488507964639/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_positive": "3280608975595190666953784266844021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_below_one": "1949844391024404809333046215733155978796703351136798835523622233880261626154583152821935541107530454703950331331870306705790947613659132785647632513312228743212605163407988657577085425139501761918779074050123600383629116051944043565898155021078084963032286656028252608104154267747598578531667590293572749412829406678172208279432035575704045210490520000315007569972468133291613184130034483569778488507964639/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_reservations": "1/4000000000000000000000000", + "lambda_above_tau": "6561217951190381333906605093623944787355965539612516200645106951407826915866095646342820600592922324290630021900587774262753353941778229880283498882250397131249433751020449346623412219863978203340545146577238960698174577202206022681611354192984478347472051166203169760648159448905175343004340709173398984691872652337001787933898232337214253022535867166449534483569778488507964639/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_sigma": "241838967594006403025368366992577423299680404557712696650104998764130807233993541805016320920012818659570936688243670707490763871103544646980446532478432903773719029569772817108801476834980903280028763342940554557349343981592723858550630445151023223830188023145990860165419938986049920483470352003707385465086459535438083979252066731782802730683244047359201810534483569778488507964639/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_internal": "6561217951190381333906605093623944787355965539612516200645106951407826915866095646342820600592922324290630021900587774262753353941778229880283498882250397131249433751020449346623412219863978203340545146577238960698174577202206022681611354192984478347472051166203169760648159448905175343004340709173398984691872652337001787933898232337214253022535867166449534483569778488507964639/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_prime_above_lambda": "6561217951190381333906605093623944787355965539612516200645106951407826915866095646342820600592922324290630021900587774262753353941778229880283498882250397131249433751020449346623412219863978203340545146577238960698174577202206022681611354192984478347472051166203169760648159448905175343004340709173398984691872652337001787933898232337214253022535867166449534483569778488507964639/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_leaf": "120919483797003201512684062580085523622233880261626154583152821935541107530454703950331331870306705790947613659132785647632513312228743212605163407988657577085425139501761918779074050123600383629116051944043565898155021078084963032286656028252608104154267747598578531667590293572749412829406678172208279432035575704045210490520000315007569972468133291613184130034483569778488507964639/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_reservations": "1/4000000000000000000000000", + "lambda_prime_below_one": "3280608975595190666953295985594021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_positive": "1953124999999999999999998046875000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000/1956405608975595190666953295985594021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361", + "epsilon_below_one": "3280608975595190666955249110594021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361/1956405608975595190666953295985594021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361", + "guard_width": "3280608975595190666955249110594021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361/1956405608975595190666953295985594021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361", + "K_geometry": "1468124358975595190666953784266844021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361/1956405608975595190666953295985594021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361000000000000000000000000", + "K_dominates_log": "3280608975595190666953780986235045608105981909416897632356562823089510644252370800298339154095699879202490603670800824663756336672199084659073277635384915920180484224524654651657787465661646069878503035301539118132802727130006557702228608037966981011279242126768469980808764539057449720940513860694998185749124989418085293317377253702632961717759431720568134072742357228387130877535488898354803105219491034483569778488507964639/1956405608975595190666953295985594021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361000000000000000000000000", + "record_suffix": "3280608975595190666955249110594021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361/1956405608975595190666953295985594021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361", + "phase_local": "26244871804761525335640036479143194031182523952313330217000925661258127562170301046749551401382516951550171280578653884127123041058269585125645684449783713431944340368604051612059811489149312638424984684436336432728990363521701596415143460491372239785272649929000213251728890305867399999267381805685752295943278242212627337293128223774316488284119429515515144265465424187094841967294103909905383549467018034483569778488507964639/15651244871804761525335626367884752169626373190905609315811022128957906990763334777424515671139756362368397349345037546353672419090726937714818939893502170054299158692736090739383316598883985904649767407599011196930967071584447651472814759831375320295741706751773979135166765858019211371746659277651418004697364746574622333764543715394367638316075839997479939440220254933667094526959724131441772091936282888000000000000000000000000", + "phase_boundary": "5248974360952305067126442171341458330083971227825877568183222494932534951502479107137014489577427056832291804548616801189187768476719413270493769648047669992617386179731460105406532381960588918611058605227378887955333095963580418163335595391116003191907248509816905118316203890498302601939959684551348538051480982514760325658155908280205835423447431531563592089261477253419220399514798756487710000440707634483569778488507964639/3130248974360952305067125273576950433925274638181121863162204425791581398152666955484903134227951272473679469869007509270734483818145387542963787978700434010859831738547218147876663319776797180929953481519802239386193414316889530294562951966275064059148341350354795827033353171603842274349331855530283600939472949314924466752908743078873527663215167999495987888044050986733418905391944826288354418387256577600000000000000000000000", + "gamma_sublinear": "1/2000000000000000000000000", + "cell_above_band": "3906249999999999999999994137344391024404809333046704014405978796703351136798835523622233880261626154583152821935541107530454703950331331870306705790947613659132785647632513312228743212605163407988657577085425139501761918779074050123600383629116051944043565898155021078084963032286656028252608104154267747598578531667590293572749412829406678172208279432035575704045210490520000315007569972468133291613184130034483569778488507964639/7825622435902380762667813183942376084813186595452804657905511064478953495381667388712257835569878181184198674672518773176836209545363468857409469946751085027149579346368045369691658299441992952324883703799505598465483535792223825736407379915687660147870853375886989567583382929009605685873329638825709002348682373287311166882271857697183819158037919998739969720110127466833547263479862065720886045968141444000000000000000000000000", + "prime_interval_packing": "3280608975595190666955249110594021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361/1956405608975595190666953295985594021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361", + "alpha_positive": "6561217951190381333908541815579066811402630773106343358734328942827884489669217978362798046565245175252159271800494118872808723013066299011440764323156172707575320816535997074572362326159884151099428985177938734503686675185962991804073586959882017978992586098515861876654496791458871189272923567122248772919718311245877013885341677998587751227239431405560564100274223936773946747501005328576314597254852034483569778488507964639/3912811217951190381333906591971188042406593297726402328952755532239476747690833694356128917784939090592099337336259386588418104772681734428704734973375542513574789673184022684845829149720996476162441851899752799232741767896111912868203689957843830073935426687943494783791691464504802842936664819412854501174341186643655583441135928848591909579018959999369984860055063733416773631739931032860443022984070722000000000000000000000000", + "alpha_below_one": "3906249999999999999999998050155608975595190666953295985594021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361/3912811217951190381333906591971188042406593297726402328952755532239476747690833694356128917784939090592099337336259386588418104772681734428704734973375542513574789673184022684845829149720996476162441851899752799232741767896111912868203689957843830073935426687943494783791691464504802842936664819412854501174341186643655583441135928848591909579018959999369984860055063733416773631739931032860443022984070722000000000000000000000000", + "alpha_below_one_fourth": "971641586536607213999568106177217943790245693658494238879454554117041302433039205610669431399669527472772675062264352528231717470157367308164742979020729455686122097479469674136884925104089234889511033989760261073681755298842015225246848902501075500504864085887357834071268369334741839544893281286091376520665578349668018846398640534149389643527500568436935650913491709417419461187481752886534441148762828465516430221511492035361/3912811217951190381333906591971188042406593297726402328952755532239476747690833694356128917784939090592099337336259386588418104772681734428704734973375542513574789673184022684845829149720996476162441851899752799232741767896111912868203689957843830073935426687943494783791691464504802842936664819412854501174341186643655583441135928848591909579018959999369984860055063733416773631739931032860443022984070722000000000000000000000000", + "delta_positive": "1/8000000000000000000000000", + "delta_below_one_eighth": "999999999999999999999999/8000000000000000000000000", + "short_record_fallback": "7616558127648579775004579951110210160348904912535874563229430461249717997149725435650984742888730879073033954505288978113551132666210608592542747167902845768243499385726535263417232501364353545402483249209346883699405584599415522349982709148703532633861928016293615880551479005184803469599847642702506602844733194289916145922505423846039060597660911176183462703194132719552288228464184590831856187509567760231566002850822310847560653949728079631644097577302731717297747302184505230435119358807697750838173460723862100001190065266983989417070659083863778909115680134764450332400606482874309717915458233853586830187637068823168562224923937426693645086721120733899925490877137963150759912629034201052622628092578068699142064754005750273170854494604082821025595124556214066191799738474400321/7642209410060918713542786312443726645325377534621879548735850648905228022833659559289314292548709161312694018234881614430504110884144012556063935494874106471825761080437544306339510058048821242504769241991704686001448765422093579820710331948913730613155130249889638249593147391610943052610673475415731447606135130163389811408468611032406073396521406248769501679795046354329635999492052798555552779265763128906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "small_field_exposure": "1/1000000000000000000000000", + "artificial_boundary": "109584958974438092202685032437294844283796557528104762483270240641553202515710171648529423728333172435197720328953677048238015240874821506107631401775174519456994912598991185978380303153256397013232166529535814156942450816338359061411716927763654406533802956319726769847079237767293722889215449908748540794783182377594207789398101484666721072011981881683732788409626407997776755270655083134129776860650710713896549290664534476106083/15651244871804761525335626367884752169626373190905609315811022128957906990763334777424515671139756362368397349345037546353672419090726937714818939893502170054299158692736090739383316598883985904649767407599011196930967071584447651472814759831375320295741706751773979135166765858019211371746659277651418004697364746574622333764543715394367638316075839997479939440220254933667094526959724131441772091936282888000000000000000000000000", + "literal_scalar_guard": "1", + "row_product_gap": "23971789/25", + "balanced_prefix_above_kappa": "1733660368054128235384147775454330488377753090645389531774464777239628198635519065455024065607739762993939412023572260319162339838428594454463576933285179093876604822185270154974755518118654936826110807702607267451356665807381625851269538615644383717370072662117159244583466230125520314761322730894161924714297501046367885515286438222010907126495357249938630732819353795713851147326264338084633123877018119/1956405608975595190666953295985594021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361000000000000000000", + "coordinate_movement_above_kappa": "11002212630533677656605093623944787355965539612516200645106951407826915866095646342820600592922324290630021900587774262753353941778229880283498882250397131249433751020449346623412219863978203340545146577238960698174577202206022681611354192984478347472051166203169760648159448905175343004340709173398984691872652337001787933898232337214253022535867166449534483569778488507964639/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_phase_layer_above_kappa": "1733658411648519259788957108501034502783731887348740668573300300861862078897145220038176887543280870524394115973903592189469045629376208113596362580917692406105348034790433562963413095204080076327872726481681317574957049436497677795313104513799404795455035694403815272836074334279788062359901262561752218287046913875774563687494717654046482830540567740458631047826923768181984438939448468119116693655506626964639/1956405608975595190666953295985594021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361000000000000000000000000", + "bulk_exposure_above_kappa": "11002212630533677656605093623944787355965539612516200645106951407826915866095646342820600592922324290630021900587774262753353941778229880283498882250397131249433751020449346623412219863978203340545146577238960698174577202206022681611354192984478347472051166203169760648159448905175343004340709173398984691872652337001787933898232337214253022535867166449534483569778488507964639/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "Gaussian_arithmetic_above_kappa": "2773854632480996201019445773773632795810383741735974387637979167205638998078456659311191326907924728320757763188046948380966449532433364786274508740888799862431310928101595655948266406075273038423539211103245678045771048920926653306074827683186035025877079291674110819586154072355100251216694901098249373115625414503595294996666580587253027106437782090421809487518536045610295127335207070969896567981717498364639/3130248974360952305067125273576950433925274638181121863162204425791581398152666955484903134227951272473679469869007509270734483818145387542963787978700434010859831738547218147876663319776797180929953481519802239386193414316889530294562951966275064059148341350354795827033353171603842274349331855530283600939472949314924466752908743078873527663215167999495987888044050986733418905391944826288354418387256577600000000000000000000000", + "scalar_work_above_kappa": "13869280988027416907477991536681347921428003521866467390994553741539259469345778678223345346797459211481970000138909414423605424498376369294841401113913946063241581790087324647786701722034664634110648380399932189734453710088169058754199874823310090817045544329223929984920337945158430265689160378820885691287129421200349762294499785208122832716008068490029046177562400338178942470223298834711548560794633459964639/15651244871804761525335626367884752169626373190905609315811022128957906990763334777424515671139756362368397349345037546353672419090726937714818939893502170054299158692736090739383316598883985904649767407599011196930967071584447651472814759831375320295741706751773979135166765858019211371746659277651418004697364746574622333764543715394367638316075839997479939440220254933667094526959724131441772091936282888000000000000000000000000", + "dimension_above_kappa": "1949844391024404811066703165818534214180851126591129323901375324525651157929047930061563739743049520158974396939610069699730359637231393104809972351740823197676182096693167751453690247324771916893534592168778537209739923754551311017254820828459710814301825271672636325474226929864757823115133820419093064174152137572334132993729536622071930725776958222325914696467825383230243916949388279283629635834228977084633123877018119/1956405608975595190666953295985594021203296648863201164476377766119738373845416847178064458892469545296049668668129693294209052386340867214352367486687771256787394836592011342422914574860498238081220925949876399616370883948055956434101844978921915036967713343971747391895845732252401421468332409706427250587170593321827791720567964424295954789509479999684992430027531866708386815869965516430221511492035361000000000000000000" + }, + "controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "scope": "Conditional R480 seven-slot k8 construction with a source-bound replica count. The owner map attains the fixed-inventory bin bound. The full conservative invoice, native moment correction, PR589 bit surcharge and 47 outer inequalities are checked. Local admission and all-size/compiler, mutable-source, whole-call hosting, precision/tape, exact-recovery, analytic-transfer and bit H1-H5 assumptions remain." +} diff --git a/research/capped-fusion-t74-k554/evidence/BIT-CONTROLS.json b/research/capped-fusion-t74-k554/evidence/BIT-CONTROLS.json new file mode 100644 index 0000000000..c3caaf80e1 --- /dev/null +++ b/research/capped-fusion-t74-k554/evidence/BIT-CONTROLS.json @@ -0,0 +1,49 @@ +{ + "status": "PASS_PR589_BIT_SUPPLIER_DERIVED_DEFICIT_NEGATIVE_CONTROLS", + "kappa": "0.001676855229071321", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_decimal": "0.001733427039589844234749", + "binding": "complex", + "bit_supplier": { + "pr": 589, + "repository": "CrocSwap/integer-mult-bounds", + "commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "merged_as": "b3eb785ac5b4b1ca2beea0f80db078a505626a90", + "path": "research/e8-bit-p111-tuned/tune/EXPECTED.json", + "git_blob_sha1": "e293ddc557742637f9f679f083a1a282d87b1b13", + "word": { + "v": 111, + "decoder_constant": 63, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ] + }, + "derived_deficit": 10272, + "deficit_formula": "T(2Kv-L*cst), L=9 T=32 K=4 M=64", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "derived_deficit": 10272, + "rejected_controls": [ + "revert_hardcoded_9984", + "ports_112", + "decoder_constant_64_copy_ranks_unchanged", + "decoder_constant_64_with_one_copy_rank_8", + "eight_retained_totals", + "live_minus_one", + "profile_rank_mass_plus_one", + "profile_rank_mass_receipt_mismatch", + "bit_lower_next_grid", + "not_nine_stage_record", + "tampered_bytes_next_grid", + "pr543_file_under_pr589_pin" + ], + "assembler_sha256": "c712b045155e08177210d8280632d42cf1cf7faef9ceb3626f4eb9d27e99f8f7" +} diff --git a/research/capped-fusion-t74-k554/evidence/FULL-ADMISSION.json b/research/capped-fusion-t74-k554/evidence/FULL-ADMISSION.json new file mode 100644 index 0000000000..6c138447c3 --- /dev/null +++ b/research/capped-fusion-t74-k554/evidence/FULL-ADMISSION.json @@ -0,0 +1,56 @@ +{ + "status": "PASS_T74_EXACT_FILL_COMPLETE_FINITE_ADMISSION", + "kappa": "1676855229071321/1000000000000000000", + "kappa_decimal": "0.001676855229071321", + "manifest_sha256": "83a0f2d9d67acb7d8471bc80fdb86dc5c00f2ad89a6c92c8b0b1bbf57aeff790", + "native_reuse": { + "base": true, + "extra": true + }, + "provider_verification": "PASS_GLOBAL_MIXED_X54_FUSIONS_NATIVE_AND_STRICT_ADMISSION", + "roles": 319680, + "prefix_bits": 1441, + "charged_prefix_bits": 2048, + "physical_row_coefficient": 19545, + "row_limit": 20161, + "controls": { + "admission": 114, + "bit": 12, + "controller": 15, + "independent_owner": 8, + "geometry": 6 + }, + "stages": [ + { + "name": "retained-provider-and-parent-admission", + "exit_code": 0, + "seconds": 92.98206012501032, + "log_sha256": "cdf3315263df90f032f2b0ac822507c6fbee03f980edd8083513f229fb3c1b24" + }, + { + "name": "reconstruct-owners", + "exit_code": 0, + "seconds": 6.756526415992994, + "log_sha256": "363a74def2d33de399e70eab63d987832b079286cb7c58f9ffa87e186ae761f5" + }, + { + "name": "lift-parent", + "exit_code": 0, + "seconds": 4.6491062919958495, + "log_sha256": "9578ab17094f120d54af46f9e0601714c09a2978faa0d7949823099d06d931d4" + }, + { + "name": "strict-t74", + "exit_code": 0, + "seconds": 102.78292987498571, + "log_sha256": "0ae919e2ba45c1c7bfde5b86be39c6206ffdc7b8f60597603d64c8a9f2e1c31c" + }, + { + "name": "geometry-controls", + "exit_code": 0, + "seconds": 0.26364212497719564, + "log_sha256": "0a3ecf05cfa2bebb61fffd2fbb4b244c03d742069e2705d02512699bbf4b01f9" + } + ], + "scope": "Conditional finite construction only. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape, exact recovery, analytic transfer, PR559 recurrence correction and PR589 bit H1-H5 assumptions remain. No unconditional theorem, full Lean certification, or global packing claim." +} diff --git a/research/capped-fusion-t74-k554/evidence/GEOMETRY-CONTROLS.json b/research/capped-fusion-t74-k554/evidence/GEOMETRY-CONTROLS.json new file mode 100644 index 0000000000..9f71586085 --- /dev/null +++ b/research/capped-fusion-t74-k554/evidence/GEOMETRY-CONTROLS.json @@ -0,0 +1,29 @@ +{ + "status": "PASS_T74_GEOMETRY_AND_CHARGE_CONTROLS", + "rejected": [ + { + "name": "old_prefix", + "reason": "strict arithmetic invariant" + }, + { + "name": "old_call_count", + "reason": "strict arithmetic invariant" + }, + { + "name": "old_parent_idle", + "reason": "strict arithmetic invariant" + }, + { + "name": "old_stock", + "reason": "strict arithmetic invariant" + }, + { + "name": "missing_call", + "reason": "strict arithmetic invariant" + }, + { + "name": "low_row", + "reason": "strict arithmetic invariant" + } + ] +} diff --git a/research/capped-fusion-t74-k554/evidence/INDEPENDENT.json b/research/capped-fusion-t74-k554/evidence/INDEPENDENT.json new file mode 100644 index 0000000000..16bb558f24 --- /dev/null +++ b/research/capped-fusion-t74-k554/evidence/INDEPENDENT.json @@ -0,0 +1,145 @@ +{ + "status": "PASS_INDEPENDENT_VARIABLE_T_LITERAL_WINDOWS_CHARTS_PREFIX_ROW", + "roles": 319680, + "calls": 666, + "source_events_per_replica": 30, + "expanded_replica_events": 2220, + "bridge_events": 666, + "literal_windows": 1332, + "checked_whole_helper_widths": 319680, + "checked_busy_family_windows": 319680, + "orthogonal_port_bases": 112, + "actual_73_axis_charts": 11142, + "checked_slice_prefixes": 149184, + "local_profiles": { + "gauge44": { + "1": 2346, + "4": 130, + "8": 8, + "3": 414, + "2": 504, + "5": 82 + }, + "extra": { + "1": 2338, + "4": 126, + "8": 8, + "3": 418, + "2": 512, + "5": 82 + } + }, + "width_inventories": { + "gauge44": { + "9": 240, + "4": 44, + "8": 114, + "7": 38, + "5": 44 + }, + "extra": { + "9": 240, + "4": 40, + "8": 114, + "7": 38, + "5": 48 + } + }, + "idle": { + "48": 22748 + }, + "profile": { + "1": 1559100, + "2": 339000, + "3": 277392, + "4": 84912, + "5": 54612, + "8": 5328, + "48": 22748 + }, + "live": 66304, + "physical": 66794, + "rank_mass": 4816512, + "deficit": 23680, + "namespace": { + "data": [ + 0, + 66304 + ], + "centres": [ + 66304, + 66312 + ], + "tableau": [ + 66312, + 66792 + ], + "coefficient": [ + 66792, + 66794 + ] + }, + "local_prefix_bits": 68, + "local_prefix_from_native_receipt": true, + "local_profile_recounted": true, + "prefix_formula": { + "local_scalar": 68, + "input_l2": 37, + "invocations": 666, + "bridges": 666, + "margin": 4 + }, + "prefix_bits": 1441, + "charged_prefix_bits": 2048, + "physical_stock_bits": 2644, + "physical_row_coefficient": 19545, + "row_limit": 20161, + "scope": "Finite role/window/chart and inherited prefix/row obligations. Requires separately admitted local supplier and emitted controller, complete finite invoice, exact moments and outer assembly; no all-size theorem is asserted.", + "controls_rejected": [ + { + "name": "private_namespace_collision", + "reason": "private-namespace collision" + }, + { + "name": "copy_replica_alias", + "reason": "role invocation time" + }, + { + "name": "missing_whole_helper", + "reason": "complete helper role count" + }, + { + "name": "split_whole_helper", + "reason": "complete helper role count" + }, + { + "name": "truncated_helper_width", + "reason": "whole-helper residual width" + }, + { + "name": "cross_idle_boundary", + "reason": "strict bridge-aware idle window" + }, + { + "name": "cross_child_pending_axis_alias", + "reason": "overlapping pending children on one family" + }, + { + "name": "wrong_provider_at_changed_call", + "reason": "whole-helper residual width" + } + ], + "disjoint_pending_child_axis_checks": 2016, + "provider_counts": { + "extra": 417, + "gauge44": 249 + }, + "input_sha256": { + "/Volumes/SP AI 01_16/CodexWorkspaces/imb-retime2/frontier390/kernel60/packing74/package-replay/parent/layout/packing74/candidate/PLAN.json": "e9ca855b0ccba243868aa7bd24b42f9e59f2f554bfe10521143591073e72ea18", + "/Volumes/SP AI 01_16/CodexWorkspaces/imb-retime2/frontier390/kernel60/packing74/package-replay/parent/layout/packing74/candidate/DISPATCH.json": "6aad7f628f4c9b510a95c5b34357736303069ecf92a551659900b1ba540bc7e0", + "/Volumes/SP AI 01_16/CodexWorkspaces/imb-retime2/frontier390/kernel60/packing74/package-replay/parent/layout/packing74/candidate/OWNERS.json.gz": "cdfdcdec09592b4fd296ec49efe38573c1a61ecb8385b538ce801ee29355695b", + "/Volumes/SP AI 01_16/CodexWorkspaces/imb-retime2/frontier390/kernel60/packing74/package-replay/parent/layout/demotions1148-round43/baseline-replay/parent/t16/global8/base/split-centres/GLOBAL-TEMPLATE.json.gz": "ab8448de2036a23d9b55a196a8846512dc24fdf09855c1e0f0caa5b7a6965f7b", + "/Volumes/SP AI 01_16/CodexWorkspaces/imb-retime2/frontier390/kernel58/native-base/local/CANONICAL-WORD.json.gz": "f69c0ca2c217eab87a231b67e548cd6491286314b1215e19f0b1d7463afd5e91", + "/Volumes/SP AI 01_16/CodexWorkspaces/imb-retime2/frontier390/kernel60/packing74/package-replay/parent/layout/packing74/native-extra/local/CANONICAL-WORD.json.gz": "e38e2136e5a4a75bb843735a59158543eff04bd06384d73752b220d6938af73d" + } +} diff --git a/research/capped-fusion-t74-k554/evidence/OUTER-DISCOVERY.json b/research/capped-fusion-t74-k554/evidence/OUTER-DISCOVERY.json new file mode 100644 index 0000000000..882b30d580 --- /dev/null +++ b/research/capped-fusion-t74-k554/evidence/OUTER-DISCOVERY.json @@ -0,0 +1,395 @@ +{ + "status": "PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY", + "kappa": "1676855229071321886206381217337893/1000000000000000000000000000000000000", + "kappa_decimal": "0.001676855229071321886206381217337893", + "complex_lower": "839835897752368810771/500000000000000000000000", + "complex_decimal": "0.001679671795504737621542", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_decimal": "0.001733427039589844234749", + "binding": "complex", + "gain_over_pr635_percent": "0.00001493392094572461521830473357486811262641222881358040582669723168874522", + "complex_profile": { + "1": 1559100, + "2": 339000, + "3": 277392, + "4": 84912, + "5": 54612, + "8": 5328, + "48": 22748 + }, + "provider_counts": { + "extra": 417, + "gauge44": 249 + }, + "surcharge_model": { + "complex": false, + "bit": true + }, + "conservative_complex_lower": "83983589632938552601/50000000000000000000000", + "conservative_complex_decimal": "0.00167967179265877105202", + "conservative_kappa": "1676855226234891862111568849431109/1000000000000000000000000000000000000", + "conservative_kappa_decimal": "0.001676855226234891862111568849431109", + "conservative_moments": [ + { + "side": "conservative_complex", + "surcharge": true, + "endpoint": "83983589632938552601/50000000000000000000000", + "accept": true, + "mercator": [ + "-6806405835181690224448760866098662996463265/13479973333575319897333507543509815336818572211270286240551805124608", + "-212700182349427819514023777065583218639477/421249166674228746791672110734681729275580381602196445017243910144" + ], + "base_two": [ + "-1262319429171566558719/2500000000000000000000000000000000000000000000", + "-1009853543337253246947/2000000000000000000000000000000000000000000000" + ] + }, + { + "side": "conservative_complex", + "surcharge": true, + "endpoint": "1679671792658771052021/1000000000000000000000000", + "accept": false, + "mercator": [ + "32576835786057171933027423569808193095310333/13479973333575319897333507543509815336818572211270286240551805124608", + "16288417893028585966513711784904096547655167/6739986666787659948666753771754907668409286105635143120275902562304" + ], + "base_two": [ + "6041708070917619306649/2500000000000000000000000000000000000000000000", + "24166842283670477226737/10000000000000000000000000000000000000000000000" + ] + } + ], + "conservative_bootstrap": [ + { + "exponent": "419228773834223999879355321864835115613413130677141986876803949525226982976877304002048397709072320811494258653351156134799/250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "689174330468763125644678135164884386519877528041543846895550474773017023122695997951602290927679188505741346648843865201/250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "4737228485815" + }, + { + "exponent": "209958395289004825064671008398048707626152106431942508319816913627497565495534701648211283881220612311807314585444664274102289666462883822615633975167751870599387686662024239359291937801/125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "578793341556437828991601951292373814397670649257042032836372502434504465298351788716118779387688192685414555335725897710333537116177384366024832248129400612313337975760640708062199/125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1679095795282918005" + }, + { + "exponent": "104979486555081765955718852060890332356742895070787053301865761925178163409996454821886501494686013508681313771058558194682922855372723943681804841240150408568034309716095450155731162186935931555338853541315400327873692923670541809037499026541229599/62500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "486091424795531147939109667643240356980508829379059113074821836590003545178113498505313986491318686228941441805317077144627276056318195158759849591431965690283904549844268837813064068444661146458684599672126307076329458190962500973458770401/62500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "595150244109829297064928" + }, + { + "exponent": "52489743520178358348183817001929422894962940286772175979474063084908574973381919559451666596447232442335725882704531760052210567533738242531053516144976787339010034742888327417727732697707384274087711536432070547485949172000206435110640591624247528356078592379665043831709797834540046349027060996843358120363001/31250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "408237027441182998070577105028685738875765360988374415091425026618080440548333403552767557664274117295468239947789432466261757468946483855023212660989965257111672582272267302292615725912288463567929452514050827999793564889359408375752471643921407620334956168290202165459953650972939003156641879636999/31250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "210949139446989141199128988231" + }, + { + "exponent": "26244871760292954835702644090121494957735418014575915437825411093298185477933724956382890690324412362964127160533600307934330858546530348285719399729625701931541244173367411698254137239467898352505649942173753584624659882781208713672260693896692306643846679957066384657722932135070800202344187306379588109714442139802306094250484622916688796366756298495824586553202347284399/15625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "342852109855909878505042260394998248055232405807656701814522066275043617109309675587637035872839466399692065669141453469651714280600270374298068458755826632588301745862760532101647494350057826246415375340117218791286327739306103307693356153320042933615342277067864929199797655812693620411890285557860197693905749515377083311203633243701504175413446797652715601/15625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "74770261583247044565375157256617981" + }, + { + "exponent": "13122435880146648555966741010740973741937418591174780383779292602981566047994311207260562762062555349767744144159025536129460044258004940348090852783195661489550087089297958066533531986247559970829760041424881216968015092395024610925462619164664174981668607459280868831858674495933272521367971192273950891973468099347524068832601339288647856415214459560004945332847889113125069176158637455230777236561255913282812638677100325754031828201/7812500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "287939508989259026258060487915237204951336316772018433952005688792739437237937444650232255855840974463870539955741995059651909147216804338510449912910702041933466468013752440029170239958575118783031984907604975389074537380835335825018331392540719131168141325504066727478632028807726049108026531900652475931167398660711352143584785540439995054667152110886874930823841362544769222763438744086717187361322899674245968171799/7812500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "26502084966466938934949504256676659676053" + }, + { + "exponent": "6561217940073324421711303064379362484677939288311350601670644439628625508343878208659839905602068486275275019585150033277892824847481019342659704645452944195245457186139433773361871443039373158053419015373823777709231597837995656595692598846353677778290031982122555689449134389624202094659605420811443888234475971824104020099768162214255502011356498641783547857116872083937427417584255346434173177900697543967641207339495734459328614463544246973540121893102437506084347852212850976097329373166299199/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "241821935620637515321013964894642065887160247871374491656121791340160094397931513724724980414849966722107175152518980657340295354547055804754542813860566226638128556960626841946580984626176222290768402162004343404307401153646322221709968017877444310550865610375797905340394579188556111765524028175895979900231837785744497988643501358216452142883127916062572582415744653565826822099302456032358792660504265540671385536455753026459878106897562493915652147787149023902670626833700801/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "9393580986577732870361184764087692110382483960" + }, + { + "exponent": "3280608970036662210976359409257945934930240629068364977895065364537401433193880851412180571441752344570267155896864570944389230754891076847764005165365421475664014247749738400847552424297246503194909789609981275870547682124664408924722948544208250247356474524046358004568420994540486402169642050562802220374289474418076739544588194358029282826703383003280997029083159996386124412985265422727094151695042779152029239902487645019704354636959905368278898458468320972259798820708307476914543523115237109718915117585765166663363699721645485305238316714765513234333401/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "203090742054065069235997534631355883836979212598566806119148587819428558247655429732844103135429055610769245108923152235994834634578524335985752250261599152447575702753496805090210390018724129452317875335591075277051455791749752643525475953641995431579005459513597830357949437197779625710525581923260455411805641970717173296616996719002970916840003613875587014734577272905848304957220847970760097512354980295645363040094631721101541531679027740201179291692523085456476884762890281084882414234833336636300278354514694761683285234486765666599/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "3329525351044790254147040565833757876376988846752907" + }, + { + "exponent": "1640304485018331105488281079437104610823969549946022526907536003188506643397923866190152010149652229549678046080177153157453279838180054601135901520741372088902114851315225461195508482610851213263723362951534636874121037870966380152439620032964317563430842602605111962174288227421310375161815751999161384854037307494362707344059467641251874118847529036059726631144022029836253486255869806796981953114101693369172887879463319854886105335485788740860166504120192789678535556640167367776934611935335694190538125428682214108147252535811772014247000239580289608999738810952690802360274554739767093272378627703599793918031990273999/976562500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "170562895389175768763355475639981915168686493356602076133809847989850347770450321953919822846842546720161819945398864098479258627911097885148684774538804491517389148786736276637048465363125878962129033619847560379967035682436569157397394888037825711772578689624838184248000838615145962692505637292655940532358748125881152470963940273368855977970163746513744130193203018046885898306630827112120536680145113894664514211259139833495879807210321464443359832632223065388064664305809461874571317785891852747464188227985752999760419710391000261189047309197639725445260232906727621372296400206081968009726001/976562500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1180139829431404893967201542216727833801345118024840785204" + }, + { + "exponent": "820152242509165552744140624856755157870165507174335361339651230231743855823017478533040654212219716880166265821138491434763712182470658558450411348175342247137210083671671696858407307525706942458155927508587375605344334983974546468710772128505689983323882144813136004482594268066961718795085843462362005839061345062408450244441770184114337206529449501828226819021458731713390182581365520411980281210576624040435225557453452818094611914620579788316368526934101938825233253626068925092134568449973563175516801603751057641881272958529430733887439095357208794803687721106267303775464754002524344005612681159088311592911298963460444193121113675669875698578120038608126435469839148763535878601/488281250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "143244842129703649476413722105074355705756144176982521466959345787780283119833734178861508565236287817529341441549588651824657752862789916328328303141592692474293057541844072491412624394655665016025453531289227871494310016676117855186863995517405731933038281204914156537637994160938654937591549755558229815885662793470550498171773180978541268286609817418634479588019718789423375959564774442546547181905388085379420211683631473065898061174766746373931074907865431550026436824483198396248942358118727041470569266112560904642791205196312278893732696224535245997475655994387318840911688407088701036539555806878886324330124301421879961391873564530160851236464121399/488281250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "418296865219348141817604657452702692761145439994854204315630375" + }, + { + "exponent": "410076121254582776372070312499879697839550017335028936027963777646135290887611461310454440558322320354377374034736830379787112349096931597455672871516128732982849206810301840307878925098431443651061226704158855865425035164042200455934637245524194902201675582574626907930553524486095780440582217484118768667914199913609435476189714080642324098645769663717710779727919612326440941588657900542835592370904907073664899438170144845309473551951588952476746264059274692982814384944654957466307859924102755239738051806654751275145069845365730855432904282428980427586506467789462243272589225497457693462664682593843360731625785181015929828835075462817742724676233295092957350159337717755629666891302734911183096733516655712264893271132446091403202350211208799/244140625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "120302160384560990345605694399015322614709112388538689545559441677679645622625965263169620212887650903068402544327128483871267017150793189698159692121074901568556348938773295841144134574964835957799544065362754475805097798324417425373092069446475513904219559417782515881231332085800086390564523810285919357675901354230336282289220272080387673559058411342099457164407629095092926335100561829855154690526448048411047523253735940725307017185615055345042533692140075897244760261948193345248724854930154634269144567095717571019572413493532210537756727410774502542306537335317406156639268374214818984070171164924537182257275323766704907042649840662282244370333108697265088816903266483344287735106728867553908596797649788791201/244140625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "148264013372581194538873855438284423060487844962498000055633622251273" + }, + { + "exponent": "205038060627291388186035156249999898965894592233412998904067690271296672491855467600020964544705722256559134798505522586214507315193471923679309730956834066331637965485861842642558073559641760216603617724000019656625686005379515141831293288087333181102201955858555975316196340641156312625123271161070812029446400872038423329456018341770554349939967912811246181448474276243898552706022610668449661166351456795614315444890589436601426922871551195653009778706569867531837895341496357027613757235260291583849945764198605590023023918102873062420905680143344874768169794221168986554856258310131402281117359774399738281172944503526322802446371249222020284355926018899819073676487840587078442350253502528576040345635580249599777157429060365763523303815487260916415420544066140106497788462217764064692442596385114344463801/122070312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "101034072696929274271957113706213078327508144532399979035455294277743440865201494477413785492684806528076320690269043165933668362034514138157357441926440358239783396382275999980343374313994620484858168706711912666818897798044141444024683803659358843687374876728838929187970553599127961576670543981658229445650060032087188753818551525723756101447293977389331550338833648543204385684555109410563398573077128448804346990221293430132468162104658503642972386242764739708416150054235801394409976976081897126937579094319856655125231830205778831013445143741689868597718882640225600261718827055496473677197553628750777979715644073981100180926323512159412921557649746497471423959654364419750400222842570939634236476696184512739083584579455933859893502211537782235935307557403614885655536199/122070312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "52551715035726634570249715576113821243572277162668637491473049614849591666" + } + ], + "conservative_outer": { + "bit_positive": "205038060627291388186035156249999898965894592233412998904067690271296672491855467600020964544705722256559134798505522586214507315193471923679309730956834066331637965485861842642558073559641760216603617724000019656625686005379515141831293288087333181102201955858555975316196340641156312625123271161070812029446400872038423329456018341770554349939967912811246181448474276243898552706022610668449661166351456795614315444890589436601426922871551195653009778706569867531837895341496357027613757235260291583849945764198605590023023918102873062420905680143344874768169794221168986554856258310131402281117359774399738281172944503526322802446371249222020284355926018899819073676487840587078442350253502528576040345635580249599777157429060365763523303815487260916415420544066140106497788462217764064692442596385114344463801/122070312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_above_bit": "101034105407766587001095932309728703327508144532399979035455294277743440865201494477413785492684806528076320690269043165933668362034514138157357441926440358239783396382275999980343374313994620484858168706711912666818897798044141444024683803659358843687374876728838929187970553599127961576670543981658229445650060032087188753818551525723756101447293977389331550338833648543204385684555109410563398573077128448804346990221293430132468162104658503642972386242764739708416150054235801394409976976081897126937579094319856655125231830205778831013445143741689868597718882640225600261718827055496473677197553628750777979715644073981100180926323512159412921557649746497471423959654364419750400222842570939634236476696184512739083584579455933859893502211537782235935307557403614885655536199/122070312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_below_one_over32": "1478516410367061447399/50000000000000000000000", + "beta_positive": "1/10000000000000000000000000000000000000000", + "beta_below_one": "9999999999999999999999999999999999999999/10000000000000000000000000000000000000000", + "leaf_saving_above_bit": "101034084903960524271957113706213078327508144532399979035455294277743440865201494477413785492684806528076320690269043165933668362034514138157357441926440358239783396382275999980343374313994620484858168706711912666818897798044141444024683803659358843687374876728838929187970553599127961576670543981658229445650060032087188753818551525723756101447293977389331550338833648543204385684555109410563398573077128448804346990221293430132468162104658503642972386242764739708416150054235801394409976976081897126937579094319856655125231830205778831013445143741689868597718882640225600261718827055496473677197553628750777979715644073981100180926323512159412921557649746497471423959654364419750400222842570939634236476696184512739083584579455933859893502211537782235935307557403614885655536199/122070312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_positive": "1025190303136456940930175781249999494829267923106437703132152416200233362560311443407871409724624543592524377320035757463472515611422653896139989519985664809071975320114115741289111058067251967016686450654514236440485871953337933948939862822712665885854384093287400361439150409917694229944514153849495504171915808019550960334654968437691700937670393163184192483912915362877722209180173085429437059650308809701827678671746924572338684953191404521469434578087958748222588049784610233942415776397594888051717890925651531593087505833279105020520678454952525768250825947187742059711860385870513666530818629077777522419309866259321482609950738886335701683498457149995569045579992831686170191466911586623980382654501413407411807344795048326289040478731800724332477325562901640166725419007273333062545797561381505582212507211537782235935307557403614885655536199/610351562500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_internal": "205038060627291388186035156249999898965894592233412998904067690271296672491855467600020964544705722256559134798505522586214507315193471923679309730956834066331637965485861842642558073559641760216603617724000019656625686005379515141831293288087333181102201955858555975316196340641156312625123271161070812029446400872038423329456018341770554349939967912811246181448474276243898552706022610668449661166351456795614315444890589436601426922871551195653009778706569867531837895341496357027613757235260291583849945764198605590023023918102873062420905680143344874768169794221168986554856258310131402281117359774399738281172944503526322802446371249222020284355926018899819073676487840587078442350253502528576040345635580249599777157429060365763523303815487260916415420544066140106497788462217764064692442596385114344463801/610351562500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_leaf": "505170629557863248651173754566221641637439688556592128590275375456407475622679964242536527484388577346103860010480014335190928024679885884258710888941932748032983313549345485763559514128046662066051060137177287334114145615906712599638560849590082305770055485846150504495828084191980449039665345031562308299062329606836815807516087084637122277790819826914570562940349691190298172321328253075427661315046808595478530565421912041251777411950215389766057584223602405111948282109074348468406912494166720894979479321545047474231749174052812257940288139614129486333469181370922222477580690133740678517390049261113664298316501542850004430954420007168313829808533088413376019617345498586592588192655204951673710959521268199275667522674437098359833274580992726666937454202438618494417787492788462217764064692442596385114344463801/610351562500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_positive": "1025190303136456940930175781249999494844526712168937703132152416200233362560311443407871409724624543592524377320035757463472515611422653896139989519985664809071975320114115741289111058067251967016686450654514236440485871953337933948939862822712665885854384093287400361439150409917694229944514153849495504171915808019550960334654968437691700937670393163184192483912915362877722209180173085429437059650308809701827678671746924572338684953191404521469434578087958748222588049784610233942415776397594888051717890925651531593087505833279105020520678454952525768250825947187742059711860385870513666530818629077777522419309866259321482609950738886335701683498457149995569045579992831686170191466911586623980382654501413407411807344795048326289040478731800724332477325562901640166725419007273333062545797561381505582212507211537782235935307557403614885655536199/610351562500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_below_one": "609326372196863543059069824218750000505155473287831062296867847583799766637439688556592128590275375456407475622679964242536527484388577346103860010480014335190928024679885884258710888941932748032983313549345485763559514128046662066051060137177287334114145615906712599638560849590082305770055485846150504495828084191980449039665345031562308299062329606836815807516087084637122277790819826914570562940349691190298172321328253075427661315046808595478530565421912041251777411950215389766057584223602405111948282109074348468406912494166720894979479321545047474231749174052812257940288139614129486333469181370922222477580690133740678517390049261113664298316501542850004430954420007168313829808533088413376019617345498586592588192655204951673710959521268199275667522674437098359833274580992726666937454202438618494417787492788462217764064692442596385114344463801/610351562500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_reservations": "1/40000000000000000000000000000000000000000", + "lambda_above_tau": "205038060627291388186035156249999898965894592233412998904067690271296672491855467600020964544705722256559134798505522586214507315193471923679309730956834066331637965485861842642558073559641760216603617724000019656625686005379515141831293288087333181102201955858555975316196340641156312625123271161070812029446400872038423329456018341770554349939967912811246181448474276243898552706022610668449661166351456795614315444890589436601426922871551195653009778706569867531837895341496357027613757235260291583849945764198605590023023918102873062420905680143344874768169794221168986554856258310131402281117359774399738281172944503526322802446371249222020284355926018899819073676487840587078442350253502528576040345635580249599777157429060365763523303815487260916415420544066140106497788462217764064692442596385114344463801/1220703125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_sigma": "1010341259115726497302347509132443283274980411218592023767551846845124679948687436629605454947812609986485463461825230164859269834852456575045498098574134539231900295460725485665276385698019764490341903670736850668208634606127419819761979867886876524206929869490345150435680852187620256923018064939853455527312629767272759576608844713255902785027289713861228314634517933906320100744103800128244654180432450839500265516528379191914118222473507907980919515437426103654029032380253355440456797374576206529667374793144330749857908325081706413007513858322578829322063594572050223786174825411223046903377817404867554196894721912755505335586037567965378437596781820900733139415617320685344589306868059649844893343002190762971085445571716767659300785638681637846613991989456692922695468487788462217764064692442596385114344463801/1220703125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_internal": "205038060627291388186035156249999898965894592233412998904067690271296672491855467600020964544705722256559134798505522586214507315193471923679309730956834066331637965485861842642558073559641760216603617724000019656625686005379515141831293288087333181102201955858555975316196340641156312625123271161070812029446400872038423329456018341770554349939967912811246181448474276243898552706022610668449661166351456795614315444890589436601426922871551195653009778706569867531837895341496357027613757235260291583849945764198605590023023918102873062420905680143344874768169794221168986554856258310131402281117359774399738281172944503526322802446371249222020284355926018899819073676487840587078442350253502528576040345635580249599777157429060365763523303815487260916415420544066140106497788462217764064692442596385114344463801/1220703125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_prime_above_lambda": "205038060627291388186035156249999898965894592233412998904067690271296672491855467600020964544705722256559134798505522586214507315193471923679309730956834066331637965485861842642558073559641760216603617724000019656625686005379515141831293288087333181102201955858555975316196340641156312625123271161070812029446400872038423329456018341770554349939967912811246181448474276243898552706022610668449661166351456795614315444890589436601426922871551195653009778706569867531837895341496357027613757235260291583849945764198605590023023918102873062420905680143344874768169794221168986554856258310131402281117359774399738281172944503526322802446371249222020284355926018899819073676487840587078442350253502528576040345635580249599777157429060365763523303815487260916415420544066140106497788462217764064692442596385114344463801/1220703125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_leaf": "505170629557863248651173754566221641637439688556592128590275375456407475622679964242536527484388577346103860010480014335190928024679885884258710888941932748032983313549345485763559514128046662066051060137177287334114145615906712599638560849590082305770055485846150504495828084191980449039665345031562308299062329606836815807516087084637122277790819826914570562940349691190298172321328253075427661315046808595478530565421912041251777411950215389766057584223602405111948282109074348468406912494166720894979479321545047474231749174052812257940288139614129486333469181370922222477580690133740678517390049261113664298316501542850004430954420007168313829808533088413376019617345498586592588192655204951673710959521268199275667522674437098359833274580992726666937454202438618494417787492788462217764064692442596385114344463801/610351562500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_reservations": "1/40000000000000000000000000000000000000000", + "lambda_prime_below_one": "1025190303136456940930175781249999494829267923106437703132152416200233362560311443407871409724624543592524377320035757463472515611422653896139989519985664809071975320114115741289111058067251967016686450654514236440485871953337933948939862822712665885854384093287400361439150409917694229944514153849495504171915808019550960334654968437691700937670393163184192483912915362877722209180173085429437059650308809701827678671746924572338684953191404521469434578087958748222588049784610233942415776397594888051717890925651531593087505833279105020520678454952525768250825947187742059711860385870513666530818629077777522419309866259321482609950738886335701683498457149995569045579992831686170191466911586623980382654501413407411807344795048326289040478731800724332477325562901640166725419007273333062545797561381505582212507211537782235935307557403614885655536199/610351562500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_positive": "610351562499999999999999999999999999999938964843750000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000/611376752803136456940930175781249999494829267923106437703132152416200233362560311443407871409724624543592524377320035757463472515611422653896139989519985664809071975320114115741289111058067251967016686450654514236440485871953337933948939862822712665885854384093287400361439150409917694229944514153849495504171915808019550960334654968437691700937670393163184192483912915362877722209180173085429437059650308809701827678671746924572338684953191404521469434578087958748222588049784610233942415776397594888051717890925651531593087505833279105020520678454952525768250825947187742059711860385870513666530818629077777522419309866259321482609950738886335701683498457149995569045579992831686170191466911586623980382654501413407411807344795048326289040478731800724332477325562901640166725419007273333062545797561381505582212507211537782235935307557403614885655536199", + "epsilon_below_one": "1025190303136456940930175781249999494890303079356437703132152416200233362560311443407871409724624543592524377320035757463472515611422653896139989519985664809071975320114115741289111058067251967016686450654514236440485871953337933948939862822712665885854384093287400361439150409917694229944514153849495504171915808019550960334654968437691700937670393163184192483912915362877722209180173085429437059650308809701827678671746924572338684953191404521469434578087958748222588049784610233942415776397594888051717890925651531593087505833279105020520678454952525768250825947187742059711860385870513666530818629077777522419309866259321482609950738886335701683498457149995569045579992831686170191466911586623980382654501413407411807344795048326289040478731800724332477325562901640166725419007273333062545797561381505582212507211537782235935307557403614885655536199/611376752803136456940930175781249999494829267923106437703132152416200233362560311443407871409724624543592524377320035757463472515611422653896139989519985664809071975320114115741289111058067251967016686450654514236440485871953337933948939862822712665885854384093287400361439150409917694229944514153849495504171915808019550960334654968437691700937670393163184192483912915362877722209180173085429437059650308809701827678671746924572338684953191404521469434578087958748222588049784610233942415776397594888051717890925651531593087505833279105020520678454952525768250825947187742059711860385870513666530818629077777522419309866259321482609950738886335701683498457149995569045579992831686170191466911586623980382654501413407411807344795048326289040478731800724332477325562901640166725419007273333062545797561381505582212507211537782235935307557403614885655536199", + "guard_width": "1025190303136456940930175781249999494890303079356437703132152416200233362560311443407871409724624543592524377320035757463472515611422653896139989519985664809071975320114115741289111058067251967016686450654514236440485871953337933948939862822712665885854384093287400361439150409917694229944514153849495504171915808019550960334654968437691700937670393163184192483912915362877722209180173085429437059650308809701827678671746924572338684953191404521469434578087958748222588049784610233942415776397594888051717890925651531593087505833279105020520678454952525768250825947187742059711860385870513666530818629077777522419309866259321482609950738886335701683498457149995569045579992831686170191466911586623980382654501413407411807344795048326289040478731800724332477325562901640166725419007273333062545797561381505582212507211537782235935307557403614885655536199/611376752803136456940930175781249999494829267923106437703132152416200233362560311443407871409724624543592524377320035757463472515611422653896139989519985664809071975320114115741289111058067251967016686450654514236440485871953337933948939862822712665885854384093287400361439150409917694229944514153849495504171915808019550960334654968437691700937670393163184192483912915362877722209180173085429437059650308809701827678671746924572338684953191404521469434578087958748222588049784610233942415776397594888051717890925651531593087505833279105020520678454952525768250825947187742059711860385870513666530818629077777522419309866259321482609950738886335701683498457149995569045579992831686170191466911586623980382654501413407411807344795048326289040478731800724332477325562901640166725419007273333062545797561381505582212507211537782235935307557403614885655536199", + "K_geometry": "458788862178136456940930175781249999494844526712168937703132152416200233362560311443407871409724624543592524377320035757463472515611422653896139989519985664809071975320114115741289111058067251967016686450654514236440485871953337933948939862822712665885854384093287400361439150409917694229944514153849495504171915808019550960334654968437691700937670393163184192483912915362877722209180173085429437059650308809701827678671746924572338684953191404521469434578087958748222588049784610233942415776397594888051717890925651531593087505833279105020520678454952525768250825947187742059711860385870513666530818629077777522419309866259321482609950738886335701683498457149995569045579992831686170191466911586623980382654501413407411807344795048326289040478731800724332477325562901640166725419007273333062545797561381505582212507211537782235935307557403614885655536199/6113767528031364569409301757812499994948292679231064377031321524162002333625603114434078714097246245435925243773200357574634725156114226538961399895199856648090719753201141157412891110580672519670166864506545142364404858719533379339489398628227126658858543840932874003614391504099176942299445141538494955041719158080195509603346549684376917009376703931631841924839129153628777222091801730854294370596503088097018276786717469245723386849531914045214694345780879587482225880497846102339424157763975948880517178909256515315930875058332791050205206784549525257682508259471877420597118603858705136665308186290777775224193098662593214826099507388863357016834984571499955690455799928316861701914669115866239803826545014134074118073447950483262890404787318007243324773255629016401667254190072733330625457975613815055822125072115377822359353075574036148856555361990000000000000000000000000000000000000000", + "K_dominates_log": "10251903031364569409301757812499994948444241931386240574380593986221083626108269907366545159543113283509043539837797263191317284704501914417807370822536612333256280685529734758994970591152534005357792531225028248663569608475312087522381941776472144622103355060920665680442564236354229633559287154401667641357718929785591909116605170223067513872532015823822373878794498660339530390864060461131186404019175181655399064508289072637957412472263736404992518102207840557653541812892910934902688329397860921768956321206730705696932642556393455317155066658599606150915171966044141492098083180250184139539935464830587482133386802207344312432976570234279239312565261633696368973189977577975366212985617409089808257499434141242431903256483571676266424404663505829917361448284221353340965149594001529901125498288252154181958346696370549026290529776474767350973149482788462217764064692442596385114344463801/6113767528031364569409301757812499994948292679231064377031321524162002333625603114434078714097246245435925243773200357574634725156114226538961399895199856648090719753201141157412891110580672519670166864506545142364404858719533379339489398628227126658858543840932874003614391504099176942299445141538494955041719158080195509603346549684376917009376703931631841924839129153628777222091801730854294370596503088097018276786717469245723386849531914045214694345780879587482225880497846102339424157763975948880517178909256515315930875058332791050205206784549525257682508259471877420597118603858705136665308186290777775224193098662593214826099507388863357016834984571499955690455799928316861701914669115866239803826545014134074118073447950483262890404787318007243324773255629016401667254190072733330625457975613815055822125072115377822359353075574036148856555361990000000000000000000000000000000000000000", + "record_suffix": "1025190303136456940930175781249999494890303079356437703132152416200233362560311443407871409724624543592524377320035757463472515611422653896139989519985664809071975320114115741289111058067251967016686450654514236440485871953337933948939862822712665885854384093287400361439150409917694229944514153849495504171915808019550960334654968437691700937670393163184192483912915362877722209180173085429437059650308809701827678671746924572338684953191404521469434578087958748222588049784610233942415776397594888051717890925651531593087505833279105020520678454952525768250825947187742059711860385870513666530818629077777522419309866259321482609950738886335701683498457149995569045579992831686170191466911586623980382654501413407411807344795048326289040478731800724332477325562901640166725419007273333062545797561381505582212507211537782235935307557403614885655536199/611376752803136456940930175781249999494829267923106437703132152416200233362560311443407871409724624543592524377320035757463472515611422653896139989519985664809071975320114115741289111058067251967016686450654514236440485871953337933948939862822712665885854384093287400361439150409917694229944514153849495504171915808019550960334654968437691700937670393163184192483912915362877722209180173085429437059650308809701827678671746924572338684953191404521469434578087958748222588049784610233942415776397594888051717890925651531593087505833279105020520678454952525768250825947187742059711860385870513666530818629077777522419309866259321482609950738886335701683498457149995569045579992831686170191466911586623980382654501413407411807344795048326289040478731800724332477325562901640166725419007273333062545797561381505582212507211537782235935307557403614885655536199", + "phase_local": "82015224250916555274414062499999959590612869595711879793631263120237419005330086204706606340266831334985749952240300285634393377504087687147606637221533148968294553093517836649232744655860171696525844077041024799497580645208967463948172339366358756631910241591038690981183092930592825729675277923866352933391825491154159132542452960861486579509459537246715847752698574061780085033476176441191780579540791860783336571530573792701665359195662052907852938568364952933234705297815627310871792677229503085389208686002337917213058050885930806753602558505276409928472988269186085671928310191186140796697239500275014051485077440359848095129528292277778357157457262133386202163789475796007279615669428472768435043314533079761258417392136954516499257915889556533190774237687336165011744480103134844279331327584957544936833851504015305541762058794727809346860683412788462217764064692442596385114344463801/48910140224250916555274414062499999959586341433848515016250572193296018669004824915472629712777969963487401950185602860597077801248913812311691199161598853184725758025609129259303128884645380157361334916052361138915238869756267034715915189025817013270868350727462992028915132032793415538395561132307959640333753264641564076826772397475015336075013631453054735398713033229030217776734413846834354964772024704776146214293739753965787094796255312361717554766247036699857807043982768818715393262111807591044137431274052122527447000466662328401641654276396202061460066075775019364776948830869641093322465490326222201793544789300745718608796059110906856134679876571999645523646399426534893615317352926929918430612360113072592944587583603866103123238298544057946598186045032131213338033520581866645003663804910520446577000576923022578874824604592289190852442895920000000000000000000000000000000000000000", + "phase_boundary": "16403044850183311054882812499999991917633472516899866793173508483422483801470153826602836117890860545064189803758011807972152378373037837794647307942450601187688132606214429206729636939556045807457911235152113667306484840195339691216021118712748139937229659620645067849077466695860395013226372077498640666389213777902897671124534980849217719498554374802927528782271990837605863645945098973707808761921028039866365136538770620071989522191412163533809125570735593046989070111600572338557182987783430250079263666760639895255457677556068085440279137388314760760420127649170593850369245495473266138724847239297252616649245999763273208092681003552293449413556004533669783246669934568092387361787086928833690553426442621686902747325253861634000667277054310175912225401661631194341317663637641528276400283656541187675233389965597242441902375120896456664906366676788462217764064692442596385114344463801/9782028044850183311054882812499999991917268286769703003250114438659203733800964983094525942555593992697480390037120572119415560249782762462338239832319770636945151605121825851860625776929076031472266983210472227783047773951253406943183037805163402654173670145492598405783026406558683107679112226461591928066750652928312815365354479495003067215002726290610947079742606645806043555346882769366870992954404940955229242858747950793157418959251062472343510953249407339971561408796553763743078652422361518208827486254810424505489400093332465680328330855279240412292013215155003872955389766173928218664493098065244440358708957860149143721759211822181371226935975314399929104729279885306978723063470585385983686122472022614518588917516720773220624647659708811589319637209006426242667606704116373329000732760982104089315400115384604515774964920918457838170488579184000000000000000000000000000000000000000", + "gamma_sublinear": "1/20000000000000000000000000000000000000000", + "cell_above_band": "12207031249999999999999999999999999999998167920122196863543059069824218750000505170732076893562296867847583799766637439688556592128590275375456407475622679964242536527484388577346103860010480014335190928024679885884258710888941932748032983313549345485763559514128046662066051060137177287334114145615906712599638560849590082305770055485846150504495828084191980449039665345031562308299062329606836815807516087084637122277790819826914570562940349691190298172321328253075427661315046808595478530565421912041251777411950215389766057584223602405111948282109074348468406912494166720894979479321545047474231749174052812257940288139614129486333469181370922222477580690133740678517390049261113664298316501542850004430954420007168313829808533088413376019617345498586592588192655204951673710959521268199275667522674437098359833274580992726666937454202438618494417787492788462217764064692442596385114344463801/24455070112125458277637207031249999979793170716924257508125286096648009334502412457736314856388984981743700975092801430298538900624456906155845599580799426592362879012804564629651564442322690078680667458026180569457619434878133517357957594512908506635434175363731496014457566016396707769197780566153979820166876632320782038413386198737507668037506815726527367699356516614515108888367206923417177482386012352388073107146869876982893547398127656180858777383123518349928903521991384409357696631055903795522068715637026061263723500233331164200820827138198101030730033037887509682388474415434820546661232745163111100896772394650372859304398029555453428067339938285999822761823199713267446807658676463464959215306180056536296472293791801933051561619149272028973299093022516065606669016760290933322501831902455260223288500288461511289437412302296144595426221447960000000000000000000000000000000000000000", + "prime_interval_packing": "1025190303136456940930175781249999494890303079356437703132152416200233362560311443407871409724624543592524377320035757463472515611422653896139989519985664809071975320114115741289111058067251967016686450654514236440485871953337933948939862822712665885854384093287400361439150409917694229944514153849495504171915808019550960334654968437691700937670393163184192483912915362877722209180173085429437059650308809701827678671746924572338684953191404521469434578087958748222588049784610233942415776397594888051717890925651531593087505833279105020520678454952525768250825947187742059711860385870513666530818629077777522419309866259321482609950738886335701683498457149995569045579992831686170191466911586623980382654501413407411807344795048326289040478731800724332477325562901640166725419007273333062545797561381505582212507211537782235935307557403614885655536199/611376752803136456940930175781249999494829267923106437703132152416200233362560311443407871409724624543592524377320035757463472515611422653896139989519985664809071975320114115741289111058067251967016686450654514236440485871953337933948939862822712665885854384093287400361439150409917694229944514153849495504171915808019550960334654968437691700937670393163184192483912915362877722209180173085429437059650308809701827678671746924572338684953191404521469434578087958748222588049784610233942415776397594888051717890925651531593087505833279105020520678454952525768250825947187742059711860385870513666530818629077777522419309866259321482609950738886335701683498457149995569045579992831686170191466911586623980382654501413407411807344795048326289040478731800724332477325562901640166725419007273333062545797561381505582212507211537782235935307557403614885655536199", + "alpha_positive": "20503806062729138818603515624999989897194684834325617605702118148223417251711399600234321756789358719434287313038154837826042440818728453379207266022393260423976033886670892171886081171825053675524657037770170613068428328008691427011780570003598803480647195993794669294834068335531171933004428692896622683076877009981101512463154854599984523249235947455664298717923652289116752482665791315425557000522263278673675851225758318361344262004177781619686863883087428039879422310739013274326846093373809802286135230463246021627807700889184505522361851208124863833423431437921562089216687038955320804848121755608362706326485464800559138532483959097636256147549833133652059428989905894837068127654733275329612084044448275316549976704434054939156829191981513073242134703913237755008219339666734860526583473902067210004083418811748371385643605350510916207528511472788462217764064692442596385114344463801/12227535056062729138818603515624999989896585358462128754062643048324004667251206228868157428194492490871850487546400715149269450312228453077922799790399713296181439506402282314825782221161345039340333729013090284728809717439066758678978797256454253317717087681865748007228783008198353884598890283076989910083438316160391019206693099368753834018753407863263683849678258307257554444183603461708588741193006176194036553573434938491446773699063828090429388691561759174964451760995692204678848315527951897761034357818513030631861750116665582100410413569099050515365016518943754841194237207717410273330616372581555550448386197325186429652199014777726714033669969142999911380911599856633723403829338231732479607653090028268148236146895900966525780809574636014486649546511258032803334508380145466661250915951227630111644250144230755644718706151148072297713110723980000000000000000000000000000000000000000", + "alpha_below_one": "12207031249999999999999999999999999999999390673627803136456940930175781249999494829267923106437703132152416200233362560311443407871409724624543592524377320035757463472515611422653896139989519985664809071975320114115741289111058067251967016686450654514236440485871953337933948939862822712665885854384093287400361439150409917694229944514153849495504171915808019550960334654968437691700937670393163184192483912915362877722209180173085429437059650308809701827678671746924572338684953191404521469434578087958748222588049784610233942415776397594888051717890925651531593087505833279105020520678454952525768250825947187742059711860385870513666530818629077777522419309866259321482609950738886335701683498457149995569045579992831686170191466911586623980382654501413407411807344795048326289040478731800724332477325562901640166725419007273333062545797561381505582212507211537782235935307557403614885655536199/12227535056062729138818603515624999989896585358462128754062643048324004667251206228868157428194492490871850487546400715149269450312228453077922799790399713296181439506402282314825782221161345039340333729013090284728809717439066758678978797256454253317717087681865748007228783008198353884598890283076989910083438316160391019206693099368753834018753407863263683849678258307257554444183603461708588741193006176194036553573434938491446773699063828090429388691561759174964451760995692204678848315527951897761034357818513030631861750116665582100410413569099050515365016518943754841194237207717410273330616372581555550448386197325186429652199014777726714033669969142999911380911599856633723403829338231732479607653090028268148236146895900966525780809574636014486649546511258032803334508380145466661250915951227630111644250144230755644718706151148072297713110723980000000000000000000000000000000000000000", + "alpha_below_one_fourth": "3036379957952953145886047363281250007576951654781206570909958643932777749561090157616805035291833763998528334573562023949491320137238384816101492681577535063621383842713899686534559474118511206159558775215502400569134001031757998242732918744109964525948624724472642332512361683714057299216718142076350854837782702030116653289210119987588473981439116018360256663701640924525271858563235074111721628297729280769835462542132976304500349162761779240987660309007352365701233517938184037895385232788614164637972454224165011636337629828277211019580241541066637765007830698298017148209342614890397247527805971389780524905770063866496048274517269735334042252269942452616325785798910058263593782829679824657790289829228058791720509060019541186692288373201677490548420251923901270445825407755369631804786145513904840317906979117245940539794032932436507158220749169522211537782235935307557403614885655536199/12227535056062729138818603515624999989896585358462128754062643048324004667251206228868157428194492490871850487546400715149269450312228453077922799790399713296181439506402282314825782221161345039340333729013090284728809717439066758678978797256454253317717087681865748007228783008198353884598890283076989910083438316160391019206693099368753834018753407863263683849678258307257554444183603461708588741193006176194036553573434938491446773699063828090429388691561759174964451760995692204678848315527951897761034357818513030631861750116665582100410413569099050515365016518943754841194237207717410273330616372581555550448386197325186429652199014777726714033669969142999911380911599856633723403829338231732479607653090028268148236146895900966525780809574636014486649546511258032803334508380145466661250915951227630111644250144230755644718706151148072297713110723980000000000000000000000000000000000000000", + "delta_positive": "1/80000000000000000000000000000000000000000", + "delta_below_one_eighth": "9999999999999999999999999999999999999999/80000000000000000000000000000000000000000", + "short_record_fallback": "74380450465530915216983008213599126137257050294017131621185578285482080170286745128655035940950870166272501357048720520489781861764750772202128297372355597718463564370638106740588959284994676233530637190006354050485456934829235040523655009385785736505493599635779568529574049845921978514480783424974376195340044410192710770362357810926838898883820957507271276801913251368290321119566353435934971677161233928460793146031489556618817176270968268552883741468768271101886665219406326143045795902189121822420109549454794113974166106873996088093359305202034257975534237382165045560219697878802282999825585037940424783532990624815146108388930688105886422610421591032770329262981770679519744167982133476185851829160288913208520801028284145406397948435253334941165547793024324065088503146498686746224482209969815741874528685096374346594299125213226602453689751494410678299785011007418643359539199402325762712047976537758477587479008686670629663311010104972478206191494177626051287976918660641080182555846094227693648559428818993523826792693802597280418475465905075570912160398592824718004730020296672264359109229844039533848633069915887086091732041495538803691916446130352359222750288614206703527284428634956691826394506415027283653304470806416905665307322443827415575462815494396839215963323807178940059195869285146042561308093494311388352817316151792471362257099700332695736573568945257718712725899024641909196027640600156700071247872648511592357531143324569160906065027838138730633675320733981387244599863275163865970676098289732020204988390330501395837524709541908435653086049103006955745471887152525072838432610240519736580914289066590726948782317546243246575171938199367601/74630951269914118278922140598297119078958650869519828821183124074243192549140663017994124927944900456981509323403324677424740297315847491930681151064451375098763668862318617644200330939705475093629966607745912382377988998041178947015251448098475667222394333995762622114433490040273156033928773700421080994161610816408636591837726436576866662712117967915427757871571400801132534449362814097342460578570594337121805136556609732003459312128075122622249686838145502776882640142795972928948048800829784532232875719107135196727671814676913953249575278131708071993194680901756316169398420457259584187808937820932345888967200911408608579420160002305460901084411432757567818487009276468711690697200550730789060105304504567066334449138768926797642705136563940518106991861030627641621914723999911295539861547553879578318141175196720920683097571723315870957721623071166992187500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "small_field_exposure": "1/10000000000000000000000000000000000000000", + "artificial_boundary": "342452996794007332442195312499999999676697448413546529539375400336895493102037083811584807021536869104356464202184910565710952633605539672367160370865922785585078454622419868342386719497131601215885106544344849453669134825383310479483222562265888069709656127277319796245122903081935792445162146621615956984871110434583742367696869013342584237086621567371861941842585269797147055288978123785854329270753649376955258347516545572245553046681221449820169543613012308839636173367917010123936710505198194992229344117956566334050277830980627819997797389364842393446275307868717654755530652208992493604157028675087619177574537449987123360411368065343142082410006270505595942153619025264495807929643873910810797431606017644559238615211243231663584857847536315967813007723782291434851683135286091128562202307871260852277536504791641202450997784474130997671336289804881634613346707805922672210844656966608597/48910140224250916555274414062499999959586341433848515016250572193296018669004824915472629712777969963487401950185602860597077801248913812311691199161598853184725758025609129259303128884645380157361334916052361138915238869756267034715915189025817013270868350727462992028915132032793415538395561132307959640333753264641564076826772397475015336075013631453054735398713033229030217776734413846834354964772024704776146214293739753965787094796255312361717554766247036699857807043982768818715393262111807591044137431274052122527447000466662328401641654276396202061460066075775019364776948830869641093322465490326222201793544789300745718608796059110906856134679876571999645523646399426534893615317352926929918430612360113072592944587583603866103123238298544057946598186045032131213338033520581866645003663804910520446577000576923022578874824604592289190852442895920000000000000000000000000000000000000000", + "literal_scalar_guard": "1", + "row_product_gap": "23971789/25", + "balanced_prefix_above_kappa": "408808611148876353795425088896970313803046682409452711376573661917119304047880319803605933188018389430091600560698214624609360346253996000694755782432498886847869394049194681968211469481013928782298536731228465960824492192887232506438370338248807509005549077031258971620507960505707919446839408499185349500582691468124928198495274630726994940229502686504146699181489282489012572667119679362557332008764432613880097718226442126133033185185955530328549959901370579628594092106512602203326207288999671842783782306111984645272267479067757866676628476992506650968568493739297001835060301483307969959613364066185259173602885863019904407153319993932825876688846250630094617028211798785821604503974548704995427638409861647319631976448350828922915356895145724429737436369744842036366886769556052011730729338790582278449683997323238259770790611917668059662493785309/611376752803136456940930175781249999494829267923106437703132152416200233362560311443407871409724624543592524377320035757463472515611422653896139989519985664809071975320114115741289111058067251967016686450654514236440485871953337933948939862822712665885854384093287400361439150409917694229944514153849495504171915808019550960334654968437691700937670393163184192483912915362877722209180173085429437059650308809701827678671746924572338684953191404521469434578087958748222588049784610233942415776397594888051717890925651531593087505833279105020520678454952525768250825947187742059711860385870513666530818629077777522419309866259321482609950738886335701683498457149995569045579992831686170191466911586623980382654501413407411807344795048326289040478731800724332477325562901640166725419007273333062545797561381505582212507211537782235935307557403614885655536199000000000000000000000000000000000000", + "coordinate_movement_above_kappa": "343819143539940174369036934678976114332092233412998904067690271296672491855467600020964544705722256559134798505522586214507315193471923679309730956834066331637965485861842642558073559641760216603617724000019656625686005379515141831293288087333181102201955858555975316196340641156312625123271161070812029446400872038423329456018341770554349939967912811246181448474276243898552706022610668449661166351456795614315444890589436601426922871551195653009778706569867531837895341496357027613757235260291583849945764198605590023023918102873062420905680143344874768169794221168986554856258310131402281117359774399738281172944503526322802446371249222020284355926018899819073676487840587078442350253502528576040345635580249599777157429060365763523303815487260916415420544066140106497788462217764064692442596385114344463801/122070312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_phase_layer_above_kappa": "4087474734735960401497309958793921888030971994826604007328033487018776840245440637724615924008774169676372413082604826210336139990024348584293661684335468882813884868516626705566373405699081220571018350625834005094008481443000371726449754442625252377389604915928496428804718165906669276774164140477699645510322742765441262433992411652301511710594089194648303807622408911974762848948987613452487890650584675829991275354585749514405759513174602111880978129579127708327192698477076237423028130474220320832949771343228920801191081703171745387661264249246611557159916686567022830608543302972693829082467109843223513958506439320332784750050589988589372431186779007843796174713072407865384358869554020138367652403715961971782912352676163494180827279910978512496650031220122857462028700970141512843974230842108261402991257760725171059925670183869123193010052197553801/6113767528031364569409301757812499994948292679231064377031321524162002333625603114434078714097246245435925243773200357574634725156114226538961399895199856648090719753201141157412891110580672519670166864506545142364404858719533379339489398628227126658858543840932874003614391504099176942299445141538494955041719158080195509603346549684376917009376703931631841924839129153628777222091801730854294370596503088097018276786717469245723386849531914045214694345780879587482225880497846102339424157763975948880517178909256515315930875058332791050205206784549525257682508259471877420597118603858705136665308186290777775224193098662593214826099507388863357016834984571499955690455799928316861701914669115866239803826545014134074118073447950483262890404787318007243324773255629016401667254190072733330625457975613815055822125072115377822359353075574036148856555361990000000000000000000000000000000000000000", + "bulk_exposure_above_kappa": "343819143539940174369036934678976114332092233412998904067690271296672491855467600020964544705722256559134798505522586214507315193471923679309730956834066331637965485861842642558073559641760216603617724000019656625686005379515141831293288087333181102201955858555975316196340641156312625123271161070812029446400872038423329456018341770554349939967912811246181448474276243898552706022610668449661166351456795614315444890589436601426922871551195653009778706569867531837895341496357027613757235260291583849945764198605590023023918102873062420905680143344874768169794221168986554856258310131402281117359774399738281172944503526322802446371249222020284355926018899819073676487840587078442350253502528576040345635580249599777157429060365763523303815487260916415420544066140106497788462217764064692442596385114344463801/122070312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "Gaussian_arithmetic_above_kappa": "6540326401629218524269860492175743770849252089283320275587475458521492664532722556546251523136884506256922016446794113957992302067548324588462196378930462203901101232811794797375642222585164793264809571013204800858955434600323766765079976472118097431422899378116050258527765928940916793455200591472811742513818891574190831624964059436663481351971105313673184002711344606908838284951705689627831882703171271513271861663944402271203958624290335293852277888987351186098757251116151850642985374208218351889652465179900828672824686577578292587721035111201651462971327649002804841618905111872541648840147294240335069000123754498452211192970509952186327691319856511624363876882343200580313985893401312368340218234175131855700704211366268467718319421281852859075074649438591909680230021587477824914358606874851755073689361744664600618550413855375131550985014909407801/9782028044850183311054882812499999991917268286769703003250114438659203733800964983094525942555593992697480390037120572119415560249782762462338239832319770636945151605121825851860625776929076031472266983210472227783047773951253406943183037805163402654173670145492598405783026406558683107679112226461591928066750652928312815365354479495003067215002726290610947079742606645806043555346882769366870992954404940955229242858747950793157418959251062472343510953249407339971561408796553763743078652422361518208827486254810424505489400093332465680328330855279240412292013215155003872955389766173928218664493098065244440358708957860149143721759211822181371226935975314399929104729279885306978723063470585385983686122472022614518588917516720773220624647659708811589319637209006426242667606704116373329000732760982104089315400115384604515774964920918457838170488579184000000000000000000000000000000000000000", + "scalar_work_above_kappa": "32704077515157305167177066181581843854244239763488293803688189821217128123597063023977031247170061429782784452331479849932991364227804068632926566454610390962164742451960254443341176269370056235331915921811826622351722934945106647177135678120041778007778040308116624442240275401306223638052922735420674110551111145534186236328661635803191157526659277249938572750326658686205642935647365168831501131264094958801598115630436698343718082476191489234879475322675068282328779145932958391655862640704197349827814532771067845970249805237914796055025257638722077124959711248317812959062764406804251726255402594476191656110708449731726093250782989563887183799406016551950419366687898322872896674147772429488047587092406277284157150704060721518784902262571179222578270577102261800007710774839065153665125284557449020894469137573351849243881013018105887369384617169183801/48910140224250916555274414062499999959586341433848515016250572193296018669004824915472629712777969963487401950185602860597077801248913812311691199161598853184725758025609129259303128884645380157361334916052361138915238869756267034715915189025817013270868350727462992028915132032793415538395561132307959640333753264641564076826772397475015336075013631453054735398713033229030217776734413846834354964772024704776146214293739753965787094796255312361717554766247036699857807043982768818715393262111807591044137431274052122527447000466662328401641654276396202061460066075775019364776948830869641093322465490326222201793544789300745718608796059110906856134679876571999645523646399426534893615317352926929918430612360113072592944587583603866103123238298544057946598186045032131213338033520581866645003663804910520446577000576923022578874824604592289190852442895920000000000000000000000000000000000000000", + "dimension_above_kappa": "609326372196863543059069824218750000913857272913269916092292936480770080440486370966044839966849037373526779670560284046142460672406966776195460571178228959800288370933881884953466671374431634880852707598540167731770983609060590848349596868405753294938637808793945106076931187838889814775604562877409476116336044697688368486504753530747657799645021074961744006011361715364117218020322513418717262121838973679310744988447932437984993323811241209358628283648354167384810597136170920094607544124972984740542374215586950671733119783166392737763261627657032119504016653120570124616916616606636137302037675110219224312640991617048648477003413327298923471919387405869908838107740001101139706497379339043470636645557297372414192696629753656669138597931129846595299499122787927282748631476138451096674890572183460530784674262344514229494794031233178663564028461124238259770790611917668059662493785309/611376752803136456940930175781249999494829267923106437703132152416200233362560311443407871409724624543592524377320035757463472515611422653896139989519985664809071975320114115741289111058067251967016686450654514236440485871953337933948939862822712665885854384093287400361439150409917694229944514153849495504171915808019550960334654968437691700937670393163184192483912915362877722209180173085429437059650308809701827678671746924572338684953191404521469434578087958748222588049784610233942415776397594888051717890925651531593087505833279105020520678454952525768250825947187742059711860385870513666530818629077777522419309866259321482609950738886335701683498457149995569045579992831686170191466911586623980382654501413407411807344795048326289040478731800724332477325562901640166725419007273333062545797561381505582212507211537782235935307557403614885655536199000000000000000000000000000000000000" + }, + "conservative_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "model_controls": [ + "native_complex_endpoint_rejected_with_old_surcharge", + "omitting_bit_surcharge_would_fail_next_endpoint_rejection" + ], + "native_correction_gain": "2.836430024094812367906784E-12", + "template_sha256": "65c840660ec6f75713d8d478e38a52f5e4e871ed1e5b5477f95895ea349a7eb2", + "input_sha256": { + "owner_audit": "8fc4e5d64dbccddfc6d5dade51636954c90d803fd34da515589cb738a7cbbd21", + "fresh_invoice": "ccc6bf27bb134678de96e66eba348382cdd0cd451d38a112166f139e38257198", + "package:inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c" + }, + "bit_supplier": { + "pr": 589, + "repository": "CrocSwap/integer-mult-bounds", + "commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "merged_as": "b3eb785ac5b4b1ca2beea0f80db078a505626a90", + "path": "research/e8-bit-p111-tuned/tune/EXPECTED.json", + "git_blob_sha1": "e293ddc557742637f9f679f083a1a282d87b1b13", + "word": { + "v": 111, + "decoder_constant": 63, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ] + }, + "derived_deficit": 10272, + "deficit_formula": "T(2Kv-L*cst), L=9 T=32 K=4 M=64", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "moments": [ + { + "side": "bit", + "surcharge": true, + "endpoint": "1733427039589844234749/1000000000000000000000000", + "accept": true, + "mercator": [ + "-43100600330766044577088869872467188970742291/26959946667150639794667015087019630673637144422540572481103610249216", + "-43100600330766044577088869872467188970742289/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "-799345163337715793503/500000000000000000000000000000000000000000000", + "-3197378653350863173989/2000000000000000000000000000000000000000000000" + ] + }, + { + "side": "bit", + "surcharge": true, + "endpoint": "6933708158359376939/4000000000000000000000", + "accept": false, + "mercator": [ + "22502934905675809315035333485365686073718547/13479973333575319897333507543509815336818572211270286240551805124608", + "5625733726418952328758833371341421518429637/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two": [ + "8346798366759439729359/5000000000000000000000000000000000000000000000", + "16693606733518879458833/10000000000000000000000000000000000000000000000" + ] + }, + { + "side": "complex", + "surcharge": false, + "endpoint": "839835897752368810771/500000000000000000000000", + "accept": true, + "mercator": [ + "-5971205559779550112184163352720098399495653/26959946667150639794667015087019630673637144422540572481103610249216", + "-5971205559779550112184163352720098399495651/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "-44297/200000000000000000000000000000", + "-55371/250000000000000000000000000000" + ] + }, + { + "side": "complex", + "surcharge": false, + "endpoint": "1679671795504737621543/1000000000000000000000000", + "accept": false, + "mercator": [ + "36397638841276465291309668235027524493751241/13479973333575319897333507543509815336818572211270286240551805124608", + "18198819420638232645654834117513762246875621/6739986666787659948666753771754907668409286105635143120275902562304" + ], + "base_two": [ + "1350063/500000000000000000000000000000", + "2700127/1000000000000000000000000000000" + ] + } + ], + "bootstrap": [ + { + "exponent": "41922877454335286127040925487085503119431878967707145530348200651760497399376112287024839767094103909525569079405031194385559/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "68917433283154411509074512914496880561421852804092625597944348239502600623887712975160232905896090474430920594968805614441/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "4737228453333" + }, + { + "exponent": "209958395644747681223075001326641119706779041098048452740637846241070365751482799119458913697017724379669237869701612235800000156254165077529356224072731204241616268470605434556243113944011/125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "578793344521469674998673358880293187463004507738039092878758929634248517200880541086302982275620330762130298387764199999843745834922470643775927268795758383731529394565443756886055989/125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1679095778079636247" + }, + { + "exponent": "1049794867329546732370904194394028583788575613119278215293291938074264359572676710888092277158967093273498949334746438922947664016777889595454522664206544061186071099230887687593221732883269210555581382251561283496006602105136711302514285519596452257519/625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "4860914281092845805605971416211256907393502738605361686925735640427323289111907722841032906726501050665253561077052335983222110404545477335793455938813928900769112312406778267116730789444418617748438716503993397894863288697485714480403547742481/625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "595150235995383974327192" + }, + { + "exponent": "5248974360911481364227160794056406265580262788106417778977043836402243602284752069003870199610930625222275918773107747121920265129859203841302571076976204479703564725834443995892108980046928248742833684587702051979976864382474201820172447042946556386526602270772761107918922449441312490748892911827039636751727062851/3125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "40823703091589205943593734418899814457486990516224288597756397715247930996129800389069374777724081226892252878079734870140796158697428923023795520296435274165556004107891019953071751257166315412297948020023135617525798179827552957053443613473397729227238892081077550558687509251107088172960363248272937149/3125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "210949135856002397248971178768" + }, + { + "exponent": "26244871804761182484480394990251245568572637829596536385971447548714982056841448792239896459877362838961062790277392506845709746804719762433796106613914480638307977390710915522586033934837944066944796651909355796985608222148937219638790602191883896472548758016814344943367889498999653717100514307698773298640400808491060951101901962645892913143940182054432101478321995416357231879/15625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "342852113355009748754431423175183222987461494893076285017943158551207760103540122637161038937209722607493154290253195280237566203893386085519361692022609289084477413966065162055933055203348090644203014391777851062780361209397808116103527451241983185655056632110501000346282899485692301226701359599191508939048898098037354107086856059817945567898521678004583642768121/15625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "74770260057057757241517293759023083" + }, + { + "exponent": "131224359023807623803573625841984714158425878936101033361677122738143749659664890854207108914430206688869247449305288627408234268961251953104939053844947075742538706820990438953701616904398685227913659333032039145810668239638387316486842793710325823458301517725268563800312072727552779202442908080206221717370334974906767401620088802939405988653938714778861425809827598452142085415769213364627500431280062743107437483609024946635987291280231291/78125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "2879395124158015285841553186127996585875654580386856250340335109145792891085569793311130752550694711372591765731038748046895060946155052924257461293179009561046298383095601314772086340666967960854189331760361612683513157206289674176541698482274731436199687927272447220797557091919793778282629665025093232598379911197060594011346061285221138574190172401547857914584230786635372499568719937256892562516390975053364012708719768709/78125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "26502084335705851402174427949732553255880" + }, + { + "exponent": "656121795119038133390661556109189597773624984588075466445717526537097475664450848312086944595839917369535937114112377181578339215783918060642403380693051125633094092067579080441142802710750362380906425079227192923264380265479916657842860335530997126835921827666132359311680414923809460237858087524550508377500018377186457815056730541510818272601762861574700288567478451933822497166074895908475129628104117407044610430378485689976720461973502677238343790110631423626056700443930883561534483569778488507964639/390625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "24182193890810402226270340732412629740940989087902524335549151687913055404160082630464062885887622818421660784216081939357596619306948874366905907932420919558857197289249637619093574920772807076735619734520083342157139664469002873164078172333867640688319585076190539762141912475449491622499981622813542184943269458489181727398237138425299711432521548066177502833925104091524870371895882592955389569621514310023279538026497322761656209889368576373943299556069116438465516430221511492035361/390625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "9393580731174250430777861510361998517951488732" + }, + { + "exponent": "3280608975595190667074015659254840893972775693479221315083450547479505877854359143618357552851319689543230881890460060430534705943379000648426538979125883916648111727151790191767490019893248175046360760507037652448575538331458002775214022098602857547316320690095155711029169092757510644345770282312231502566059658617615325163061631785046342934805886928051209383392360018976728562281787794592934403564929991370417488679586994946628407308390585936594706931075443483959734468696137001692312764099577872058956327951068284692635599379113880143104355325126066518571393849673331/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "203090745159106026700933123219165849842030645494122145640856381642447148680310456769118109539939569465294056620999351573461020874116083351888272848209808232509980106751824953639239492962347551424461668541997224785977901397142452683679309904844288970830907242489355654229717687768497433940341382384674836938368214953657065194113071948790616607639981023271437718212205407065596435070008629582511320413005053371592691609414063405293068924556516040265531303862998307687235900422127941043672048931715307364400620886119856895644674873933481428606150326669/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "3329525249235005699151904506224986703485734661173356" + }, + { + "exponent": "16403044877975953335371092044371017141043782468642734742069408028339777267773094633382628395526723496857514195877071839428385211501626317505378175354369392256837753951542131312169476821740923130555446216163495488874735044923333297064345841859778793902112376347115702820410456536041325672369384151029556323002536703074529380347951935907836630028635223794144677735112826853401840961164304419530668152429179898480508010065348870932204513486983887401036772965984296257076234820313391299497372668727192996261943530409505298152854253842805821735332262659726540068739228555245091387941181736504781788144915892509640652049626098505408695751799/9765625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "1705628982858953600664369467662597054862285222732226905366617371604473276503142485804122928160571614788498373682494621824645630607743162246048457868687830523178259076869444553783836504511125264955076666702935654158140221206097887623652884297179589543463958674327630615848970443676997463296925470619652048064092163369971364776205855322264887173146598159038835695580469331847570820101519491989934651129067795486513016112598963227034015703742923765179686608700502627331272807003738056469590494701847145746157194178264667737340273459931260771444754908612058818263495218211855084107490359347950373901494591304248201/9765625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1180139789346085405177309849301162090601659900126459656313" + }, + { + "exponent": "82015224389879766676855468735675515519468825953606194103580816624950325175466789784945881403481440318094318477513768231014636475837101380304466144137581871465272608652884526887310569001720937580908633713880266476966093926424285988195186264632498089780715268683846765650949411900189250468237326146032420468009577948608743942804876969196563763082542940676306629830934585015209750168005999108194556643015980850031745302944300301295924858117508122917533512960832593597583764703092449468949130911297937603904278066679425868598059996126875976423327904387273727860220974941905547465447538130917373696037706814834430400109134555407783194204895211539925130074937826417923759261189368069456537193826586172971/48828125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "14324484480518089711454817919751497828174674824533210215054118596518559681905681522486231768985363524162898619695533855862418128534727391347115473112689430998279062419091366286119733523033906073575714011804813735367501910219284731316153234349050588099810749531762673853967579531990422051391256057195123030803436236917457059323693370169065414984790249831994000891805443356984019149968254697055699698704075141882491877082466487039167406402416235296907550531050869088702062396095721933320574131401940003873124023576672095612726272139779025058094452534552461869082626303962293185165569599890865444592216805795104788460074869925062173582076240738810631930543462806173413827029/48828125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "418296849593742393515580317004367667771071636583086158838930612" + }, + { + "exponent": "410076121949398833384277343749879697837099220482794448426093911014723015148090774438802674557980549021699308717346461883721540625817967739118142201392674293403644412353003530176735386443709779110780144872726998309648486852974474507775855855041722001872774914831979747433933323222130907370263749347913116764383616689562237185739223074146589547773945164084396999283229555595505927782602568976550652522796892850829623028417827686982302480837152532764026856433542859064371029552003623134421123744929251154322561514119855009257162665924997143269730625523283727883774908027126940492280356185579158652697401968247463181838594710539981444897231927338748718033150265089801523795434644341511293379374192526832580603382038289098857919799756949478035698564898252056626129359/244140625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "120302162835357842510611690567661250901984851909225561197325442019450978300691282653538116278459374182032260881857798607325706596355587646996469823264613556290220889219855127273001690351513147025525492224144144958277998127225085168020252566066676777869092629736250652086883235616383310437762814260776925853410452226054835915603000716770444404494072217397431023449347477203107149170376971582172313017697519162847467235973143566457140935628970447996376865578876255070748845677438485880144990742837334075002856730269374476716272116225091972873059507719643814420841347302598031752536818161405289460018555102768072661251281966849734910198476204565355658488706620625807473167419396617961710901142080200243050521964301435101747943373870641/244140625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "148264007331709359858295834418888173441435107225562495318918808136072" + }, + { + "exponent": "2050380609746994166921386718749998989658923627782403635566561796173600764444780801332004554573898310351051210626121248006605129883306970233672038381387330923495030677151380797953926514351013917696334345480387760382212440354575476357103483659844738047433438895407132871608420240995014829437430031254263332726327125832738126430969927639155457723639763504559807720354688193307242617355336031050582100958665673646343995748497890371691574658997359644834199673574540157222714399831109317758105031225459872084305019778760188569625432106552111436849391254076715258513288098433195611256044941998275320501123478061886292177469949929280401701380387186054182025955205589958482459851269404634507110642668765652064273654637589014970787724729275921465477532958185875240759907634692340302554796459585371645490027621505912185794080604361474211/1220703125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "1010340749263844121665016746065154524235555219198667995445426101689648948789373878751993394870116693029766327961618612669076504969322848619202046073485648986082303665654519612239617787559645424523642896516340155261952566561104592867128391579759004985170562569968745736667273672874167261873569030072360844542276360236495440192279645311806692757382644663968949417899041334326353656004251502109628308425341002640355165800326425459842777285600168890682241894968774540127915694980221239811430374567893447888563150608745923284741486711901566804388743955058001724679498876521938113707822530050070719598298619612813945817974044794410041517540148730595365492889357331234347935726345362410985029212275270724078534522467041814124759240092365307659697445203540414628354509972378494087814205919395638525789/1220703125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "52551712716475631692839942557945885547451834809411660850904323883466052937" + } + ], + "outer": { + "bit_positive": "2050380609746994166921386718749998989658923627782403635566561796173600764444780801332004554573898310351051210626121248006605129883306970233672038381387330923495030677151380797953926514351013917696334345480387760382212440354575476357103483659844738047433438895407132871608420240995014829437430031254263332726327125832738126430969927639155457723639763504559807720354688193307242617355336031050582100958665673646343995748497890371691574658997359644834199673574540157222714399831109317758105031225459872084305019778760188569625432106552111436849391254076715258513288098433195611256044941998275320501123478061886292177469949929280401701380387186054182025955205589958482459851269404634507110642668765652064273654637589014970787724729275921465477532958185875240759907634692340302554796459585371645490027621505912185794080604361474211/1220703125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_above_bit": "1010341076372217596364433438203826399235555219198667995445426101689648948789373878751993394870116693029766327961618612669076504969322848619202046073485648986082303665654519612239617787559645424523642896516340155261952566561104592867128391579759004985170562569968745736667273672874167261873569030072360844542276360236495440192279645311806692757382644663968949417899041334326353656004251502109628308425341002640355165800326425459842777285600168890682241894968774540127915694980221239811430374567893447888563150608745923284741486711901566804388743955058001724679498876521938113707822530050070719598298619612813945817974044794410041517540148730595365492889357331234347935726345362410985029212275270724078534522467041814124759240092365307659697445203540414628354509972378494087814205919395638525789/1220703125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_below_one_over32": "14785164102247631189229/500000000000000000000000", + "beta_positive": "1/10000000000000000000000000000000000000000", + "beta_below_one": "9999999999999999999999999999999999999999/10000000000000000000000000000000000000000", + "leaf_saving_above_bit": "1010340871334156621665016746065154524235555219198667995445426101689648948789373878751993394870116693029766327961618612669076504969322848619202046073485648986082303665654519612239617787559645424523642896516340155261952566561104592867128391579759004985170562569968745736667273672874167261873569030072360844542276360236495440192279645311806692757382644663968949417899041334326353656004251502109628308425341002640355165800326425459842777285600168890682241894968774540127915694980221239811430374567893447888563150608745923284741486711901566804388743955058001724679498876521938113707822530050070719598298619612813945817974044794410041517540148730595365492889357331234347935726345362410985029212275270724078534522467041814124759240092365307659697445203540414628354509972378494087814205919395638525789/1220703125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_positive": "10251903048734970834606933593749994948292567758302271183665887594149253823234245083032240369233924989959082452366161459231693644861960952858009140696310533369468548255873597019535960533373682257558176696724787421113108275258526367867821083953743302476784982036681088881684997721315229409139716717375909530760027208922695617325412208164523025285472490396966300475342471038897057629053040391748350697072973680038412736125134115827407291194028132550524654372124202895741880424496549229145690956453724820264302384493969833530369055501535097312162651250604816103996815060059425944843375318737299887247104102210998265276093704704403733186400812452209023837598557999863131897554966635986481371187388622670362885813336675670219431513003710841675323391136291787188828750448732425591308504764968672352209378199894868588667848225347785683354509972378494087814205919395638525789/6103515625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_internal": "2050380609746994166921386718749998989658923627782403635566561796173600764444780801332004554573898310351051210626121248006605129883306970233672038381387330923495030677151380797953926514351013917696334345480387760382212440354575476357103483659844738047433438895407132871608420240995014829437430031254263332726327125832738126430969927639155457723639763504559807720354688193307242617355336031050582100958665673646343995748497890371691574658997359644834199673574540157222714399831109317758105031225459872084305019778760188569625432106552111436849391254076715258513288098433195611256044941998275320501123478061886292177469949929280401701380387186054182025955205589958482459851269404634507110642668765652064273654637589014970787724729275921465477532958185875240759907634692340302554796459585371645490027621505912185794080604361474211/6103515625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_leaf": "5051706407051392855319250651712491371176765754916967759630766075010040917547633838540768306355138039047141990859303689466630531451744126402980464039466626317742441823303275212578886891724741473632132178916046256697523215017963318911118315002278684770590860283282624090469239972791077304382674587791835476974714527509603033699524657528961102942370946959608251649302927026319961587263874865884172592708805971867449475345627875797104258119575503450770854309043546275179735697615506030166469630944498464902687837348749395183896003184939940574055156624681262700112752895897789001734723906295295596266813599187547790976162401442000136868102445033364013518628812611377329637114186663324329780568486996289158324676608863708212811171249551267574408691495235031327647790621800105131411332151774652214316645490027621505912185794080604361474211/6103515625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_positive": "10251903048734970834606933593749994948445155648927271183665887594149253823234245083032240369233924989959082452366161459231693644861960952858009140696310533369468548255873597019535960533373682257558176696724787421113108275258526367867821083953743302476784982036681088881684997721315229409139716717375909530760027208922695617325412208164523025285472490396966300475342471038897057629053040391748350697072973680038412736125134115827407291194028132550524654372124202895741880424496549229145690956453724820264302384493969833530369055501535097312162651250604816103996815060059425944843375318737299887247104102210998265276093704704403733186400812452209023837598557999863131897554966635986481371187388622670362885813336675670219431513003710841675323391136291787188828750448732425591308504764968672352209378199894868588667848225347785683354509972378494087814205919395638525789/6103515625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_below_one": "6093263721951265029165393066406250005051554844351072728816334112405850746176765754916967759630766075010040917547633838540768306355138039047141990859303689466630531451744126402980464039466626317742441823303275212578886891724741473632132178916046256697523215017963318911118315002278684770590860283282624090469239972791077304382674587791835476974714527509603033699524657528961102942370946959608251649302927026319961587263874865884172592708805971867449475345627875797104258119575503450770854309043546275179735697615506030166469630944498464902687837348749395183896003184939940574055156624681262700112752895897789001734723906295295596266813599187547790976162401442000136868102445033364013518628812611377329637114186663324329780568486996289158324676608863708212811171249551267574408691495235031327647790621800105131411332151774652214316645490027621505912185794080604361474211/6103515625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_reservations": "1/40000000000000000000000000000000000000000", + "lambda_above_tau": "2050380609746994166921386718749998989658923627782403635566561796173600764444780801332004554573898310351051210626121248006605129883306970233672038381387330923495030677151380797953926514351013917696334345480387760382212440354575476357103483659844738047433438895407132871608420240995014829437430031254263332726327125832738126430969927639155457723639763504559807720354688193307242617355336031050582100958665673646343995748497890371691574658997359644834199673574540157222714399831109317758105031225459872084305019778760188569625432106552111436849391254076715258513288098433195611256044941998275320501123478061886292177469949929280401701380387186054182025955205589958482459851269404634507110642668765652064273654637589014970787724729275921465477532958185875240759907634692340302554796459585371645490027621505912185794080604361474211/12207031250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_sigma": "10103412814102785710638501303424982742354541850910307736857896583458285661494503232300735280705721504195973630667396752812013056298358369498990694406894871248153960151575873273776975829522968596250346661497747033007286047823486283246760272901073709696443673133126352773805608337161913613750519738153639699686096328692080234660922884087994566729284170279452998738798133697951729867285132376432314134835510985069225304347260003096318144547576347904182063783887418975819314172516612229223621503783965704345503590392479011607603436744447774595998876399971271323510247278507479570273836556545649194258306697251617520066032625414050344455803188686340840983075599267549069315745913475379254926629863349909550997288944072778836607371711377805872895917512937104469420340483692575570482361748752844843261645490027621505912185794080604361474211/12207031250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_internal": "2050380609746994166921386718749998989658923627782403635566561796173600764444780801332004554573898310351051210626121248006605129883306970233672038381387330923495030677151380797953926514351013917696334345480387760382212440354575476357103483659844738047433438895407132871608420240995014829437430031254263332726327125832738126430969927639155457723639763504559807720354688193307242617355336031050582100958665673646343995748497890371691574658997359644834199673574540157222714399831109317758105031225459872084305019778760188569625432106552111436849391254076715258513288098433195611256044941998275320501123478061886292177469949929280401701380387186054182025955205589958482459851269404634507110642668765652064273654637589014970787724729275921465477532958185875240759907634692340302554796459585371645490027621505912185794080604361474211/12207031250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_prime_above_lambda": "2050380609746994166921386718749998989658923627782403635566561796173600764444780801332004554573898310351051210626121248006605129883306970233672038381387330923495030677151380797953926514351013917696334345480387760382212440354575476357103483659844738047433438895407132871608420240995014829437430031254263332726327125832738126430969927639155457723639763504559807720354688193307242617355336031050582100958665673646343995748497890371691574658997359644834199673574540157222714399831109317758105031225459872084305019778760188569625432106552111436849391254076715258513288098433195611256044941998275320501123478061886292177469949929280401701380387186054182025955205589958482459851269404634507110642668765652064273654637589014970787724729275921465477532958185875240759907634692340302554796459585371645490027621505912185794080604361474211/12207031250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_leaf": "5051706407051392855319250651712491371176765754916967759630766075010040917547633838540768306355138039047141990859303689466630531451744126402980464039466626317742441823303275212578886891724741473632132178916046256697523215017963318911118315002278684770590860283282624090469239972791077304382674587791835476974714527509603033699524657528961102942370946959608251649302927026319961587263874865884172592708805971867449475345627875797104258119575503450770854309043546275179735697615506030166469630944498464902687837348749395183896003184939940574055156624681262700112752895897789001734723906295295596266813599187547790976162401442000136868102445033364013518628812611377329637114186663324329780568486996289158324676608863708212811171249551267574408691495235031327647790621800105131411332151774652214316645490027621505912185794080604361474211/6103515625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_reservations": "1/40000000000000000000000000000000000000000", + "lambda_prime_below_one": "10251903048734970834606933593749994948292567758302271183665887594149253823234245083032240369233924989959082452366161459231693644861960952858009140696310533369468548255873597019535960533373682257558176696724787421113108275258526367867821083953743302476784982036681088881684997721315229409139716717375909530760027208922695617325412208164523025285472490396966300475342471038897057629053040391748350697072973680038412736125134115827407291194028132550524654372124202895741880424496549229145690956453724820264302384493969833530369055501535097312162651250604816103996815060059425944843375318737299887247104102210998265276093704704403733186400812452209023837598557999863131897554966635986481371187388622670362885813336675670219431513003710841675323391136291787188828750448732425591308504764968672352209378199894868588667848225347785683354509972378494087814205919395638525789/6103515625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_positive": "6103515624999999999999999999999999999999389648437500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000/6113767528048734970834606933593749994948292567758302271183665887594149253823234245083032240369233924989959082452366161459231693644861960952858009140696310533369468548255873597019535960533373682257558176696724787421113108275258526367867821083953743302476784982036681088881684997721315229409139716717375909530760027208922695617325412208164523025285472490396966300475342471038897057629053040391748350697072973680038412736125134115827407291194028132550524654372124202895741880424496549229145690956453724820264302384493969833530369055501535097312162651250604816103996815060059425944843375318737299887247104102210998265276093704704403733186400812452209023837598557999863131897554966635986481371187388622670362885813336675670219431513003710841675323391136291787188828750448732425591308504764968672352209378199894868588667848225347785683354509972378494087814205919395638525789", + "epsilon_below_one": "10251903048734970834606933593749994948902919320802271183665887594149253823234245083032240369233924989959082452366161459231693644861960952858009140696310533369468548255873597019535960533373682257558176696724787421113108275258526367867821083953743302476784982036681088881684997721315229409139716717375909530760027208922695617325412208164523025285472490396966300475342471038897057629053040391748350697072973680038412736125134115827407291194028132550524654372124202895741880424496549229145690956453724820264302384493969833530369055501535097312162651250604816103996815060059425944843375318737299887247104102210998265276093704704403733186400812452209023837598557999863131897554966635986481371187388622670362885813336675670219431513003710841675323391136291787188828750448732425591308504764968672352209378199894868588667848225347785683354509972378494087814205919395638525789/6113767528048734970834606933593749994948292567758302271183665887594149253823234245083032240369233924989959082452366161459231693644861960952858009140696310533369468548255873597019535960533373682257558176696724787421113108275258526367867821083953743302476784982036681088881684997721315229409139716717375909530760027208922695617325412208164523025285472490396966300475342471038897057629053040391748350697072973680038412736125134115827407291194028132550524654372124202895741880424496549229145690956453724820264302384493969833530369055501535097312162651250604816103996815060059425944843375318737299887247104102210998265276093704704403733186400812452209023837598557999863131897554966635986481371187388622670362885813336675670219431513003710841675323391136291787188828750448732425591308504764968672352209378199894868588667848225347785683354509972378494087814205919395638525789", + "guard_width": "10251903048734970834606933593749994948902919320802271183665887594149253823234245083032240369233924989959082452366161459231693644861960952858009140696310533369468548255873597019535960533373682257558176696724787421113108275258526367867821083953743302476784982036681088881684997721315229409139716717375909530760027208922695617325412208164523025285472490396966300475342471038897057629053040391748350697072973680038412736125134115827407291194028132550524654372124202895741880424496549229145690956453724820264302384493969833530369055501535097312162651250604816103996815060059425944843375318737299887247104102210998265276093704704403733186400812452209023837598557999863131897554966635986481371187388622670362885813336675670219431513003710841675323391136291787188828750448732425591308504764968672352209378199894868588667848225347785683354509972378494087814205919395638525789/6113767528048734970834606933593749994948292567758302271183665887594149253823234245083032240369233924989959082452366161459231693644861960952858009140696310533369468548255873597019535960533373682257558176696724787421113108275258526367867821083953743302476784982036681088881684997721315229409139716717375909530760027208922695617325412208164523025285472490396966300475342471038897057629053040391748350697072973680038412736125134115827407291194028132550524654372124202895741880424496549229145690956453724820264302384493969833530369055501535097312162651250604816103996815060059425944843375318737299887247104102210998265276093704704403733186400812452209023837598557999863131897554966635986481371187388622670362885813336675670219431513003710841675323391136291787188828750448732425591308504764968672352209378199894868588667848225347785683354509972378494087814205919395638525789", + "K_geometry": "4587888621798734970834606933593749994948445155648927271183665887594149253823234245083032240369233924989959082452366161459231693644861960952858009140696310533369468548255873597019535960533373682257558176696724787421113108275258526367867821083953743302476784982036681088881684997721315229409139716717375909530760027208922695617325412208164523025285472490396966300475342471038897057629053040391748350697072973680038412736125134115827407291194028132550524654372124202895741880424496549229145690956453724820264302384493969833530369055501535097312162651250604816103996815060059425944843375318737299887247104102210998265276093704704403733186400812452209023837598557999863131897554966635986481371187388622670362885813336675670219431513003710841675323391136291787188828750448732425591308504764968672352209378199894868588667848225347785683354509972378494087814205919395638525789/61137675280487349708346069335937499949482925677583022711836658875941492538232342450830322403692339249899590824523661614592316936448619609528580091406963105333694685482558735970195359605333736822575581766967247874211131082752585263678678210839537433024767849820366810888816849977213152294091397167173759095307600272089226956173254122081645230252854724903969663004753424710388970576290530403917483506970729736800384127361251341158274072911940281325505246543721242028957418804244965492291456909564537248202643023844939698335303690555015350973121626512506048161039968150600594259448433753187372998872471041022109982652760937047044037331864008124522090238375985579998631318975549666359864813711873886226703628858133366756702194315130037108416753233911362917871888287504487324255913085047649686723522093781998948685886678482253477856833545099723784940878142059193956385257890000000000000000000000000000000000000000", + "K_dominates_log": "102519030487349708346069335937499949484441304586223976865824269007898788237394005674673476421155584011996675269838380347233904208250375603590132324510739172235453788913874009242501596193040512042212298418992000614111546792051889996420652662840708237346736712091552362448982156129198550788920382191722414218718587091505640943844982364927854343323964876760740309136099298180806053265244931427086540670254394329345230303622288117882324561243208351825208130985116894841591396953771464158906384910165123999747281964515201786074544864058897248301362210121554191206437781545092724351121590536122394056367044207049923226816093671725300031976761020419879240110709486293926915242363265547412604688036287668703765726235811790066207833758849719794082871025549581196218068072974320545071409724258550431734904953248499953461087173748712888161192890345585046009553391345731037472206645490027621505912185794080604361474211/61137675280487349708346069335937499949482925677583022711836658875941492538232342450830322403692339249899590824523661614592316936448619609528580091406963105333694685482558735970195359605333736822575581766967247874211131082752585263678678210839537433024767849820366810888816849977213152294091397167173759095307600272089226956173254122081645230252854724903969663004753424710388970576290530403917483506970729736800384127361251341158274072911940281325505246543721242028957418804244965492291456909564537248202643023844939698335303690555015350973121626512506048161039968150600594259448433753187372998872471041022109982652760937047044037331864008124522090238375985579998631318975549666359864813711873886226703628858133366756702194315130037108416753233911362917871888287504487324255913085047649686723522093781998948685886678482253477856833545099723784940878142059193956385257890000000000000000000000000000000000000000", + "record_suffix": "10251903048734970834606933593749994948902919320802271183665887594149253823234245083032240369233924989959082452366161459231693644861960952858009140696310533369468548255873597019535960533373682257558176696724787421113108275258526367867821083953743302476784982036681088881684997721315229409139716717375909530760027208922695617325412208164523025285472490396966300475342471038897057629053040391748350697072973680038412736125134115827407291194028132550524654372124202895741880424496549229145690956453724820264302384493969833530369055501535097312162651250604816103996815060059425944843375318737299887247104102210998265276093704704403733186400812452209023837598557999863131897554966635986481371187388622670362885813336675670219431513003710841675323391136291787188828750448732425591308504764968672352209378199894868588667848225347785683354509972378494087814205919395638525789/6113767528048734970834606933593749994948292567758302271183665887594149253823234245083032240369233924989959082452366161459231693644861960952858009140696310533369468548255873597019535960533373682257558176696724787421113108275258526367867821083953743302476784982036681088881684997721315229409139716717375909530760027208922695617325412208164523025285472490396966300475342471038897057629053040391748350697072973680038412736125134115827407291194028132550524654372124202895741880424496549229145690956453724820264302384493969833530369055501535097312162651250604816103996815060059425944843375318737299887247104102210998265276093704704403733186400812452209023837598557999863131897554966635986481371187388622670362885813336675670219431513003710841675323391136291787188828750448732425591308504764968672352209378199894868588667848225347785683354509972378494087814205919395638525789", + "phase_local": "820152243898797666768554687499999595906119778136132959722436400598346555863791314074820927267530333309132446935469682493452459348587642303650772173252476508098252166825025800610018833529198270071284667189727120092029126060148735747168128539602739410721685454659228584166931996621264609428700552408036081371920491716094334156623836936444466113307039204548381342410072270903600087298957758849471089465362551932034121832381676225800834944825177630361933937033811097543523026668529910199104751861925861418248448879093090133200378749166354060152747797663891318486214835749252540490157862847733386163664331361819801796142653001033561355024817892074510908742608546284346148071210930066466300671153491255629167733169379086981568039669109478711355508405090006299436080604385590336463005057806357496389561427241140754667836549523057885996008588412079632156547805703425734277436645490027621505912185794080604361474211/489101402243898797666768554687499999595863405420664181694693271007531940305858739606642579229538713999196726596189292916738535491588956876228640731255704842669557483860469887761562876842669894580604654135737982993689048662020682109429425686716299464198142798562934487110534799817705218352731177337390072762460802176713815649386032976653161842022837799231757304038027397683111764610324243231339868055765837894403073018890010729266192583295522250604041972349769936231659350433959723938331655276516297985621144190759517586682429524440122807784973012100048385288319745204804754075587470025498983990979768328176879861222087496376352298654912064996176721907007884639989050551804397330878918509694991089813629030865066934053617554521040296867334025871290903342975106300035898594047304680381197493788176750255991589487093427858027822854668360797790279527025136473551651082063120000000000000000000000000000000000000000", + "phase_boundary": "164030448779759533353710937499999919176332941604787603967819594572794311176799628760757543636559133951751169984035349102624066077422141320738187168688602372452265078449115591359717359393282605587561358599340725140790196443603048203627579166563168052207446604311638895739092142457089927243758682495977871403278750345041814647797455613914992495036799819142538111988154124414188399039563173777576644852692236409575706720373092812846768308407377147128356057217862112216042679500750759533780530648887472921333096271479020787256759197068107832174338117625183087830418671905449280020181842448546193379849668820315912818472655899951722431095165895133133383136300834293105706627693065363331492915160619404725943041115831844087524422836871984844134811372367331919351040575666715098619260752848362465848161222447869164993094263100799602261319950179856010536438626862104868626940645490027621505912185794080604361474211/97820280448779759533353710937499999919172681084132836338938654201506388061171747921328515845907742799839345319237858583347707098317791375245728146251140968533911496772093977552312575368533978916120930827147596598737809732404136421885885137343259892839628559712586897422106959963541043670546235467478014552492160435342763129877206595330632368404567559846351460807605479536622352922064848646267973611153167578880614603778002145853238516659104450120808394469953987246331870086791944787666331055303259597124228838151903517336485904888024561556994602420009677057663949040960950815117494005099796798195953665635375972244417499275270459730982412999235344381401576927997810110360879466175783701938998217962725806173013386810723510904208059373466805174258180668595021260007179718809460936076239498757635350051198317897418685571605564570933672159558055905405027294710330216412624000000000000000000000000000000000000000", + "gamma_sublinear": "1/20000000000000000000000000000000000000000", + "cell_above_band": "122070312499999999999999999999999999999981679201221951265029165393066406250005051707432241697728816334112405850746176765754916967759630766075010040917547633838540768306355138039047141990859303689466630531451744126402980464039466626317742441823303275212578886891724741473632132178916046256697523215017963318911118315002278684770590860283282624090469239972791077304382674587791835476974714527509603033699524657528961102942370946959608251649302927026319961587263874865884172592708805971867449475345627875797104258119575503450770854309043546275179735697615506030166469630944498464902687837348749395183896003184939940574055156624681262700112752895897789001734723906295295596266813599187547790976162401442000136868102445033364013518628812611377329637114186663324329780568486996289158324676608863708212811171249551267574408691495235031327647790621800105131411332151774652214316645490027621505912185794080604361474211/244550701121949398833384277343749999797931702710332090847346635503765970152929369803321289614769356999598363298094646458369267745794478438114320365627852421334778741930234943880781438421334947290302327067868991496844524331010341054714712843358149732099071399281467243555267399908852609176365588668695036381230401088356907824693016488326580921011418899615878652019013698841555882305162121615669934027882918947201536509445005364633096291647761125302020986174884968115829675216979861969165827638258148992810572095379758793341214762220061403892486506050024192644159872602402377037793735012749491995489884164088439930611043748188176149327456032498088360953503942319994525275902198665439459254847495544906814515432533467026808777260520148433667012935645451671487553150017949297023652340190598746894088375127995794743546713929013911427334180398895139763512568236775825541031560000000000000000000000000000000000000000", + "prime_interval_packing": "10251903048734970834606933593749994948902919320802271183665887594149253823234245083032240369233924989959082452366161459231693644861960952858009140696310533369468548255873597019535960533373682257558176696724787421113108275258526367867821083953743302476784982036681088881684997721315229409139716717375909530760027208922695617325412208164523025285472490396966300475342471038897057629053040391748350697072973680038412736125134115827407291194028132550524654372124202895741880424496549229145690956453724820264302384493969833530369055501535097312162651250604816103996815060059425944843375318737299887247104102210998265276093704704403733186400812452209023837598557999863131897554966635986481371187388622670362885813336675670219431513003710841675323391136291787188828750448732425591308504764968672352209378199894868588667848225347785683354509972378494087814205919395638525789/6113767528048734970834606933593749994948292567758302271183665887594149253823234245083032240369233924989959082452366161459231693644861960952858009140696310533369468548255873597019535960533373682257558176696724787421113108275258526367867821083953743302476784982036681088881684997721315229409139716717375909530760027208922695617325412208164523025285472490396966300475342471038897057629053040391748350697072973680038412736125134115827407291194028132550524654372124202895741880424496549229145690956453724820264302384493969833530369055501535097312162651250604816103996815060059425944843375318737299887247104102210998265276093704704403733186400812452209023837598557999863131897554966635986481371187388622670362885813336675670219431513003710841675323391136291787188828750448732425591308504764968672352209378199894868588667848225347785683354509972378494087814205919395638525789", + "alpha_positive": "205038060974699416692138671874999898971944618887996688702483144949391326469736609092886505113494833911587499793499994939550840656869985132170223731473844505930139271472609979437861201526777334617794065386239874825242629544637153675098863502378141262114586532458363251265832133342350844880317549365481509526318859180732597117099104446573084596178689780730403313889524008569776629555775335344570047640984131129729357664873629276156397473183489677330454674706358923799010201198736956450363294474702372202390305809454900121378235419074248221422988722627602352246405932145686983799555343723495392928838085229159905879577030718769337363840769144941969478486695066292558234217912931907277418399910173895407394584369178546768402148888886828210836104936912499068106355577461644800984494771908237155256998735247448639347765656002190744994737990069369986887695450539687422730096645490027621505912185794080604361474211/122275350560974699416692138671874999898965851355166045423673317751882985076464684901660644807384678499799181649047323229184633872897239219057160182813926210667389370965117471940390719210667473645151163533934495748422262165505170527357356421679074866049535699640733621777633699954426304588182794334347518190615200544178453912346508244163290460505709449807939326009506849420777941152581060807834967013941459473600768254722502682316548145823880562651010493087442484057914837608489930984582913819129074496405286047689879396670607381110030701946243253025012096322079936301201188518896867506374745997744942082044219965305521874094088074663728016249044180476751971159997262637951099332719729627423747772453407257716266733513404388630260074216833506467822725835743776575008974648511826170095299373447044187563997897371773356964506955713667090199447569881756284118387912770515780000000000000000000000000000000000000000", + "alpha_below_one": "122070312499999999999999999999999999999993906736278048734970834606933593749994948292567758302271183665887594149253823234245083032240369233924989959082452366161459231693644861960952858009140696310533369468548255873597019535960533373682257558176696724787421113108275258526367867821083953743302476784982036681088881684997721315229409139716717375909530760027208922695617325412208164523025285472490396966300475342471038897057629053040391748350697072973680038412736125134115827407291194028132550524654372124202895741880424496549229145690956453724820264302384493969833530369055501535097312162651250604816103996815060059425944843375318737299887247104102210998265276093704704403733186400812452209023837598557999863131897554966635986481371187388622670362885813336675670219431513003710841675323391136291787188828750448732425591308504764968672352209378199894868588667848225347785683354509972378494087814205919395638525789/122275350560974699416692138671874999898965851355166045423673317751882985076464684901660644807384678499799181649047323229184633872897239219057160182813926210667389370965117471940390719210667473645151163533934495748422262165505170527357356421679074866049535699640733621777633699954426304588182794334347518190615200544178453912346508244163290460505709449807939326009506849420777941152581060807834967013941459473600768254722502682316548145823880562651010493087442484057914837608489930984582913819129074496405286047689879396670607381110030701946243253025012096322079936301201188518896867506374745997744942082044219965305521874094088074663728016249044180476751971159997262637951099332719729627423747772453407257716266733513404388630260074216833506467822725835743776575008974648511826170095299373447044187563997897371773356964506955713667090199447569881756284118387912770515780000000000000000000000000000000000000000", + "alpha_below_one_fourth": "30363799579268975437480895996093750075769518219903514667215846293021354942646434616322274696732674791038207912468330812356607627567439819632119821972007708160917203469806758005659818601140091076669996818097384062280322911831655478164240241917390575250269338377725042193142592855264225302165381034221398038127481276863880880969527956594249530530248672671254428188487188346624708658589489866614171705844380737270462706015752041302980638982786650985422168597154262090679699200923745789695365160307566251898931206113014949046273609858433427265137824533625421728273578143154610145924661532870191106507397435281895085446803437804752681302091234917319075640701297723706757425269861901272654988456026769217944419844697504831582695008676131725997540512018768959867837788174782017326972047751916606206504048155752025703595573585124548183422034559792522483551375579057290769898848354509972378494087814205919395638525789/122275350560974699416692138671874999898965851355166045423673317751882985076464684901660644807384678499799181649047323229184633872897239219057160182813926210667389370965117471940390719210667473645151163533934495748422262165505170527357356421679074866049535699640733621777633699954426304588182794334347518190615200544178453912346508244163290460505709449807939326009506849420777941152581060807834967013941459473600768254722502682316548145823880562651010493087442484057914837608489930984582913819129074496405286047689879396670607381110030701946243253025012096322079936301201188518896867506374745997744942082044219965305521874094088074663728016249044180476751971159997262637951099332719729627423747772453407257716266733513404388630260074216833506467822725835743776575008974648511826170095299373447044187563997897371773356964506955713667090199447569881756284118387912770515780000000000000000000000000000000000000000", + "delta_positive": "1/80000000000000000000000000000000000000000", + "delta_below_one_eighth": "9999999999999999999999999999999999999999/80000000000000000000000000000000000000000", + "short_record_fallback": "7438045046531816186527454750808459676467846223788209252031863913762048161378636660545517046858049480408755504231788229098230396558355304090721865151504245433422868386134959420477554644245261808506439267351589503197052328858801753182435925179789333410217448173597018352559919988512438931944723137396496594261162458796551429333991578015078826481015655808984455696593983502399544210582526771918005973217858268231791868283483211240832030880364980610401059639170827518749906993348954598723400084846880909694218667765467260671140978800442870912097861278539001958725458321791057023209584302753833592116603632454116133028724379523206322736489643580253662782864014842471691372758735660023874463232338478975769361687939463962175679694025883812750353106458919306846933834074715714881284769083837097764589415595976606648854577775084273916057869777064790044413008835932855604078039689105516371066487568582643525704009315569075319015297847479371232406244498600027295885353889394129137820531782958835170207218118810052802526083217675917719041552104085714569849928710292412669113834878222434176893447111786688694659362107056191420596104888921982527098562832800524133429220398398901860191383186950052679569866845997440963145952884124301938580847476480460615418824700495358164559444020621689687003880177934451895879155577633020397638311535804956449635546397785827953631942491522717979486283501660027250272608448085467094688830183552331148957242200000188441975697064621725402346366774850349885735085803742111061439973823198598688866477466793925102440334893538549380953794727182182635751993208550540306000651999589610773976688545479709618531128278009997393921194423226043283624386206195964039406205733270493218072521/7463095127012615931194588541984558099302114950876833827128498397942076725858440240579873340294475006091258645571736036937538688531325635928781749439326550944054527036445158199486738233072965920724558321162994125269913462250071443320151148784123221804781231667525245469826275631984027379649828755758515514563916048839016962423492934824419583771100430286129109253509939539842403634801090137196958435909512907324265640547027751606234628041008335122742339665981596927362966162627559264195734486030827300805986697246696740519446251288454022335586136048889898457158199237133861603936576385887130493026424687624769284991792106573125492838362305679262950468551756052245926674679632527631819435267562730252283157819596358246667748329483647107961029447498945668685533238220762612824208140264605674648867443088622918540757651181915707746195501110806126091415788825585199754059801025390625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "small_field_exposure": "1/10000000000000000000000000000000000000000", + "artificial_boundary": "3424529967951190381334148437499999996766974412792897599762458671881056303696854761730843908743123262991236595217275813036643533029432762711604095727292995839840837565964693687975361588768781245576437341491548631570303447904047056996482178168260485887947405727828301672463382002004893608051756849054066692142953062468703689140776491232375446863911294673935685200391071157701518610451669802268190135345028129182637700842292972993250715911416269223753375894036367865255622285693551373591050893786093500257577840751717414183107123632593851823454244889707540564216058552745604537209991696691945623742286458615860219068054534501136774601138958261281720408250858905401026517625634737849468704704631441514183031836316228137328848395612435937104540218058984666753827861058581727763510962469019753359180775568534184062094024196789736877743363943010456835900806857791957884699862010063529917135482263442617758186915577367/489101402243898797666768554687499999595863405420664181694693271007531940305858739606642579229538713999196726596189292916738535491588956876228640731255704842669557483860469887761562876842669894580604654135737982993689048662020682109429425686716299464198142798562934487110534799817705218352731177337390072762460802176713815649386032976653161842022837799231757304038027397683111764610324243231339868055765837894403073018890010729266192583295522250604041972349769936231659350433959723938331655276516297985621144190759517586682429524440122807784973012100048385288319745204804754075587470025498983990979768328176879861222087496376352298654912064996176721907007884639989050551804397330878918509694991089813629030865066934053617554521040296867334025871290903342975106300035898594047304680381197493788176750255991589487093427858027822854668360797790279527025136473551651082063120000000000000000000000000000000000000000", + "literal_scalar_guard": "1", + "row_product_gap": "23971789/25", + "balanced_prefix_above_kappa": "1537636291446310788365492711081760099108478922744404596297975551245935130143962922665550594422419840270970637504096045986089259817584400040038867413442598639429376662664769941033262780275210868866958891861973559160071605831318889101967861858069571971787352668696438950058649811529644622408012548573479642648629689227006482122556801106541970427039646862949307834792861738253392303491293520043230187572196233923246625883499885760264667942326545950687688742214190135878010641768274005151944570718107901631658384213383426614707652213443298254153756325123333555354501587679632142622090449410085612368614166880374770525330001433600490656954280904407110191992764959662232696202886482397361410453577946207439233020929520432641048651241307090839663912488211728042823110440882598292103737096123158654273745330647232168610480079921156590622590905915889138187617779229806392577423/6113767528048734970834606933593749994948292567758302271183665887594149253823234245083032240369233924989959082452366161459231693644861960952858009140696310533369468548255873597019535960533373682257558176696724787421113108275258526367867821083953743302476784982036681088881684997721315229409139716717375909530760027208922695617325412208164523025285472490396966300475342471038897057629053040391748350697072973680038412736125134115827407291194028132550524654372124202895741880424496549229145690956453724820264302384493969833530369055501535097312162651250604816103996815060059425944843375318737299887247104102210998265276093704704403733186400812452209023837598557999863131897554966635986481371187388622670362885813336675670219431513003710841675323391136291787188828750448732425591308504764968672352209378199894868588667848225347785683354509972378494087814205919395638525789000000000000000000000000000000000000", + "coordinate_movement_above_kappa": "3438191447040692548362771804328823643298627782403635566561796173600764444780801332004554573898310351051210626121248006605129883306970233672038381387330923495030677151380797953926514351013917696334345480387760382212440354575476357103483659844738047433438895407132871608420240995014829437430031254263332726327125832738126430969927639155457723639763504559807720354688193307242617355336031050582100958665673646343995748497890371691574658997359644834199673574540157222714399831109317758105031225459872084305019778760188569625432106552111436849391254076715258513288098433195611256044941998275320501123478061886292177469949929280401701380387186054182025955205589958482459851269404634507110642668765652064273654637589014970787724729275921465477532958185875240759907634692340302554796459585371645490027621505912185794080604361474211/1220703125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_phase_layer_above_kappa": "15370249146935059148684092503884007241089840934876287660708571846571757152185805992410422911983829168784716415958508093699433366482199138439435816125285290083760397158099443536735608266791575314987331360443038866813294945204913632493310750759611765974571049901982352819497616430298724908850716346018079050576766132242855898529950685653211539747371183157002681381628142040062884137855306147391910127371265266258786220422262732468530852015974265478744336897487529234577210675802315554970216561490122562591763577831449772177242991765377481006440251088582084948728911879981261366794959650725537386386254421699645494255034738242300202165809622643258649710903811998064327098896967269006978118054408274685769659846409390989734816292981557904685797449558726144136443915580075534188611779652726821574065101097094121791236212131363340558440225704648919003382089978092144530135704211/61137675280487349708346069335937499949482925677583022711836658875941492538232342450830322403692339249899590824523661614592316936448619609528580091406963105333694685482558735970195359605333736822575581766967247874211131082752585263678678210839537433024767849820366810888816849977213152294091397167173759095307600272089226956173254122081645230252854724903969663004753424710388970576290530403917483506970729736800384127361251341158274072911940281325505246543721242028957418804244965492291456909564537248202643023844939698335303690555015350973121626512506048161039968150600594259448433753187372998872471041022109982652760937047044037331864008124522090238375985579998631318975549666359864813711873886226703628858133366756702194315130037108416753233911362917871888287504487324255913085047649686723522093781998948685886678482253477856833545099723784940878142059193956385257890000000000000000000000000000000000000000", + "bulk_exposure_above_kappa": "3438191447040692548362771804328823643298627782403635566561796173600764444780801332004554573898310351051210626121248006605129883306970233672038381387330923495030677151380797953926514351013917696334345480387760382212440354575476357103483659844738047433438895407132871608420240995014829437430031254263332726327125832738126430969927639155457723639763504559807720354688193307242617355336031050582100958665673646343995748497890371691574658997359644834199673574540157222714399831109317758105031225459872084305019778760188569625432106552111436849391254076715258513288098433195611256044941998275320501123478061886292177469949929280401701380387186054182025955205589958482459851269404634507110642668765652064273654637589014970787724729275921465477532958185875240759907634692340302554796459585371645490027621505912185794080604361474211/1220703125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "Gaussian_arithmetic_above_kappa": "24596066895612923878877048770374567835740714471342715238496425154047367933049583528403726478518348210410540240983084369615968925387705538679669020605940881920336657134088063182935184948442840528189084711614880221773724580192826967105117921908029197805295165914160986519849515299476592643298791637458956906468544267604894791265291492292463362309609064334698528390385312469583237958803067267651291252804442669798265975723262047030118859669933541182870469350772670049845274526411959585881883985798769972381713883111750331865488905046037270531362789039322086280855921406059054222527502347186051060597939422981894117407014746843903146107535308069701310862860401756037723276114286163391146580775875951930405057971986513585581108200429400449723780924487996512393382578225371123941234202229465773499707573080977514802899092610890280102175771140144253832507796653470982885600242211/97820280448779759533353710937499999919172681084132836338938654201506388061171747921328515845907742799839345319237858583347707098317791375245728146251140968533911496772093977552312575368533978916120930827147596598737809732404136421885885137343259892839628559712586897422106959963541043670546235467478014552492160435342763129877206595330632368404567559846351460807605479536622352922064848646267973611153167578880614603778002145853238516659104450120808394469953987246331870086791944787666331055303259597124228838151903517336485904888024561556994602420009677057663949040960950815117494005099796798195953665635375972244417499275270459730982412999235344381401576927997810110360879466175783701938998217962725806173013386810723510904208059373466805174258180668595021260007179718809460936076239498757635350051198317897418685571605564570933672159558055905405027294710330216412624000000000000000000000000000000000000000", + "scalar_work_above_kappa": "123004789548176814334268582279607214178683365526984609401566860433787216262263210578998964521553217987752661041245231312725681553713107141242156535066267194843816763544633339409064002886056336135674453790781188008018307353397235869631061080824481803999685736710733079323603103237373848477411594746161654035980844378133309647108926763111149469640146463563454229817128463717800345382245852550418023257425001640886050032267254735687057607978832482026882548852480838746037955599581495915606336511757675676807850472768289635206778646706408358797203193847215433823544023017555511350341291109431530252189246103325879431028134838594334548152609285951756363150397359174420615833099021036822276849804864509206515971311475821274608221879873054263462271323733547107134061646441857414635873376381347927373227274242400373593969817725844301902021589118761158676515334524178592010555314211/489101402243898797666768554687499999595863405420664181694693271007531940305858739606642579229538713999196726596189292916738535491588956876228640731255704842669557483860469887761562876842669894580604654135737982993689048662020682109429425686716299464198142798562934487110534799817705218352731177337390072762460802176713815649386032976653161842022837799231757304038027397683111764610324243231339868055765837894403073018890010729266192583295522250604041972349769936231659350433959723938331655276516297985621144190759517586682429524440122807784973012100048385288319745204804754075587470025498983990979768328176879861222087496376352298654912064996176721907007884639989050551804397330878918509694991089813629030865066934053617554521040296867334025871290903342975106300035898594047304680381197493788176750255991589487093427858027822854668360797790279527025136473551651082063120000000000000000000000000000000000000000", + "dimension_above_kappa": "6093263721951265029165393066406250006588123020563008517181826823487610845285244677661372355928741626255976047691596761206318900777557879318112628363399735452719791269328526443019331452909224957171818485968045153612149671999952342499091070778019815857594820849282208013086176860348256742378212951979063040527889784320721926790687136365315119623344216736609515822081458635503073369410593822557559484095788764573353890755168385927402780281002205790696101229127761557368926061902049401458543051257736411057746339383780035318414201662606366534346221562132821798603655398383238828208912949804596255467254483577421144356814355705381208635427766067922561501492402875600627525056725937771123710621577571039562333317073145721691191022064942496597557697538384140853859822490858358414072603983446759370470901062682703423515069247897810868590390820674853674522665874001760952096801905915889138187617779229806392577423/6113767528048734970834606933593749994948292567758302271183665887594149253823234245083032240369233924989959082452366161459231693644861960952858009140696310533369468548255873597019535960533373682257558176696724787421113108275258526367867821083953743302476784982036681088881684997721315229409139716717375909530760027208922695617325412208164523025285472490396966300475342471038897057629053040391748350697072973680038412736125134115827407291194028132550524654372124202895741880424496549229145690956453724820264302384493969833530369055501535097312162651250604816103996815060059425944843375318737299887247104102210998265276093704704403733186400812452209023837598557999863131897554966635986481371187388622670362885813336675670219431513003710841675323391136291787188828750448732425591308504764968672352209378199894868588667848225347785683354509972378494087814205919395638525789000000000000000000000000000000000000" + }, + "controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "scope": "Conditional R480 seven-slot k8 construction with a source-bound replica count. The owner map attains the fixed-inventory bin bound. The full conservative invoice, native moment correction, PR589 bit surcharge and 47 outer inequalities are checked. Local admission and all-size/compiler, mutable-source, whole-call hosting, precision/tape, exact-recovery, analytic-transfer and bit H1-H5 assumptions remain." +} diff --git a/research/capped-fusion-t74-k554/evidence/REGRESSION37-CONTROLS.json b/research/capped-fusion-t74-k554/evidence/REGRESSION37-CONTROLS.json new file mode 100644 index 0000000000..5d7c9b908a --- /dev/null +++ b/research/capped-fusion-t74-k554/evidence/REGRESSION37-CONTROLS.json @@ -0,0 +1,147 @@ +{ + "status": "PASS_EXACT_MIXED_048_ALLCOLD_NATIVE_ASSEMBLY_ADMISSION_NEGATIVE_CONTROLS", + "valid_receipt_kappa": "13414839829209/8000000000000000", + "input_sha256": { + "owner_audit": "047123bb26f782c7b18335b4883b58b31267f462b271b561884d1a6767d334e7", + "fresh_invoice": "b6330ee5631fac069e3cd029eff5aa7e525d7f0106465078993729c0f4e3ff75", + "package:inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c" + }, + "assembler_sha256": "c712b045155e08177210d8280632d42cf1cf7faef9ceb3626f4eb9d27e99f8f7", + "rejected_controls": [ + "empty_certification_maps", + "failed_invoice_status", + "nonboolean_precision_check", + "wrong_owner_role_count", + "understated_physical_stock", + "changed_profile_same_rank_mass", + "insufficient_finite_C0", + "missing_finite_check", + "wrong_reflected_orientation_selfconsistent_totals", + "missing_selected_call", + "wrong_selected_primitive_sum", + "wrong_selected_coefficient_work_sum", + "unpaid_wrapper_factors", + "wrong_global_compiler", + "wrong_global_adapter_maximum", + "understated_exact_prefix_and_global_sum", + "wrong_global_prefix_sum", + "wrong_row_prefix_reserve", + "wrong_parent_geometry_charge", + "wrong_rebased_geometry_charge", + "wrong_complete_pervertex_envelope", + "wrong_prior_added_complete_invoice", + "wrong_finite_router_bits", + "wrong_finite_literal_bits", + "wrong_finite_physical_stock_bits", + "wrong_finite_row_coefficient", + "reordered_complete_calls", + "understated_explicit_idle_remainders", + "understated_actual_chart_types", + "wrong_cross_replica_role_count", + "old_no_cold_wrapper_counts_selfconsistent", + "extra:missing_provider", + "extra:missing_backward_orientation", + "extra:unpaid_scalar_primitive", + "extra:wrong_local_artifact_binding", + "extra:false_dirty_restoration", + "extra:wrong_declared_provider_count", + "extra:wrong_local_compiler", + "extra:wrong_local_adapter_charge", + "extra:wrong_local_primitive_bound", + "extra:forged_provider_and_call_program_hash", + "extra:provider_at_wrong_call", + "extra:stale_partner_program_consistent_call_hashes", + "extra:stale_partner_profile_consistent_child_total", + "extra:relocated_against_partner_same_counts", + "extra:compensating_false_profiles_with_gauge44", + "extra:synchronized_forged_source_recipe_hash", + "extra:synchronized_forged_phase_review_semantics", + "extra:width_order_swap_4_5", + "extra:width_inventory_shift_4_5", + "extra:width_order_swap_4_7", + "extra:width_inventory_shift_4_7", + "extra:width_order_swap_4_8", + "extra:width_inventory_shift_4_8", + "extra:width_order_swap_4_9", + "extra:width_inventory_shift_4_9", + "extra:width_order_swap_5_7", + "extra:width_inventory_shift_5_7", + "extra:width_order_swap_5_8", + "extra:width_inventory_shift_5_8", + "extra:width_order_swap_5_9", + "extra:width_inventory_shift_5_9", + "extra:width_order_swap_7_8", + "extra:width_inventory_shift_7_8", + "extra:width_order_swap_7_9", + "extra:width_inventory_shift_7_9", + "extra:width_order_swap_8_9", + "extra:width_inventory_shift_8_9", + "extra:cold_helper_width_swap_258", + "extra:cold_helper_width_swap_270", + "extra:cold_helper_width_swap_282", + "extra:cold_helper_width_swap_294", + "gauge44:missing_provider", + "gauge44:missing_backward_orientation", + "gauge44:unpaid_scalar_primitive", + "gauge44:wrong_local_artifact_binding", + "gauge44:false_dirty_restoration", + "gauge44:wrong_declared_provider_count", + "gauge44:wrong_local_compiler", + "gauge44:wrong_local_adapter_charge", + "gauge44:wrong_local_primitive_bound", + "gauge44:forged_provider_and_call_program_hash", + "gauge44:provider_at_wrong_call", + "gauge44:stale_partner_program_consistent_call_hashes", + "gauge44:stale_partner_profile_consistent_child_total", + "gauge44:relocated_against_partner_same_counts", + "gauge44:compensating_false_profiles_with_extra", + "gauge44:synchronized_forged_source_recipe_hash", + "gauge44:synchronized_forged_phase_review_semantics", + "gauge44:width_order_swap_4_5", + "gauge44:width_inventory_shift_4_5", + "gauge44:width_order_swap_4_7", + "gauge44:width_inventory_shift_4_7", + "gauge44:width_order_swap_4_8", + "gauge44:width_inventory_shift_4_8", + "gauge44:width_order_swap_4_9", + "gauge44:width_inventory_shift_4_9", + "gauge44:width_order_swap_5_7", + "gauge44:width_inventory_shift_5_7", + "gauge44:width_order_swap_5_8", + "gauge44:width_inventory_shift_5_8", + "gauge44:width_order_swap_5_9", + "gauge44:width_inventory_shift_5_9", + "gauge44:width_order_swap_7_8", + "gauge44:width_inventory_shift_7_8", + "gauge44:width_order_swap_7_9", + "gauge44:width_inventory_shift_7_9", + "gauge44:width_order_swap_8_9", + "gauge44:width_inventory_shift_8_9", + "gauge44:cold_helper_width_swap_258", + "gauge44:cold_helper_width_swap_270", + "gauge44:cold_helper_width_swap_282", + "gauge44:cold_helper_width_swap_294", + "wrong_owner_receipt_hash" + ], + "discovery_accepted_controls": [], + "exact_outer_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "conservative_outer_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "recurrence_model_controls": [ + "native_complex_endpoint_rejected_with_old_surcharge", + "omitting_bit_surcharge_would_fail_next_endpoint_rejection" + ], + "scope": "Complete receipt schema; ordered widths and both reflected providers; exact program, work and paid-profile binding; independently recounted compiler, conservative envelope and finite inequalities. Does not replace fresh physical replay." +} diff --git a/research/capped-fusion-t74-k554/evidence/pr1377/CLAIM.json b/research/capped-fusion-t74-k554/evidence/pr1377/CLAIM.json new file mode 100644 index 0000000000..d63216e856 --- /dev/null +++ b/research/capped-fusion-t74-k554/evidence/pr1377/CLAIM.json @@ -0,0 +1,10 @@ +{ + "status": "PASS_T74_EXACT_FILL_COMPLETE_FINITE_ADMISSION", + "kappa_decimal": "0.001676855229071321886144", + "kappa": "26200862954239404471/15625000000000000000000", + "baseline_pr": 1319, + "baseline_kappa": "0.001676855229071321", + "gain_percent": "5.284558765939298618040951514522605992382144528004040991733236735148466E-14", + "scope": "Conditional finite construction only. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape, exact recovery, analytic transfer, PR559 recurrence correction and PR589 bit H1-H5 assumptions remain. No unconditional theorem, full Lean certification, or global packing claim.", + "verification": "Same construction, scalar words, owners and admission as PR1319; only the final kappa grid of the strict outer assembly is refined from 1e-18 to 1e-24. Release proof is run by the publisher." +} diff --git a/research/capped-fusion-t74-k554/evidence/pr1377/PROOF-NOTE.md b/research/capped-fusion-t74-k554/evidence/pr1377/PROOF-NOTE.md new file mode 100644 index 0000000000..319bb23575 --- /dev/null +++ b/research/capped-fusion-t74-k554/evidence/pr1377/PROOF-NOTE.md @@ -0,0 +1,29 @@ +# Finite T74 exact-fill construction + +Start from PR1297 at head 4abf710a7f0d2a46f522f3f13c15769d003f9495. Its two local words, scalar identities, phase recipes, provider widths and ordered centre frames are unchanged. The new contribution changes the number of disjoint data replicas and the whole-helper hosting assignment. + +## Direct sum and chronology + +Take two copies of the 37-replica parent, with disjoint data and bank namespaces. Interleave the two copies of each original invocation while retaining every replica's original 30-event sequence. Private helper and centre work can be shared because each complete invocation restores that work before the next invocation begins. The literal parent constructor rebinds every family, replica, bank-padding sweep and final correction. Each old local route and phase recipe remains identical. The independent checker reconstructs strict windows from source events and checks every assigned physical family against those windows. + +This direct-sum step gives 74 replicas, 666 complete invocations, 66,304 live data families and deficit 23,680. The dedicated-bank envelope used for the conservative invoice has 111,664 live and 112,178 physical families; its shared private work has 514 families. The hosted realization has 66,794 physical families. + +## Integral packing gain + +The doubled incumbent leaves four rank-one gaps, each in a rank-32 child with whole-helper widths (4,9,9,9). Change one base invocation to the extra provider. That replaces four width-four helper demands with four width-five demands. Exact alternating paths transfer complete width-four and width-five roles among their legal owner bins. The four holes become (5,9,9,9). Other helper widths and all pending-axis lists stay fixed. + +The constructor is only a proposer. Independent checks recount all 319,680 roles, verify each call's exact provider inventory, enforce a distinct physical family for every helper within each call, and check the complete emitted controller. The admitted dispatch has 249 base calls and 417 extra calls. Idle H48=22,748; there are no residual H1 holes. + +The paid histogram is H1=1,559,100; H2=339,000; H3=277,392; H4=84,912; H5=54,612; H8=5,328; H48=22,748. Its rank mass is 4,816,512, exactly 73*66,304-23,680. Both exact moment engines and the inherited outer assembly give the conservatively rounded conditional endpoint 0.001676855229071321. + +## Prefix and row charges + +The local native prefix bound is 68 bits. The source-dependent global estimate is 68+37+666+666+4=1,441 bits. We charge 2,048 bits, derived as the next power of two above 192+37+2*666+4. The previous 1,024-bit charge is insufficient and is explicitly rejected. + +The physical stock has bit length 2,644. The row coefficient is 2*2644+9909+252+2*2048=19,545, strictly below the unchanged 20,161 ceiling. The outer bootstrap charges 4+2,048 in its prefix allowance. Its other inequalities and constants remain unchanged. ADMISSION-DERIVATION.patch records each replica-sensitive substitution. The old 37-replica instance also passed all 114 original admission mutation controls under these formulas. + +## Evidence and limitations + +The standalone verifier first admits the retained predecessor, including its two local providers. Default operation performs fresh sequential native runs. Explicit --base-native-from and --extra-native-from reuse requires exact word equality and completed native/ledger/replay/wrapper/phase stage receipts. It then reconstructs the T74 owners and parent, runs frozen controller, invoice and assembly checks, 114 admission controls, 12 bit controls, 15 controller controls, eight independent owner controls and six T74 charge controls. + +These are finite conditional construction checks. They do not discharge the inherited all-size compiler, common-label/mutable-source realization, whole-call hosting theorem, precision/tape theory, exact recovery or analytic transfer; PR559 recurrence correction and PR589 H1-H5 remain assumptions of the framework. No unconditional multiplication theorem, full Lean proof, global packing optimum or practical speedup is asserted. diff --git a/research/capped-fusion-t74-k554/evidence/pr1377/RELEASE.json b/research/capped-fusion-t74-k554/evidence/pr1377/RELEASE.json new file mode 100644 index 0000000000..9afebef3ae --- /dev/null +++ b/research/capped-fusion-t74-k554/evidence/pr1377/RELEASE.json @@ -0,0 +1,12 @@ +{ + "package_dir": "research/gmx-t74-grid24", + "base": "origin/main", + "title_suffix": "finer 1e-24 kappa grid on PR1319's 74-replica exact-fill construction (same construction, only the final grid is refined)", + "summary": "PR1319's construction is unchanged (same provider words, owners, dispatch, plan, admission engines and controls). The strict outer assembler's final kappa grid is refined from 1e-18 to 1e-24 (the three grid expressions in code/assemble.py, as in the merged PR1019). With the same exact margin the 47 strict outer inequalities hold at the finer floor and the next grid point is rejected, so kappa moves from 0.001676855229071321 to 0.001676855229071321886144. No construction improvement is claimed.", + "credits": "PR1319 (rohanarun, 74-replica exact fill) and PR1297 (rohanarun, four cold kernels 531/543/555/567); the finer-grid assembler refinement follows the merged PR1019. Builds on PR1286/PR1274 (helper-donor cold kernels), PR1193 (jeremydiviney, mixed-provider flow), PR1148 (Thomas DiFiore) and the retained lineage named in PR1319. Research direction, prioritisation and release strategy: jeremykothe2. Implementation assistance: oh-my-pi.", + "required": [ + "verify.py", + "verify_release.py", + "MANIFEST.json" + ] +} diff --git a/research/capped-fusion-t74-k554/evidence/pr1377/RESULT.json b/research/capped-fusion-t74-k554/evidence/pr1377/RESULT.json new file mode 100644 index 0000000000..546b8e9507 --- /dev/null +++ b/research/capped-fusion-t74-k554/evidence/pr1377/RESULT.json @@ -0,0 +1 @@ +{"attempts":[{"call":[3,28],"success":true,"time":416}],"dispatch":{"extra":417,"gauge44":249},"idle":{"48":22748},"roles":319680,"scope":"Literal strict windows, bin capacities, per-call helper widths and distinct physical families checked. Local programs reused unchanged. Full T74 parent binding, finite invoice and global admission not yet run.","status":"PASS_EXACT_SINGLE_UPGRADE_T74_OWNER_SCREEN","target_call":[3,28],"target_time":416} \ No newline at end of file diff --git a/research/capped-fusion-t74-k554/freeze_spec.py b/research/capped-fusion-t74-k554/freeze_spec.py new file mode 100644 index 0000000000..e73c2a95c1 --- /dev/null +++ b/research/capped-fusion-t74-k554/freeze_spec.py @@ -0,0 +1,31 @@ +"""Freeze independently recomputed discovery values before strict replay.""" +import argparse +import json +from pathlib import Path + +ap = argparse.ArgumentParser(description=__doc__) +ap.add_argument('--spec', type=Path, required=True) +ap.add_argument('--discovery', type=Path, required=True) +a = ap.parse_args() +spec = json.loads(a.spec.read_text()) +for line in (a.discovery/'WITNESS-RECORD.jsonl').read_text().splitlines(): + key, value = json.loads(line) + parts = key.split('.') + if len(parts)>3 and parts[0]=='providers' and parts[2]=='artifacts': + parts = parts[:3] + ['.'.join(parts[3:])] + target = spec + for part in parts[:-1]: + target = target.setdefault(part, {}) + if parts[-1] in target: + assert target[parts[-1]]==value, 'Conflicting independent recomputations: '+key + target[parts[-1]] = value +assembly = json.loads((a.discovery/'ASSEMBLY.json').read_text()) +for key in ('complex_lower','conservative_complex_lower','kappa','kappa_decimal','conservative_kappa_decimal'): + spec['expected'][key] = assembly[key] +# 32 shared controls plus 17 provider controls, two controls per pair of distinct widths, and four spot checks per provider. +spec['expected']['assembly_controls_rejected'] = 32 + sum(17 + len(p['inventory'])*(len(p['inventory'])-1) + len(spec['width_spot_helpers']) for p in spec['providers'].values()) +from collections import Counter +spec['expected']['provider_counts'] = dict(Counter(p for s,r,p in spec['dispatch'])) +spec['expected']['mutations_rejected'] = 15 +a.spec.write_text(json.dumps(spec, indent=2)+'\n') +print('Frozen exact witness for strict replay:', assembly['kappa_decimal']) diff --git a/research/capped-fusion-t74-k554/geometry_controls.py b/research/capped-fusion-t74-k554/geometry_controls.py new file mode 100644 index 0000000000..feb5fda97f --- /dev/null +++ b/research/capped-fusion-t74-k554/geometry_controls.py @@ -0,0 +1,31 @@ +"""Reject understated T74 prefix, stock and invocation charges using strict assembly.""" +import argparse,copy,hashlib,json,os,sys +from pathlib import Path +assert __debug__ +P=Path(__file__).resolve().parent +ap=argparse.ArgumentParser();ap.add_argument('--source',type=Path,required=True);ap.add_argument('--strict',type=Path,required=True);ap.add_argument('--out',type=Path,required=True);a=ap.parse_args() +sys.path.insert(0,str(P/'code'));os.environ['GAIN_PR564_SOURCE']=str(a.source.resolve());os.environ['WITNESS_SPEC']=str(a.strict/'runtime/data/SPEC.json') +from assemble import assemble +sha=lambda p:hashlib.sha256(p.read_bytes()).hexdigest() +digest=lambda v:hashlib.sha256(json.dumps(v,sort_keys=True,separators=(',',':')).encode()).hexdigest() +op=a.strict/'global/audit/OWNERS-AND-PROFILE.json';ip=a.strict/'global/audit/PREFIX-AND-INVOICE.json';owner=json.loads(op.read_text());invoice=json.loads(ip.read_text());assemble(owner,invoice,sha(op),sha(ip)) +def old_prefix(o,i): + i['charged_prefix_bits']=1024;i['row_prefix_extra']=2048;i['finite']['physical_row_coefficient']-=2048 + +def old_call_count(o,i): + i['complete_invocation_sweeps']=i['bridge_sweeps']=333 + +def old_parent_idle(o,i):o['source_idle_children_charged']//=2 + +def old_stock(o,i):i['physical_stock_identity']['data_and_owner_families']//=2 + +def missing_call(o,i):i['selected_calls'].pop() + +def low_row(o,i):i['finite']['physical_row_coefficient']-=1 +rejected=[] +for fn in [old_prefix,old_call_count,old_parent_idle,old_stock,missing_call,low_row]: + o,i=copy.deepcopy(owner),copy.deepcopy(invoice);fn(o,i);oh=digest(o);i['owner_audit_sha256']=oh + try:assemble(o,i,oh,digest(i)) + except AssertionError as e:rejected.append(dict(name=fn.__name__,reason=str(e) or 'strict arithmetic invariant')) + else:raise AssertionError('accepted '+fn.__name__) +a.out.write_text(json.dumps(dict(status='PASS_T74_GEOMETRY_AND_CHARGE_CONTROLS',rejected=rejected),indent=2)+'\n');print('PASS_GEOMETRY_CONTROLS',len(rejected)) diff --git a/research/capped-fusion-t74-k554/independent_core.py b/research/capped-fusion-t74-k554/independent_core.py new file mode 100644 index 0000000000..31a2a644a8 --- /dev/null +++ b/research/capped-fusion-t74-k554/independent_core.py @@ -0,0 +1,346 @@ +#!/usr/bin/env python3 +# SPDX-License-Identifier: Apache-2.0 +# Prepared for haoyan with substantial OpenAI Codex assistance. +"""Independent source-event, owner, chart, and finite-reserve audit. + +This derivative checks a source-bound replica count and derives its charged +prefix reserve from the call count, retaining the 20161 row ceiling. +The source is Hao Yan's variable-replica checker at the pinned repository base. +SOURCES.json and INDEPENDENT-DERIVATION.patch identify that source and all edits. + +Inputs are read-only. No owner constructor or controller auditor is imported. +--word is the canonical local supplier JSON.gz, with a hash-bound native +INDEPENDENT-LOCAL-REPLAY.json beside it (override with --local-replay). +--baseline-parent is the original eight-replica GLOBAL-TEMPLATE.json.gz. +Its sibling CANONICAL-WORD.json.gz supplies the ports and centre frames. +DATA-PHASES.json defaults to ../work/complex-nine-native/DATA-PHASES.json +(override with --phases). The checker recounts local widths and paid ranks. +--out names a JSON receipt. Checks remain enabled under python -O. +""" +import argparse +import copy +from collections import Counter, defaultdict +import gzip +import hashlib +import json +from pathlib import Path + +V, H, M, T, R = 112, 9, 73, 37, 480 +EXPECTED_IDLE = None + + +def require(condition, message): + if not condition: + raise ValueError(message) + + +def read(path): + data = path.read_bytes() + return json.loads(gzip.decompress(data) if path.suffix == '.gz' else data) + + +def filehash(path): + return hashlib.sha256(path.read_bytes()).hexdigest() + + +def basis(vectors): + pivots = {} + for x in vectors: + require(type(x) is int and 0 <= x < 1 << H, 'invalid local frame vector') + while x: + bit = x.bit_length() - 1 + if bit in pivots: + x ^= pivots[bit] + else: + pivots[bit] = x + break + for bit in sorted(pivots): + for upper in pivots: + if upper > bit and pivots[upper] >> bit & 1: + pivots[upper] ^= pivots[bit] + return tuple(pivots[bit] for bit in sorted(pivots, reverse=True)) + + +def local_inventory(word, replay): + require((word['v'], word['h'], word['R']) == (V, H, R), 'local supplier dimensions') + frames = [basis(frame) for frame in word['frames']] + n = 2 * V + R + require(len(word['start']) == len(word['final']) == n, 'local frame vector lengths') + current = [frames[f] for f in word['start']] + paid = Counter() + + def climb(register, frame): + require(basis(current[register] + frame) == frame, 'nonmonotone local frame') + jump = len(frame) - len(current[register]) + if jump: + paid[jump] += 1 + current[register] = frame + + require(not word['target_levels'], 'this audit requires the current zero-level centre interface') + for section in ('A', 'B', 'tail'): + if section == 'B': + require(all(current[t] == () for t in range(V, 2 * V)), 'target centre level') + for q, frame_id in zip(word['centers'], word['center_frames']): + require(current[q] == frames[frame_id], 'centre carrier frame') + paid[len(frames[frame_id])] += 1 + for gate in word[section]: + registers = gate[1:3] if gate[0] == 'add' else gate[1:2] + require(gate[0] in ('add', 'scale'), 'unknown scalar gate') + for register in registers: + climb(register, frames[gate[-1]]) + for register, frame_id in enumerate(word['final']): + climb(register, frames[frame_id]) + require(dict(paid) == {int(r): count for r, count in word['local_profile'].items()}, 'local paid-profile recount') + for orientation in ('forward', 'backward'): + require(dict(paid) == {int(r): count for r, count in replay['paid_profiles'][orientation].items()}, 'local replay profile binding') + widths = [len(frames[word['final'][q]]) - len(frames[word['start'][q]]) for q in range(2 * V, n)] + require(Counter(widths) == EXPECTED_WIDTHS, 'current supplier width inventory') + return widths, paid + + +def make_context(parent, phases, ports, word, replay, roles): + widths, paid = local_inventory(word, replay) + require(len(parent['calls']) == 72 and {(c['stage'], c['replica']) for c in parent['calls']} == {(s, r) for s in range(9) for r in range(8)}, 'original eight-replica baseline calls') + require(len(roles) == 9 * T * R, 'complete helper role count') + address = {} + for role in roles: + key = (role['stage'], role['replica']) + time = role['time'] + require(time not in address or address[time] == key, 'inconsistent invocation time address') + address[time] = key + require(set(address) == set(range(9 * T)), 'contiguous invocation times') + order = [address[t] for t in range(9 * T)] + require(set(order) == {(s, r) for s in range(9) for r in range(T)}, 'stage/replica inventory') + # Arbitrary interleaving: the exact per-replica projection is checked below. + rank = {child['child']: child['rank'] for child in parent['idle_children']} + source = parent['execution_schedule'] + blocks, stage = {}, None + for index, event in enumerate(source): + if event['kind'] in ('bank_padding_cover_sweep', 'translate_every_live_family'): + continue + if event['kind'] == 'local_cover_sweep': + stage = event['stage'] + blocks[stage] = [] + require(stage is not None, 'source event before first invocation') + blocks[stage].append((index, event)) + require(set(blocks) == set(range(9)), 'source stage inventory') + events = [(index, event, replica, time) for time, (stage, replica) in enumerate(order) for index, event in blocks[stage]] + projections = defaultdict(list) + for index, event, replica, time in events: + projections[replica].append(index) + require(set(projections) == set(range(T)) and all(p == list(range(30)) for p in projections.values()), 'per-replica source-event projection') + stage_pair = {e['stage']: e['pair'] for e in parent['recipe'] if e['kind'] == 'local'} + last, windows, callpos, child_pair, side = {}, {}, {}, {}, {} + bridges = 0 + for position, (_, event, replica, _) in enumerate(events): + kind = event['kind'] + if kind == 'local_cover_sweep': + stage = event['stage'] + callpos[stage, replica] = position + last[replica, stage_pair[stage]] = position + elif kind == 'bridge': + last[replica, event['src']] = last[replica, event['dst']] = position + bridges += 1 + elif kind == 'idle_cover_sweep': + for sd, child in enumerate(event['child_indices']): + if child in rank: + windows[replica, child] = (last.get((replica, event['pair']), -1), position) + child_pair[child], side[child] = event['pair'], sd + require(len(windows) == T * len(rank), 'actual window inventory') + require(len(ports) == V, 'port count') + bases = [] + for q in ports: + zero = next(i for i in range(H) if not (q >> i & 1)) + correction = q ^ (1 << zero) + axes = list(range(H)) + axes[0], axes[zero] = axes[zero], axes[0] + frame = [(1 << i) ^ (correction if correction >> i & 1 else 0) for i in axes] + [1 << i for i in range(H, M)] + require(all((x & y).bit_count() % 2 == int(i == j) for i, x in enumerate(frame) for j, y in enumerate(frame)), 'nonorthogonal owner basis') + bases.append(frame) + return dict(widths=widths, paid=paid, order=order, at={key:t for t,key in enumerate(order)}, rank=rank, + windows=windows, callpos=callpos, child_pair=child_pair, side=side, stage_pair=stage_pair, + bases=bases, phases=phases, bridges=bridges, event_count=len(events), replay=replay) + + +def check_pending_axes(context): + checked = 0 + for port, frame in enumerate(context['bases']): + used = defaultdict(set) + for child, rank in context['rank'].items(): + axes = list(map(int, context['phases']['recipes'][port]['idle_children'][child]['orthogonal_axes'])) + require(len(axes) == rank and len(set(axes)) == rank and set(axes) <= set(frame), + 'pending child orthogonal basis') + family = context['child_pair'][child], context['side'][child] + require(not used[family] & set(axes), 'overlapping pending children on one family') + used[family].update(axes) + checked += 1 + return checked + + +def check_roles(context, roles): + c = context + live, physical = T * 8 * V, T * 8 * V + 8 + R + 2 + require(len(roles) == 9 * T * R, 'complete helper role count') + helpers, families, used = defaultdict(set), defaultdict(set), defaultdict(set) + charts, chart_cache = set(), {} + for z in roles: + s, r, helper = z['stage'], z['replica'], z['helper'] + owner, child, port = z['owner_replica'], z['child'], z['port'] + offset, width, family = z['offset'], z['width'], z['family'] + call = (s, r) + require(call in c['at'] and 0 <= helper < R and 0 <= owner < T and 0 <= port < V, 'role coordinates') + require(z['time'] == c['at'][call], 'role invocation time') + require(width == c['call_widths'][call][helper], 'whole-helper residual width') + require(0 <= family < live, 'private-namespace collision') + require(child in c['rank'], 'unknown idle child') + require(z['copy'] == V * owner + port and family == owner * 896 + (2 * c['child_pair'][child] + c['side'][child]) * V + port, 'physical family identity') + lo, hi = c['windows'][owner, child] + require(lo < c['callpos'][call] < hi, 'strict bridge-aware idle window') + require(family // 224 != r * 4 + c['stage_pair'][s], 'helper aliases active data pair') + require(helper not in helpers[call] and family not in families[call], 'duplicate helper or family within whole invocation') + helpers[call].add(helper) + families[call].add(family) + cells = set(range(offset, offset + width)) + bin_key = (owner, child, port) + require(offset >= 0 and offset + width <= c['rank'][child] and not used[bin_key] & cells, 'overlapping or out-of-capacity slice') + used[bin_key].update(cells) + chart_key = (port, child, offset, width) + if chart_key not in chart_cache: + frame = c['bases'][port] + pending = list(map(int, c['phases']['recipes'][port]['idle_children'][child]['orthogonal_axes'])) + require(len(pending) == c['rank'][child], 'phase child rank') + occupied = [frame.index(x) for x in pending[offset:offset + width]] + spectators = [i for i in range(M) if i not in occupied][:H - width] + permutation = occupied + spectators + [i for i in range(M) if i not in occupied and i not in spectators] + require(len(occupied) == width and len(set(occupied + spectators)) == H and sorted(permutation) == list(range(M)), 'residual/spectator permutation') + require([frame[i] for i in permutation[:width]] == pending[offset:offset + width], 'pending-axis binding') + chart_cache[chart_key] = tuple(frame[i] for i in permutation) + charts.add(chart_cache[chart_key]) + require(set(helpers) == set(c['order']) and all(h == set(range(R)) for h in helpers.values()), 'complete per-call helper inventory') + idle = Counter() + for owner, child in c['windows']: + for port in range(V): + cells = used[owner, child, port] + require(cells == set(range(len(cells))), 'gap in pending prefix') + left = c['rank'][child] - len(cells) + if left: + idle[left] += 1 + require(dict(idle) == EXPECTED_IDLE, 'nominated idle profile') + profile = Counter(c['aggregate_paid']) + profile.update(idle) + mass = sum(rank * count for rank, count in profile.items()) + require(M * live - mass == 320*T, 'replica-scaled rank deficit') + require(c['bridges'] == 9*T, 'actual bridge count') + localbits = c['max_local_prefix'] + prefix = localbits + (M + 1) // 2 + len(c['order']) + c['bridges'] + 4 + group = 2 ** (36 * 36) + for i in range(1, 37): + group *= 2 ** (2 * i) - 1 + stock = group * physical + payload = 1 << (192 + (M+1)//2 + 2*len(c['order']) + 4).bit_length() + row = 2 * stock.bit_length() + 9909 + 252 + 2 * payload + require(prefix < payload, 'prefix reserve') + require(row < 20161 and M * M > 2 * max(profile) ** 2, 'row or halving reserve') + return dict(status='PASS_INDEPENDENT_VARIABLE_T_LITERAL_WINDOWS_CHARTS_PREFIX_ROW', roles=len(roles), calls=len(c['order']), + source_events_per_replica=30, expanded_replica_events=c['event_count'], bridge_events=c['bridges'], + literal_windows=len(c['windows']), checked_whole_helper_widths=len(roles), checked_busy_family_windows=len(roles), + orthogonal_port_bases=len(c['bases']), actual_73_axis_charts=len(charts), checked_slice_prefixes=len(c['windows']) * V, + local_profiles=c['local_profiles'], width_inventories=c['width_inventories'], + idle=dict(sorted(idle.items())), profile=dict(sorted(profile.items())), live=live, physical=physical, + rank_mass=mass, deficit=320*T, namespace={'data':[0,live], 'centres':[live,live+8], 'tableau':[live+8,live+8+R], 'coefficient':[live+8+R,physical]}, + local_prefix_bits=localbits, local_prefix_from_native_receipt=True, local_profile_recounted=True, + prefix_formula=dict(local_scalar=localbits, input_l2=(M + 1) // 2, invocations=len(c['order']), bridges=c['bridges'], margin=4), + prefix_bits=prefix, charged_prefix_bits=payload, physical_stock_bits=stock.bit_length(), + physical_row_coefficient=row, row_limit=20161, + scope='Finite role/window/chart and inherited prefix/row obligations. Requires separately admitted local supplier and emitted controller, complete finite invoice, exact moments and outer assembly; no all-size theorem is asserted.') + + +def controls(context, roles): + candidates = [] + first = roles[0] + bad = dict(first, family=896*T) + candidates.append(('private_namespace_collision', [bad] + roles[1:], 'private-namespace collision')) + index = next(i for i, z in enumerate(roles) if z['replica'] >= 1) + bad = dict(roles[index], replica=roles[index]['replica'] - 1) + candidates.append(('copy_replica_alias', [bad] + roles[:index] + roles[index+1:], 'role invocation time')) + candidates.append(('missing_whole_helper', roles[1:], 'complete helper role count')) + split = dict(first, width=first['width'] - 1) + fragment = dict(first, offset=first['offset'] + first['width'] - 1, width=1) + candidates.append(('split_whole_helper', [split, fragment] + roles[1:], 'complete helper role count')) + candidates.append(('truncated_helper_width', [split] + roles[1:], 'whole-helper residual width')) + # Keep the family and chart valid, but move one complete role past its + # actual idle event. Freeze the original invocation order for controls. + crossing = None + for index, z in enumerate(roles): + lo, hi = context['windows'][z['owner_replica'], z['child']] + later = next((key for key in context['order'] if context['callpos'][key] >= hi), None) + if later is not None: + crossing = [dict(z, stage=later[0], replica=later[1], time=context['at'][later])] + roles[:index] + roles[index+1:] + break + require(crossing is not None, 'no idle-boundary control could be constructed') + candidates.append(('cross_idle_boundary', crossing, 'strict bridge-aware idle window')) + rejected = [] + for name, bad, expected in candidates: + try: + check_roles(context, bad) + except ValueError as exc: + require(str(exc) == expected, 'control rejected at unexpected predicate: ' + name) + rejected.append(dict(name=name, reason=str(exc))) + else: + raise ValueError('accepted negative control: ' + name) + bad = dict(context, phases=copy.deepcopy(context['phases'])) + pair = next((a, b) for a in context['rank'] for b in context['rank'] + if a < b and (context['child_pair'][a], context['side'][a]) == + (context['child_pair'][b], context['side'][b])) + children = bad['phases']['recipes'][0]['idle_children'] + children[pair[1]]['orthogonal_axes'][0] = children[pair[0]]['orthogonal_axes'][0] + try: + check_pending_axes(bad) + except ValueError as exc: + require(str(exc) == 'overlapping pending children on one family', + 'pending-axis control rejected at unexpected predicate') + rejected.append(dict(name='cross_child_pending_axis_alias', reason=str(exc))) + else: + raise ValueError('accepted negative control: cross_child_pending_axis_alias') + return rejected + + +def main(): + global T, EXPECTED_IDLE, EXPECTED_WIDTHS + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--baseline-parent', type=Path, required=True) + parser.add_argument('--owners', type=Path, required=True) + parser.add_argument('--word', type=Path, required=True) + parser.add_argument('--phases', type=Path) + parser.add_argument('--local-replay', type=Path) + parser.add_argument('--out', type=Path, required=True) + parser.add_argument("--replicas", type=int, required=True) + parser.add_argument("--expected-idle", required=True) + parser.add_argument("--expected-widths", required=True) + args = parser.parse_args() + EXPECTED_WIDTHS = {int(k):v for k,v in json.loads(args.expected_widths).items()} + T = args.replicas + require(T == 37, "replica range") + EXPECTED_IDLE = {int(k): v for k,v in json.loads(args.expected_idle).items()} + phases_path = args.phases or args.baseline_parent.parent.parent / 'work/complex-nine-native/DATA-PHASES.json' + canonical_path = args.baseline_parent.parent / 'CANONICAL-WORD.json.gz' + replay_path = args.local_replay or args.word.parent / 'INDEPENDENT-LOCAL-REPLAY.json' + parent, phases, canonical, word, replay, roles = map(read, (args.baseline_parent, phases_path, canonical_path, args.word, replay_path, args.owners)) + require(replay['status'] == 'PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY', 'local replay status') + require(replay['canonical_word_sha256'] == filehash(args.word), 'local word/replay hash binding') + require(set(replay['local']) == {'forward', 'backward'}, 'both native prefix orientations') + require(word['ports'] == canonical['ports'], 'local/controller port interface') + require(len(word['center_frames']) == len(canonical['center_frames']) == 8, 'eight centre interfaces') + require([basis(word['frames'][f]) for f in word['center_frames']] == [basis(canonical['frames'][f]) for f in canonical['center_frames']], 'ordered centre-frame interface') + context = make_context(parent, phases, canonical['ports'], word, replay, roles) + pending = check_pending_axes(context) + receipt = check_roles(context, roles) + receipt['disjoint_pending_child_axis_checks'] = pending + receipt['controls_rejected'] = controls(context, roles) + receipt['input_sha256'] = {str(path): filehash(path) for path in (args.baseline_parent, phases_path, canonical_path, args.word, replay_path, args.owners)} + args.out.write_text(json.dumps(receipt, indent=2) + '\n', encoding='utf-8') + print(receipt['status'], 'roles=' + str(receipt['roles']), 'controls=' + str(len(receipt['controls_rejected']))) + + +if __name__ == '__main__': + main() diff --git a/research/capped-fusion-t74-k554/inputs/DISPATCH.json b/research/capped-fusion-t74-k554/inputs/DISPATCH.json new file mode 100644 index 0000000000..613e01490d --- /dev/null +++ b/research/capped-fusion-t74-k554/inputs/DISPATCH.json @@ -0,0 +1,1667 @@ +[ + [ + 0, + 0, + "extra" + ], + [ + 0, + 1, + "extra" + ], + [ + 0, + 2, + "extra" + ], + [ + 0, + 3, + "extra" + ], + [ + 0, + 4, + "extra" + ], + [ + 1, + 0, + "extra" + ], + [ + 0, + 5, + "extra" + ], + [ + 1, + 1, + "extra" + ], + [ + 0, + 6, + "extra" + ], + [ + 1, + 2, + "extra" + ], + [ + 0, + 7, + "extra" + ], + [ + 1, + 3, + "extra" + ], + [ + 0, + 8, + "extra" + ], + [ + 1, + 4, + "extra" + ], + [ + 0, + 9, + "extra" + ], + [ + 2, + 0, + "extra" + ], + [ + 1, + 5, + "extra" + ], + [ + 0, + 10, + "extra" + ], + [ + 2, + 1, + "extra" + ], + [ + 1, + 6, + "extra" + ], + [ + 0, + 11, + "extra" + ], + [ + 2, + 2, + "extra" + ], + [ + 1, + 7, + "extra" + ], + [ + 0, + 12, + "extra" + ], + [ + 2, + 3, + "extra" + ], + [ + 1, + 8, + "extra" + ], + [ + 0, + 13, + "extra" + ], + [ + 2, + 4, + "extra" + ], + [ + 1, + 9, + "extra" + ], + [ + 3, + 0, + "extra" + ], + [ + 0, + 14, + "extra" + ], + [ + 2, + 5, + "extra" + ], + [ + 1, + 10, + "extra" + ], + [ + 3, + 1, + "extra" + ], + [ + 0, + 15, + "extra" + ], + [ + 2, + 6, + "extra" + ], + [ + 1, + 11, + "extra" + ], + [ + 3, + 2, + "extra" + ], + [ + 0, + 16, + "extra" + ], + [ + 2, + 7, + "extra" + ], + [ + 1, + 12, + "extra" + ], + [ + 3, + 3, + "extra" + ], + [ + 0, + 17, + "extra" + ], + [ + 2, + 8, + "extra" + ], + [ + 1, + 13, + "extra" + ], + [ + 3, + 4, + "extra" + ], + [ + 0, + 18, + "extra" + ], + [ + 2, + 9, + "extra" + ], + [ + 4, + 0, + "extra" + ], + [ + 1, + 14, + "extra" + ], + [ + 3, + 5, + "extra" + ], + [ + 0, + 19, + "extra" + ], + [ + 2, + 10, + "extra" + ], + [ + 4, + 1, + "extra" + ], + [ + 1, + 15, + "extra" + ], + [ + 3, + 6, + "extra" + ], + [ + 0, + 20, + "extra" + ], + [ + 2, + 11, + "extra" + ], + [ + 4, + 2, + "extra" + ], + [ + 1, + 16, + "extra" + ], + [ + 3, + 7, + "extra" + ], + [ + 0, + 21, + "extra" + ], + [ + 2, + 12, + "extra" + ], + [ + 4, + 3, + "extra" + ], + [ + 1, + 17, + "extra" + ], + [ + 3, + 8, + "extra" + ], + [ + 0, + 22, + "extra" + ], + [ + 2, + 13, + "extra" + ], + [ + 4, + 4, + "extra" + ], + [ + 1, + 18, + "extra" + ], + [ + 3, + 9, + "extra" + ], + [ + 0, + 23, + "extra" + ], + [ + 5, + 0, + "extra" + ], + [ + 2, + 14, + "extra" + ], + [ + 4, + 5, + "extra" + ], + [ + 1, + 19, + "extra" + ], + [ + 3, + 10, + "extra" + ], + [ + 0, + 24, + "extra" + ], + [ + 5, + 1, + "extra" + ], + [ + 2, + 15, + "extra" + ], + [ + 4, + 6, + "extra" + ], + [ + 1, + 20, + "extra" + ], + [ + 3, + 11, + "extra" + ], + [ + 0, + 25, + "extra" + ], + [ + 5, + 2, + "extra" + ], + [ + 2, + 16, + "extra" + ], + [ + 4, + 7, + "extra" + ], + [ + 1, + 21, + "extra" + ], + [ + 3, + 12, + "extra" + ], + [ + 0, + 26, + "extra" + ], + [ + 5, + 3, + "extra" + ], + [ + 2, + 17, + "extra" + ], + [ + 4, + 8, + "extra" + ], + [ + 1, + 22, + "extra" + ], + [ + 3, + 13, + "extra" + ], + [ + 0, + 27, + "extra" + ], + [ + 5, + 4, + "extra" + ], + [ + 2, + 18, + "extra" + ], + [ + 4, + 9, + "extra" + ], + [ + 1, + 23, + "extra" + ], + [ + 6, + 0, + "extra" + ], + [ + 3, + 14, + "extra" + ], + [ + 0, + 28, + "extra" + ], + [ + 5, + 5, + "extra" + ], + [ + 2, + 19, + "extra" + ], + [ + 4, + 10, + "extra" + ], + [ + 1, + 24, + "extra" + ], + [ + 6, + 1, + "extra" + ], + [ + 3, + 15, + "extra" + ], + [ + 0, + 29, + "extra" + ], + [ + 5, + 6, + "extra" + ], + [ + 2, + 20, + "extra" + ], + [ + 4, + 11, + "extra" + ], + [ + 1, + 25, + "extra" + ], + [ + 6, + 2, + "extra" + ], + [ + 3, + 16, + "extra" + ], + [ + 0, + 30, + "extra" + ], + [ + 5, + 7, + "extra" + ], + [ + 2, + 21, + "extra" + ], + [ + 4, + 12, + "extra" + ], + [ + 1, + 26, + "extra" + ], + [ + 6, + 3, + "extra" + ], + [ + 3, + 17, + "extra" + ], + [ + 0, + 31, + "extra" + ], + [ + 5, + 8, + "extra" + ], + [ + 2, + 22, + "extra" + ], + [ + 4, + 13, + "extra" + ], + [ + 1, + 27, + "extra" + ], + [ + 6, + 4, + "extra" + ], + [ + 3, + 18, + "extra" + ], + [ + 0, + 32, + "extra" + ], + [ + 5, + 9, + "extra" + ], + [ + 2, + 23, + "extra" + ], + [ + 7, + 0, + "extra" + ], + [ + 4, + 14, + "extra" + ], + [ + 1, + 28, + "extra" + ], + [ + 6, + 5, + "extra" + ], + [ + 3, + 19, + "extra" + ], + [ + 0, + 33, + "extra" + ], + [ + 5, + 10, + "extra" + ], + [ + 2, + 24, + "extra" + ], + [ + 7, + 1, + "extra" + ], + [ + 4, + 15, + "extra" + ], + [ + 1, + 29, + "extra" + ], + [ + 6, + 6, + "extra" + ], + [ + 3, + 20, + "extra" + ], + [ + 0, + 34, + "extra" + ], + [ + 5, + 11, + "extra" + ], + [ + 2, + 25, + "extra" + ], + [ + 7, + 2, + "extra" + ], + [ + 4, + 16, + "extra" + ], + [ + 1, + 30, + "extra" + ], + [ + 6, + 7, + "extra" + ], + [ + 3, + 21, + "extra" + ], + [ + 0, + 35, + "extra" + ], + [ + 5, + 12, + "extra" + ], + [ + 2, + 26, + "extra" + ], + [ + 7, + 3, + "extra" + ], + [ + 4, + 17, + "extra" + ], + [ + 1, + 31, + "extra" + ], + [ + 6, + 8, + "extra" + ], + [ + 3, + 22, + "extra" + ], + [ + 0, + 36, + "extra" + ], + [ + 5, + 13, + "extra" + ], + [ + 2, + 27, + "extra" + ], + [ + 7, + 4, + "extra" + ], + [ + 4, + 18, + "extra" + ], + [ + 1, + 32, + "extra" + ], + [ + 6, + 9, + "extra" + ], + [ + 3, + 23, + "extra" + ], + [ + 8, + 0, + "extra" + ], + [ + 5, + 14, + "extra" + ], + [ + 2, + 28, + "extra" + ], + [ + 7, + 5, + "extra" + ], + [ + 4, + 19, + "extra" + ], + [ + 1, + 33, + "extra" + ], + [ + 6, + 10, + "extra" + ], + [ + 3, + 24, + "extra" + ], + [ + 8, + 1, + "extra" + ], + [ + 5, + 15, + "extra" + ], + [ + 2, + 29, + "extra" + ], + [ + 7, + 6, + "extra" + ], + [ + 4, + 20, + "extra" + ], + [ + 1, + 34, + "extra" + ], + [ + 6, + 11, + "extra" + ], + [ + 3, + 25, + "extra" + ], + [ + 8, + 2, + "extra" + ], + [ + 5, + 16, + "extra" + ], + [ + 2, + 30, + "extra" + ], + [ + 7, + 7, + "extra" + ], + [ + 4, + 21, + "extra" + ], + [ + 1, + 35, + "extra" + ], + [ + 6, + 12, + "extra" + ], + [ + 3, + 26, + "extra" + ], + [ + 8, + 3, + "extra" + ], + [ + 5, + 17, + "extra" + ], + [ + 2, + 31, + "extra" + ], + [ + 7, + 8, + "extra" + ], + [ + 4, + 22, + "extra" + ], + [ + 1, + 36, + "extra" + ], + [ + 6, + 13, + "extra" + ], + [ + 3, + 27, + "extra" + ], + [ + 8, + 4, + "extra" + ], + [ + 5, + 18, + "extra" + ], + [ + 2, + 32, + "extra" + ], + [ + 7, + 9, + "extra" + ], + [ + 4, + 23, + "extra" + ], + [ + 6, + 14, + "extra" + ], + [ + 3, + 28, + "gauge44" + ], + [ + 8, + 5, + "gauge44" + ], + [ + 5, + 19, + "gauge44" + ], + [ + 2, + 33, + "gauge44" + ], + [ + 7, + 10, + "gauge44" + ], + [ + 4, + 24, + "gauge44" + ], + [ + 6, + 15, + "gauge44" + ], + [ + 3, + 29, + "gauge44" + ], + [ + 8, + 6, + "gauge44" + ], + [ + 5, + 20, + "gauge44" + ], + [ + 2, + 34, + "gauge44" + ], + [ + 7, + 11, + "gauge44" + ], + [ + 4, + 25, + "gauge44" + ], + [ + 6, + 16, + "gauge44" + ], + [ + 3, + 30, + "gauge44" + ], + [ + 8, + 7, + "gauge44" + ], + [ + 5, + 21, + "gauge44" + ], + [ + 2, + 35, + "gauge44" + ], + [ + 7, + 12, + "gauge44" + ], + [ + 4, + 26, + "gauge44" + ], + [ + 6, + 17, + "gauge44" + ], + [ + 3, + 31, + "gauge44" + ], + [ + 8, + 8, + "gauge44" + ], + [ + 5, + 22, + "gauge44" + ], + [ + 2, + 36, + "gauge44" + ], + [ + 7, + 13, + "gauge44" + ], + [ + 4, + 27, + "gauge44" + ], + [ + 6, + 18, + "gauge44" + ], + [ + 3, + 32, + "gauge44" + ], + [ + 8, + 9, + "gauge44" + ], + [ + 5, + 23, + "gauge44" + ], + [ + 7, + 14, + "gauge44" + ], + [ + 4, + 28, + "gauge44" + ], + [ + 6, + 19, + "gauge44" + ], + [ + 3, + 33, + "gauge44" + ], + [ + 8, + 10, + "gauge44" + ], + [ + 5, + 24, + "gauge44" + ], + [ + 7, + 15, + "gauge44" + ], + [ + 4, + 29, + "gauge44" + ], + [ + 6, + 20, + "gauge44" + ], + [ + 3, + 34, + "gauge44" + ], + [ + 8, + 11, + "gauge44" + ], + [ + 5, + 25, + "gauge44" + ], + [ + 7, + 16, + "gauge44" + ], + [ + 4, + 30, + "gauge44" + ], + [ + 6, + 21, + "gauge44" + ], + [ + 3, + 35, + "gauge44" + ], + [ + 8, + 12, + "gauge44" + ], + [ + 5, + 26, + "gauge44" + ], + [ + 7, + 17, + "gauge44" + ], + [ + 4, + 31, + "gauge44" + ], + [ + 6, + 22, + "gauge44" + ], + [ + 3, + 36, + "gauge44" + ], + [ + 8, + 13, + "gauge44" + ], + [ + 5, + 27, + "gauge44" + ], + [ + 7, + 18, + "gauge44" + ], + [ + 4, + 32, + "gauge44" + ], + [ + 6, + 23, + "gauge44" + ], + [ + 8, + 14, + "gauge44" + ], + [ + 5, + 28, + "gauge44" + ], + [ + 7, + 19, + "gauge44" + ], + [ + 4, + 33, + "gauge44" + ], + [ + 6, + 24, + "gauge44" + ], + [ + 8, + 15, + "gauge44" + ], + [ + 5, + 29, + "gauge44" + ], + [ + 7, + 20, + "gauge44" + ], + [ + 4, + 34, + "gauge44" + ], + [ + 6, + 25, + "gauge44" + ], + [ + 8, + 16, + "gauge44" + ], + [ + 5, + 30, + "gauge44" + ], + [ + 7, + 21, + "gauge44" + ], + [ + 4, + 35, + "gauge44" + ], + [ + 6, + 26, + "gauge44" + ], + [ + 8, + 17, + "gauge44" + ], + [ + 5, + 31, + "gauge44" + ], + [ + 7, + 22, + "gauge44" + ], + [ + 4, + 36, + "gauge44" + ], + [ + 6, + 27, + "gauge44" + ], + [ + 8, + 18, + "gauge44" + ], + [ + 5, + 32, + "gauge44" + ], + [ + 7, + 23, + "gauge44" + ], + [ + 6, + 28, + "gauge44" + ], + [ + 8, + 19, + "gauge44" + ], + [ + 5, + 33, + "gauge44" + ], + [ + 7, + 24, + "gauge44" + ], + [ + 6, + 29, + "gauge44" + ], + [ + 8, + 20, + "gauge44" + ], + [ + 5, + 34, + "gauge44" + ], + [ + 7, + 25, + "gauge44" + ], + [ + 6, + 30, + "gauge44" + ], + [ + 8, + 21, + "gauge44" + ], + [ + 5, + 35, + "gauge44" + ], + [ + 7, + 26, + "gauge44" + ], + [ + 6, + 31, + "gauge44" + ], + [ + 8, + 22, + "gauge44" + ], + [ + 5, + 36, + "gauge44" + ], + [ + 7, + 27, + "gauge44" + ], + [ + 6, + 32, + "gauge44" + ], + [ + 8, + 23, + "gauge44" + ], + [ + 7, + 28, + "gauge44" + ], + [ + 6, + 33, + "gauge44" + ], + [ + 8, + 24, + "gauge44" + ], + [ + 7, + 29, + "gauge44" + ], + [ + 6, + 34, + "gauge44" + ], + [ + 8, + 25, + "gauge44" + ], + [ + 7, + 30, + "gauge44" + ], + [ + 6, + 35, + "gauge44" + ], + [ + 8, + 26, + "gauge44" + ], + [ + 7, + 31, + "gauge44" + ], + [ + 6, + 36, + "gauge44" + ], + [ + 8, + 27, + "gauge44" + ], + [ + 7, + 32, + "gauge44" + ], + [ + 8, + 28, + "gauge44" + ], + [ + 7, + 33, + "gauge44" + ], + [ + 8, + 29, + "gauge44" + ], + [ + 7, + 34, + "gauge44" + ], + [ + 8, + 30, + "gauge44" + ], + [ + 7, + 35, + "gauge44" + ], + [ + 8, + 31, + "gauge44" + ], + [ + 7, + 36, + "gauge44" + ], + [ + 8, + 32, + "gauge44" + ], + [ + 8, + 33, + "gauge44" + ], + [ + 8, + 34, + "gauge44" + ], + [ + 8, + 35, + "gauge44" + ], + [ + 8, + 36, + "gauge44" + ] +] diff --git a/research/capped-fusion-t74-k554/inputs/GLOBAL-TEMPLATE.json.gz b/research/capped-fusion-t74-k554/inputs/GLOBAL-TEMPLATE.json.gz new file mode 100644 index 0000000000..114808c32b Binary files /dev/null and b/research/capped-fusion-t74-k554/inputs/GLOBAL-TEMPLATE.json.gz differ diff --git a/research/capped-fusion-t74-k554/inputs/OWNERS.json.gz b/research/capped-fusion-t74-k554/inputs/OWNERS.json.gz new file mode 100644 index 0000000000..34fa5d69aa Binary files /dev/null and b/research/capped-fusion-t74-k554/inputs/OWNERS.json.gz differ diff --git a/research/capped-fusion-t74-k554/inputs/PLAN.json b/research/capped-fusion-t74-k554/inputs/PLAN.json new file mode 100644 index 0000000000..5af9dd2082 --- /dev/null +++ b/research/capped-fusion-t74-k554/inputs/PLAN.json @@ -0,0 +1,231468 @@ +{ + "status": "EXPLICIT_MIXED_T37_ENTRANCE_NOMINATION", + "mode": "mixed-t37-entrances", + "K": 4, + "T": 37, + "M": 73, + "L": 9, + "live": 33152, + "deficit": 11840, + "profile": { + "1": 779556, + "2": 169496, + "3": 138694, + "4": 42458, + "5": 27306, + "8": 2664, + "48": 11374 + }, + "order": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 0, + 2 + ], + [ + 0, + 3 + ], + [ + 0, + 4 + ], + [ + 1, + 0 + ], + [ + 0, + 5 + ], + [ + 1, + 1 + ], + [ + 0, + 6 + ], + [ + 1, + 2 + ], + [ + 0, + 7 + ], + [ + 1, + 3 + ], + [ + 0, + 8 + ], + [ + 1, + 4 + ], + [ + 0, + 9 + ], + [ + 2, + 0 + ], + [ + 1, + 5 + ], + [ + 0, + 10 + ], + [ + 2, + 1 + ], + [ + 1, + 6 + ], + [ + 0, + 11 + ], + [ + 2, + 2 + ], + [ + 1, + 7 + ], + [ + 0, + 12 + ], + [ + 2, + 3 + ], + [ + 1, + 8 + ], + [ + 0, + 13 + ], + [ + 2, + 4 + ], + [ + 1, + 9 + ], + [ + 3, + 0 + ], + [ + 0, + 14 + ], + [ + 2, + 5 + ], + [ + 1, + 10 + ], + [ + 3, + 1 + ], + [ + 0, + 15 + ], + [ + 2, + 6 + ], + [ + 1, + 11 + ], + [ + 3, + 2 + ], + [ + 0, + 16 + ], + [ + 2, + 7 + ], + [ + 1, + 12 + ], + [ + 3, + 3 + ], + [ + 0, + 17 + ], + [ + 2, + 8 + ], + [ + 1, + 13 + ], + [ + 3, + 4 + ], + [ + 0, + 18 + ], + [ + 2, + 9 + ], + [ + 4, + 0 + ], + [ + 1, + 14 + ], + [ + 3, + 5 + ], + [ + 0, + 19 + ], + [ + 2, + 10 + ], + [ + 4, + 1 + ], + [ + 1, + 15 + ], + [ + 3, + 6 + ], + [ + 0, + 20 + ], + [ + 2, + 11 + ], + [ + 4, + 2 + ], + [ + 1, + 16 + ], + [ + 3, + 7 + ], + [ + 0, + 21 + ], + [ + 2, + 12 + ], + [ + 4, + 3 + ], + [ + 1, + 17 + ], + [ + 3, + 8 + ], + [ + 0, + 22 + ], + [ + 2, + 13 + ], + [ + 4, + 4 + ], + [ + 1, + 18 + ], + [ + 3, + 9 + ], + [ + 0, + 23 + ], + [ + 5, + 0 + ], + [ + 2, + 14 + ], + [ + 4, + 5 + ], + [ + 1, + 19 + ], + [ + 3, + 10 + ], + [ + 0, + 24 + ], + [ + 5, + 1 + ], + [ + 2, + 15 + ], + [ + 4, + 6 + ], + [ + 1, + 20 + ], + [ + 3, + 11 + ], + [ + 0, + 25 + ], + [ + 5, + 2 + ], + [ + 2, + 16 + ], + [ + 4, + 7 + ], + [ + 1, + 21 + ], + [ + 3, + 12 + ], + [ + 0, + 26 + ], + [ + 5, + 3 + ], + [ + 2, + 17 + ], + [ + 4, + 8 + ], + [ + 1, + 22 + ], + [ + 3, + 13 + ], + [ + 0, + 27 + ], + [ + 5, + 4 + ], + [ + 2, + 18 + ], + [ + 4, + 9 + ], + [ + 1, + 23 + ], + [ + 6, + 0 + ], + [ + 3, + 14 + ], + [ + 0, + 28 + ], + [ + 5, + 5 + ], + [ + 2, + 19 + ], + [ + 4, + 10 + ], + [ + 1, + 24 + ], + [ + 6, + 1 + ], + [ + 3, + 15 + ], + [ + 0, + 29 + ], + [ + 5, + 6 + ], + [ + 2, + 20 + ], + [ + 4, + 11 + ], + [ + 1, + 25 + ], + [ + 6, + 2 + ], + [ + 3, + 16 + ], + [ + 0, + 30 + ], + [ + 5, + 7 + ], + [ + 2, + 21 + ], + [ + 4, + 12 + ], + [ + 1, + 26 + ], + [ + 6, + 3 + ], + [ + 3, + 17 + ], + [ + 0, + 31 + ], + [ + 5, + 8 + ], + [ + 2, + 22 + ], + [ + 4, + 13 + ], + [ + 1, + 27 + ], + [ + 6, + 4 + ], + [ + 3, + 18 + ], + [ + 0, + 32 + ], + [ + 5, + 9 + ], + [ + 2, + 23 + ], + [ + 7, + 0 + ], + [ + 4, + 14 + ], + [ + 1, + 28 + ], + [ + 6, + 5 + ], + [ + 3, + 19 + ], + [ + 0, + 33 + ], + [ + 5, + 10 + ], + [ + 2, + 24 + ], + [ + 7, + 1 + ], + [ + 4, + 15 + ], + [ + 1, + 29 + ], + [ + 6, + 6 + ], + [ + 3, + 20 + ], + [ + 0, + 34 + ], + [ + 5, + 11 + ], + [ + 2, + 25 + ], + [ + 7, + 2 + ], + [ + 4, + 16 + ], + [ + 1, + 30 + ], + [ + 6, + 7 + ], + [ + 3, + 21 + ], + [ + 0, + 35 + ], + [ + 5, + 12 + ], + [ + 2, + 26 + ], + [ + 7, + 3 + ], + [ + 4, + 17 + ], + [ + 1, + 31 + ], + [ + 6, + 8 + ], + [ + 3, + 22 + ], + [ + 0, + 36 + ], + [ + 5, + 13 + ], + [ + 2, + 27 + ], + [ + 7, + 4 + ], + [ + 4, + 18 + ], + [ + 1, + 32 + ], + [ + 6, + 9 + ], + [ + 3, + 23 + ], + [ + 8, + 0 + ], + [ + 5, + 14 + ], + [ + 2, + 28 + ], + [ + 7, + 5 + ], + [ + 4, + 19 + ], + [ + 1, + 33 + ], + [ + 6, + 10 + ], + [ + 3, + 24 + ], + [ + 8, + 1 + ], + [ + 5, + 15 + ], + [ + 2, + 29 + ], + [ + 7, + 6 + ], + [ + 4, + 20 + ], + [ + 1, + 34 + ], + [ + 6, + 11 + ], + [ + 3, + 25 + ], + [ + 8, + 2 + ], + [ + 5, + 16 + ], + [ + 2, + 30 + ], + [ + 7, + 7 + ], + [ + 4, + 21 + ], + [ + 1, + 35 + ], + [ + 6, + 12 + ], + [ + 3, + 26 + ], + [ + 8, + 3 + ], + [ + 5, + 17 + ], + [ + 2, + 31 + ], + [ + 7, + 8 + ], + [ + 4, + 22 + ], + [ + 1, + 36 + ], + [ + 6, + 13 + ], + [ + 3, + 27 + ], + [ + 8, + 4 + ], + [ + 5, + 18 + ], + [ + 2, + 32 + ], + [ + 7, + 9 + ], + [ + 4, + 23 + ], + [ + 6, + 14 + ], + [ + 3, + 28 + ], + [ + 8, + 5 + ], + [ + 5, + 19 + ], + [ + 2, + 33 + ], + [ + 7, + 10 + ], + [ + 4, + 24 + ], + [ + 6, + 15 + ], + [ + 3, + 29 + ], + [ + 8, + 6 + ], + [ + 5, + 20 + ], + [ + 2, + 34 + ], + [ + 7, + 11 + ], + [ + 4, + 25 + ], + [ + 6, + 16 + ], + [ + 3, + 30 + ], + [ + 8, + 7 + ], + [ + 5, + 21 + ], + [ + 2, + 35 + ], + [ + 7, + 12 + ], + [ + 4, + 26 + ], + [ + 6, + 17 + ], + [ + 3, + 31 + ], + [ + 8, + 8 + ], + [ + 5, + 22 + ], + [ + 2, + 36 + ], + [ + 7, + 13 + ], + [ + 4, + 27 + ], + [ + 6, + 18 + ], + [ + 3, + 32 + ], + [ + 8, + 9 + ], + [ + 5, + 23 + ], + [ + 7, + 14 + ], + [ + 4, + 28 + ], + [ + 6, + 19 + ], + [ + 3, + 33 + ], + [ + 8, + 10 + ], + [ + 5, + 24 + ], + [ + 7, + 15 + ], + [ + 4, + 29 + ], + [ + 6, + 20 + ], + [ + 3, + 34 + ], + [ + 8, + 11 + ], + [ + 5, + 25 + ], + [ + 7, + 16 + ], + [ + 4, + 30 + ], + [ + 6, + 21 + ], + [ + 3, + 35 + ], + [ + 8, + 12 + ], + [ + 5, + 26 + ], + [ + 7, + 17 + ], + [ + 4, + 31 + ], + [ + 6, + 22 + ], + [ + 3, + 36 + ], + [ + 8, + 13 + ], + [ + 5, + 27 + ], + [ + 7, + 18 + ], + [ + 4, + 32 + ], + [ + 6, + 23 + ], + [ + 8, + 14 + ], + [ + 5, + 28 + ], + [ + 7, + 19 + ], + [ + 4, + 33 + ], + [ + 6, + 24 + ], + [ + 8, + 15 + ], + [ + 5, + 29 + ], + [ + 7, + 20 + ], + [ + 4, + 34 + ], + [ + 6, + 25 + ], + [ + 8, + 16 + ], + [ + 5, + 30 + ], + [ + 7, + 21 + ], + [ + 4, + 35 + ], + [ + 6, + 26 + ], + [ + 8, + 17 + ], + [ + 5, + 31 + ], + [ + 7, + 22 + ], + [ + 4, + 36 + ], + [ + 6, + 27 + ], + [ + 8, + 18 + ], + [ + 5, + 32 + ], + [ + 7, + 23 + ], + [ + 6, + 28 + ], + [ + 8, + 19 + ], + [ + 5, + 33 + ], + [ + 7, + 24 + ], + [ + 6, + 29 + ], + [ + 8, + 20 + ], + [ + 5, + 34 + ], + [ + 7, + 25 + ], + [ + 6, + 30 + ], + [ + 8, + 21 + ], + [ + 5, + 35 + ], + [ + 7, + 26 + ], + [ + 6, + 31 + ], + [ + 8, + 22 + ], + [ + 5, + 36 + ], + [ + 7, + 27 + ], + [ + 6, + 32 + ], + [ + 8, + 23 + ], + [ + 7, + 28 + ], + [ + 6, + 33 + ], + [ + 8, + 24 + ], + [ + 7, + 29 + ], + [ + 6, + 34 + ], + [ + 8, + 25 + ], + [ + 7, + 30 + ], + [ + 6, + 35 + ], + [ + 8, + 26 + ], + [ + 7, + 31 + ], + [ + 6, + 36 + ], + [ + 8, + 27 + ], + [ + 7, + 32 + ], + [ + 8, + 28 + ], + [ + 7, + 33 + ], + [ + 8, + 29 + ], + [ + 7, + 34 + ], + [ + 8, + 30 + ], + [ + 7, + 35 + ], + [ + 8, + 31 + ], + [ + 7, + 36 + ], + [ + 8, + 32 + ], + [ + 8, + 33 + ], + [ + 8, + 34 + ], + [ + 8, + 35 + ], + [ + 8, + 36 + ] + ], + "windows": { + "0,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + ], + "0,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + ], + "1,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + ], + "1,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + ], + "2,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "2,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "3,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "3,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "4,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + ], + "4,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + ], + "0,1": [ + 8, + [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15 + ] + ], + "0,3": [ + 8, + [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15 + ] + ], + "5,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "5,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "1,1": [ + 8, + [ + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "1,3": [ + 8, + [ + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "6,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "6,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "2,1": [ + 8, + [ + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21 + ] + ], + "2,3": [ + 8, + [ + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21 + ] + ], + "7,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "7,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "3,1": [ + 8, + [ + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "3,3": [ + 8, + [ + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "8,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "8,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "4,1": [ + 8, + [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27 + ] + ], + "4,3": [ + 8, + [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27 + ] + ], + "9,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "9,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "0,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "0,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "5,1": [ + 8, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + ], + "5,3": [ + 8, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + ], + "10,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "10,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "1,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "1,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "6,1": [ + 8, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "6,3": [ + 8, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "11,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36 + ] + ], + "11,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36 + ] + ], + "2,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "2,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "7,1": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "7,3": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "12,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "12,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "3,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "3,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "8,1": [ + 8, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + ], + "8,3": [ + 8, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + ], + "13,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "13,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "4,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "4,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "9,1": [ + 8, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "9,3": [ + 8, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "0,5": [ + 8, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "0,7": [ + 8, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "14,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49 + ] + ], + "14,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49 + ] + ], + "5,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "5,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "10,1": [ + 8, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "10,3": [ + 8, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "1,5": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "1,7": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "15,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + ], + "15,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + ], + "6,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55 + ] + ], + "6,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55 + ] + ], + "11,1": [ + 8, + [ + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "11,3": [ + 8, + [ + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "2,5": [ + 8, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "2,7": [ + 8, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "16,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "16,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "7,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60 + ] + ], + "7,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60 + ] + ], + "12,1": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "12,3": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "3,5": [ + 8, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63 + ] + ], + "3,7": [ + 8, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63 + ] + ], + "17,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64 + ] + ], + "17,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64 + ] + ], + "8,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "8,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "13,1": [ + 8, + [ + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67 + ] + ], + "13,3": [ + 8, + [ + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67 + ] + ], + "4,5": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "4,7": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "18,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69 + ] + ], + "18,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69 + ] + ], + "9,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "9,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "0,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72 + ] + ], + "0,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72 + ] + ], + "14,1": [ + 8, + [ + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73 + ] + ], + "14,3": [ + 8, + [ + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73 + ] + ], + "5,5": [ + 8, + [ + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74 + ] + ], + "5,7": [ + 8, + [ + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74 + ] + ], + "19,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75 + ] + ], + "19,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75 + ] + ], + "10,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76 + ] + ], + "10,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76 + ] + ], + "1,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78 + ] + ], + "1,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78 + ] + ], + "15,1": [ + 8, + [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79 + ] + ], + "15,3": [ + 8, + [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79 + ] + ], + "6,5": [ + 8, + [ + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80 + ] + ], + "6,7": [ + 8, + [ + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80 + ] + ], + "20,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81 + ] + ], + "20,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81 + ] + ], + "11,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82 + ] + ], + "11,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82 + ] + ], + "2,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84 + ] + ], + "2,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84 + ] + ], + "16,1": [ + 8, + [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85 + ] + ], + "16,3": [ + 8, + [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85 + ] + ], + "7,5": [ + 8, + [ + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86 + ] + ], + "7,7": [ + 8, + [ + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86 + ] + ], + "21,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87 + ] + ], + "21,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87 + ] + ], + "12,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88 + ] + ], + "12,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88 + ] + ], + "3,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90 + ] + ], + "3,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90 + ] + ], + "17,1": [ + 8, + [ + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91 + ] + ], + "17,3": [ + 8, + [ + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91 + ] + ], + "8,5": [ + 8, + [ + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92 + ] + ], + "8,7": [ + 8, + [ + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92 + ] + ], + "22,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93 + ] + ], + "22,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93 + ] + ], + "13,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94 + ] + ], + "13,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94 + ] + ], + "4,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96 + ] + ], + "4,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96 + ] + ], + "18,1": [ + 8, + [ + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97 + ] + ], + "18,3": [ + 8, + [ + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97 + ] + ], + "9,5": [ + 8, + [ + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98 + ] + ], + "9,7": [ + 8, + [ + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98 + ] + ], + "23,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99 + ] + ], + "23,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99 + ] + ], + "0,9": [ + 8, + [ + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100 + ] + ], + "0,11": [ + 8, + [ + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100 + ] + ], + "14,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101 + ] + ], + "14,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101 + ] + ], + "5,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103 + ] + ], + "5,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103 + ] + ], + "19,1": [ + 8, + [ + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104 + ] + ], + "19,3": [ + 8, + [ + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104 + ] + ], + "10,5": [ + 8, + [ + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105 + ] + ], + "10,7": [ + 8, + [ + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105 + ] + ], + "24,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106 + ] + ], + "24,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106 + ] + ], + "1,9": [ + 8, + [ + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107 + ] + ], + "1,11": [ + 8, + [ + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107 + ] + ], + "15,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108 + ] + ], + "15,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108 + ] + ], + "6,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110 + ] + ], + "6,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110 + ] + ], + "20,1": [ + 8, + [ + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111 + ] + ], + "20,3": [ + 8, + [ + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111 + ] + ], + "11,5": [ + 8, + [ + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112 + ] + ], + "11,7": [ + 8, + [ + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112 + ] + ], + "25,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113 + ] + ], + "25,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113 + ] + ], + "2,9": [ + 8, + [ + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114 + ] + ], + "2,11": [ + 8, + [ + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114 + ] + ], + "16,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115 + ] + ], + "16,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115 + ] + ], + "7,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117 + ] + ], + "7,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117 + ] + ], + "21,1": [ + 8, + [ + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118 + ] + ], + "21,3": [ + 8, + [ + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118 + ] + ], + "12,5": [ + 8, + [ + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119 + ] + ], + "12,7": [ + 8, + [ + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119 + ] + ], + "26,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120 + ] + ], + "26,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120 + ] + ], + "3,9": [ + 8, + [ + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121 + ] + ], + "3,11": [ + 8, + [ + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121 + ] + ], + "17,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122 + ] + ], + "17,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122 + ] + ], + "8,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124 + ] + ], + "8,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124 + ] + ], + "22,1": [ + 8, + [ + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125 + ] + ], + "22,3": [ + 8, + [ + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125 + ] + ], + "13,5": [ + 8, + [ + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126 + ] + ], + "13,7": [ + 8, + [ + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126 + ] + ], + "27,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127 + ] + ], + "27,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127 + ] + ], + "4,9": [ + 8, + [ + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128 + ] + ], + "4,11": [ + 8, + [ + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128 + ] + ], + "18,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129 + ] + ], + "18,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129 + ] + ], + "9,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131 + ] + ], + "9,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131 + ] + ], + "23,1": [ + 8, + [ + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132 + ] + ], + "23,3": [ + 8, + [ + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132 + ] + ], + "14,5": [ + 8, + [ + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134 + ] + ], + "14,7": [ + 8, + [ + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134 + ] + ], + "28,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135 + ] + ], + "28,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135 + ] + ], + "5,9": [ + 8, + [ + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136 + ] + ], + "5,11": [ + 8, + [ + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136 + ] + ], + "19,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137 + ] + ], + "19,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137 + ] + ], + "10,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139 + ] + ], + "10,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139 + ] + ], + "24,1": [ + 8, + [ + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140 + ] + ], + "24,3": [ + 8, + [ + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140 + ] + ], + "15,5": [ + 8, + [ + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142 + ] + ], + "15,7": [ + 8, + [ + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142 + ] + ], + "29,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143 + ] + ], + "29,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143 + ] + ], + "6,9": [ + 8, + [ + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144 + ] + ], + "6,11": [ + 8, + [ + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144 + ] + ], + "20,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145 + ] + ], + "20,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145 + ] + ], + "11,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147 + ] + ], + "11,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147 + ] + ], + "25,1": [ + 8, + [ + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148 + ] + ], + "25,3": [ + 8, + [ + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148 + ] + ], + "16,5": [ + 8, + [ + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150 + ] + ], + "16,7": [ + 8, + [ + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150 + ] + ], + "30,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151 + ] + ], + "30,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151 + ] + ], + "7,9": [ + 8, + [ + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152 + ] + ], + "7,11": [ + 8, + [ + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152 + ] + ], + "21,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153 + ] + ], + "21,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153 + ] + ], + "12,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155 + ] + ], + "12,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155 + ] + ], + "26,1": [ + 8, + [ + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156 + ] + ], + "26,3": [ + 8, + [ + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156 + ] + ], + "17,5": [ + 8, + [ + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158 + ] + ], + "17,7": [ + 8, + [ + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158 + ] + ], + "31,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159 + ] + ], + "31,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159 + ] + ], + "8,9": [ + 8, + [ + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160 + ] + ], + "8,11": [ + 8, + [ + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160 + ] + ], + "22,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161 + ] + ], + "22,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161 + ] + ], + "13,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163 + ] + ], + "13,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163 + ] + ], + "27,1": [ + 8, + [ + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164 + ] + ], + "27,3": [ + 8, + [ + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164 + ] + ], + "18,5": [ + 8, + [ + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166 + ] + ], + "18,7": [ + 8, + [ + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166 + ] + ], + "32,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167 + ] + ], + "32,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167 + ] + ], + "9,9": [ + 8, + [ + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168 + ] + ], + "9,11": [ + 8, + [ + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168 + ] + ], + "23,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169 + ] + ], + "23,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169 + ] + ], + "0,12": [ + 48, + [ + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170 + ] + ], + "0,13": [ + 48, + [ + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170 + ] + ], + "0,14": [ + 32, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170 + ] + ], + "0,15": [ + 32, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170 + ] + ], + "0,16": [ + 16, + [ + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170 + ] + ], + "0,17": [ + 16, + [ + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170 + ] + ], + "14,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171 + ] + ], + "14,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171 + ] + ], + "28,1": [ + 8, + [ + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172 + ] + ], + "28,3": [ + 8, + [ + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172 + ] + ], + "19,5": [ + 8, + [ + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174 + ] + ], + "19,7": [ + 8, + [ + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174 + ] + ], + "33,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175 + ] + ], + "33,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175 + ] + ], + "10,9": [ + 8, + [ + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176 + ] + ], + "10,11": [ + 8, + [ + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176 + ] + ], + "24,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177 + ] + ], + "24,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177 + ] + ], + "1,12": [ + 48, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178 + ] + ], + "1,13": [ + 48, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178 + ] + ], + "1,14": [ + 32, + [ + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178 + ] + ], + "1,15": [ + 32, + [ + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178 + ] + ], + "1,16": [ + 16, + [ + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178 + ] + ], + "1,17": [ + 16, + [ + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178 + ] + ], + "15,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179 + ] + ], + "15,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179 + ] + ], + "29,1": [ + 8, + [ + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180 + ] + ], + "29,3": [ + 8, + [ + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180 + ] + ], + "20,5": [ + 8, + [ + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182 + ] + ], + "20,7": [ + 8, + [ + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182 + ] + ], + "34,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183 + ] + ], + "34,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183 + ] + ], + "11,9": [ + 8, + [ + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184 + ] + ], + "11,11": [ + 8, + [ + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184 + ] + ], + "25,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185 + ] + ], + "25,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185 + ] + ], + "2,12": [ + 48, + [ + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186 + ] + ], + "2,13": [ + 48, + [ + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186 + ] + ], + "2,14": [ + 32, + [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186 + ] + ], + "2,15": [ + 32, + [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186 + ] + ], + "2,16": [ + 16, + [ + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186 + ] + ], + "2,17": [ + 16, + [ + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186 + ] + ], + "16,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187 + ] + ], + "16,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187 + ] + ], + "30,1": [ + 8, + [ + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188 + ] + ], + "30,3": [ + 8, + [ + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188 + ] + ], + "21,5": [ + 8, + [ + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190 + ] + ], + "21,7": [ + 8, + [ + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190 + ] + ], + "35,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191 + ] + ], + "35,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191 + ] + ], + "12,9": [ + 8, + [ + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192 + ] + ], + "12,11": [ + 8, + [ + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192 + ] + ], + "26,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193 + ] + ], + "26,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193 + ] + ], + "3,12": [ + 48, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194 + ] + ], + "3,13": [ + 48, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194 + ] + ], + "3,14": [ + 32, + [ + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194 + ] + ], + "3,15": [ + 32, + [ + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194 + ] + ], + "3,16": [ + 16, + [ + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194 + ] + ], + "3,17": [ + 16, + [ + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194 + ] + ], + "17,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195 + ] + ], + "17,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195 + ] + ], + "31,1": [ + 8, + [ + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196 + ] + ], + "31,3": [ + 8, + [ + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196 + ] + ], + "22,5": [ + 8, + [ + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198 + ] + ], + "22,7": [ + 8, + [ + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198 + ] + ], + "36,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199 + ] + ], + "36,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199 + ] + ], + "13,9": [ + 8, + [ + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200 + ] + ], + "13,11": [ + 8, + [ + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200 + ] + ], + "27,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201 + ] + ], + "27,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201 + ] + ], + "4,12": [ + 48, + [ + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202 + ] + ], + "4,13": [ + 48, + [ + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202 + ] + ], + "4,14": [ + 32, + [ + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202 + ] + ], + "4,15": [ + 32, + [ + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202 + ] + ], + "4,16": [ + 16, + [ + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202 + ] + ], + "4,17": [ + 16, + [ + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202 + ] + ], + "18,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203 + ] + ], + "18,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203 + ] + ], + "32,1": [ + 8, + [ + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204 + ] + ], + "32,3": [ + 8, + [ + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204 + ] + ], + "23,5": [ + 8, + [ + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206 + ] + ], + "23,7": [ + 8, + [ + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206 + ] + ], + "14,9": [ + 8, + [ + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207 + ] + ], + "14,11": [ + 8, + [ + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207 + ] + ], + "28,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208 + ] + ], + "28,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208 + ] + ], + "5,12": [ + 48, + [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209 + ] + ], + "5,13": [ + 48, + [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209 + ] + ], + "5,14": [ + 32, + [ + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209 + ] + ], + "5,15": [ + 32, + [ + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209 + ] + ], + "5,16": [ + 16, + [ + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209 + ] + ], + "5,17": [ + 16, + [ + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209 + ] + ], + "19,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210 + ] + ], + "19,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210 + ] + ], + "33,1": [ + 8, + [ + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211 + ] + ], + "33,3": [ + 8, + [ + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211 + ] + ], + "24,5": [ + 8, + [ + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213 + ] + ], + "24,7": [ + 8, + [ + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213 + ] + ], + "15,9": [ + 8, + [ + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214 + ] + ], + "15,11": [ + 8, + [ + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214 + ] + ], + "29,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215 + ] + ], + "29,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215 + ] + ], + "6,12": [ + 48, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216 + ] + ], + "6,13": [ + 48, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216 + ] + ], + "6,14": [ + 32, + [ + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216 + ] + ], + "6,15": [ + 32, + [ + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216 + ] + ], + "6,16": [ + 16, + [ + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216 + ] + ], + "6,17": [ + 16, + [ + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216 + ] + ], + "20,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217 + ] + ], + "20,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217 + ] + ], + "34,1": [ + 8, + [ + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218 + ] + ], + "34,3": [ + 8, + [ + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218 + ] + ], + "25,5": [ + 8, + [ + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220 + ] + ], + "25,7": [ + 8, + [ + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220 + ] + ], + "16,9": [ + 8, + [ + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221 + ] + ], + "16,11": [ + 8, + [ + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221 + ] + ], + "30,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222 + ] + ], + "30,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222 + ] + ], + "7,12": [ + 48, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223 + ] + ], + "7,13": [ + 48, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223 + ] + ], + "7,14": [ + 32, + [ + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223 + ] + ], + "7,15": [ + 32, + [ + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223 + ] + ], + "7,16": [ + 16, + [ + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223 + ] + ], + "7,17": [ + 16, + [ + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223 + ] + ], + "21,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224 + ] + ], + "21,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224 + ] + ], + "35,1": [ + 8, + [ + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225 + ] + ], + "35,3": [ + 8, + [ + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225 + ] + ], + "26,5": [ + 8, + [ + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227 + ] + ], + "26,7": [ + 8, + [ + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227 + ] + ], + "17,9": [ + 8, + [ + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228 + ] + ], + "17,11": [ + 8, + [ + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228 + ] + ], + "31,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229 + ] + ], + "31,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229 + ] + ], + "8,12": [ + 48, + [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230 + ] + ], + "8,13": [ + 48, + [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230 + ] + ], + "8,14": [ + 32, + [ + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230 + ] + ], + "8,15": [ + 32, + [ + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230 + ] + ], + "8,16": [ + 16, + [ + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230 + ] + ], + "8,17": [ + 16, + [ + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230 + ] + ], + "22,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231 + ] + ], + "22,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231 + ] + ], + "36,1": [ + 8, + [ + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232 + ] + ], + "36,3": [ + 8, + [ + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232 + ] + ], + "27,5": [ + 8, + [ + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234 + ] + ], + "27,7": [ + 8, + [ + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234 + ] + ], + "18,9": [ + 8, + [ + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235 + ] + ], + "18,11": [ + 8, + [ + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235 + ] + ], + "32,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236 + ] + ], + "32,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236 + ] + ], + "9,12": [ + 48, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237 + ] + ], + "9,13": [ + 48, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237 + ] + ], + "9,14": [ + 32, + [ + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237 + ] + ], + "9,15": [ + 32, + [ + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237 + ] + ], + "9,16": [ + 16, + [ + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237 + ] + ], + "9,17": [ + 16, + [ + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237 + ] + ], + "23,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238 + ] + ], + "23,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238 + ] + ], + "28,5": [ + 8, + [ + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240 + ] + ], + "28,7": [ + 8, + [ + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240 + ] + ], + "19,9": [ + 8, + [ + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241 + ] + ], + "19,11": [ + 8, + [ + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241 + ] + ], + "33,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242 + ] + ], + "33,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242 + ] + ], + "10,12": [ + 48, + [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243 + ] + ], + "10,13": [ + 48, + [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243 + ] + ], + "10,14": [ + 32, + [ + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243 + ] + ], + "10,15": [ + 32, + [ + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243 + ] + ], + "10,16": [ + 16, + [ + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243 + ] + ], + "10,17": [ + 16, + [ + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243 + ] + ], + "24,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244 + ] + ], + "24,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244 + ] + ], + "29,5": [ + 8, + [ + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246 + ] + ], + "29,7": [ + 8, + [ + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246 + ] + ], + "20,9": [ + 8, + [ + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247 + ] + ], + "20,11": [ + 8, + [ + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247 + ] + ], + "34,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248 + ] + ], + "34,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248 + ] + ], + "11,12": [ + 48, + [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249 + ] + ], + "11,13": [ + 48, + [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249 + ] + ], + "11,14": [ + 32, + [ + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249 + ] + ], + "11,15": [ + 32, + [ + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249 + ] + ], + "11,16": [ + 16, + [ + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249 + ] + ], + "11,17": [ + 16, + [ + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249 + ] + ], + "25,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250 + ] + ], + "25,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250 + ] + ], + "30,5": [ + 8, + [ + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252 + ] + ], + "30,7": [ + 8, + [ + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252 + ] + ], + "21,9": [ + 8, + [ + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253 + ] + ], + "21,11": [ + 8, + [ + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253 + ] + ], + "35,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254 + ] + ], + "35,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254 + ] + ], + "12,12": [ + 48, + [ + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255 + ] + ], + "12,13": [ + 48, + [ + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255 + ] + ], + "12,14": [ + 32, + [ + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255 + ] + ], + "12,15": [ + 32, + [ + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255 + ] + ], + "12,16": [ + 16, + [ + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255 + ] + ], + "12,17": [ + 16, + [ + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255 + ] + ], + "26,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256 + ] + ], + "26,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256 + ] + ], + "31,5": [ + 8, + [ + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258 + ] + ], + "31,7": [ + 8, + [ + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258 + ] + ], + "22,9": [ + 8, + [ + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259 + ] + ], + "22,11": [ + 8, + [ + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259 + ] + ], + "36,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260 + ] + ], + "36,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260 + ] + ], + "13,12": [ + 48, + [ + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261 + ] + ], + "13,13": [ + 48, + [ + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261 + ] + ], + "13,14": [ + 32, + [ + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261 + ] + ], + "13,15": [ + 32, + [ + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261 + ] + ], + "13,16": [ + 16, + [ + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261 + ] + ], + "13,17": [ + 16, + [ + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261 + ] + ], + "27,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262 + ] + ], + "27,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262 + ] + ], + "32,5": [ + 8, + [ + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264 + ] + ], + "32,7": [ + 8, + [ + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264 + ] + ], + "23,9": [ + 8, + [ + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265 + ] + ], + "23,11": [ + 8, + [ + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265 + ] + ], + "14,12": [ + 48, + [ + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266 + ] + ], + "14,13": [ + 48, + [ + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266 + ] + ], + "14,14": [ + 32, + [ + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266 + ] + ], + "14,15": [ + 32, + [ + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266 + ] + ], + "14,16": [ + 16, + [ + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266 + ] + ], + "14,17": [ + 16, + [ + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266 + ] + ], + "28,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267 + ] + ], + "28,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267 + ] + ], + "33,5": [ + 8, + [ + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269 + ] + ], + "33,7": [ + 8, + [ + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269 + ] + ], + "24,9": [ + 8, + [ + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270 + ] + ], + "24,11": [ + 8, + [ + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270 + ] + ], + "15,12": [ + 48, + [ + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271 + ] + ], + "15,13": [ + 48, + [ + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271 + ] + ], + "15,14": [ + 32, + [ + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271 + ] + ], + "15,15": [ + 32, + [ + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271 + ] + ], + "15,16": [ + 16, + [ + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271 + ] + ], + "15,17": [ + 16, + [ + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271 + ] + ], + "29,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272 + ] + ], + "29,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272 + ] + ], + "34,5": [ + 8, + [ + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274 + ] + ], + "34,7": [ + 8, + [ + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274 + ] + ], + "25,9": [ + 8, + [ + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275 + ] + ], + "25,11": [ + 8, + [ + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275 + ] + ], + "16,12": [ + 48, + [ + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276 + ] + ], + "16,13": [ + 48, + [ + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276 + ] + ], + "16,14": [ + 32, + [ + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276 + ] + ], + "16,15": [ + 32, + [ + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276 + ] + ], + "16,16": [ + 16, + [ + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276 + ] + ], + "16,17": [ + 16, + [ + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276 + ] + ], + "30,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277 + ] + ], + "30,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277 + ] + ], + "35,5": [ + 8, + [ + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279 + ] + ], + "35,7": [ + 8, + [ + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279 + ] + ], + "26,9": [ + 8, + [ + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280 + ] + ], + "26,11": [ + 8, + [ + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280 + ] + ], + "17,12": [ + 48, + [ + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281 + ] + ], + "17,13": [ + 48, + [ + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281 + ] + ], + "17,14": [ + 32, + [ + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281 + ] + ], + "17,15": [ + 32, + [ + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281 + ] + ], + "17,16": [ + 16, + [ + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281 + ] + ], + "17,17": [ + 16, + [ + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281 + ] + ], + "31,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282 + ] + ], + "31,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282 + ] + ], + "36,5": [ + 8, + [ + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284 + ] + ], + "36,7": [ + 8, + [ + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284 + ] + ], + "27,9": [ + 8, + [ + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285 + ] + ], + "27,11": [ + 8, + [ + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285 + ] + ], + "18,12": [ + 48, + [ + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286 + ] + ], + "18,13": [ + 48, + [ + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286 + ] + ], + "18,14": [ + 32, + [ + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286 + ] + ], + "18,15": [ + 32, + [ + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286 + ] + ], + "18,16": [ + 16, + [ + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286 + ] + ], + "18,17": [ + 16, + [ + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286 + ] + ], + "32,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287 + ] + ], + "32,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287 + ] + ], + "28,9": [ + 8, + [ + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289 + ] + ], + "28,11": [ + 8, + [ + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289 + ] + ], + "19,12": [ + 48, + [ + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290 + ] + ], + "19,13": [ + 48, + [ + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290 + ] + ], + "19,14": [ + 32, + [ + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290 + ] + ], + "19,15": [ + 32, + [ + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290 + ] + ], + "19,16": [ + 16, + [ + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290 + ] + ], + "19,17": [ + 16, + [ + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290 + ] + ], + "33,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291 + ] + ], + "33,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291 + ] + ], + "29,9": [ + 8, + [ + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293 + ] + ], + "29,11": [ + 8, + [ + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293 + ] + ], + "20,12": [ + 48, + [ + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294 + ] + ], + "20,13": [ + 48, + [ + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294 + ] + ], + "20,14": [ + 32, + [ + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294 + ] + ], + "20,15": [ + 32, + [ + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294 + ] + ], + "20,16": [ + 16, + [ + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294 + ] + ], + "20,17": [ + 16, + [ + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294 + ] + ], + "34,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295 + ] + ], + "34,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295 + ] + ], + "30,9": [ + 8, + [ + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297 + ] + ], + "30,11": [ + 8, + [ + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297 + ] + ], + "21,12": [ + 48, + [ + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298 + ] + ], + "21,13": [ + 48, + [ + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298 + ] + ], + "21,14": [ + 32, + [ + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298 + ] + ], + "21,15": [ + 32, + [ + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298 + ] + ], + "21,16": [ + 16, + [ + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298 + ] + ], + "21,17": [ + 16, + [ + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298 + ] + ], + "35,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299 + ] + ], + "35,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299 + ] + ], + "31,9": [ + 8, + [ + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301 + ] + ], + "31,11": [ + 8, + [ + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301 + ] + ], + "22,12": [ + 48, + [ + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302 + ] + ], + "22,13": [ + 48, + [ + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302 + ] + ], + "22,14": [ + 32, + [ + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302 + ] + ], + "22,15": [ + 32, + [ + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302 + ] + ], + "22,16": [ + 16, + [ + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302 + ] + ], + "22,17": [ + 16, + [ + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302 + ] + ], + "36,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303 + ] + ], + "36,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303 + ] + ], + "32,9": [ + 8, + [ + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305 + ] + ], + "32,11": [ + 8, + [ + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305 + ] + ], + "23,12": [ + 48, + [ + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306 + ] + ], + "23,13": [ + 48, + [ + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306 + ] + ], + "23,14": [ + 32, + [ + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306 + ] + ], + "23,15": [ + 32, + [ + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306 + ] + ], + "23,16": [ + 16, + [ + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306 + ] + ], + "23,17": [ + 16, + [ + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306 + ] + ], + "33,9": [ + 8, + [ + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308 + ] + ], + "33,11": [ + 8, + [ + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308 + ] + ], + "24,12": [ + 48, + [ + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309 + ] + ], + "24,13": [ + 48, + [ + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309 + ] + ], + "24,14": [ + 32, + [ + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309 + ] + ], + "24,15": [ + 32, + [ + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309 + ] + ], + "24,16": [ + 16, + [ + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309 + ] + ], + "24,17": [ + 16, + [ + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309 + ] + ], + "34,9": [ + 8, + [ + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311 + ] + ], + "34,11": [ + 8, + [ + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311 + ] + ], + "25,12": [ + 48, + [ + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312 + ] + ], + "25,13": [ + 48, + [ + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312 + ] + ], + "25,14": [ + 32, + [ + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312 + ] + ], + "25,15": [ + 32, + [ + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312 + ] + ], + "25,16": [ + 16, + [ + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312 + ] + ], + "25,17": [ + 16, + [ + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312 + ] + ], + "35,9": [ + 8, + [ + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314 + ] + ], + "35,11": [ + 8, + [ + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314 + ] + ], + "26,12": [ + 48, + [ + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315 + ] + ], + "26,13": [ + 48, + [ + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315 + ] + ], + "26,14": [ + 32, + [ + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315 + ] + ], + "26,15": [ + 32, + [ + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315 + ] + ], + "26,16": [ + 16, + [ + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315 + ] + ], + "26,17": [ + 16, + [ + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315 + ] + ], + "36,9": [ + 8, + [ + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317 + ] + ], + "36,11": [ + 8, + [ + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317 + ] + ], + "27,12": [ + 48, + [ + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318 + ] + ], + "27,13": [ + 48, + [ + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318 + ] + ], + "27,14": [ + 32, + [ + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318 + ] + ], + "27,15": [ + 32, + [ + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318 + ] + ], + "27,16": [ + 16, + [ + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318 + ] + ], + "27,17": [ + 16, + [ + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318 + ] + ], + "28,12": [ + 48, + [ + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320 + ] + ], + "28,13": [ + 48, + [ + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320 + ] + ], + "28,14": [ + 32, + [ + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320 + ] + ], + "28,15": [ + 32, + [ + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320 + ] + ], + "28,16": [ + 16, + [ + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320 + ] + ], + "28,17": [ + 16, + [ + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320 + ] + ], + "29,12": [ + 48, + [ + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322 + ] + ], + "29,13": [ + 48, + [ + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322 + ] + ], + "29,14": [ + 32, + [ + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322 + ] + ], + "29,15": [ + 32, + [ + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322 + ] + ], + "29,16": [ + 16, + [ + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322 + ] + ], + "29,17": [ + 16, + [ + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322 + ] + ], + "30,12": [ + 48, + [ + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324 + ] + ], + "30,13": [ + 48, + [ + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324 + ] + ], + "30,14": [ + 32, + [ + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324 + ] + ], + "30,15": [ + 32, + [ + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324 + ] + ], + "30,16": [ + 16, + [ + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324 + ] + ], + "30,17": [ + 16, + [ + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324 + ] + ], + "31,12": [ + 48, + [ + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326 + ] + ], + "31,13": [ + 48, + [ + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326 + ] + ], + "31,14": [ + 32, + [ + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326 + ] + ], + "31,15": [ + 32, + [ + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326 + ] + ], + "31,16": [ + 16, + [ + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326 + ] + ], + "31,17": [ + 16, + [ + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326 + ] + ], + "32,12": [ + 48, + [ + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328 + ] + ], + "32,13": [ + 48, + [ + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328 + ] + ], + "32,14": [ + 32, + [ + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328 + ] + ], + "32,15": [ + 32, + [ + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328 + ] + ], + "32,16": [ + 16, + [ + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328 + ] + ], + "32,17": [ + 16, + [ + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328 + ] + ], + "33,12": [ + 48, + [ + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329 + ] + ], + "33,13": [ + 48, + [ + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329 + ] + ], + "33,14": [ + 32, + [ + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329 + ] + ], + "33,15": [ + 32, + [ + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329 + ] + ], + "33,16": [ + 16, + [ + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329 + ] + ], + "33,17": [ + 16, + [ + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329 + ] + ], + "34,12": [ + 48, + [ + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330 + ] + ], + "34,13": [ + 48, + [ + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330 + ] + ], + "34,14": [ + 32, + [ + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330 + ] + ], + "34,15": [ + 32, + [ + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330 + ] + ], + "34,16": [ + 16, + [ + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330 + ] + ], + "34,17": [ + 16, + [ + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330 + ] + ], + "35,12": [ + 48, + [ + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331 + ] + ], + "35,13": [ + 48, + [ + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331 + ] + ], + "35,14": [ + 32, + [ + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331 + ] + ], + "35,15": [ + 32, + [ + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331 + ] + ], + "35,16": [ + 16, + [ + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331 + ] + ], + "35,17": [ + 16, + [ + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331 + ] + ], + "36,12": [ + 48, + [ + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331, + 332 + ] + ], + "36,13": [ + 48, + [ + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331, + 332 + ] + ], + "36,14": [ + 32, + [ + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331, + 332 + ] + ], + "36,15": [ + 32, + [ + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331, + 332 + ] + ], + "36,16": [ + 16, + [ + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331, + 332 + ] + ], + "36,17": [ + 16, + [ + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331, + 332 + ] + ] + }, + "sides": { + "0": 0, + "2": 1, + "1": 0, + "3": 1, + "4": 0, + "6": 1, + "5": 0, + "7": 1, + "8": 0, + "10": 1, + "9": 0, + "11": 1, + "12": 0, + "13": 1, + "14": 0, + "15": 1, + "16": 0, + "17": 1 + }, + "pairs": { + "0": 1, + "2": 1, + "1": 1, + "3": 1, + "4": 2, + "6": 2, + "5": 2, + "7": 2, + "8": 3, + "10": 3, + "9": 3, + "11": 3, + "12": 0, + "13": 0, + "14": 1, + "15": 1, + "16": 2, + "17": 2 + }, + "solver_status": "exact integer flow and matching", + "gap": null, + "provider_calls": [ + { + "time": 0, + "stage": 0, + "replica": 0, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 1, + "stage": 0, + "replica": 1, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 2, + "stage": 0, + "replica": 2, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 3, + "stage": 0, + "replica": 3, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 4, + "stage": 0, + "replica": 4, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 5, + "stage": 1, + "replica": 0, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 6, + "stage": 0, + "replica": 5, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 7, + "stage": 1, + "replica": 1, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 8, + "stage": 0, + "replica": 6, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 9, + "stage": 1, + "replica": 2, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 10, + "stage": 0, + "replica": 7, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 11, + "stage": 1, + "replica": 3, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 12, + "stage": 0, + "replica": 8, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 13, + "stage": 1, + "replica": 4, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 14, + "stage": 0, + "replica": 9, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 15, + "stage": 2, + "replica": 0, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 16, + "stage": 1, + "replica": 5, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 17, + "stage": 0, + "replica": 10, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 18, + "stage": 2, + "replica": 1, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 19, + "stage": 1, + "replica": 6, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 20, + "stage": 0, + "replica": 11, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 21, + "stage": 2, + "replica": 2, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 22, + "stage": 1, + "replica": 7, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 23, + "stage": 0, + "replica": 12, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 24, + "stage": 2, + "replica": 3, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 25, + "stage": 1, + "replica": 8, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 26, + "stage": 0, + "replica": 13, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 27, + "stage": 2, + "replica": 4, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 28, + "stage": 1, + "replica": 9, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 29, + "stage": 3, + "replica": 0, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 30, + "stage": 0, + "replica": 14, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 31, + "stage": 2, + "replica": 5, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 32, + "stage": 1, + "replica": 10, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 33, + "stage": 3, + "replica": 1, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 34, + "stage": 0, + "replica": 15, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 35, + "stage": 2, + "replica": 6, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 36, + "stage": 1, + "replica": 11, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 37, + "stage": 3, + "replica": 2, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 38, + "stage": 0, + "replica": 16, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 39, + "stage": 2, + "replica": 7, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 40, + "stage": 1, + "replica": 12, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 41, + "stage": 3, + "replica": 3, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 42, + "stage": 0, + "replica": 17, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 43, + "stage": 2, + "replica": 8, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 44, + "stage": 1, + "replica": 13, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 45, + "stage": 3, + "replica": 4, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 46, + "stage": 0, + "replica": 18, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 47, + "stage": 2, + "replica": 9, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 48, + "stage": 4, + "replica": 0, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 49, + "stage": 1, + "replica": 14, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 50, + "stage": 3, + "replica": 5, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 51, + "stage": 0, + "replica": 19, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 52, + "stage": 2, + "replica": 10, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 53, + "stage": 4, + "replica": 1, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 54, + "stage": 1, + "replica": 15, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 55, + "stage": 3, + "replica": 6, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 56, + "stage": 0, + "replica": 20, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 57, + "stage": 2, + "replica": 11, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 58, + "stage": 4, + "replica": 2, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 59, + "stage": 1, + "replica": 16, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 60, + "stage": 3, + "replica": 7, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 61, + "stage": 0, + "replica": 21, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 62, + "stage": 2, + "replica": 12, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 63, + "stage": 4, + "replica": 3, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 64, + "stage": 1, + "replica": 17, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 65, + "stage": 3, + "replica": 8, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 66, + "stage": 0, + "replica": 22, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 67, + "stage": 2, + "replica": 13, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 68, + "stage": 4, + "replica": 4, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 69, + "stage": 1, + "replica": 18, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 70, + "stage": 3, + "replica": 9, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 71, + "stage": 0, + "replica": 23, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 72, + "stage": 5, + "replica": 0, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 73, + "stage": 2, + "replica": 14, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 74, + "stage": 4, + "replica": 5, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 75, + "stage": 1, + "replica": 19, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 76, + "stage": 3, + "replica": 10, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 77, + "stage": 0, + "replica": 24, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 78, + "stage": 5, + "replica": 1, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 79, + "stage": 2, + "replica": 15, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 80, + "stage": 4, + "replica": 6, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 81, + "stage": 1, + "replica": 20, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 82, + "stage": 3, + "replica": 11, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 83, + "stage": 0, + "replica": 25, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 84, + "stage": 5, + "replica": 2, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 85, + "stage": 2, + "replica": 16, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 86, + "stage": 4, + "replica": 7, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 87, + "stage": 1, + "replica": 21, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 88, + "stage": 3, + "replica": 12, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 89, + "stage": 0, + "replica": 26, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 90, + "stage": 5, + "replica": 3, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 91, + "stage": 2, + "replica": 17, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 92, + "stage": 4, + "replica": 8, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 93, + "stage": 1, + "replica": 22, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 94, + "stage": 3, + "replica": 13, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 95, + "stage": 0, + "replica": 27, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 96, + "stage": 5, + "replica": 4, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 97, + "stage": 2, + "replica": 18, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 98, + "stage": 4, + "replica": 9, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 99, + "stage": 1, + "replica": 23, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 100, + "stage": 6, + "replica": 0, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 101, + "stage": 3, + "replica": 14, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 102, + "stage": 0, + "replica": 28, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 103, + "stage": 5, + "replica": 5, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 104, + "stage": 2, + "replica": 19, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 105, + "stage": 4, + "replica": 10, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 106, + "stage": 1, + "replica": 24, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 107, + "stage": 6, + "replica": 1, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 108, + "stage": 3, + "replica": 15, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 109, + "stage": 0, + "replica": 29, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 110, + "stage": 5, + "replica": 6, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 111, + "stage": 2, + "replica": 20, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 112, + "stage": 4, + "replica": 11, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 113, + "stage": 1, + "replica": 25, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 114, + "stage": 6, + "replica": 2, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 115, + "stage": 3, + "replica": 16, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 116, + "stage": 0, + "replica": 30, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 117, + "stage": 5, + "replica": 7, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 118, + "stage": 2, + "replica": 21, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 119, + "stage": 4, + "replica": 12, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 120, + "stage": 1, + "replica": 26, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 121, + "stage": 6, + "replica": 3, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 122, + "stage": 3, + "replica": 17, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 123, + "stage": 0, + "replica": 31, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 124, + "stage": 5, + "replica": 8, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 125, + "stage": 2, + "replica": 22, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 126, + "stage": 4, + "replica": 13, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 127, + "stage": 1, + "replica": 27, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 128, + "stage": 6, + "replica": 4, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 129, + "stage": 3, + "replica": 18, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 130, + "stage": 0, + "replica": 32, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 131, + "stage": 5, + "replica": 9, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 132, + "stage": 2, + "replica": 23, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 133, + "stage": 7, + "replica": 0, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 134, + "stage": 4, + "replica": 14, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 135, + "stage": 1, + "replica": 28, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 136, + "stage": 6, + "replica": 5, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 137, + "stage": 3, + "replica": 19, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 138, + "stage": 0, + "replica": 33, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 139, + "stage": 5, + "replica": 10, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 140, + "stage": 2, + "replica": 24, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 141, + "stage": 7, + "replica": 1, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 142, + "stage": 4, + "replica": 15, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 143, + "stage": 1, + "replica": 29, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 144, + "stage": 6, + "replica": 6, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 145, + "stage": 3, + "replica": 20, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 146, + "stage": 0, + "replica": 34, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 147, + "stage": 5, + "replica": 11, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 148, + "stage": 2, + "replica": 25, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 149, + "stage": 7, + "replica": 2, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 150, + "stage": 4, + "replica": 16, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 151, + "stage": 1, + "replica": 30, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 152, + "stage": 6, + "replica": 7, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 153, + "stage": 3, + "replica": 21, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 154, + "stage": 0, + "replica": 35, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 155, + "stage": 5, + "replica": 12, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 156, + "stage": 2, + "replica": 26, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 157, + "stage": 7, + "replica": 3, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 158, + "stage": 4, + "replica": 17, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 159, + "stage": 1, + "replica": 31, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 160, + "stage": 6, + "replica": 8, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 161, + "stage": 3, + "replica": 22, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 162, + "stage": 0, + "replica": 36, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 163, + "stage": 5, + "replica": 13, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 164, + "stage": 2, + "replica": 27, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 165, + "stage": 7, + "replica": 4, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 166, + "stage": 4, + "replica": 18, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 167, + "stage": 1, + "replica": 32, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 168, + "stage": 6, + "replica": 9, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 169, + "stage": 3, + "replica": 23, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 170, + "stage": 8, + "replica": 0, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 171, + "stage": 5, + "replica": 14, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 172, + "stage": 2, + "replica": 28, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 173, + "stage": 7, + "replica": 5, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 174, + "stage": 4, + "replica": 19, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 175, + "stage": 1, + "replica": 33, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 176, + "stage": 6, + "replica": 10, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 177, + "stage": 3, + "replica": 24, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 178, + "stage": 8, + "replica": 1, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 179, + "stage": 5, + "replica": 15, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 180, + "stage": 2, + "replica": 29, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 181, + "stage": 7, + "replica": 6, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 182, + "stage": 4, + "replica": 20, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 183, + "stage": 1, + "replica": 34, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 184, + "stage": 6, + "replica": 11, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 185, + "stage": 3, + "replica": 25, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 186, + "stage": 8, + "replica": 2, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 187, + "stage": 5, + "replica": 16, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 188, + "stage": 2, + "replica": 30, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 189, + "stage": 7, + "replica": 7, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 190, + "stage": 4, + "replica": 21, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 191, + "stage": 1, + "replica": 35, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 192, + "stage": 6, + "replica": 12, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 193, + "stage": 3, + "replica": 26, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 194, + "stage": 8, + "replica": 3, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 195, + "stage": 5, + "replica": 17, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 196, + "stage": 2, + "replica": 31, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 197, + "stage": 7, + "replica": 8, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 198, + "stage": 4, + "replica": 22, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 199, + "stage": 1, + "replica": 36, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 200, + "stage": 6, + "replica": 13, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 201, + "stage": 3, + "replica": 27, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 202, + "stage": 8, + "replica": 4, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 203, + "stage": 5, + "replica": 18, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 204, + "stage": 2, + "replica": 32, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 205, + "stage": 7, + "replica": 9, + "provider": "extra", + "orientation": "backward", + "local_program_sha256": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + { + "time": 206, + "stage": 4, + "replica": 23, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 207, + "stage": 6, + "replica": 14, + "provider": "extra", + "orientation": "forward", + "local_program_sha256": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + { + "time": 208, + "stage": 3, + "replica": 28, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 209, + "stage": 8, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 210, + "stage": 5, + "replica": 19, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 211, + "stage": 2, + "replica": 33, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 212, + "stage": 7, + "replica": 10, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 213, + "stage": 4, + "replica": 24, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 214, + "stage": 6, + "replica": 15, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 215, + "stage": 3, + "replica": 29, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 216, + "stage": 8, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 217, + "stage": 5, + "replica": 20, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 218, + "stage": 2, + "replica": 34, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 219, + "stage": 7, + "replica": 11, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 220, + "stage": 4, + "replica": 25, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 221, + "stage": 6, + "replica": 16, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 222, + "stage": 3, + "replica": 30, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 223, + "stage": 8, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 224, + "stage": 5, + "replica": 21, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 225, + "stage": 2, + "replica": 35, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 226, + "stage": 7, + "replica": 12, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 227, + "stage": 4, + "replica": 26, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 228, + "stage": 6, + "replica": 17, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 229, + "stage": 3, + "replica": 31, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 230, + "stage": 8, + "replica": 8, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 231, + "stage": 5, + "replica": 22, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 232, + "stage": 2, + "replica": 36, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 233, + "stage": 7, + "replica": 13, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 234, + "stage": 4, + "replica": 27, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 235, + "stage": 6, + "replica": 18, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 236, + "stage": 3, + "replica": 32, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 237, + "stage": 8, + "replica": 9, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 238, + "stage": 5, + "replica": 23, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 239, + "stage": 7, + "replica": 14, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 240, + "stage": 4, + "replica": 28, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 241, + "stage": 6, + "replica": 19, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 242, + "stage": 3, + "replica": 33, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 243, + "stage": 8, + "replica": 10, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 244, + "stage": 5, + "replica": 24, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 245, + "stage": 7, + "replica": 15, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 246, + "stage": 4, + "replica": 29, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 247, + "stage": 6, + "replica": 20, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 248, + "stage": 3, + "replica": 34, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 249, + "stage": 8, + "replica": 11, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 250, + "stage": 5, + "replica": 25, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 251, + "stage": 7, + "replica": 16, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 252, + "stage": 4, + "replica": 30, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 253, + "stage": 6, + "replica": 21, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 254, + "stage": 3, + "replica": 35, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 255, + "stage": 8, + "replica": 12, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 256, + "stage": 5, + "replica": 26, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 257, + "stage": 7, + "replica": 17, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 258, + "stage": 4, + "replica": 31, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 259, + "stage": 6, + "replica": 22, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 260, + "stage": 3, + "replica": 36, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 261, + "stage": 8, + "replica": 13, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 262, + "stage": 5, + "replica": 27, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 263, + "stage": 7, + "replica": 18, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 264, + "stage": 4, + "replica": 32, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 265, + "stage": 6, + "replica": 23, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 266, + "stage": 8, + "replica": 14, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 267, + "stage": 5, + "replica": 28, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 268, + "stage": 7, + "replica": 19, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 269, + "stage": 4, + "replica": 33, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 270, + "stage": 6, + "replica": 24, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 271, + "stage": 8, + "replica": 15, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 272, + "stage": 5, + "replica": 29, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 273, + "stage": 7, + "replica": 20, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 274, + "stage": 4, + "replica": 34, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 275, + "stage": 6, + "replica": 25, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 276, + "stage": 8, + "replica": 16, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 277, + "stage": 5, + "replica": 30, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 278, + "stage": 7, + "replica": 21, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 279, + "stage": 4, + "replica": 35, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 280, + "stage": 6, + "replica": 26, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 281, + "stage": 8, + "replica": 17, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 282, + "stage": 5, + "replica": 31, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 283, + "stage": 7, + "replica": 22, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 284, + "stage": 4, + "replica": 36, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 285, + "stage": 6, + "replica": 27, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 286, + "stage": 8, + "replica": 18, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 287, + "stage": 5, + "replica": 32, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 288, + "stage": 7, + "replica": 23, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 289, + "stage": 6, + "replica": 28, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 290, + "stage": 8, + "replica": 19, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 291, + "stage": 5, + "replica": 33, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 292, + "stage": 7, + "replica": 24, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 293, + "stage": 6, + "replica": 29, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 294, + "stage": 8, + "replica": 20, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 295, + "stage": 5, + "replica": 34, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 296, + "stage": 7, + "replica": 25, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 297, + "stage": 6, + "replica": 30, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 298, + "stage": 8, + "replica": 21, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 299, + "stage": 5, + "replica": 35, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 300, + "stage": 7, + "replica": 26, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 301, + "stage": 6, + "replica": 31, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 302, + "stage": 8, + "replica": 22, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 303, + "stage": 5, + "replica": 36, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 304, + "stage": 7, + "replica": 27, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 305, + "stage": 6, + "replica": 32, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 306, + "stage": 8, + "replica": 23, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 307, + "stage": 7, + "replica": 28, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 308, + "stage": 6, + "replica": 33, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 309, + "stage": 8, + "replica": 24, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 310, + "stage": 7, + "replica": 29, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 311, + "stage": 6, + "replica": 34, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 312, + "stage": 8, + "replica": 25, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 313, + "stage": 7, + "replica": 30, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 314, + "stage": 6, + "replica": 35, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 315, + "stage": 8, + "replica": 26, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 316, + "stage": 7, + "replica": 31, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 317, + "stage": 6, + "replica": 36, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 318, + "stage": 8, + "replica": 27, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 319, + "stage": 7, + "replica": 32, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 320, + "stage": 8, + "replica": 28, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 321, + "stage": 7, + "replica": 33, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 322, + "stage": 8, + "replica": 29, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 323, + "stage": 7, + "replica": 34, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 324, + "stage": 8, + "replica": 30, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 325, + "stage": 7, + "replica": 35, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 326, + "stage": 8, + "replica": 31, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 327, + "stage": 7, + "replica": 36, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + { + "time": 328, + "stage": 8, + "replica": 32, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 329, + "stage": 8, + "replica": 33, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 330, + "stage": 8, + "replica": 34, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 331, + "stage": 8, + "replica": 35, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + { + "time": 332, + "stage": 8, + "replica": 36, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + } + ], + "per_call_widths": [ + { + "stage": 0, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 16, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 17, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 18, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 19, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 20, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 16, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 21, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 17, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 22, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 18, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 23, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 19, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 24, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 20, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 25, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 16, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 21, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 26, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 17, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 22, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 27, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 18, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 23, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 28, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 19, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 24, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 29, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 20, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 25, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 16, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 30, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 21, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 26, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 17, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 31, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 22, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 27, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 18, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 32, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 23, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 28, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 19, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 33, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 24, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 29, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 20, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 34, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 25, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 16, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 30, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 21, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 35, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 26, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 17, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 31, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 22, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 36, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 27, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 18, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 32, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 23, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 28, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 19, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 33, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 24, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 29, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 20, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 34, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 25, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 16, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 30, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 21, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 35, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 26, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 17, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 31, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 22, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 36, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 27, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 18, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 32, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 23, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 28, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 19, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 33, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 24, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 29, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 20, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 34, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 25, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 16, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 30, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 21, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 35, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 26, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 17, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 31, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 22, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 36, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 27, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 18, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 32, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 23, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 28, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 19, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 33, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 24, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 29, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 20, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 34, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 25, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 16, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 30, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 21, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 35, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 26, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 17, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 31, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 22, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 36, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 27, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 18, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 32, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 23, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 28, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 19, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 33, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 24, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 29, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 20, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 34, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 25, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 16, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 30, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 21, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 35, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 26, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 17, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 31, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 22, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 36, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 27, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 18, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 32, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 23, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 28, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 19, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 33, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 24, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 29, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 20, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 34, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 25, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 30, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 21, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 35, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 26, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 31, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 22, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 36, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 27, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 32, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 23, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 28, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 33, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 24, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 29, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 34, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 25, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 30, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 35, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 26, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 31, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 36, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 27, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 32, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 28, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 33, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 29, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 34, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 30, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 35, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 31, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 36, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 32, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 33, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 34, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 35, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 36, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + } + ], + "provider_registry": { + "gauge44": { + "directory": "providers/gauge44", + "artifact_sha256": { + "CANONICAL-WORD.json.gz": "f69c0ca2c217eab87a231b67e548cd6491286314b1215e19f0b1d7463afd5e91", + "LOCAL-PROGRAMS.json.gz": "81d4aefacaa27f2f215e7d35559d5a079ca521f4ca2eb9a9c6a6bd7062179bff", + "LOCAL-CHECKS.json": "e52e7feece9cb22e83c1d687c0f98731f8d50b7e8c863732ec662c89453fbcd4", + "INDEPENDENT-LOCAL-REPLAY.json": "70b4b787a5a4529452a58e9ac48826e848748a35b95a9b20c5358f4355705058", + "CLIFFORD-RECIPES.json": "f1b5a509e39293f5d7ffea7b269fd9e5443e625a9286a022caa1fd4b62af8063", + "CLIFFORD-REVIEW.json": "6154a20efd7dc4fc1f774676daed2bce47c9c2772a4e1c274a15d97f6fc2d783", + "RESIDUAL-ADAPTERS.json": "89e5779ba4fcc1b1a76bed05c9b36600bc1dc3c6efd7e623865692ec715c30c5" + }, + "ports": [ + 11, + 19, + 35, + 67, + 131, + 259, + 13, + 21, + 37, + 69, + 133, + 261, + 41, + 73, + 137, + 265, + 49, + 81, + 145, + 273, + 161, + 289, + 193, + 321, + 385, + 14, + 22, + 38, + 70, + 134, + 262, + 26, + 74, + 138, + 266, + 50, + 146, + 274, + 98, + 162, + 290, + 194, + 322, + 386, + 28, + 44, + 140, + 268, + 84, + 148, + 276, + 100, + 164, + 292, + 196, + 324, + 388, + 56, + 88, + 152, + 280, + 104, + 168, + 296, + 200, + 328, + 392, + 112, + 176, + 304, + 208, + 336, + 400, + 224, + 352, + 416, + 448, + 508, + 506, + 502, + 494, + 478, + 446, + 382, + 254, + 505, + 501, + 493, + 477, + 445, + 381, + 253, + 499, + 491, + 475, + 443, + 379, + 251, + 487, + 471, + 439, + 375, + 247, + 463, + 431, + 367, + 239, + 415, + 351, + 223, + 319, + 191 + ], + "centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "actual_paid_profile": { + "1": 2346, + "2": 504, + "3": 414, + "4": 130, + "5": 82, + "8": 8 + }, + "orientation_program_sha256": { + "forward": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638", + "backward": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "499fb645aa5060c301953587784a7b74410c064359e47e96765c22b3e99b59be", + "LOCAL-PROGRAMS.json.gz": "b39fb114ee7ae98e46adea2ad2f6f94b05c73f9f265ab62522b9cd729f7e311d", + "LOCAL-CHECKS.json": "d32c9a61d161318f32f007aa9980fe001e7ab24d5d000f8843c637dedc306bf2", + "INDEPENDENT-LOCAL-REPLAY.json": "dd28c06dfd036de2541f9b8669f5bc9598229df7b12a5816b8a77ae52ebca6ff", + "CLIFFORD-RECIPES.json": "f1b5a509e39293f5d7ffea7b269fd9e5443e625a9286a022caa1fd4b62af8063", + "CLIFFORD-REVIEW.json": "54271d1585688ac9260703ebb25a05c161c8f419cec7436a543622b1b1a87112", + "RESIDUAL-ADAPTERS.json": "df5afb8969525b20e7eb4cf572270b724a9427f8d16f78edbd014c5005191133" + } + }, + "extra": { + "directory": "providers/extra", + "artifact_sha256": { + "CANONICAL-WORD.json.gz": "e38e2136e5a4a75bb843735a59158543eff04bd06384d73752b220d6938af73d", + "LOCAL-PROGRAMS.json.gz": "26c2fd119125bfca1ae655bb8a57df064da250370e60a85e1e8e8c4649e6a904", + "LOCAL-CHECKS.json": "ef01cb5b6d1779518282c69a20d1dbcdbf57cb89ba616e2101bb209b37d80286", + "INDEPENDENT-LOCAL-REPLAY.json": "39874d664110d1ee85da901e2cd56e7cd0f27e0153813d4608c98122a90815da", + "CLIFFORD-RECIPES.json": "cf410b60c9e3d9e7f99d94b5b28c4e3ae61c4b32892df4e03257b60fe5a37b02", + "CLIFFORD-REVIEW.json": "1f8a65f2f97628c91b813df1e49e9a3672081e53a924493a10e570afb282e924", + "RESIDUAL-ADAPTERS.json": "0102fa3b62b095c14a34d5af95cc321db38e5f5e03a4f226828e8ebf6fdbe20b" + }, + "ports": [ + 11, + 19, + 35, + 67, + 131, + 259, + 13, + 21, + 37, + 69, + 133, + 261, + 41, + 73, + 137, + 265, + 49, + 81, + 145, + 273, + 161, + 289, + 193, + 321, + 385, + 14, + 22, + 38, + 70, + 134, + 262, + 26, + 74, + 138, + 266, + 50, + 146, + 274, + 98, + 162, + 290, + 194, + 322, + 386, + 28, + 44, + 140, + 268, + 84, + 148, + 276, + 100, + 164, + 292, + 196, + 324, + 388, + 56, + 88, + 152, + 280, + 104, + 168, + 296, + 200, + 328, + 392, + 112, + 176, + 304, + 208, + 336, + 400, + 224, + 352, + 416, + 448, + 508, + 506, + 502, + 494, + 478, + 446, + 382, + 254, + 505, + 501, + 493, + 477, + 445, + 381, + 253, + 499, + 491, + 475, + 443, + 379, + 251, + 487, + 471, + 439, + 375, + 247, + 463, + 431, + 367, + 239, + 415, + 351, + 223, + 319, + 191 + ], + "centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "actual_paid_profile": { + "1": 2338, + "2": 512, + "3": 418, + "4": 126, + "5": 82, + "8": 8 + }, + "orientation_program_sha256": { + "forward": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06", + "backward": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "c511d5e78aaa846ca0ebae8648caa30cd68620c88841afe10a9df81dcd2d3c58", + "LOCAL-PROGRAMS.json.gz": "937949e654a0bc1c90ea1e40ef040cea69435a53622d5e1e964e47a2b03264fd", + "LOCAL-CHECKS.json": "5981ee5125bd00c7ea960471cf029ebd0bc8c3d6b2360810235194d75c212589", + "INDEPENDENT-LOCAL-REPLAY.json": "b527dce5557409da71db2f63e16535413ea28cd5d887328779cfe880fb04affa", + "CLIFFORD-RECIPES.json": "cf410b60c9e3d9e7f99d94b5b28c4e3ae61c4b32892df4e03257b60fe5a37b02", + "CLIFFORD-REVIEW.json": "6316e335baa284c6e1e8bc7ee31b1d42fddc541d4ac366fdfc7d78bd25d8f9cd", + "RESIDUAL-ADAPTERS.json": "435b2e4ee1e39d0d373dce21591660b8de4834f6e44ff9813d1821e22ff3c9c1" + } + } + }, + "source_plan_sha256": "c5da66a8061a86ca7d3eab975829488f6c086a59966150b193d614ff0d0c4847", + "assignment_sha256": "3a56f578b2db5647cf6cb811bc6263c7a802ae3e31e9e672596d43185e4e5c9f", + "source_owners_sha256": "c41fdf51541ecc91af914f264967f3633570500994f8866daf642440a5d843dd", + "assignment_content_sha256": "199fb748b620d115431e183bb459366356774c39bffcdd3e2d6f7d385b6ad888", + "replica_lift": { + "groups": [ + 8, + 8, + 8, + 8, + 5 + ], + "source_replicas": 8, + "replicas": 37, + "parent_template_content_sha256": "514e59314c8e2fa3c22d0a48083816f6686211090835e8f8775318c1c3e992d8", + "owners_file_sha256": "3a56f578b2db5647cf6cb811bc6263c7a802ae3e31e9e672596d43185e4e5c9f", + "schedule_content_sha256": "fb86346be60ae00c88ff41f77906aae3c9d8fc488d63cd4abbfa03c4785c2d2d", + "window_semantics": "Strict physical source-event intervals, including bridges" + } +} diff --git a/research/capped-fusion-t74-k554/inputs/PR589-EXPECTED.json b/research/capped-fusion-t74-k554/inputs/PR589-EXPECTED.json new file mode 100644 index 0000000000..e293ddc557 --- /dev/null +++ b/research/capped-fusion-t74-k554/inputs/PR589-EXPECTED.json @@ -0,0 +1,222 @@ +{ + "word": { + "file": "tune/bitE8mut-p111-tuned.json.gz", + "file_sha256": "e3e301e62bc2b41dbf1ceac0acf3d35824ebeab1848c5a2142d4577b109da52f", + "content_sha256": "5642fd0e35a1acc11acff8d0c08350c1617e95f310d4d35ad63a651f9eeeba0b", + "v": 111, + "R": 439, + "punctured": [ + 10, + 15, + 51, + 53, + 56, + 66, + 72, + 89, + 111 + ], + "retained_totals": 9, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ], + "decoder_constant": 63, + "gates": { + "D": 111, + "A": 2075, + "B": 712, + "C": 2574 + }, + "local_histogram": { + "1": 1323, + "2": 1342, + "3": 79, + "4": 44, + "5": 102, + "6": 11, + "7": 19 + }, + "legality": { + "records": 27234, + "common_frame_ADDs": 24305, + "rank_mass": 5129 + }, + "five_stage_columns": 883, + "five_stage_payload_bits": 93, + "nine_stage_columns": 1327, + "nine_stage_payload_bits": 93, + "eleven_stage_columns": 1549, + "eleven_stage_payload_bits": 93, + "base_content_sha256": "d0df3c89ae84989f4045ba1681a5e2e9fcdfa38ed0301c8abf5185537155cbe3" + }, + "interface": { + "hypotheses": { + "H1_no_target_feeds_z": true, + "H2_D_frame0_targets_from_helpers": true, + "H3_A_z_only_scatter_targets_B_split": true, + "H4_C_literal_reverse_at_full": true, + "H5_V_identity": true + }, + "conclusion": { + "U_block_form": true, + "J_identity": true, + "K_equals_D": true, + "C_is_U_inverse": true + }, + "interleaving": { + "z_gates_A": 2075, + "source_writes_A": 0, + "z_gates_B": 499, + "source_writes_B": 483, + "helper_writes_B": 16, + "sources_rewritten_B": 108, + "B_z_write_frame_dims": { + "4": 388, + "6": 111 + }, + "B_z_operand_kinds": { + "helper<-helper": 3, + "helper<-source": 13, + "source<-helper": 108, + "source<-source": 375 + }, + "B_z_operand_kinds_by_dim": { + "dim4:helper<-source": 13, + "dim4:source<-source": 375, + "dim6:helper<-helper": 3, + "dim6:source<-helper": 108 + }, + "B_z_writes_after_a_target_read_of_the_same_register": 454, + "B_target_reads_of_registers_rewritten_earlier_in_B": 111, + "target_reads_of_targets": 0, + "cleanup_gates": 2574 + } + }, + "nine": { + "pipeline": "PR #510 (PR #463 nine-stage template, 32 replicas, PR #442 hosting, PR #493 outer assembly), parameterised for v <= 120 by code/adapt9p.py", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_lower_decimal": "0.001733427039589844234749", + "profile": { + "1": 381024, + "2": 400416, + "3": 22752, + "4": 26880, + "5": 29376, + "6": 17376, + "7": 26784, + "42": 288 + }, + "bit": { + "live": 28416, + "physical": 28425, + "maxchild": 42, + "rank_mass": 1808352, + "hosted_residuals": 126432, + "bank_assignments": 0, + "prefix_bits": 177, + "charged_prefix_bits": 192, + "coefficient_bits": 177, + "two_level_coefficient_bits": 393, + "charged_two_level_coefficient_bits": 512, + "row_coefficient": 18355, + "halving_depth": 2 + }, + "kappa": { + "pr548": { + "kappa": "49718254847979/31250000000000000", + "kappa_decimal": "0.001590984155135328", + "complex_lower": "796759709641153381751/500000000000000000000000", + "binding_component": "complex" + }, + "pr544": { + "kappa": "397677800014309/250000000000000000", + "kappa_decimal": "0.001590711200057236", + "complex_lower": "31864911873350496687/20000000000000000000000", + "binding_component": "complex" + }, + "pr535": { + "kappa": "793733736881443/500000000000000000", + "kappa_decimal": "0.001587467473762886", + "complex_lower": "1589991533606044174031/1000000000000000000000000", + "binding_component": "complex" + }, + "pr531": { + "kappa": "1517760977820331/1000000000000000000", + "kappa_decimal": "0.001517760977820331", + "complex_lower": "304013615566499291631/200000000000000000000000", + "binding_component": "complex" + } + } + }, + "eleven": { + "pipeline": "PR #493 (PR #445 geometry, PR #472 emitter, audit and invoice, PR #442 hosting), parameterised by PR #545's code/adapt.py", + "bit_lower": "855475950388791987811/500000000000000000000000", + "bit_lower_decimal": "0.001710951900777583975622", + "profile": { + "1": 116424, + "2": 121648, + "3": 6952, + "4": 7424, + "5": 8976, + "6": 4520, + "7": 8776, + "56": 2600 + }, + "bit": { + "live": 8880, + "physical": 8889, + "maxchild": 56, + "rank_mass": 689304, + "hosted_residuals": 38632, + "prefix_bits": 4304, + "charged_prefix_bits": 4352, + "coefficient_bits": 4304, + "three_level_coefficient_bits": 12966, + "charged_three_level_coefficient_bits": 12992, + "row_coefficient": 19431, + "halving_depth": 3 + }, + "emitted_program_sha256": "793b6f40c9aa4b8db57fec0ac0973e16884dae28707e482ee8f7a2349a5d5a4b", + "kappa": { + "pr548": { + "kappa": "49718254847979/31250000000000000", + "kappa_decimal": "0.001590984155135328", + "complex_lower": "796759709641153381751/500000000000000000000000", + "binding_component": "complex" + }, + "pr544": { + "kappa": "397677800014309/250000000000000000", + "kappa_decimal": "0.001590711200057236", + "complex_lower": "31864911873350496687/20000000000000000000000", + "binding_component": "complex" + }, + "pr535": { + "kappa": "793733736881443/500000000000000000", + "kappa_decimal": "0.001587467473762886", + "complex_lower": "1589991533606044174031/1000000000000000000000000", + "binding_component": "complex" + }, + "pr531": { + "kappa": "1517760977820331/1000000000000000000", + "kappa_decimal": "0.001517760977820331", + "complex_lower": "304013615566499291631/200000000000000000000000", + "binding_component": "complex" + } + } + }, + "base": { + "nine_bit_lower": "1733052823330162099157/1000000000000000000000000", + "nine_bit_lower_decimal": "0.001733052823330162099157", + "eleven_bit_lower": "427652201524503168379/250000000000000000000000", + "eleven_bit_lower_decimal": "0.001710608806098012673516", + "note": "PR #555's EXPECTED.json (untuned word); the tune/ pipeline is the same, with the same frozen hosting selections" + } +} diff --git a/research/capped-fusion-t74-k554/inputs/SPEC.json b/research/capped-fusion-t74-k554/inputs/SPEC.json new file mode 100644 index 0000000000..c15990ace6 --- /dev/null +++ b/research/capped-fusion-t74-k554/inputs/SPEC.json @@ -0,0 +1,4287 @@ +{ + "schema": "witness-spec/1", + "name": "mixed-t37-entrances", + "data": { + "plan_sha256": "163431bf8d3bc0d9b894994b1a3cfa7947367b2243b3c0b3a97d740195a1cb08", + "owners_sha256": "3a56f578b2db5647cf6cb811bc6263c7a802ae3e31e9e672596d43185e4e5c9f" + }, + "dispatch": [ + [ + 0, + 0, + "extra" + ], + [ + 0, + 1, + "extra" + ], + [ + 0, + 2, + "extra" + ], + [ + 0, + 3, + "extra" + ], + [ + 0, + 4, + "extra" + ], + [ + 1, + 0, + "extra" + ], + [ + 0, + 5, + "extra" + ], + [ + 1, + 1, + "extra" + ], + [ + 0, + 6, + "extra" + ], + [ + 1, + 2, + "extra" + ], + [ + 0, + 7, + "extra" + ], + [ + 1, + 3, + "extra" + ], + [ + 0, + 8, + "extra" + ], + [ + 1, + 4, + "extra" + ], + [ + 0, + 9, + "extra" + ], + [ + 2, + 0, + "extra" + ], + [ + 1, + 5, + "extra" + ], + [ + 0, + 10, + "extra" + ], + [ + 2, + 1, + "extra" + ], + [ + 1, + 6, + "extra" + ], + [ + 0, + 11, + "extra" + ], + [ + 2, + 2, + "extra" + ], + [ + 1, + 7, + "extra" + ], + [ + 0, + 12, + "extra" + ], + [ + 2, + 3, + "extra" + ], + [ + 1, + 8, + "extra" + ], + [ + 0, + 13, + "extra" + ], + [ + 2, + 4, + "extra" + ], + [ + 1, + 9, + "extra" + ], + [ + 3, + 0, + "extra" + ], + [ + 0, + 14, + "extra" + ], + [ + 2, + 5, + "extra" + ], + [ + 1, + 10, + "extra" + ], + [ + 3, + 1, + "extra" + ], + [ + 0, + 15, + "extra" + ], + [ + 2, + 6, + "extra" + ], + [ + 1, + 11, + "extra" + ], + [ + 3, + 2, + "extra" + ], + [ + 0, + 16, + "extra" + ], + [ + 2, + 7, + "extra" + ], + [ + 1, + 12, + "extra" + ], + [ + 3, + 3, + "extra" + ], + [ + 0, + 17, + "extra" + ], + [ + 2, + 8, + "extra" + ], + [ + 1, + 13, + "extra" + ], + [ + 3, + 4, + "extra" + ], + [ + 0, + 18, + "extra" + ], + [ + 2, + 9, + "extra" + ], + [ + 4, + 0, + "extra" + ], + [ + 1, + 14, + "extra" + ], + [ + 3, + 5, + "extra" + ], + [ + 0, + 19, + "extra" + ], + [ + 2, + 10, + "extra" + ], + [ + 4, + 1, + "extra" + ], + [ + 1, + 15, + "extra" + ], + [ + 3, + 6, + "extra" + ], + [ + 0, + 20, + "extra" + ], + [ + 2, + 11, + "extra" + ], + [ + 4, + 2, + "extra" + ], + [ + 1, + 16, + "extra" + ], + [ + 3, + 7, + "extra" + ], + [ + 0, + 21, + "extra" + ], + [ + 2, + 12, + "extra" + ], + [ + 4, + 3, + "extra" + ], + [ + 1, + 17, + "extra" + ], + [ + 3, + 8, + "extra" + ], + [ + 0, + 22, + "extra" + ], + [ + 2, + 13, + "extra" + ], + [ + 4, + 4, + "extra" + ], + [ + 1, + 18, + "extra" + ], + [ + 3, + 9, + "extra" + ], + [ + 0, + 23, + "extra" + ], + [ + 5, + 0, + "extra" + ], + [ + 2, + 14, + "extra" + ], + [ + 4, + 5, + "extra" + ], + [ + 1, + 19, + "extra" + ], + [ + 3, + 10, + "extra" + ], + [ + 0, + 24, + "extra" + ], + [ + 5, + 1, + "extra" + ], + [ + 2, + 15, + "extra" + ], + [ + 4, + 6, + "extra" + ], + [ + 1, + 20, + "extra" + ], + [ + 3, + 11, + "extra" + ], + [ + 0, + 25, + "extra" + ], + [ + 5, + 2, + "extra" + ], + [ + 2, + 16, + "extra" + ], + [ + 4, + 7, + "extra" + ], + [ + 1, + 21, + "extra" + ], + [ + 3, + 12, + "extra" + ], + [ + 0, + 26, + "extra" + ], + [ + 5, + 3, + "extra" + ], + [ + 2, + 17, + "extra" + ], + [ + 4, + 8, + "extra" + ], + [ + 1, + 22, + "extra" + ], + [ + 3, + 13, + "extra" + ], + [ + 0, + 27, + "extra" + ], + [ + 5, + 4, + "extra" + ], + [ + 2, + 18, + "extra" + ], + [ + 4, + 9, + "extra" + ], + [ + 1, + 23, + "extra" + ], + [ + 6, + 0, + "extra" + ], + [ + 3, + 14, + "extra" + ], + [ + 0, + 28, + "extra" + ], + [ + 5, + 5, + "extra" + ], + [ + 2, + 19, + "extra" + ], + [ + 4, + 10, + "extra" + ], + [ + 1, + 24, + "extra" + ], + [ + 6, + 1, + "extra" + ], + [ + 3, + 15, + "extra" + ], + [ + 0, + 29, + "extra" + ], + [ + 5, + 6, + "extra" + ], + [ + 2, + 20, + "extra" + ], + [ + 4, + 11, + "extra" + ], + [ + 1, + 25, + "extra" + ], + [ + 6, + 2, + "extra" + ], + [ + 3, + 16, + "extra" + ], + [ + 0, + 30, + "extra" + ], + [ + 5, + 7, + "extra" + ], + [ + 2, + 21, + "extra" + ], + [ + 4, + 12, + "extra" + ], + [ + 1, + 26, + "extra" + ], + [ + 6, + 3, + "extra" + ], + [ + 3, + 17, + "extra" + ], + [ + 0, + 31, + "extra" + ], + [ + 5, + 8, + "extra" + ], + [ + 2, + 22, + "extra" + ], + [ + 4, + 13, + "extra" + ], + [ + 1, + 27, + "extra" + ], + [ + 6, + 4, + "extra" + ], + [ + 3, + 18, + "extra" + ], + [ + 0, + 32, + "extra" + ], + [ + 5, + 9, + "extra" + ], + [ + 2, + 23, + "extra" + ], + [ + 7, + 0, + "extra" + ], + [ + 4, + 14, + "extra" + ], + [ + 1, + 28, + "extra" + ], + [ + 6, + 5, + "extra" + ], + [ + 3, + 19, + "extra" + ], + [ + 0, + 33, + "extra" + ], + [ + 5, + 10, + "extra" + ], + [ + 2, + 24, + "extra" + ], + [ + 7, + 1, + "extra" + ], + [ + 4, + 15, + "extra" + ], + [ + 1, + 29, + "extra" + ], + [ + 6, + 6, + "extra" + ], + [ + 3, + 20, + "extra" + ], + [ + 0, + 34, + "extra" + ], + [ + 5, + 11, + "extra" + ], + [ + 2, + 25, + "extra" + ], + [ + 7, + 2, + "extra" + ], + [ + 4, + 16, + "extra" + ], + [ + 1, + 30, + "extra" + ], + [ + 6, + 7, + "extra" + ], + [ + 3, + 21, + "extra" + ], + [ + 0, + 35, + "extra" + ], + [ + 5, + 12, + "extra" + ], + [ + 2, + 26, + "extra" + ], + [ + 7, + 3, + "extra" + ], + [ + 4, + 17, + "extra" + ], + [ + 1, + 31, + "extra" + ], + [ + 6, + 8, + "extra" + ], + [ + 3, + 22, + "extra" + ], + [ + 0, + 36, + "extra" + ], + [ + 5, + 13, + "extra" + ], + [ + 2, + 27, + "extra" + ], + [ + 7, + 4, + "extra" + ], + [ + 4, + 18, + "extra" + ], + [ + 1, + 32, + "extra" + ], + [ + 6, + 9, + "extra" + ], + [ + 3, + 23, + "extra" + ], + [ + 8, + 0, + "extra" + ], + [ + 5, + 14, + "extra" + ], + [ + 2, + 28, + "extra" + ], + [ + 7, + 5, + "extra" + ], + [ + 4, + 19, + "extra" + ], + [ + 1, + 33, + "extra" + ], + [ + 6, + 10, + "extra" + ], + [ + 3, + 24, + "extra" + ], + [ + 8, + 1, + "extra" + ], + [ + 5, + 15, + "extra" + ], + [ + 2, + 29, + "extra" + ], + [ + 7, + 6, + "extra" + ], + [ + 4, + 20, + "extra" + ], + [ + 1, + 34, + "extra" + ], + [ + 6, + 11, + "extra" + ], + [ + 3, + 25, + "extra" + ], + [ + 8, + 2, + "extra" + ], + [ + 5, + 16, + "extra" + ], + [ + 2, + 30, + "extra" + ], + [ + 7, + 7, + "extra" + ], + [ + 4, + 21, + "extra" + ], + [ + 1, + 35, + "extra" + ], + [ + 6, + 12, + "extra" + ], + [ + 3, + 26, + "extra" + ], + [ + 8, + 3, + "extra" + ], + [ + 5, + 17, + "extra" + ], + [ + 2, + 31, + "extra" + ], + [ + 7, + 8, + "extra" + ], + [ + 4, + 22, + "extra" + ], + [ + 1, + 36, + "extra" + ], + [ + 6, + 13, + "extra" + ], + [ + 3, + 27, + "extra" + ], + [ + 8, + 4, + "extra" + ], + [ + 5, + 18, + "extra" + ], + [ + 2, + 32, + "extra" + ], + [ + 7, + 9, + "extra" + ], + [ + 4, + 23, + "extra" + ], + [ + 6, + 14, + "extra" + ], + [ + 3, + 28, + "gauge44" + ], + [ + 8, + 5, + "gauge44" + ], + [ + 5, + 19, + "gauge44" + ], + [ + 2, + 33, + "gauge44" + ], + [ + 7, + 10, + "gauge44" + ], + [ + 4, + 24, + "gauge44" + ], + [ + 6, + 15, + "gauge44" + ], + [ + 3, + 29, + "gauge44" + ], + [ + 8, + 6, + "gauge44" + ], + [ + 5, + 20, + "gauge44" + ], + [ + 2, + 34, + "gauge44" + ], + [ + 7, + 11, + "gauge44" + ], + [ + 4, + 25, + "gauge44" + ], + [ + 6, + 16, + "gauge44" + ], + [ + 3, + 30, + "gauge44" + ], + [ + 8, + 7, + "gauge44" + ], + [ + 5, + 21, + "gauge44" + ], + [ + 2, + 35, + "gauge44" + ], + [ + 7, + 12, + "gauge44" + ], + [ + 4, + 26, + "gauge44" + ], + [ + 6, + 17, + "gauge44" + ], + [ + 3, + 31, + "gauge44" + ], + [ + 8, + 8, + "gauge44" + ], + [ + 5, + 22, + "gauge44" + ], + [ + 2, + 36, + "gauge44" + ], + [ + 7, + 13, + "gauge44" + ], + [ + 4, + 27, + "gauge44" + ], + [ + 6, + 18, + "gauge44" + ], + [ + 3, + 32, + "gauge44" + ], + [ + 8, + 9, + "gauge44" + ], + [ + 5, + 23, + "gauge44" + ], + [ + 7, + 14, + "gauge44" + ], + [ + 4, + 28, + "gauge44" + ], + [ + 6, + 19, + "gauge44" + ], + [ + 3, + 33, + "gauge44" + ], + [ + 8, + 10, + "gauge44" + ], + [ + 5, + 24, + "gauge44" + ], + [ + 7, + 15, + "gauge44" + ], + [ + 4, + 29, + "gauge44" + ], + [ + 6, + 20, + "gauge44" + ], + [ + 3, + 34, + "gauge44" + ], + [ + 8, + 11, + "gauge44" + ], + [ + 5, + 25, + "gauge44" + ], + [ + 7, + 16, + "gauge44" + ], + [ + 4, + 30, + "gauge44" + ], + [ + 6, + 21, + "gauge44" + ], + [ + 3, + 35, + "gauge44" + ], + [ + 8, + 12, + "gauge44" + ], + [ + 5, + 26, + "gauge44" + ], + [ + 7, + 17, + "gauge44" + ], + [ + 4, + 31, + "gauge44" + ], + [ + 6, + 22, + "gauge44" + ], + [ + 3, + 36, + "gauge44" + ], + [ + 8, + 13, + "gauge44" + ], + [ + 5, + 27, + "gauge44" + ], + [ + 7, + 18, + "gauge44" + ], + [ + 4, + 32, + "gauge44" + ], + [ + 6, + 23, + "gauge44" + ], + [ + 8, + 14, + "gauge44" + ], + [ + 5, + 28, + "gauge44" + ], + [ + 7, + 19, + "gauge44" + ], + [ + 4, + 33, + "gauge44" + ], + [ + 6, + 24, + "gauge44" + ], + [ + 8, + 15, + "gauge44" + ], + [ + 5, + 29, + "gauge44" + ], + [ + 7, + 20, + "gauge44" + ], + [ + 4, + 34, + "gauge44" + ], + [ + 6, + 25, + "gauge44" + ], + [ + 8, + 16, + "gauge44" + ], + [ + 5, + 30, + "gauge44" + ], + [ + 7, + 21, + "gauge44" + ], + [ + 4, + 35, + "gauge44" + ], + [ + 6, + 26, + "gauge44" + ], + [ + 8, + 17, + "gauge44" + ], + [ + 5, + 31, + "gauge44" + ], + [ + 7, + 22, + "gauge44" + ], + [ + 4, + 36, + "gauge44" + ], + [ + 6, + 27, + "gauge44" + ], + [ + 8, + 18, + "gauge44" + ], + [ + 5, + 32, + "gauge44" + ], + [ + 7, + 23, + "gauge44" + ], + [ + 6, + 28, + "gauge44" + ], + [ + 8, + 19, + "gauge44" + ], + [ + 5, + 33, + "gauge44" + ], + [ + 7, + 24, + "gauge44" + ], + [ + 6, + 29, + "gauge44" + ], + [ + 8, + 20, + "gauge44" + ], + [ + 5, + 34, + "gauge44" + ], + [ + 7, + 25, + "gauge44" + ], + [ + 6, + 30, + "gauge44" + ], + [ + 8, + 21, + "gauge44" + ], + [ + 5, + 35, + "gauge44" + ], + [ + 7, + 26, + "gauge44" + ], + [ + 6, + 31, + "gauge44" + ], + [ + 8, + 22, + "gauge44" + ], + [ + 5, + 36, + "gauge44" + ], + [ + 7, + 27, + "gauge44" + ], + [ + 6, + 32, + "gauge44" + ], + [ + 8, + 23, + "gauge44" + ], + [ + 7, + 28, + "gauge44" + ], + [ + 6, + 33, + "gauge44" + ], + [ + 8, + 24, + "gauge44" + ], + [ + 7, + 29, + "gauge44" + ], + [ + 6, + 34, + "gauge44" + ], + [ + 8, + 25, + "gauge44" + ], + [ + 7, + 30, + "gauge44" + ], + [ + 6, + 35, + "gauge44" + ], + [ + 8, + 26, + "gauge44" + ], + [ + 7, + 31, + "gauge44" + ], + [ + 6, + 36, + "gauge44" + ], + [ + 8, + 27, + "gauge44" + ], + [ + 7, + 32, + "gauge44" + ], + [ + 8, + 28, + "gauge44" + ], + [ + 7, + 33, + "gauge44" + ], + [ + 8, + 29, + "gauge44" + ], + [ + 7, + 34, + "gauge44" + ], + [ + 8, + 30, + "gauge44" + ], + [ + 7, + 35, + "gauge44" + ], + [ + 8, + 31, + "gauge44" + ], + [ + 7, + 36, + "gauge44" + ], + [ + 8, + 32, + "gauge44" + ], + [ + 8, + 33, + "gauge44" + ], + [ + 8, + 34, + "gauge44" + ], + [ + 8, + 35, + "gauge44" + ], + [ + 8, + 36, + "gauge44" + ] + ], + "call_order": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 0, + 2 + ], + [ + 0, + 3 + ], + [ + 0, + 4 + ], + [ + 1, + 0 + ], + [ + 0, + 5 + ], + [ + 1, + 1 + ], + [ + 0, + 6 + ], + [ + 1, + 2 + ], + [ + 0, + 7 + ], + [ + 1, + 3 + ], + [ + 0, + 8 + ], + [ + 1, + 4 + ], + [ + 0, + 9 + ], + [ + 2, + 0 + ], + [ + 1, + 5 + ], + [ + 0, + 10 + ], + [ + 2, + 1 + ], + [ + 1, + 6 + ], + [ + 0, + 11 + ], + [ + 2, + 2 + ], + [ + 1, + 7 + ], + [ + 0, + 12 + ], + [ + 2, + 3 + ], + [ + 1, + 8 + ], + [ + 0, + 13 + ], + [ + 2, + 4 + ], + [ + 1, + 9 + ], + [ + 3, + 0 + ], + [ + 0, + 14 + ], + [ + 2, + 5 + ], + [ + 1, + 10 + ], + [ + 3, + 1 + ], + [ + 0, + 15 + ], + [ + 2, + 6 + ], + [ + 1, + 11 + ], + [ + 3, + 2 + ], + [ + 0, + 16 + ], + [ + 2, + 7 + ], + [ + 1, + 12 + ], + [ + 3, + 3 + ], + [ + 0, + 17 + ], + [ + 2, + 8 + ], + [ + 1, + 13 + ], + [ + 3, + 4 + ], + [ + 0, + 18 + ], + [ + 2, + 9 + ], + [ + 4, + 0 + ], + [ + 1, + 14 + ], + [ + 3, + 5 + ], + [ + 0, + 19 + ], + [ + 2, + 10 + ], + [ + 4, + 1 + ], + [ + 1, + 15 + ], + [ + 3, + 6 + ], + [ + 0, + 20 + ], + [ + 2, + 11 + ], + [ + 4, + 2 + ], + [ + 1, + 16 + ], + [ + 3, + 7 + ], + [ + 0, + 21 + ], + [ + 2, + 12 + ], + [ + 4, + 3 + ], + [ + 1, + 17 + ], + [ + 3, + 8 + ], + [ + 0, + 22 + ], + [ + 2, + 13 + ], + [ + 4, + 4 + ], + [ + 1, + 18 + ], + [ + 3, + 9 + ], + [ + 0, + 23 + ], + [ + 5, + 0 + ], + [ + 2, + 14 + ], + [ + 4, + 5 + ], + [ + 1, + 19 + ], + [ + 3, + 10 + ], + [ + 0, + 24 + ], + [ + 5, + 1 + ], + [ + 2, + 15 + ], + [ + 4, + 6 + ], + [ + 1, + 20 + ], + [ + 3, + 11 + ], + [ + 0, + 25 + ], + [ + 5, + 2 + ], + [ + 2, + 16 + ], + [ + 4, + 7 + ], + [ + 1, + 21 + ], + [ + 3, + 12 + ], + [ + 0, + 26 + ], + [ + 5, + 3 + ], + [ + 2, + 17 + ], + [ + 4, + 8 + ], + [ + 1, + 22 + ], + [ + 3, + 13 + ], + [ + 0, + 27 + ], + [ + 5, + 4 + ], + [ + 2, + 18 + ], + [ + 4, + 9 + ], + [ + 1, + 23 + ], + [ + 6, + 0 + ], + [ + 3, + 14 + ], + [ + 0, + 28 + ], + [ + 5, + 5 + ], + [ + 2, + 19 + ], + [ + 4, + 10 + ], + [ + 1, + 24 + ], + [ + 6, + 1 + ], + [ + 3, + 15 + ], + [ + 0, + 29 + ], + [ + 5, + 6 + ], + [ + 2, + 20 + ], + [ + 4, + 11 + ], + [ + 1, + 25 + ], + [ + 6, + 2 + ], + [ + 3, + 16 + ], + [ + 0, + 30 + ], + [ + 5, + 7 + ], + [ + 2, + 21 + ], + [ + 4, + 12 + ], + [ + 1, + 26 + ], + [ + 6, + 3 + ], + [ + 3, + 17 + ], + [ + 0, + 31 + ], + [ + 5, + 8 + ], + [ + 2, + 22 + ], + [ + 4, + 13 + ], + [ + 1, + 27 + ], + [ + 6, + 4 + ], + [ + 3, + 18 + ], + [ + 0, + 32 + ], + [ + 5, + 9 + ], + [ + 2, + 23 + ], + [ + 7, + 0 + ], + [ + 4, + 14 + ], + [ + 1, + 28 + ], + [ + 6, + 5 + ], + [ + 3, + 19 + ], + [ + 0, + 33 + ], + [ + 5, + 10 + ], + [ + 2, + 24 + ], + [ + 7, + 1 + ], + [ + 4, + 15 + ], + [ + 1, + 29 + ], + [ + 6, + 6 + ], + [ + 3, + 20 + ], + [ + 0, + 34 + ], + [ + 5, + 11 + ], + [ + 2, + 25 + ], + [ + 7, + 2 + ], + [ + 4, + 16 + ], + [ + 1, + 30 + ], + [ + 6, + 7 + ], + [ + 3, + 21 + ], + [ + 0, + 35 + ], + [ + 5, + 12 + ], + [ + 2, + 26 + ], + [ + 7, + 3 + ], + [ + 4, + 17 + ], + [ + 1, + 31 + ], + [ + 6, + 8 + ], + [ + 3, + 22 + ], + [ + 0, + 36 + ], + [ + 5, + 13 + ], + [ + 2, + 27 + ], + [ + 7, + 4 + ], + [ + 4, + 18 + ], + [ + 1, + 32 + ], + [ + 6, + 9 + ], + [ + 3, + 23 + ], + [ + 8, + 0 + ], + [ + 5, + 14 + ], + [ + 2, + 28 + ], + [ + 7, + 5 + ], + [ + 4, + 19 + ], + [ + 1, + 33 + ], + [ + 6, + 10 + ], + [ + 3, + 24 + ], + [ + 8, + 1 + ], + [ + 5, + 15 + ], + [ + 2, + 29 + ], + [ + 7, + 6 + ], + [ + 4, + 20 + ], + [ + 1, + 34 + ], + [ + 6, + 11 + ], + [ + 3, + 25 + ], + [ + 8, + 2 + ], + [ + 5, + 16 + ], + [ + 2, + 30 + ], + [ + 7, + 7 + ], + [ + 4, + 21 + ], + [ + 1, + 35 + ], + [ + 6, + 12 + ], + [ + 3, + 26 + ], + [ + 8, + 3 + ], + [ + 5, + 17 + ], + [ + 2, + 31 + ], + [ + 7, + 8 + ], + [ + 4, + 22 + ], + [ + 1, + 36 + ], + [ + 6, + 13 + ], + [ + 3, + 27 + ], + [ + 8, + 4 + ], + [ + 5, + 18 + ], + [ + 2, + 32 + ], + [ + 7, + 9 + ], + [ + 4, + 23 + ], + [ + 6, + 14 + ], + [ + 3, + 28 + ], + [ + 8, + 5 + ], + [ + 5, + 19 + ], + [ + 2, + 33 + ], + [ + 7, + 10 + ], + [ + 4, + 24 + ], + [ + 6, + 15 + ], + [ + 3, + 29 + ], + [ + 8, + 6 + ], + [ + 5, + 20 + ], + [ + 2, + 34 + ], + [ + 7, + 11 + ], + [ + 4, + 25 + ], + [ + 6, + 16 + ], + [ + 3, + 30 + ], + [ + 8, + 7 + ], + [ + 5, + 21 + ], + [ + 2, + 35 + ], + [ + 7, + 12 + ], + [ + 4, + 26 + ], + [ + 6, + 17 + ], + [ + 3, + 31 + ], + [ + 8, + 8 + ], + [ + 5, + 22 + ], + [ + 2, + 36 + ], + [ + 7, + 13 + ], + [ + 4, + 27 + ], + [ + 6, + 18 + ], + [ + 3, + 32 + ], + [ + 8, + 9 + ], + [ + 5, + 23 + ], + [ + 7, + 14 + ], + [ + 4, + 28 + ], + [ + 6, + 19 + ], + [ + 3, + 33 + ], + [ + 8, + 10 + ], + [ + 5, + 24 + ], + [ + 7, + 15 + ], + [ + 4, + 29 + ], + [ + 6, + 20 + ], + [ + 3, + 34 + ], + [ + 8, + 11 + ], + [ + 5, + 25 + ], + [ + 7, + 16 + ], + [ + 4, + 30 + ], + [ + 6, + 21 + ], + [ + 3, + 35 + ], + [ + 8, + 12 + ], + [ + 5, + 26 + ], + [ + 7, + 17 + ], + [ + 4, + 31 + ], + [ + 6, + 22 + ], + [ + 3, + 36 + ], + [ + 8, + 13 + ], + [ + 5, + 27 + ], + [ + 7, + 18 + ], + [ + 4, + 32 + ], + [ + 6, + 23 + ], + [ + 8, + 14 + ], + [ + 5, + 28 + ], + [ + 7, + 19 + ], + [ + 4, + 33 + ], + [ + 6, + 24 + ], + [ + 8, + 15 + ], + [ + 5, + 29 + ], + [ + 7, + 20 + ], + [ + 4, + 34 + ], + [ + 6, + 25 + ], + [ + 8, + 16 + ], + [ + 5, + 30 + ], + [ + 7, + 21 + ], + [ + 4, + 35 + ], + [ + 6, + 26 + ], + [ + 8, + 17 + ], + [ + 5, + 31 + ], + [ + 7, + 22 + ], + [ + 4, + 36 + ], + [ + 6, + 27 + ], + [ + 8, + 18 + ], + [ + 5, + 32 + ], + [ + 7, + 23 + ], + [ + 6, + 28 + ], + [ + 8, + 19 + ], + [ + 5, + 33 + ], + [ + 7, + 24 + ], + [ + 6, + 29 + ], + [ + 8, + 20 + ], + [ + 5, + 34 + ], + [ + 7, + 25 + ], + [ + 6, + 30 + ], + [ + 8, + 21 + ], + [ + 5, + 35 + ], + [ + 7, + 26 + ], + [ + 6, + 31 + ], + [ + 8, + 22 + ], + [ + 5, + 36 + ], + [ + 7, + 27 + ], + [ + 6, + 32 + ], + [ + 8, + 23 + ], + [ + 7, + 28 + ], + [ + 6, + 33 + ], + [ + 8, + 24 + ], + [ + 7, + 29 + ], + [ + 6, + 34 + ], + [ + 8, + 25 + ], + [ + 7, + 30 + ], + [ + 6, + 35 + ], + [ + 8, + 26 + ], + [ + 7, + 31 + ], + [ + 6, + 36 + ], + [ + 8, + 27 + ], + [ + 7, + 32 + ], + [ + 8, + 28 + ], + [ + 7, + 33 + ], + [ + 8, + 29 + ], + [ + 7, + 34 + ], + [ + 8, + 30 + ], + [ + 7, + 35 + ], + [ + 8, + 31 + ], + [ + 7, + 36 + ], + [ + 8, + 32 + ], + [ + 8, + 33 + ], + [ + 8, + 34 + ], + [ + 8, + 35 + ], + [ + 8, + 36 + ] + ], + "width_spot_helpers": [ + 258, + 270, + 282, + 294 + ], + "providers": { + "gauge44": { + "inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + }, + "native_negative_controls": 25, + "phase_edges": 2902, + "expected_profile": { + "1": 2346, + "2": 504, + "3": 414, + "4": 130, + "5": 82, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "499fb645aa5060c301953587784a7b74410c064359e47e96765c22b3e99b59be", + "LOCAL-PROGRAMS.json.gz": "b39fb114ee7ae98e46adea2ad2f6f94b05c73f9f265ab62522b9cd729f7e311d", + "LOCAL-CHECKS.json": "d32c9a61d161318f32f007aa9980fe001e7ab24d5d000f8843c637dedc306bf2", + "INDEPENDENT-LOCAL-REPLAY.json": "dd28c06dfd036de2541f9b8669f5bc9598229df7b12a5816b8a77ae52ebca6ff", + "CLIFFORD-RECIPES.json": "f1b5a509e39293f5d7ffea7b269fd9e5443e625a9286a022caa1fd4b62af8063", + "CLIFFORD-REVIEW.json": "54271d1585688ac9260703ebb25a05c161c8f419cec7436a543622b1b1a87112", + "RESIDUAL-ADAPTERS.json": "df5afb8969525b20e7eb4cf572270b724a9427f8d16f78edbd014c5005191133" + }, + "entering": 192, + "entrance": 372, + "width_digest": "3e2624964db4f881ad1404d94ec595b3d1baba07bef90cf9037d802cc6299d11", + "program_hashes": { + "backward": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a", + "forward": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + "artifacts": { + "LOCAL-CHECKS.json": "e52e7feece9cb22e83c1d687c0f98731f8d50b7e8c863732ec662c89453fbcd4", + "CLIFFORD-RECIPES.json": "f1b5a509e39293f5d7ffea7b269fd9e5443e625a9286a022caa1fd4b62af8063", + "RESIDUAL-ADAPTERS.json": "89e5779ba4fcc1b1a76bed05c9b36600bc1dc3c6efd7e623865692ec715c30c5" + }, + "complete_contract": { + "local": { + "backward": { + "events": 24759, + "macros": 19695, + "real_component_primitives": 198846, + "prefix_l1": "14824960514790439145421/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98381, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24759, + "macros": 19695, + "real_component_primitives": 198798, + "prefix_l1": "5530697291943336383/2048", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98349, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 372, + "terminal_codimension": 214, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 386928, + "local_primitive_bound": 10034720958654, + "compiler": 25934336, + "children": 3484, + "paid_profile": { + "1": 2346, + "2": 504, + "3": 414, + "4": 130, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "104b2317acce5e4138cdf9063aa76c0d546d3e28b37a38772658f8901de8b85a", + "forward": "4f66725a8f160069d3648399b850c651f251bdbc9feab809d0411b878bc8f638" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "499fb645aa5060c301953587784a7b74410c064359e47e96765c22b3e99b59be", + "LOCAL-PROGRAMS.json.gz": "b39fb114ee7ae98e46adea2ad2f6f94b05c73f9f265ab62522b9cd729f7e311d", + "LOCAL-CHECKS.json": "d32c9a61d161318f32f007aa9980fe001e7ab24d5d000f8843c637dedc306bf2", + "INDEPENDENT-LOCAL-REPLAY.json": "dd28c06dfd036de2541f9b8669f5bc9598229df7b12a5816b8a77ae52ebca6ff", + "CLIFFORD-RECIPES.json": "f1b5a509e39293f5d7ffea7b269fd9e5443e625a9286a022caa1fd4b62af8063", + "CLIFFORD-REVIEW.json": "54271d1585688ac9260703ebb25a05c161c8f419cec7436a543622b1b1a87112", + "RESIDUAL-ADAPTERS.json": "df5afb8969525b20e7eb4cf572270b724a9427f8d16f78edbd014c5005191133" + } + }, + "semantic_phase_sha256": "54271d1585688ac9260703ebb25a05c161c8f419cec7436a543622b1b1a87112", + "expected_local": { + "forward": { + "events": 24759, + "macros": 19695, + "real_component_primitives": 198798, + "prefix_l1": "5530697291943336383/2048", + "coefficient_work_primitive_count": 98349 + }, + "backward": { + "events": 24759, + "macros": 19695, + "real_component_primitives": 198846, + "prefix_l1": "14824960514790439145421/64", + "coefficient_work_primitive_count": 98381 + } + }, + "wrappers": 240 + }, + "extra": { + "inventory": { + "4": 40, + "5": 48, + "7": 38, + "8": 114, + "9": 240 + }, + "native_negative_controls": 25, + "phase_edges": 2902, + "expected_profile": { + "1": 2338, + "2": 512, + "3": 418, + "4": 126, + "5": 82, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "c511d5e78aaa846ca0ebae8648caa30cd68620c88841afe10a9df81dcd2d3c58", + "LOCAL-PROGRAMS.json.gz": "937949e654a0bc1c90ea1e40ef040cea69435a53622d5e1e964e47a2b03264fd", + "LOCAL-CHECKS.json": "5981ee5125bd00c7ea960471cf029ebd0bc8c3d6b2360810235194d75c212589", + "INDEPENDENT-LOCAL-REPLAY.json": "b527dce5557409da71db2f63e16535413ea28cd5d887328779cfe880fb04affa", + "CLIFFORD-RECIPES.json": "cf410b60c9e3d9e7f99d94b5b28c4e3ae61c4b32892df4e03257b60fe5a37b02", + "CLIFFORD-REVIEW.json": "6316e335baa284c6e1e8bc7ee31b1d42fddc541d4ac366fdfc7d78bd25d8f9cd", + "RESIDUAL-ADAPTERS.json": "435b2e4ee1e39d0d373dce21591660b8de4834f6e44ff9813d1821e22ff3c9c1" + }, + "entering": 192, + "entrance": 368, + "width_digest": "ec44b5b214538eafbd921a70a1881e38212a3e101ebf7f35427b971a6447de3f", + "program_hashes": { + "backward": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a", + "forward": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + "artifacts": { + "LOCAL-CHECKS.json": "ef01cb5b6d1779518282c69a20d1dbcdbf57cb89ba616e2101bb209b37d80286", + "CLIFFORD-RECIPES.json": "cf410b60c9e3d9e7f99d94b5b28c4e3ae61c4b32892df4e03257b60fe5a37b02", + "RESIDUAL-ADAPTERS.json": "0102fa3b62b095c14a34d5af95cc321db38e5f5e03a4f226828e8ebf6fdbe20b" + }, + "complete_contract": { + "local": { + "backward": { + "events": 24759, + "macros": 19695, + "real_component_primitives": 198846, + "prefix_l1": "14824960514790439145421/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98381, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24759, + "macros": 19695, + "real_component_primitives": 198798, + "prefix_l1": "5530697291943336383/2048", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98349, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 368, + "terminal_codimension": 214, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 40, + "5": 48, + "7": 38, + "8": 114, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 386928, + "local_primitive_bound": 10034720958654, + "compiler": 25934336, + "children": 3484, + "paid_profile": { + "1": 2338, + "2": 512, + "3": 418, + "4": 126, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "c489539e08438f3bfa33d45e2fdca40ab90f0b1dab56d1e9c8b7b65b9904d12a", + "forward": "0f2a4612124cd3c7d8716341e2122b7d351e0908203d29dbc1c0e0bbf55d5f06" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "c511d5e78aaa846ca0ebae8648caa30cd68620c88841afe10a9df81dcd2d3c58", + "LOCAL-PROGRAMS.json.gz": "937949e654a0bc1c90ea1e40ef040cea69435a53622d5e1e964e47a2b03264fd", + "LOCAL-CHECKS.json": "5981ee5125bd00c7ea960471cf029ebd0bc8c3d6b2360810235194d75c212589", + "INDEPENDENT-LOCAL-REPLAY.json": "b527dce5557409da71db2f63e16535413ea28cd5d887328779cfe880fb04affa", + "CLIFFORD-RECIPES.json": "cf410b60c9e3d9e7f99d94b5b28c4e3ae61c4b32892df4e03257b60fe5a37b02", + "CLIFFORD-REVIEW.json": "6316e335baa284c6e1e8bc7ee31b1d42fddc541d4ac366fdfc7d78bd25d8f9cd", + "RESIDUAL-ADAPTERS.json": "435b2e4ee1e39d0d373dce21591660b8de4834f6e44ff9813d1821e22ff3c9c1" + } + }, + "semantic_phase_sha256": "6316e335baa284c6e1e8bc7ee31b1d42fddc541d4ac366fdfc7d78bd25d8f9cd", + "expected_local": { + "forward": { + "events": 24759, + "macros": 19695, + "real_component_primitives": 198798, + "prefix_l1": "5530697291943336383/2048", + "coefficient_work_primitive_count": 98349 + }, + "backward": { + "events": 24759, + "macros": 19695, + "real_component_primitives": 198846, + "prefix_l1": "14824960514790439145421/64", + "coefficient_work_primitive_count": 98381 + } + }, + "wrappers": 240 + } + }, + "expected": { + "gain_baseline_kappa": "838166083799229/500000000000000000", + "hosted_residuals": 159840, + "rank_mass": 2408256, + "actual_73column_sigmas": 11144, + "cross_replica_helper_roles": 148150, + "idle_remainders": 11376, + "idle_remainder_profile": { + "1": 2, + "48": 11374 + }, + "global_profile": { + "1": 779556, + "2": 169496, + "3": 138694, + "4": 42458, + "5": 27306, + "8": 2664, + "48": 11374 + }, + "live": 33152, + "physical": 33642, + "conservative_kappa_decimal": "0.001676854975814691", + "kappa_decimal": "0.001676854978651125", + "complex_lower": "839835772121293724651/500000000000000000000000", + "conservative_complex_lower": "104979471337288528251/62500000000000000000000", + "kappa": "13414839829209/8000000000000000", + "assembly_controls_rejected": 114, + "provider_counts": { + "extra": 208, + "gauge44": 125 + }, + "mutations_rejected": 15 + }, + "pivot_swap": { + "recipe": "construction/leaver/PIVOT-SWAP-k8.json", + "sha256": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb" + } +} diff --git a/research/capped-fusion-t74-k554/lift_parent.py b/research/capped-fusion-t74-k554/lift_parent.py new file mode 100644 index 0000000000..ca6d69cdcd --- /dev/null +++ b/research/capped-fusion-t74-k554/lift_parent.py @@ -0,0 +1,44 @@ +import argparse,copy,gzip,hashlib,importlib.util,json,shutil +from pathlib import Path +F=Path(__file__).resolve().parent +ap=argparse.ArgumentParser();ap.add_argument('--owners',type=Path,required=True);ap.add_argument('--out',type=Path,required=True);a=ap.parse_args();P=a.owners.resolve();D=a.out.resolve();D.mkdir(exist_ok=False) +def rd(p): + b=p.read_bytes();return json.loads(gzip.decompress(b) if p.suffix=='.gz' else b) +def dump(p,v): + b=json.dumps(v,sort_keys=True,separators=(',',':')).encode();z=bytearray(gzip.compress(b,mtime=0));z[9]=255;p.write_bytes(bytes(z) if p.suffix=='.gz' else b) +def sha(p):return hashlib.sha256(p.read_bytes()).hexdigest() +def identity(v):return hashlib.sha256(json.dumps(v,sort_keys=True,separators=(',',':')).encode()).hexdigest() +src=F/'inputs';plan=rd(src/'PLAN.json');parent=rd(src/'GLOBAL-TEMPLATE.json.gz');original=copy.deepcopy(parent);copies=2;T=plan['T'];olddata=plan['live'];bank=parent['live']-olddata;newdata=copies*olddata;newlive=copies*parent['live'];delta=newlive-parent['live'];private=parent['physical']-parent['live'] +def family(f,g):return f+g*olddata if f 0 + +def tamper_controls(RB, base, edit, q): + """Controls that must all FAIL the exact map check: (a) sign not accounted: every new gate's coefficient negated; (b) sign not accounted + on the tail gates only; (c) each single new gate's coefficient moved by one dyadic step (x2). Returns dict name -> failed(bool); all must be True.""" + out = {} + def gates(ed): return [g for _, g in ed.get('insert', [])] + [g for _, g in ed.get('tail', [])] + ed = copy.deepcopy(edit) + for g in gates(ed): _set_coef(g, -_coef(g)) + out['all_new_gates_sign_flipped'] = _map_fails(RB, base, ed, q) + if edit.get('tail'): + ed = copy.deepcopy(edit) + for _, g in ed['tail']: _set_coef(g, -_coef(g)) + out['tail_gates_sign_flipped'] = _map_fails(RB, base, ed, q) + n = len(gates(edit)) + for k in range(n): + ed = copy.deepcopy(edit); g = gates(ed)[k]; _set_coef(g, 2 * _coef(g)) + out['gate%d_coefficient_x2' % k] = _map_fails(RB, base, ed, q) + return out diff --git a/research/capped-fusion-t74-k554/new/rebind.py b/research/capped-fusion-t74-k554/new/rebind.py new file mode 100644 index 0000000000..8930398ca5 --- /dev/null +++ b/research/capped-fusion-t74-k554/new/rebind.py @@ -0,0 +1,49 @@ +"""rebind.py: rebind PR1319's T74 data (PLAN/SPEC) to new native provider directories with UNCHANGED interfaces (ports, +centres, widths), for discovery -> unpin -> freeze -> strict replay. Updates only provider-derived fields: +provider_registry..{actual_paid_profile, artifact_semantic_sha256, artifact_sha256, orientation_program_sha256}, +provider_calls[*].local_program_sha256, PLAN.profile (recomputed from the dispatch and the new local paid profiles plus the +unchanged idle remainder), and SPEC.data.plan_sha256 / SPEC.expected.global_profile. +usage: rebind.py PR1319_PKG_DIR GAUGE44_LOCAL EXTRA_LOCAL OUT_DATA_DIR (also writes PROFILE.json with the new global profile)""" +import collections, gzip, hashlib, json, shutil, sys +from pathlib import Path +pkg, loc_g, loc_e, out = map(Path, sys.argv[1:5]); sys.path.insert(0, str(pkg / 'code')) +from generated_identity import artifact_identities +def rd(p): return json.loads(gzip.decompress(p.read_bytes()) if p.suffix == '.gz' else p.read_bytes()) +def sha(p): return hashlib.sha256(p.read_bytes()).hexdigest() +out.mkdir(parents=True, exist_ok=False) +for n in ['PLAN.json', 'SPEC.json', 'PROFILE.json', 'OWNERS.json.gz', 'DISPATCH.json', 'CONSTRUCTION.json', 'GLOBAL-TEMPLATE.json.gz']: shutil.copy2(pkg / n, out / n) +plan = rd(pkg / 'PLAN.json'); spec = rd(pkg / 'SPEC.json'); old_profile = dict(plan['profile']) +locs = {'gauge44': loc_g, 'extra': loc_e}; counts = collections.Counter(c['provider'] for c in plan['provider_calls']); changes = {} +for pid, d in locs.items(): + desc = plan['provider_registry'][pid]; word = rd(d / 'CANONICAL-WORD.json.gz'); checks = rd(d / 'LOCAL-CHECKS.json') + assert word['ports'] == desc['ports'] and word['centers'] == desc['centers'], pid + widths = [len(word['frames'][word['final'][r]]) - len(word['frames'][word['start'][r]]) for r in range(2 * 112, 2 * 112 + word['R'])] + assert widths == desc['widths'], (pid, 'widths changed') + new = dict(actual_paid_profile={str(k): v for k, v in sorted({int(k): v for k, v in checks['forward']['paid_profile'].items()}.items())}, + artifact_semantic_sha256=artifact_identities(d), + artifact_sha256={name: sha(d / name) for name in desc['artifact_sha256']}, + orientation_program_sha256={o: checks[o]['sha256'] for o in ('backward', 'forward')}) + changes[pid] = {k: (desc.get(k), v) for k, v in new.items() if desc.get(k) != v} + desc.update(new) + for c in plan['provider_calls']: + if c['provider'] == pid: c['local_program_sha256'] = checks[c['orientation']]['sha256'] +prof = collections.Counter() +for pid, n in counts.items(): + for r, v in plan['provider_registry'][pid]['actual_paid_profile'].items(): prof[int(r)] += n * v +idle = {int(r): v for r, v in spec['expected']['idle_remainder_profile'].items()} +for r, v in idle.items(): prof[r] += v +new_profile = {str(k): v for k, v in sorted(prof.items())} +# sanity: the recomputation reproduces the OLD profile from the OLD local profiles +oldp = collections.Counter() +for pid, n in counts.items(): + for r, v in rd(pkg / 'PLAN.json')['provider_registry'][pid]['actual_paid_profile'].items(): oldp[int(r)] += n * v +for r, v in idle.items(): oldp[r] += v +assert {str(k): v for k, v in oldp.items()} == {k: v for k, v in old_profile.items()}, 'profile recomputation rule mismatch' +plan['profile'] = new_profile +(out / 'PROFILE.json').write_text(json.dumps(new_profile, separators=(',', ':')) + '\n') +(out / 'PLAN.json').write_text(json.dumps(plan, indent=2) + '\n') +spec['data']['plan_sha256'] = sha(out / 'PLAN.json'); spec['expected']['global_profile'] = new_profile +(out / 'SPEC.json').write_text(json.dumps(spec, indent=2) + '\n') +json.dump(dict(provider_counts=counts, old_profile=old_profile, new_profile=new_profile, changed_fields={p: sorted(c) for p, c in changes.items()}, + new_paid={p: plan['provider_registry'][p]['actual_paid_profile'] for p in locs}), open(out / 'REBIND.json', 'w'), indent=1, sort_keys=True) +print('provider counts', dict(counts), '| new profile', new_profile, '| changed', {p: sorted(c) for p, c in changes.items()}) diff --git a/research/capped-fusion-t74-k554/new/rebuild.py b/research/capped-fusion-t74-k554/new/rebuild.py new file mode 100644 index 0000000000..e266314dd4 --- /dev/null +++ b/research/capped-fusion-t74-k554/new/rebuild.py @@ -0,0 +1,88 @@ +"""rebuild.py: standard-library exactness check of the pivot-566 helper-donor kernel on PR1297's two local words. + +For each word (gauge44 = base, extra) it + 1. applies inputs/EDITS.json to PR1297's pinned word with the build_tri/harness edit semantics (B deletes and inserts + indexed by the ORIGINAL B; early-cleanup tail inserts appended to cleanup and spliced into early_cleanup in + ascending order) and checks that the scalar program (every gate without its frame annotation, the cleanup list + and the early-cleanup order) equals the shipped word in inputs/; + 2. checks that A, cut, precondition, ports, centres, start_extra and helper_final are byte-identical (interfaces); + 3. computes the complete linear map of B + early cleanup over every register with exact Fractions for both words + and checks equality (the edit only rewires reads of pivot 566), and that the remaining cleanup is identical; + 4. checks that every inserted read of 566 lies where 566 holds its initial value (before its B write at the + original B866, or after the early-cleanup gate that restores it). +Frame annotations of the shipped words are NOT rederived here; the unchanged audit_local.py and the native chain +check them (see verify.py). usage: python3 -B rebuild.py [--edits PATH] [--json OUT]""" +import argparse, gzip, json, sys +from fractions import Fraction as Q +from pathlib import Path +PKG = Path(__file__).resolve().parent; ROOT = PKG.parent +SRC = ROOT / 'vendor/pr1297' +WORDS = {'gauge44': (SRC / 'gauge44-word.json.gz', PKG / 'gauge44-word-566.json.gz'), + 'extra': (SRC / 'extra-word.json.gz', PKG / 'extra-word-566.json.gz')} +INTERFACE = ('A', 'cut', 'precondition', 'ports', 'centers', 'center_frames', 'start_extra', 'helper_final', 'root_lines', 'scatter', 'target_levels') +def load(p): return json.loads(gzip.decompress(Path(p).read_bytes())) +def ops(g): return list(g[:-1]) +def compile_edits(w, ed): + B = w['B']; dele = set(ed['delete']); at = {} + for p, g in ed['insert']: at.setdefault(p, []).append(ops(g)) + out = [] + for i, e in enumerate(B): + out.extend(at.get(i, [])) + if i not in dele: out.append(ops(e)) + out.extend(at.get(len(B), [])) + assert not ed.get('prepend'), 'this package uses no cleanup prepends' + C = [ops(g) for g in w['cleanup']]; early = [i for i, U in w['early_cleanup']]; ins = [] + for j, g in ed['tail']: C.append(ops(g)); ins.append((j, len(C) - 1)) + for j, ci in sorted(ins): early.insert(j, ci) + return out, C, early +def coef(g): return Q(g[3], g[4]) if g[0] == 'add' else Q(g[2], g[3]) +def rows(seq): + R = {} + for g in seq: + t = g[1] + if g[0] == 'add': + src = R.get(g[2], {g[2]: Q(1)}); d = dict(R.get(t, {t: Q(1)})); c = coef(g) + for k, x in src.items(): + y = d.get(k, 0) + c * x + if y: d[k] = y + else: d.pop(k, None) + R[t] = d + else: + c = coef(g); R[t] = {k: x * c for k, x in R.get(t, {t: Q(1)}).items()} + return R +def analyse(base, B1, C1, E1, q): + """Exactness and pivot-window facts of a compiled program (B1, cleanup C1, early order E1) against the base word.""" + res = {} + seq0 = [ops(g) for g in base['B']] + [ops(base['cleanup'][i]) for i, U in base['early_cleanup']] + seq1 = list(B1) + [C1[i] for i in E1] + r0, r1 = rows(seq0), rows(seq1); keys = set(r0) | set(r1) + res['b_tail_map_rows'] = len(keys); res['b_tail_map_rows_differing'] = sum(1 for k in keys if r0.get(k, {k: Q(1)}) != r1.get(k, {k: Q(1)})) + rest0 = [ops(g) for i, g in enumerate(base['cleanup']) if i not in {j for j, U in base['early_cleanup']}] + rest1 = [g for i, g in enumerate(C1) if i not in set(E1)] + res['remaining_cleanup_identical'] = rest0 == rest1 + writes = [i for i, g in enumerate(seq1) if g[1] == q] + reads = [i for i, g in enumerate(seq1) if g[0] == 'add' and g[2] == q] + original = [ops(x) for x in base['B'] if x[0] == 'add' and x[2] == q] + [ops(base['cleanup'][i]) for i, U in base['early_cleanup'] if base['cleanup'][i][0] == 'add' and base['cleanup'][i][2] == q] + new_reads = [i for i in reads if seq1[i] not in original] + res['pivot'] = q; res['pivot_writes'] = writes; res['new_read_positions'] = new_reads + # q holds its initial value before its single B write and again after the early-cleanup gate that restores it + ok = len(writes) == 2 and rows(seq1[:writes[1] + 1]).get(q, {q: Q(1)}) == {q: Q(1)} + res['inserted_reads_where_pivot_is_initial'] = ok and all(p < writes[0] or p > writes[1] for p in new_reads) + res['exact'] = res['b_tail_map_rows_differing'] == 0 and res['remaining_cleanup_identical'] and res['inserted_reads_where_pivot_is_initial'] + return res +def check(name, base, new, ed, q): + B1, C1, E1 = compile_edits(base, ed) + res = dict(word=name) + res['scalar_program_matches'] = (B1 == [ops(g) for g in new['B']] and C1 == [ops(g) for g in new['cleanup']] and E1 == [i for i, U in new['early_cleanup']]) + res['interfaces_identical'] = all(base.get(k) == new.get(k) for k in INTERFACE) + res.update(analyse(base, B1, C1, E1, q)) + res['pass'] = res['scalar_program_matches'] and res['interfaces_identical'] and res['exact'] + return res +if __name__ == '__main__': + ap = argparse.ArgumentParser(); ap.add_argument('--edits', default=str(PKG / 'EDITS.json')); ap.add_argument('--json'); a = ap.parse_args() + E = json.load(open(a.edits)); out = [] + for name, (bp, npth) in WORDS.items(): + r = check(name, load(bp), load(npth), E['edit'], E['pivot']); out.append(r) + print(name, 'PASS' if r['pass'] else 'FAIL', {k: v for k, v in r.items() if k not in ('word', 'new_read_positions')}, flush=True) + if a.json: Path(a.json).write_text(json.dumps(out, indent=1, sort_keys=True) + '\n') + sys.exit(0 if all(r['pass'] for r in out) else 1) diff --git a/research/capped-fusion-t74-k554/new/rebuild_chain.py b/research/capped-fusion-t74-k554/new/rebuild_chain.py new file mode 100644 index 0000000000..df79c063ee --- /dev/null +++ b/research/capped-fusion-t74-k554/new/rebuild_chain.py @@ -0,0 +1,28 @@ +"""Package stage: re-verifies every kernel step of new/CHAIN.json with the retained exactness checker (rebuild.py of PR1625), generalised soundly. + +For each step: apply the step's edit to the step's BASE words and compare with the step's NEW words (scalar program, interfaces, the +complete B + early-cleanup map over every register in exact Fractions, remaining cleanup). Inserted reads of the pivot must see q's row = s*I with +s in {+1,-1} (rebuild.py required s=+1 and exactly two writes of q; pivots restored by a sign-flipping cleanup gate, e.g. 554, read -q after the +restore, with the coefficient taken with that sign; exactness is proven by the unchanged map check). Tamper controls (sign not accounted on all new gates / on tail gates, and each new coefficient moved by one dyadic step) must all FAIL the map check. See pivotcheck.py. +Step 0 starts from PR1297's pinned words (vendor/pr1297); later steps start from the previous step's words. +""" +import json, sys +from pathlib import Path +PKG = Path(__file__).resolve().parent +ROOT = PKG.parent +sys.path.insert(0, str(PKG)) +import rebuild as RB +import pivotcheck as PC +chain = json.loads((PKG / 'CHAIN.json').read_text()) +ok = True +for i, st in enumerate(chain['steps']): + E = json.loads((PKG / st['edits']).read_text()) + assert E['pivot'] == st['pivot'], (i, 'pivot mismatch') + for key in ('gauge44', 'extra'): + base = RB.load(ROOT / st['base'][key]) + r = PC.check_signed(RB, '%s step %d' % (key, i), base, RB.load(ROOT / st['new'][key]), E['edit'], E['pivot']) + c = PC.tamper_controls(RB, base, E['edit'], E['pivot']) + r['tamper_controls_all_fail'] = all(c.values()); r['tamper_controls'] = c + print('step', i, key, 'PASS' if r['pass'] else 'FAIL', {k: v for k, v in r.items() if k not in ('word', 'new_read_positions')}, flush=True) + ok = ok and r['pass'] and all(c.values()) +sys.exit(0 if ok else 1) diff --git a/research/capped-fusion-t74-k554/new/steps/0/extra.json.gz b/research/capped-fusion-t74-k554/new/steps/0/extra.json.gz new file mode 100644 index 0000000000..ac08516e3b Binary files /dev/null and b/research/capped-fusion-t74-k554/new/steps/0/extra.json.gz differ diff --git a/research/capped-fusion-t74-k554/new/steps/0/gauge44.json.gz b/research/capped-fusion-t74-k554/new/steps/0/gauge44.json.gz new file mode 100644 index 0000000000..ecf75c274c Binary files /dev/null and b/research/capped-fusion-t74-k554/new/steps/0/gauge44.json.gz differ diff --git a/research/capped-fusion-t74-k554/outer/B.json b/research/capped-fusion-t74-k554/outer/B.json new file mode 100644 index 0000000000..a0a869b7ca --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/B.json @@ -0,0 +1,15 @@ +{ + "b": "16797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999999/10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "b_above_endpoint": "335950991225108904267134198784140515399662287700516059092065504032572909652065127765261131226568926454890263381717244194414089624033082428554260127338591343146992505478124585542969083619910751267422495111762795356828110607734911576391312375960137850834243953497496738935138611396557784551463851113121337113282345047689930199867965415143056742854031541152461845207722354391131075500282930427309262176237149383516160502728109193570562160336193371226795715232588758464536496430597706584762399787772279944695653302447866748205130138694722289374000505407695677068677495025698799126031256374317371558485372714333093225806005928340124117474922015879461309437072444656926178909302388492411072460673202253748831170374756845475115086047690853331367729388954491011970796750000207203026870258333354070183961240966133774490838834077539738296295824031085835570688738305183903591784248009181359545396904022906952670710469398772564428810893642458569528594697148930064094460882598488576349422490004992787109759507048639378975815065516158911141402389708677414738367843987991726804368464304369230139880500056644625329704173163748192102073747832277013319446032378500925356693578645140556483798673712547189081001206178816017741954816059432505612574894502146733493194809428040259959987548837835217928188262556898327742685023461342988830997455661242247960143922249704786139140538070552178730388231540444500610114612522185462225311478031284861853584313828658232529944149673819507075264521293891142543657301101898889720241151977609805896085443199645699431490703632885005936102308447246508257817245847792193852335466969967587976594920717468061987595670937150185767937637722326253904121067945895936273788636348290365338017358243141510740258326688070571818858938217142315555226381593032293160130513179093118220146363473260581911688265665990669835206715807986936744785757989398709958696646425241704571352567640413049920039585654191260968623603387686924776625990679133038277105441661483698590443130890494726265514722142154320605662654412563284698452446461788828038193372436458032921398109354096319802871082468785434268728766573300269268653494042112752973464712090795456721956557720940645641238184278223292106143118682296894649387639431464192202919386250308208758257591509749070267631567571337207611747951418673810663839355983277058835987518121454558616367839317977286968373859084065712331743472889754986263355024104025179685296417498846270877267344380825179565924307860023117048921870459835144322730769508470373439457205345965354315735807210317792465733586797785368342615900610698826578197936425880723688440840440397655839173850319194241025255848632041582754756659224701621703652003152266409574609422824145952430623185188476316662807035505333865004728492818190414337919169915174753850788452515696420435188291712558417056300121840141317675967882947167445440339723001745967257764458360138983410054563206700759437538263524038856345794346531589085338339577458195823351709012209021616408935829584150437665170895706001604287767921157624044686238060994235122404187304642520702851751109567024203922708789457051028945878602018160713538928722394237662730835831041610342421758783517675666036437212951285366092131978600809293513415933247551112640704718764249111744034137569679589493821166832710330921474535290166657405807732909343768202378093189807313590742062543381133911376469868703876900219260640837615821208814349617563928561248357602742831068820153537928198031941096702621881752542679700820132457669037638865161598642640703987457419964155654879872546334789966078164888239356849901892716271201387902751953007901571861322027870386440180744525957626049436370988446519479479199535643126975882096618685362087547294255236906939959173445183897450040031903719182640924872131522820268365449060622055658746393208461441213690037534686471132377263569144656267155954633764414257252600222829136454751851698989353564663314740358341145404703102607476457497756438162400273443858879462831250132009650384860288135275569839889182746220464593104001555672172096536855899004502637471261074744030727605961342189032924184937386287936211152679123470358624929367261998188895588142916283639283620374384110733390933794244085070603660826634731002497628273136997132359480336950221350726705659014633358688347951764707650244779652749078221527784951214464011496856672707548479529674342532039823451004010153596722250079428547913406558162956671758339609428051063193835292466148886622428658720089515558490446411276241668772122706705965674098974999657070831830506384225110094076641595617234496265338370408962766364162997085668892197944990628469867511316359257069983338804615671773502921729866816351680700281360505350836711462075001793832042466192324575335988846340439109454533654676253786223641224360405513834019243853154767303470162212554390671013506167254159025946055825077982129275615501783893024397179904542013572314633924217091880758658626817683461383221279452214722750015361165066033782149381463991476727417545664209227269298633286031516677885766683675456606034564801827848914891045169610307054244490704488263467391256178564967960164265074055549707987929769478476255820298156009326850519754624336512863373873214535312343758252514624325152702428655934957455301652972843628451549155927373305058996973665281423514153256017754456940498369538804231772758664036425457138503072503059540757331918128780853427954219522772335913469472664037320399509880986626390604077241685952693108664210910774353570612628612305434907161887895874945897796803620133443035688872773566012776357319934635356874349410767860675608370825086615715906865597924972518750020681339885611218047494769085313036962795623740078770802635183781187348189008335494662180687931886615056762633771927793521687541586004533599631936508651276849749015329459922695611212148473904066003326616184565564993386683683901506790080219844667656386601226889169637955565273219850830254422077683703192205437868551277437333039060471235061702101792213428454599270094208893283227924404231951867986225420324992650425764290383927459177599768091883066186696106054500137948716354551640444289577475479410732902758331707200675218749251507328281897480789456070056726992644900742028837321298289595635340579096142103471132956502081098739967636040045661636611913887172765892468717548941811148890512381775899101645088630794715805617038822322037501914078365139202750905623940095004326243750315209089338393844168637509953614470855838596590277891934565021804331844228227530853906932221287929379733687166569338770501185189818051977382658769720188044205838251686011029714279083853391884090310911812547442754580806954504902703076763653322152093739306063722455935621947381510589646439809447941081874048187058097107179339881841005216264093262328515783386005030378027520195380180061552824631068654720862540968292986101614352696104444782033097217898952471041873745849683118724553505959481551566087471094779944133746479532889816637491014265736088572945710846668579876015765515152154546864823472491341303244531969150687889615484580474434780793754397039780580627807594601525370848770678952246664065116216953975413763515415189432667334276120703015761284062476858829742235156710870849354749689497631095351478624402595878222949660087599854688525351950156271717068965614732753172218314552605027293497153093898576779730683453644704303628867150897245243950790883968310625906485880525940425948758995756742298229098236054712745787211094358315653064053724999412911195747876444653886600813720203829814911086915837756115135922719921149054957758779314872585492353410009291099108660289633752371901107463572636937625957517410134550316417877868102519894273774490688465328354369109275411656540379010693521806317085741329684967526202924086913902361884116654500969912354228375640440301323599481183097694527140384150025134241426799841592738627268940659834148876263760484776300589086008903074056463449600342670694611815116989648398458197886830360124966063444913855409776591069232076399369125750770600780347196260973386020517966505399189332051475425858074799926173003269737032668491385607806980241497570102936890245588494107620134820914473486197326106830924849660518251489993352550171856956992445589033680846121972331227824025467146823170853155113283827997706861657319184781870985505095287744756887834496128029158321121549110753020208332809723969143624354750931387301500390157234855185674905872621946056169045416767365186037868546405421465643769263448629638576954987389750392876958921138772401610203570401968532406484420953090421325198430913961554839321213341489188980923008217957118298070603627446415194367482421272632481378064824308465672268400462061697810567932962899994121029725765422717817874165825609683422266563261194593164420900569059799487246349092909067604711729100737278573391747665457572439450607369661091560648501602138789708497318787455930169339754612627190449466998798501147212744912823194645072267926050180399689247200409758230105688909402948690566527898443679174606642711329493422746859016411576608165777359601286324917741696393810186145133769428507992788008136049440888961250217593646671225131868667527981599305470072372963808420089031257583643081104787744160107294258594775224862474912360277652608108540574901931695310368420008573903502515474019192317612364694566489988821675539225476814656672043218174262531204360412163366933866379276309644493191642284406000280118235156383321680771616719692159746670492934992151238743606446713511005744160906113092763418082361907073511061998372038152003178698316651944444174760857832073601992853569248828027812977109717528275344849650729555693815790411292079465891018936358497689092377336652436742168591627792492168631630645729346838008536861441329174115192255822526594145888212396767253393930218176184555086671827716557349274258032524191013287154604370623945181843859984022383969345626276353018719821403618006820894074056791365033134247655459484828872367686049573291362827391130639203005496770737001158570199196374944912664844691955237962237606331727842615692902230454276966357985568184785114809040085405110962086219956685378092249840554552229777055381063237949012627649506722618214175382437754442295231644244249982159285347031622560778917780836464300410648155959986283548519711336147584034607545626565154837778601668055195962584581427070824613611000031447887832023242222302825105239179670874099714607051564238719458542491206155228015805110218231236806873935938834261600839448182745813334240680752788343653016886090335909754811996575409831640747566353376738600381373436491986470364343345147613068800683994778767311418859117609797806073606499524124229374578040007188083683877030127321279303554324865695802400211376749197513783151741523785604806500975429966346457914603952046971269491824814045879413667636619619379746664746725049949496971643434043629778944584862751177917725404793485439665308080986730179778373172504328854810210321396369669960445460174606935548737685215451763014200701714488111610440821949225313283183242671865514631785792759154241722836437740197062928386112217501064647804547309713379005935017403843726485594406729150008755761068512123774263606481109665994140653565603400554610288127580509742214622447469585443537910253217224848541995885709299898849118867189834147506681376948158551161661397962264328978766961132227560615855712701689292316933247221542247060342841953808926367235710146499462710974068645624269930271689930721465124359849453352058587610855851011719498591796529315910703907450245149209557948966805199796026709991315565587144987547975084708195236784479574396142510664495733016463786083873446801625977573497841377345445601465277496718335826089072719292876006426814398410626575581592807770136676861298813994845363788172145431319419658020428570038389766652494239947011072601112911786154616520664491918609975497177427227729829654593273572639316924575009644634764197371544319175894395314397215898350296766245508251364329487433971482611003768308182807239052986877594275887185076349258836430839778651162236779277145387912329142387450239959083022506942702730548422807690071461355082845850153640893626583203055835194053189130843732471820568248485860969230206380195172273538187075815254455063438779387112354328115709602129180568224042253494254343022939432551363572706467749295823223923587714227963197624481182291858166184361077531968064182054831016152847219623143032497558323209612727462115492796205922787061702416312014189562551771568833173862498833686658982519487229627370952878036243393763290475310415923973421064419057582580718767082997414405740510243276966643124876202615166009673994246290463602382758285942374446159178967463919249285279317968698768278864106317647156596054364241770975415282357348276650283495199676348875514153441723244724747035349064109194252840288548569106808839740588607763953314665331046054870139348564980441339872069559886771750752760093530368813457257964926829974770282398587791827977509290584893966399558327208870969491329737762031096350801280654618033155685467053760883938977596230099229994514235094516964372616383056213362381072377403020676526775356028909730418532802977604183968766310277798656675160345060800904129826059657620863489197077065825844866173788520823769802079840617627690407270546257384167620922398718796935195396458020072786464946984253558512064326153241025465286572262531607672851967004192529055945281391497915305016235623677889064927030970971188666419395180722632549351581677118190642960419573193737922499054578730514174925572592826035159440288491279824077936967921060466719955397491863151496737924486210824087748888306672486787763953757417368705074860326650584482175864900804657533340473818725118855679983088501707122287348735462928720553884949978222463750490850384083961618466418282679371522003687621309515113385563489099010142486888907009521054253180358412176628104561997626161002664015634303322489978703364502383067610206507569234908780539100668714934208208848000773289175573579990529700035475178770118112313618306236627039526843112728224437976176997248701902120835851312544901170001407887967084651754609290493671961088635278282988928557709616141815251134814765080092391001994614131354542493822380195016895942105667061992046183297967522762951018407288787674559976459057787571014800039715356413717794321455738174838448920121325530483349985403139772234482982298965315327279977825339881721899421781388611458415237554254437996796572313250030986506809949764687688413343367641600934187103434442121642846824163298545764079869816333779858161355881685390861369198992719167970371564714382416467080464512138980668458652312313426076899388401943196564081226657446752551999967101392969705713129517066571716412368969007266047707940981693916516115944284330266905101697312775744999212586365284432128727227933352831808338144775879619565924814857574617363357284169144901033106322657741424548492435574660389439623921547241170515106978731424434385889366033643097965396854927353079807070187325397189609364728821407362954463044009324187981902357602396032151016771756959236195719216643219548675165170842789500393307005132541434991817565392757312847864814820009418788127476347865754170695123537105825733032434760247188760324842182231391537911873080656551708656316586159989905853513039734513138026346340272943243650030004098661381596555876011706993544633181954469462395264406806125735141832104606086173966258186746996147065228969024400754937362763379211967958116031820817665797803368992488488856904829746855009877438545272818053210549194145846991135200191638727218685140192686981529368518445956689743683569199675881172388363924019938793984497922578501010305300152631380407037821033300108847302316263395067225479993869250509934504174717890287853566723374935113903058355224010733181033541718438277338539093186545202384284330791630274175960197509487457485546108674787776508788160702501554737286254522996717895904169807485830976499420927670695791427939544197323226766333758183051118930852723613442377847154950425253280262211543044289334184883868523622917110091516279862478827934470026114047630755129357299283289758680321125974291189101553070614479986101877808058577542151782631342685844013573428942436569681603124717074142098829076717770287477111068380914741426941520186904810059436162771405300857093804546160703225374696439977734873854734305178109409575781535386592675904609149829900230361539215383318724074399206020349036751433297348200871644579128487953897092610795275186648219252159421166194965493277939775719237096156719725004741368265484416224116398550455609138844848956569418286952435185366756567029293330861858903041208066451212126633158141209111947249639620805085402522644735174472559873528415676803485526320432509213757144092367268699143713005215262564226407298136750628852637947731782155317680919720214702526748669139575997011896604332600942618715811690479419903779634169707718947270107654118280958463816396837664660660819315989965888131847689789639125349998777444245195333646469839630112453714594693484697177841693986729196364380681140463059992427729331637691075712198324486291898008842150188794063131588842729607949440356696375732967611016867484411387876881047344898237864883600570587110369812113784364831321916274951991856645728833128460276772401446265042269125153242713065012259246264416964297244205440667897142496950075406731991740197293085839962051959002643108979007807732463289968977276288618532925351465304366985129187551473813062877230182323432428643906220476350223557096669785633745725638438708471959292853954237772219024087877156842339679872387907238254320701547994046084546548928804440021726174409401640557171760848855414856602719181305631673610814392717639835912418766257339910390123457962459530030703673401216829214834383208372367543676736687180412823465177904710189438335970902564889202642085840213870777492397289429016392062782032556007976361873582898799844487541962766457283117131696306807834064938720474656417135683134636179652737532941861243954195580544724907407558607406111103688710777263738666547785036182341895676838142716127165501904947927968191378574204301639472429085865062991313374065043615695723417747687772825327947540357105224606569119958213444386670985225892946000636282578368677700385880606707331007222774345931711142791671547458318360890676725855699992297295162201567273936694243427355637338872489545184976185423975210631415326610423115681442701631735143573003840601936184257484045366233353483789206831055461891437997459633148427477759989289960372483752611675265319169452467041419625450046773976061562527352075456522632660854410560910567666230020405080961254732285634396128507213245458775516759883524564402496134678909878781479371268719402227240230437439292015673121150343965559480884819523184380684772676454983820218450782057388460764971110031426361336557242601829740696233851029994156141786696932861388342034251367577065537397079627202739169384326104406378808352236924076414959519213616560186951104909511177501127286468160064116441197593991679311252221465646550398199218222128013794676642060193300561937300890815439463284467641880570279744823223752948058564470501593809431361027534250816688611717486216439753780002006006122646154580586142183689691884819745122036805670573357016608316423768679167841558932099615873477153604900370187175494599961484450729654271999435646157273946632348521573077763777534217977383533025579633426880529183684404145981870244901093600374892163432498137368581964267816631420186348465477155408938472049545012350211868895557659041386942699056181647761986454093784699260077114242473582956166799592565636368846429487084066754063864401565195703323439196089536904053001146665463559047115736926866445196231061257616201099803022750436717768240119481101801072908117401060116065314790859812277017445046801434415380339548624887600345168294115038473242956079689622773607620138406997699463731696584827200679222857424573526832242949519288731559086814794419265053208481257176891725397583599315726370981661460293210239162991440707254659317054858545279565918609981818340264963338071977778850695008674304391834019473534434096673506733465547363735085637843720409450946496449440260937774234914757057171524037648364020105316455220817940910236140026452385071620121121290981805786753027594408805360205180117847244093737261786780115053041871935063055369115320106688136332575775684274601129934847097282759763065402897794667082607668546813841571918006893534462341742918079828554588256856324523403607870629762967878039389015223603244512220810509984781711961490496952287687386387657637244911246784535803590792370515345979426026823329304026099226416756302631632115941316234200115400154560563798469390613896201358178897356557028551533261228766806179844754342878950902059194952867962258330476782833703888815120799871220543842677800812366041231852552580427450723921794590765506336399381711522138268205335591674764454736560945693800328789352848048204237371809683475044275343142855071737604054847716291493741709428571092987880442004370483498474098841519757097051879100324516338251759000042536683572528630011035381988197336485217038383747548568963322042762540688791187923087828653819716354615316949357352192894979982887596315422335653554884802823126676822929880221468581739269571577911870022878749279660339026833953760532732874307689816965805541299334061263007374474061282819975511627786009484751480869260734016697603194097346726791850172426042373403975208071502484151449281373208516813540337267321546483930604189540193758457663395624892594221545046313172908244720489643357438357828898360006826536327869445443341470566675661423318243431565685901566684648810146124997572714475956488645646244829700870239426698356484718155048795391228787495132964384016536133145780257531754751457119498010596171619952547031195365540500129476170504552195964407741843370119920112096836414560906355548664706919531920243984980463036974390167309565144818291483937543258453734547482623970063883973666174986655331796164814771009861095741840842587771643027334287646970659338510466096875525520944208382397523530389748878253668235631761822674426933437403868261961352966211391436236708115863589245226741680225048770778433991699895991570803176297043542518085622042707136535405702797251304021547284571920290847845884553874977320586730435627176799416823619249027800155150639993452815347866461031304246541650725050402217948624156101290179826667813585221829486527713401698316713585310251684476378563567557876936605373614863218846793947302345499878987719825122501484068592668452059417594162114814482524785812759610917346149252742770921634884827504582915511878863139478701937814397376316192587052474421097307156253228846700162484355891305372254780379764475747412765637043575619241062475857554463534878298667941933233818883955124843139839167060279519262605201238759665589749418346938348698285465390511173609034757424527074786344977494275886117891089083131853422052257474611225229086711089521651109696817824663544108109559520160238181210435269020915654782382382798639037578815476187859516828624818482620416614240589712472383461682673911873472322497457054674924424237049534154702705684603820339242408792645373480186208130342641009470197092278703418377603552752930884506539191665489537008042837939070380487984839185804526165269009891805605520517127515113618703608263311301488374530361423874165190160937357463735796449797083837784148378522379175014888313924083055032254819555802901707450561680532540372104992133936364065100900747435542781002093379617921642748737291132502513956320329503090192725457168323206690117255811440613829125811288130739218871795235329856346166535236899837404958893198405612046715855873841044840178279433884050984545844243797081551179138827246989859953677052431286176469480637571154752080107160787746361345065043298590940072348912194594524536964236222383996142298388819642346316244284365055420694610969773990982915827322826791520740995482265093979668445712274149199089266595360541217681695480416203645460605782833060283116008826348909963617245584449827662615667057107122698966837850011299241137624303027778279969149897187002547830168156269427506789913893377383101840469453908428352078361501082499914298405949868980465409902785292616520604435830223805907743217747748701609435174797729882403343755336465302916294804849909027417606140578698539129654531835129169501576000381748280166392669718826331132164374423381375256065255951599897653630051609453651625443932159786506525742122055545506020499653501266841407929431347860949647962044962348194210662531047627102838012602239863519730363251262462236022731955290996195782683108322780307133527368335448863056279433526290127259335755262292344891682751255656478512771173566625057243905954091861482910653794046161660111777005638069331399616317324557912705192034995814816469061174203418572550238206040588744045105161525449917839561027933714342186939730500672831834096335567973605237680479112937610758246868463733658663220049016197351097587323427497756277798200132222218274019425665753718108766142778304692167880413317490613606663215742574581231444845835551623066893726579490966379638850304209195140498137895824518548647214633312110256455764092726717948873098033206028696706345969557389236514471936824928799588992074512887994674764902681655967226763046658380442634757749152831608645148080113500348724439631485244151625589972042070133870720169897073896262845213383516963895818496239829852607300477917146606983960822286793027352519581848368822582291368196476794361557762992604195919195447682442146945882487518147471852185269263020341535081463682169184904026381921368582414948116716377464241607626068503870290257681662536915437349308952191000326539478876562839109953187943950480618957523542687170509667828392075119239721180431116550171374246485265231922670700199513021746369448118364430122130358194768361174149218426512113054218001876178740019748940922076676728414311460559815559720219554675533591454625717555962486755157088659271743808510866911950635044381257008475597860053812071130457359396404264994588460913517917251187554700800218065958979320677449595421058760870150340589266037499055527357320005472891886043725238152674909271611423931917589010887624579875053412034800668602725179803657717847771031047804462352079548806486246019787016163447395137479808425901211875511765177072552094578797280460303350189644244312855776725541339405955076871788933264648218189245388344558533216048512558804694127785617255641847649604306926399503431947984170673426562290044943546102145022388664500891082585200223632197541713606053412688877485499434868311492538057961115433536794751217948238888052486276978047570141139887580094513514462714177336763186991372053877749387609292766198714691017833602816458371127803811621639199248598364868461466218235899338283526414804418469680202894429995470571507530107792009796471961339627951466534770568292157765635805135834524936106980953870822838864455738600019410888517725338251694712813162024420378975664891286533318976328607205025814277462465072059148466848743181308782872741445418461176425598246037095821186502501807939948674092967227679918890441656899280980358602027864892001883185668335593369257290377280865757023585931852906873323883045519070672083209274738275037010421240202133498093739217491254233584688181758674592996709273165377046612256399812632115670448953165056272655483000351947994638163067636314631202798811524807448534873833836956700121187964170979580121988117375742821594765299528187537204763529628671750733770604079150281659646128322935654029150479518126047701461914194179018374817253025152777272939825561479319382730028882028264147280932471331082468793042443023228147777927381215653569516814569228271529425133231029962375367781060945685971509579734548643234880346281285149664857191699919999040991694547264186378180409115802427412411206243652046140062876148358515856304522504066906258534015308664258329543723559423467547978221254394480697242715632026555249837085197455575530263267534149106809197517238179946699058492126576791055486011126463299663989509449042411425412820774463284708866166407837367170400362301938998415340040642877086991908292188913556789593366379869482433889770372421918509254097809907786794360355721060958569406231921740403510998671598450590520786761653567300546769926009711809608682107320180720252676032805219596125931732472131476482348267204722728284867603324102836704349862290580486542268940019143427580628031519389651327160625207673400788027310732964177355183310811684320643507478782536036642446935819957774165791586472791479987131070399960800304394068153934709893571556431112062020343893030397330354172754587840953041142495245261636644290670752517642967958495535101295536174925163520541387857012447782844945127482972508677801775484643337139162592433355820851403358469935548717084876528520094726291758184870547699412507217950450245504062534420424060331500488577785066658501110964387578733336229615648727616309703897837940215582770892659326204676366374292381929948308319340437385327389753608764849336854925203383164606812362785289443518956472540347602059216676905791955886343445229614752410150121763699424670707568779966617892065757332675716228705282116334447804757236799444877757472308580975780307400836753623413492585201684051721853378325561058920416616869981933607198594947386442011073603380976361835715053160182865676989227253207032927572626085228656848060341710918300224407451745002427371505908032806909107844517914970204438442139828889417523731918745237482588752093972445067461620521047756280822864551039976607104268000120537595806847249569664560720165296524535984710699807225196852786213030331313212744859322624094324623763238231127043379617252195791401011065363196676636010987987018140066773195831981439873360564790227046853896308122000238937014929808232210602591701607404768600734897790640666636815702998822122873918313167587752419580351537913817914707399706214653839977962220613080067055174964180346190067126453739511131031116548947760834871980662328992763172420391477121649315826638899509085814981336172311597924923565067034196738020477993398924416866124830873144981986552014692073844738149795385699918333787937354979490616300471102196483502410589203901101647773843649296957514255023016703031096605323616445410485794427180678619461159618121790596593425386625040897/200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "profile": { + "1": 1560432, + "2": 336336, + "3": 278724, + "4": 84912, + "5": 54612, + "8": 5328, + "48": 22748 + }, + "live": 66304, + "note": "b = certified complex_lower - 1e-30010 (exact rational); b_above_endpoint = complex_lower + 1e-30000 must fail the native moment test (the supplier's fine-engine certificate rejects at endpoint + 1e-30000)" +} diff --git a/research/capped-fusion-t74-k554/outer/CLASSICAL-BOUNDARY.md b/research/capped-fusion-t74-k554/outer/CLASSICAL-BOUNDARY.md new file mode 100644 index 0000000000..807113cce1 --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/CLASSICAL-BOUNDARY.md @@ -0,0 +1,30 @@ +# Classical-matrix boundary (tau = 2.372864 here; PR1699 used 12/5) + +PR1673 (Vlado Vojdanovski) charges the batched boundary algebra W^(tau-1) where tau is a fixed target exponent for W-square complex matrix +products; its stability lemma only requires omega_C < tau (it is stated there for the supplied omega_C <= 9/4 premise, tau = 19/8). +Chafik Boukhalfa (PR1699, `research/t74-signed554-phase-fusion/CLASSICAL-MATRIX-TRANSFER.md`) observed that Francois Le Gall's published +theorem omega < 2.3728639 (ISSAC 2014, arXiv 1401.7714, Table 1 and Section 6.3) already gives omega_C < 12/5, so the matrix branch needs no +unproven premise. This package adopts that specialisation: the boundary exponent is epsilon - xi + (tau-1)/2 = epsilon - xi + 7/10, the boundary +saving is 3/10 + xi - epsilon, and the ledger constant is c = (3 - tau)/2 = 3/10. The checks `matrix_exponent_above_published_bound` +(12/5 > 2.3728639) and `matrix_exponent_below_five_halves` are in the ledger; the exponent is an external published theorem and is not +re-proved here (neither in PR1699 nor in this package). The boundary row is far above the binding rows, so the final kappa is set by the +main transform = fused Gaussian balance with the sparse-union row carrying the layout slack, exactly as in PR1673's matrix corollary (this paragraph describes the PR1699 configuration; in this package the union row is relaxed by the new radix schedule and the boundary row binds, see the end of this file). + +What changes here relative to PR1699 is purely numerical and uses the freedom already in PR1673's proof: every strict slack (r0, zeta, layout slack, +q gap, stop exponent, decimal floor, backoff) is only required to be positive; they are set to 1e-30010 or below, and b is the certified complex +endpoint minus 1e-30010 instead of a 22-digit truncation minus 1e-30. The native moment test of the supplier is re-enclosed on a 2^-99933 grid +(directed-rounding integer fixed point, atanh/exponential term counts derived from the grid in check_ledger.py): moment(b) < 1 and moment(endpoint + 1e-30000) > 1 are both proven by exact rational enclosures. +Resulting kappa exceeds PR1699's exact kappa 0.001677641731343354564251058287... by about 6.7e-25. + + +## Change in this package + +The target exponent is tau = 2.372864 (just above Le Gall's published 2.3728639; PR1699's lemma only needs omega_C < tau), so c = (3 - tau)/2 = 0.313568. With the union row relaxed by the radix-distributed schedule (outer/UNION-SCHEDULE.md, new in this package) the boundary row binds: boundary saving c + xi - eps = kappa + slack, and kappa is set by the balance epsilon = (1 + q + q(c - s - r - zeta))/(1 + q)^2, xi = epsilon (1 + q) - c + s. The checks `matrix_exponent_above_published_bound` (tau - 2.3728639 = 1e-7 > 0) and `matrix_exponent_below_five_halves` are in the ledger. + +## Superseded in this package + +The square exponent tau = 2.372864 above is replaced by the rectangular-batching effective exponent tau_eff = 2.1567081 (k = 5, outer/RECT-BOUNDARY.md). Le Gall's bound is no longer used in the ledger. + +## Superseded again in pkg7 + +The boundary exponent is now tau_eff = 2 + 1e-30010 from structured solves (outer/STRUCTURED-BOUNDARY.md); the fallback is the k = 5 batching of outer/RECT-BOUNDARY.md. diff --git a/research/capped-fusion-t74-k554/outer/FINE-PADDING-COMPOSITION.md b/research/capped-fusion-t74-k554/outer/FINE-PADDING-COMPOSITION.md new file mode 100644 index 0000000000..374dc1c075 --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/FINE-PADDING-COMPOSITION.md @@ -0,0 +1,51 @@ +# Fine source-prime padding on this package's stack, and epsilon -> 1 + +**Credit first.** The mechanism of this note is **PR1786 (chafreaky, Chafik Boukhalfa)**: source primes at relative gap Theta(p^-2) from their dyadic targets, which exist by **Tim Trudgian's** effective prime number theorem (arXiv:1401.2689v2, theorem 2), the resulting setup precision `Cp + 64 p^2 ceil(log2 p)`, the theta-dependent conditioning, the polynomial halo p^48 / core p^128 and the dyadic normalizers. Its full text is vendored verbatim in `vendor/pr1786/FINE-PRIME-PADDING.md` and is the proof of every statement about primes, precision, locality and normalization used here. It builds on Vlado Vojdanovski's PR1673 (capped phase-cell fusion), the fractional-shift interiors and per-visit tag accounting of PR1758 (`outer/GAUGEFREE-INTERIORS.md`), the radix-distributed union schedule (`outer/UNION-SCHEDULE.md`), Jeremy Kothe's PR1731 ledger lineage and the PR1699/PR1672 supplier. **New in this package** (only): (a) the observation that epsilon is a free parameter and the resulting exact point epsilon = 1 - 2e-30010; (b) the composition analysis below; (c) the exact ledger and independent derivation at that point. + +## 1. What is used from where + +| ingredient | source | role at epsilon -> 1 | +|---|---|---| +| fine primes, theta in (1/(4p^2), 1/(2p^2-1)] | PR1786 sec. 1-2 | chirp range a theta B^2 = O(a B^2/p^2): guard beta + 2 xi - 2 < 1 | +| setup precision, locality, normalizers | PR1786 sec. 3-5 | halo 48 / core 128; online precision stays O(p) | +| fractional-shift interiors, accretive circuit lemma | PR1758 (outer/GAUGEFREE-INTERIORS.md) | removes the linear gauge; **still required**: the old linear guard beta + xi <= 1 is violated at beta ~ 1, xi = 0.908 (ledger control `old_linear_guard`) | +| radix-distributed union schedule, per-visit tag work | outer/UNION-SCHEDULE.md | **still required**: the old g-factor union row 1 - eps - beta - 1/2 + xi is negative (control `old_g_factor_union_row`) and 2 beta < 1 fails (control `old_union_tag_2beta`) | +| boundary | explicit Strassen, tau = 45/16 (7^16 < 2^45), c = 3/32 | **not** the structured boundary of this package series: at xi = 0.908 < eps the boundary row is not binding, so the unproved stability claim of STRUCTURED-BOUNDARY.md is dispensable. Its file is retained as an alternative; it does not enter kappa. | + +## 2. epsilon is a free parameter (answer to "what sets epsilon = 0.9999999 in PR1786") + +Write delta = 1 - epsilon, beta = 1 - 3 delta, xi = epsilon(1+q) - c + s (boundary saving = main + s), c = 3/32. Every constraint of the ledger that involves epsilon or beta: + +* main = epsilon q is the binding saving, kappa = floor(epsilon q) - 1e-30022; +* Gaussian row: 1 - epsilon + q beta >= epsilon q iff **beta >= 1 - delta(1 + 1/q)** (a window of width ~ 594 delta below 1); +* membership: 1 - beta - 2(1-epsilon) > 0 iff **beta < 1 - 2 delta**; header / tag per visit: 1 - beta > 0; group below dimension: epsilon - beta > 0; +* **1 - epsilon - r0 > 0** (`global_gamma_power_slack`, r0 = 1e-30010: the spare power for u <= p^r0) and `source_axis_superpolynomial` 1 - epsilon > 0; +* boundary / union rows: xi = 0.9079 < epsilon (cap_below_cell), xi - 1/2 > 0, guard 1 - (2 xi - 2) - r0 - beta = 0.184 > 0: independent of delta; +* core-face corrections epsilon + beta + 48 - 128 + 2 < 0: independent of delta. + +The window for beta is non-empty for every delta > 0, and beta = 1 - 3 delta lies in it (the Gaussian row exceeds main by delta(1 - 2q)). The only lower bound on delta is **delta > r0 = 1e-30010**, a free strict slack of the proof. So PR1786's 1e-7 is an explicit interior point, not a limit; its kappa is q - 1.68e-10 only because delta = 1e-7. In this package delta = 2e-30010 (the smallest round value above r0): + + epsilon = 1 - 2e-30010, beta = 1 - 6e-30010, xi = 0.90792965478815..., + kappa = 0.0016797549561255445213356709939207025769983114385025802954603275201628645... + +which is q - 3.4e-30013 (q = b - 1e-30010 = 0.00167975495612554452133567099392070257699831143850258029546032752016286...). Exact sweep (`outer/independent_check.py`): delta in {1e-7, 1e-12, 1e-30, 1e-60, 2e-30010, 1.1e-30010 ... } all satisfy every row; delta = r0 is rejected by `global_gamma_power_slack`; beta below the Gaussian window or at the membership edge is rejected (ledger controls `beta_below_gaussian_window`, `beta_above_membership_window`, `epsilon_equals_one`, `epsilon_not_above_r0_slack`). + +**Maximum epsilon.** Within this construction epsilon < 1 strictly (epsilon = 1 would mean d = p axes: source axes of O(1) size, `epsilon_equals_one` control; also kappa = epsilon q <= q), and 1 - epsilon > r0. The hard cap on any outer of this form is kappa < q (the supplier's complex saving); the remaining distance is q delta = 3.4e-30013. + +## 3. Does composing with the rest of the stack relax anything further? (answer: no, nothing is left to relax) + +* The binding rows at this point are main = epsilon q; boundary = main + s and union = main + s + 13/32, all other rows have positive margins >= 1e-30010. Nothing but delta moves kappa. +* Structured boundary / k5 boundary: boundary row non-binding, no effect on kappa (only on xi, which is free in (1/2, epsilon)). Using c = 1/2 would give xi = 0.5 and the same kappa; it would add the unproved structured-stability claim for nothing. +* The router row a_eff = (q+b)/2 > epsilon q by 5e-65 + q delta; using the true bit endpoint there would not change kappa (main binds). +* Therefore kappa = epsilon q - 1e-30022 with epsilon the only free quantity, and it is already within q delta = 3.4e-30013 of the ceiling q. + +## 4. Obligations (same as PR1786 sec. 8, with sharper asymptotics) + +1. Every "eventually" in vendor/pr1786/FINE-PRIME-PADDING.md is now needed with exponent margin delta = 2e-30010 instead of 1e-7: e.g. log x = Theta(p^(1-epsilon)) = p^(2e-30010) must dominate log p in the prime-count estimate (true for p beyond an astronomically large cutoff), source axes 2^(p^delta) must exceed every fixed polynomial of p, and the polylog factors of every row are absorbed by p^delta-type slack. This is the same logical status as the 1e-30010 slacks of every row of this package (and of PR1786's 1e-7 version with a smaller cutoff); no practical cutoff is claimed. +2. Trudgian's theorem is a cited mathematical input (vendor/pr1786); the prime and precision lemmas are PR1786's and need their review (PR1786 is a draft). +3. The composition with PR1758's accretive circuit lemma uses theta^-1 = O(p^2) in the symbol bound (PR1786 sec. 3); the Gauge-free note's guard is superseded by `beta + 2 xi - 2 < 1` at fine theta. +4. Fresh native admission of the unchanged supplier: `verify_release.py`. + +## 5. Executable support + +`outer/check_ledger.py` (exact, 62 strict checks (including improvement over the exact kappas of PR1828, PR1839, PR1875, PR1876 and PR1897), 17 rejecting controls, improvement over PR1786's exact kappa and PR1758), `outer/independent_check.py` (independent balance derivation, the epsilon-free sweep), `outer/check_fine_padding.py` (PR1786's finite prime witnesses, underflow control, power relations), `outer/check_gaugefree.py` (PR1758 identities). diff --git a/research/capped-fusion-t74-k554/outer/GAUGEFREE-INTERIORS.md b/research/capped-fusion-t74-k554/outer/GAUGEFREE-INTERIORS.md new file mode 100644 index 0000000000..0f9e75ee7b --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/GAUGEFREE-INTERIORS.md @@ -0,0 +1,119 @@ +> **Package note (fine primes).** In this package the source primes are chosen at relative gap Theta(p^-2) (PR1786, `vendor/pr1786`); theta >= 1/(4p^2) replaces theta >= 1/(4d) in every bound below, the chirp range becomes O(a B^2/p^2) and the guard of Section 5 becomes beta + 2 xi - 2 < 1 (see `outer/FINE-PADDING-COMPOSITION.md`). The accretive lemma and the shift identities hold for every theta > 0; the symbol bound mu >= (1 - e^{-gamma theta/2}) e^{-pi^2/(3 gamma)} is polynomial for theta^-1 = O(p^2). + +# Gauge-free interiors: fractional-shift Toeplitz kernels, accretive shallow circuits, and the chirp-only guard + +**Status.** New in this package series (not in PR1673 by Vlado Vojdanovski, whose capped phase-cell fusion, SHALLOW-TOEPLITZ.md, CAPPED-GAUGE-AUDIT.md and LOG-A-PHASE-SCHUR-AUDIT.md this note modifies and relies on). Conditional on every hypothesis of PR1673 except the three statements replaced below. Independent review required before release. Executable support: `outer/check_gaugefree.py` (exact identities, 50-digit symbol checks, section/Schur bounds, circuit replay) and `outer/check_ledger.py` / `outer/independent_check.py` (the ledger). + +## 0. Result and what changes + +kappa (this package = structured boundary + this note) = **0.0016797455088022990515465336851999736723...** (exact, 58 strict checks positive, all rejecting controls fire; previous package (structured boundary, linear guard) 0.0016783441717365..., gain +1.4013e-6; rectangular k=5 package 0.0016781238306335..., gain +1.6217e-6). Parameters: eps = 0.9999943758, xi = 0.5016741213, beta = 0.9966461332. + +Three statements of #1673 are replaced (everything else is unchanged): + +| # | #1673 / earlier packages | this note | +|---|---|---| +| R1 | local gauge of a capped interior: diagonals of range O(aB) (narrow), O(b0 B) (broad) | the linear part of the gauge is exactly a fractional centre shift of the Toeplitz kernel; only the quadratic chirp remains, range O(a theta B^2) = O(a B^2/d). (Section 2) | +| R2 | SHALLOW-TOEPLITZ sec. 9 needs mu I <= H <= M I (SPD) or ||H-I||<1/4 | accretive: (H+H^*)/2 >= mu I and ||H|| <= Lambda. The shifted Gaussian symbol is accretive with explicit mu. (Sections 3, 4) | +| R3 | ledger guard beta + xi <= 1-r-zeta; union tag check 1-2 beta > 0 | guard beta + 2 xi - eps <= 1-r-zeta; tag check 1-beta > 0 (Sections 5, 6) | + +## 1. Setting + +Phase cell: beta_i = theta i - c in [-1/2,1/2), rho = 1+theta, lambda = 1/rho, 1/(4d) <= theta <= 1/(2d-1). An interior is a contiguous block of selected target coordinates (unit q-gaps), length n <= B (dyadic), anchor m at its centre; x = i-m, y = k-m, t = i-m for the narrow operator. B = p^xi, d = p^eps, xi < eps. + +* Broad forward block (FORWARD-SMALL-A-AUDIT, CAPPED-GAUGE-AUDIT sec. 3): K_{ki} = alpha^-1 exp(-b0 (x - lambda y + delta)^2), delta = (1-lambda) m - c, |delta| <= 1/2, b0 = pi/alpha^2. +* Narrow inverse block (LOG-A-PHASE-SCHUR-AUDIT sec. 1): N_{i,i+h} = exp(-a[(rho h + beta_i)^2 - beta_{i+h}^2]), a = pi alpha^2, beta_i = beta0 + theta t_i. + +## 2. Exact gauge <-> shift identities + +**Lemma 2.1 (broad).** For every real s, +(x - lambda y + delta)^2 - lambda (x - y - s)^2 = (1-lambda) x^2 - lambda(1-lambda) y^2 + delta^2 - lambda s^2 + 2(delta + lambda s) x - 2 lambda (delta + s) y. +Hence K = Drow G_s Dcol exactly, with the Toeplitz kernel G_s(y,x) = exp(-b0 lambda (x-y-s)^2) and diagonals separable in (y,x) (proved by expansion; sympy and 600 exact rational mixed-difference checks in `check_gaugefree.py` stage A/B). +Choose **s = -delta (1-theta)**. Then the x-linear coefficient is 2 b0 (delta + lambda s) = 2 b0 delta (1 - lambda(1-theta)) = 2 b0 delta * 2 theta/(1+theta), |.| <= 2 b0 theta, and the y-linear coefficient is -2 b0 lambda (delta + s) = -2 b0 lambda theta delta, |.| <= b0 theta. Over a block with |x|,|y| <= B/2 the linear leftover has logarithmic range <= 2 b0 theta B (total), and the quadratic parts b0 (1-lambda) x^2, b0 lambda (1-lambda) y^2 have range <= b0 theta B^2/4 each. Also |s| <= (1-theta)/2, i.e. 1 - 2|s| >= theta. +(With s = -delta/lambda the linear terms vanish in x and are 2 b0 delta (1-lambda) in y, but |s| can exceed 1/2 by theta/2, which changes the winding number of the symbol; so the shift is shrunk by (1-theta). The price is the O(b0 theta B) linear leftover, dominated by the chirp.) + +**Lemma 2.2 (narrow).** With beta_{i+h} = beta_i + theta h, rho = 1+theta: +(rho h + beta_i)^2 - beta_{i+h}^2 = (1+2theta) h^2 + 2 beta_i h. Writing beta_i = beta0 + theta t_i, j = i+h, t_j = t_i + h, and 2 t_i h = t_j^2 - t_i^2 - h^2: +log N_{ij} = -a rho h^2 - 2 a beta0 h + a theta (t_i^2 - t_j^2) (exact; sympy check, stage A). +So N = D' k D'^{-1}-type: N_{ij} = e^{a theta t_i^2} k(j-i) e^{-a theta t_j^2} with the Toeplitz kernel k(h) = exp(-a rho h^2 - 2 a beta0 h) = exp(a beta0^2/rho) exp(-gamma (h-s)^2), **gamma = a rho, s = -beta0/rho**. Here |s| <= 1/(2 rho) so **1 - 2|s| >= 1 - 1/rho = theta/rho >= theta/2**: no shrinking is needed, and the gauge is the chirp D' = exp(a theta t^2) of logarithmic range a theta B^2/4 (centred). The old weights are the same objects: log w_i = const + a theta (i - c/theta)^2 (the old linear slope 2 a beta0 is exactly the term moved into k). + +**Normalisation.** G'_s(u) := e^{gamma s^2} e^{-gamma (u-s)^2} = exp(-gamma u^2 + 2 gamma s u) has G'_s(0) = 1 (unit diagonal, as the audited N). The scalars e^{gamma s^2} are exact constants (stored in the anchor ratios). + +**Rounding.** The circuit applies the ideal truncated kernel (band W) rounded to Cp bits; the audited global rounded matrix differs from it by <= poly(p) 2^{-Cp} times the diagonal range e^{O(g (a theta B^2 + polylog))}, which is covered by the same precision guard (Section 5). **Restated comparison (audited rounded matrix vs ideal shifted kernel).** The audits (BILATERAL-LDU, FORWARD-SMALL-A, CAPPED-GAUGE-AUDIT sec. 2-3) bound the unshifted globally rounded matrix H^. Let K be the ideal block (exact Gaussian entries) and K~ = Drow' G^_s Dcol' the matrix the circuit applies (truncated at W, G^_s rounded to Cp bits, anchored diagonals). Entrywise |H^ - K| <= 4 * 2^{-P} e^{a/(4 theta)} relative to the weights (audit sec. 2), and |K~ - K| <= 2^{-Cp} W-banded; the diagonal conversions contribute the factor e^{O(a theta B^2)} per axis (chirp range of Section 5; the linear leftover is smaller). Hence ||K~ - H^|| <= poly(p) 2^{-Cp} e^{O(g a theta B^2 + g polylog p)} (g axes tensored), and the exponent is o(p) bits by the precision guard beta + 2 xi - eps < 1 of Section 5. For C > 1 the perturbation is <= 2^{-(C-o(1))p} <= 2^{-p}/poly, and since ||K^-1||, ||H^-1|| <= p^{O(1)} (Section 3; audits) every audited uniform bound (row gap, inverse norms, Neumann tail J = Cp^2, halo radius A) holds for K~ with polynomially perturbed constants. No structural change. + +## 3. The shifted Gaussian symbol is accretive + +Let q = e^{-gamma}, 0 <= s' = |s| < 1/2, phi(w) = sum_u e^{-gamma(u-s)^2} e^{-iuw}. + +**Lemma 3.1 (product form).** Jacobi triple product with Z = q^{-2s} e^{-iw}: +phi(w) = e^{-gamma s^2} prod_{m>=1}(1-q^{2m}) (1 + a_m e^{-iw})(1 + b_m e^{iw}), a_m = q^{2m-1-2s}, b_m = q^{2m-1+2s}. +For s < 0 the symbol is the complex conjugate (swap a, b). All a_m, b_m in (0,1) iff |s|<1/2; a_1 = q^{1-2|s|} is the unique factor near 1. At |s| = 1/2: a_1 = 1 and phi(pi) = 0. (Verified at 50 digits, relative error 2.5e-42 on 1025 points.) + +**Lemma 3.2 (phase).** For w in [0,pi] and s >= 0, f(x) := arg(1 + x e^{iw}) = atan(x sin w/(1 + x cos w)) is increasing in x in [0,1) (f'(x) = sin w/|1+x e^{iw}|^2 > 0). arg phi = sum_m [f(b_m) - f(a_m)]. Since 2m+1-2s >= 2m-1+2s iff s <= 1/2, a_{m+1} <= b_m, so f(b_m) >= f(a_{m+1}) and +0 <= -arg phi = sum_m [f(a_m)-f(b_m)] <= sum_m [f(a_m) - f(a_{m+1})] = f(a_1) < w/2 <= pi/2. +For w in [-pi,0] use phi(-w) = conj(phi(w)). + +**Lemma 3.3 (real part).** cos(f(a_1)) = (1 + a_1 cos w)/|1 + a_1 e^{iw}|, so +Re phi(w) >= |phi(w)| cos f(a_1) >= e^{-gamma s^2} prod_{m>=1}(1-q^{2m}) * (1 - a_1) prod_{m>=2}(1-a_m) prod_{m>=1}(1 - b_m) =: m_s(gamma). +(The bound is attained at w = pi up to the other factors: stage C finds min Re phi / m_s = 1.0.) Normalising by e^{gamma s^2}: + +mu(gamma, s) := m_s e^{gamma s^2} >= (1 - e^{-gamma(1-2|s|)}) exp(-pi^2/(3 gamma)). + +Proof of the closed form: -ln prod_k (1 - e^{-k gamma x}) = sum_h (1/h)/(e^{h x gamma}-1) <= pi^2/(6 x gamma); the three infinite products are bounded by prod_{k>=1}(1-q^{2k}) >= e^{-pi^2/(12 gamma)} (twice, the second for m >= 2 since a_m <= q^{2m-2}) and prod_{k>=1}(1-q^{2k-1}) >= prod(1-q^k) >= e^{-pi^2/(6 gamma)}; total e^{-pi^2/(3 gamma)}. +Norm: Lambda := ||G'_s||_2 <= ||symbol||_{l1} = sum_u e^{-gamma(u^2 - 2su)} <= 3 + sqrt(2 pi/gamma) (u^2 - 2su >= u^2 - |u| >= 0 and >= u^2/2 for |u| >= 2). + +Parameter values. Broad: gamma = b0 lambda = pi/(alpha^2 rho) = Theta(1/log p), 1-2|s| >= theta >= 1/(4d): mu >= (gamma theta/2) e^{-pi alpha^2 rho /3} = p^{-O(1)}. Narrow: gamma = a rho >= 4 log(16 p), 1 - 2|s| >= theta/2: mu >= (1 - e^{-a theta/2}) e^{-pi^2/(3 gamma)} >= a theta/3 = p^{-O(1)} (this is the audited row gap). + +## 4. The accretive Toeplitz circuit (replaces SHALLOW-TOEPLITZ sec. 9) + +**Theorem 4.1.** Let N be a power of two and H an N x N complex Toeplitz matrix with ||H||_2 <= Lambda and (H + H^*)/2 >= mu I, mu > 0. There is an N-wire circuit of disjoint invertible 1x1/2x2 gates applying H, with O(log^4 N) rounds, O(N log^4 N) gates, no ancilla, and +log(max prefix / suffix / inverse-prefix operator norm) = O(log N * log(2 + Lambda/mu) + log N). +Rounding every coefficient to p + O(log N * log(2+Lambda/mu)) bits gives operator error 2^-p. If Lambda/mu = p^{O(1)} the guard is O(log N log p) bits per axis. + +*Proof.* Identical to SHALLOW-TOEPLITZ sec. 4, 5, 6, 9 except for the single place where the hypothesis is used, the uniform control of every recursive matrix, which we prove now. + +(a) *Descendants are Schur complements of sections.* Let T_b be the leading b x b section of H. The recursion of sec. 4 acts on index intervals J = [a,b); the matrix at J is S(a,b) = T_b / T_a (Schur complement of the leading a x a block of T_b, as an (b-a) x (b-a) matrix). Indeed the root is S(0,N); the children of S(a,b) with midpoint m are S(a,m) = T_m/T_a (leading block of S(a,b)) and S(a,b)/S(a,m) = T_b/T_m by the quotient property (T_b/T_a)/(T_m/T_a) = T_b/T_m. All of these are contiguous leading-type sections of the same Toeplitz H. + +(b) *Accretive matrices.* If Re >= mu ||x||^2 then ||Tx|| >= mu||x||, so ||T^-1|| <= mu^-1; every principal submatrix has the same property. Hence ||T_b^-1|| <= 1/mu for all b and ||S(a,b)^-1|| = ||(T_b^-1)[a,b)|| <= 1/mu. Also ||S(a,b)|| <= ||T_b[a,b)|| + ||T[a,b); [0,a)|| ||T_a^-1|| ||T[0,a); [a,b)|| <= Lambda + Lambda^2/mu =: Lambda'. The shear matrices K = A^-1 B, L = C A^-1 have norm <= Lambda/mu. (No Hermitian structure was used.) + +(c) *Displacement rank, generators, compiler.* Sec. 4's rank identities (Delta = ZM - MZ, rank Delta(H) <= 2, ranks of A,S <= 2 + depth) and the sec. 5 bounded-generator compiler use only that each node's A, S, K, L are bounded matrices with the displayed ranks; the Stein generators g_j (orthonormal), h_j (norm <= ||E_T|| <= 2 Lambda'') have polynomial norm, and gamma_P = 64 N Lambda'' suffices. The recursion D_full(N) <= D_full(N/2) + O(log^3 N) is unchanged. + +(d) *Prefix norms.* With each completed node factor of norm and inverse norm <= poly(N) (Lambda'/mu)^{O(1)}, B(N) <= max(C B(N/2), N^C (Lambda'/mu)^C), so log B(N) = O(log N log(2+Lambda'/mu)) as in sec. 9 with kappa replaced by Lambda'/mu. QED. + +**Corollary 4.2 (perturbation, truncation, rounding).** If the symbol is perturbed in l1 by eps' <= mu/2 (band truncation at W, rounding to Cp bits), the Hermitian part stays >= mu/2 and Theorem 4.1 applies to the perturbed matrix. For the broad kernel the truncation tail is <= 2^{-p}, and mu >= p^{-O(1)}. + +**Corollary 4.3 (boundary pivots for the structured boundary).** The boundary LU pivot P_j of STRUCTURED-BOUNDARY (Schur complement of T[J] onto segment j after eliminating all indices left of it and the interval I_j to its right, J = [0, end of I_j)) satisfies ||P_j^-1|| <= 1/mu, ||P_j|| <= Lambda + Lambda^2/mu, because P_j^-1 is the principal block of (T[J])^-1 and T[J∖seg_j] is a principal submatrix of T[J], both accretive. The couplings are band entries of G_s. The statement holds per constant-offset stretch: each stretch of a cell (maximal run with constant phase offset c, i.e. one Toeplitz matrix T, one shift s) is handled with its own anchor at the segment centre, so that the chirp D' = exp(a theta t^2) (broad: b0 theta t^2) has range a theta B'^2/4 for boundary segments of physical length B' <= B + 2W (and the linear leftover is <= 2 b0 theta B'); a pivot chain crossing a cell cut restarts, since cell cuts are boundary coordinates. Rank-2 Stein/Sylvester displacement for P_j, P_j^-1 holds for every Toeplitz T (Kailath), shifted or not; screened in `check_gaugefree.py` D/E and in the earlier IdeaOuter screen (displacement rank 2 along the whole chain at s = 0.5). Thus the structured-boundary pivot bounds (which used BILATERAL-LDU for the unshifted gauge) transfer without change of statement. + +## 5. Assembly and the guard + +For every capped interior (dyadic length n <= B, with its own anchor and shift s): + broad: Drow' (circuit of G'_s, Theorem 4.1 with mu = mu(b0 lambda, s)) Dcol'; + narrow: D' (circuit of G'_s, gamma = a rho) D'^-1 (inverse circuit = reversed gate sequence). +The diagonal factors Dcol', Drow', D' are anchored ratios with logarithmic range + narrow: a theta B^2/4; broad: <= b0 theta B^2/4 (x^2 and y^2 terms) + 4 b0 theta B (linear leftover) . +Per axis the range is O(a B^2/d); direct sums over blocks run in parallel as before. For g simultaneous axes the precision requirement of CAPPED-GAUGE-AUDIT sec. 4 becomes + P >= p + O(a d) + O(g a theta B^2) + O(g log N log p) + ... , i.e. g B^2/d * polylog <= p^{1-r-zeta}: + **beta + 2 xi - eps <= 1 - r - zeta**. +The offline accuracy term a d = o(p) is unchanged. The leftover linear term (exponent beta + xi - eps) is dominated by the chirp (exponent beta + 2 xi - eps) since xi > 0. The circuit norms add g * O(log N log p) bits (Theorem 4.1), polylog per axis, as before. +(Why this does not collide with locality: the audited locality/halo constructions use the global rounded matrix only through uniform norms and the row gap, which are properties of the same Toeplitz-similar matrices; the shift is an exact similarity-to-Toeplitz representation of the same blocks, Lemmas 2.1-2.2.) + +## 6. Ledger changes (exact) + +1. `group_gauge_power_slack`: 1 - xi - r - beta -> **1 - (2 xi - eps) - r - beta**; `actual_logarithmic_group_guard`: 1 - xi - beta -> **1 - (2 xi - eps) - beta**. Add `shift_leftover_linear_dominated_by_chirp`: xi > 0, `shift_gap_theta_polynomial`: eps > 0. +2. Parameters: eps = (1 + q beta)/(1 + q) (main = Gaussian), xi = eps(1+q) - c + slack (boundary = main + slack), beta = 1 - 2 xi + eps - r - zeta. Closed form beta = (-1 + 2c - 2 slack + 1/(1+q) - r - zeta)/(1 + 2q - q/(1+q)), c = (3 - tau_eff)/2. +3. `union_tag_work_fits_record` (1 - 2 beta) -> **`union_tag_work_per_visit_fits_record`: 1 - beta** (Section 7). `union_header_fits_record` (1-beta) and `membership_arithmetic_fits_record` (1 - beta - 2(1-eps)) stay: pkg8 values 3.354e-3 and 3.343e-3. +4. Controls added: `old_linear_gauge_guard` (1 - xi - beta < 0), `old_union_tag_2beta` (1 - 2beta < 0) must fire as rejecting controls (they do). +5. Numbers (pkg8-era package, superseded by outer/FINE-PADDING-COMPOSITION.md for the current epsilon = 1 - 2e-100 point): eps = 0.99999437577296, xi = 0.50167412128176, beta = 0.99664613320944; margins above kappa: main = Gaussian = bit router = boundary = union ~ 1e-64; global router 9.4e-9; cap xi - 1/2 = 1.674e-3; group_below_dimension 3.35e-3; epsilon_below_one 5.6e-6; improvement over pkg7 1.4013e-6. +`outer/check_ledger.py` carries exactly these edits relative to the previous (structured-boundary, linear-guard) package; `outer/independent_check.py` re-derives (E,X,B) from the three linear equations by exact elimination. + +## 7. Union tag work: g polylog <= p suffices + +The previous version of UNION-SCHEDULE.md (steps 1 tag and section 3 header paragraph) argued "tag work per record <= O(g^2) in total, o(p) because 2 beta < 1". The cost accounting of Section 2.3-2.4 of that note is per visit: round r touches only records of S_r; each visit costs O(p log g + p log a + 1) head travel (radix passes, transposition) plus the tag extraction O(g) bit operations (scan of the g-bit flag header for the r-th set bit) plus O(g log L) header travel (the header is carried with the record). Sum over rounds = sum_r |S_r| = sum_x |F(x)| <= g mu V (Section 2.4). Total = O(g mu V (p polylog p + g log L)) = O(g mu V p polylog p) as soon as g log L = o(p polylog p), i.e. beta < 1 (and this is already the header check `union_header_fits_record`). The O(g^2) per-record total is a pessimistic restatement: each of the |F| <= g visits of a record is paid for by its own Theta(p) move. UNION-SCHEDULE.md now carries this wording. A reviewer should confirm no other place charges g^2 per record. + +## 8. Obligations / risks (review checklist) + +1. Theorem 4.1 relies on SHALLOW-TOEPLITZ sec. 4-6 (not re-derived); only the descendant bound (Section 4(a)-(b)) is new. The finite replay (`check_gaugefree.py` stage E: the vendored compiler on shifted Gaussian tiles n = 8, 16, 32, gamma in {0.5, 2, 20}, s up to 0.499: max error 1.8e-12, displacement rank <= 3, peak prefix norm <= 91 for n = 8, 16, max generator entry <= 11.4) supports it. The peak prefix norm is tracked only for n <= 16; for n = 32 it is not computed (reported as null). +2. The tile is a contiguous section of the *banded, truncated, rounded* shifted kernel; Corollary 4.2 covers it. The audited global rounded matrix remains the reference for the locality/Neumann/halo arguments; its comparison with the ideal kernel is stated in Section 2 (error poly(p) 2^{-Cp} e^{O(g a theta B^2)} = 2^{-(C-o(1))p}, C > 1). +3. Narrow N formula taken from LOG-A-PHASE-SCHUR-AUDIT (`n_{i,h}`), verified symbolically against the quoted weights of CAPPED-GAUGE-AUDIT sec. 2 (stage A). Broad block formula from CAPPED-GAUGE-AUDIT sec. 3. +4. (pkg8-era, superseded by the fine-padding point beta = 1 - 6e-100) The parameter point sat at beta = 0.9966, 1 - beta = 3.35e-3: header (g log L bits) and membership (g (log s)^2) rows hold only "eventually", with exponent margins 3.3e-3; the claim is an asymptotic statement with the same status as the other margins (1e-64 slacks). +5. Not changed: supplier, bit/complex rows, union schedule beyond Section 7, cap xi > 1/2 (still binding at 1.67e-3). +6. STRUCTURED-BOUNDARY.md now states the chirp range O(aB^2/d) for consecutive boundary segments (physical length <= B + 2W) and cites Corollary 4.3 for the pivot bounds. diff --git a/research/capped-fusion-t74-k554/outer/INDEPENDENT.json b/research/capped-fusion-t74-k554/outer/INDEPENDENT.json new file mode 100644 index 0000000000..6be0fc7e0c --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/INDEPENDENT.json @@ -0,0 +1,43 @@ +{ + "status": "PASS_INDEPENDENT_BALANCE_DERIVATION", + "source_sha256": "822f7093effb40cb0ae4b9f228d8f6d38e1aff2808e49557c29890c37df86115", + "b": "16797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999999/10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "rows": { + "struct_boundary_radix_union": { + "epsilon": "4999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cap": "22698243873903138613033391774848017564424957785962564507386508188004071613706508140970657641403321115806861282922714655524301761203004135303569282515917323917893374063184765573192871135452488843908427811888970349419603513825966863947048914046995017231354280494187187092366892326424569723068932981389140167139160293130961241274983495676892882092856753942644057730650965294298891384437535366303413657772029643672939520062841013649196320270042024171403349464404073594808067062053824713323095299973471534993086956662805983343525641267336840286171750063175961959633584686878212349890753907046789671444810671589291636653225750741042515514684365251984932663679634055582115772363662798561551384057584150281718603896296844605684389385755961356666420966173619311376496349593750025900378358782291669258772995155120766721811354854259692467287036978003885729446336092288147987948973031001147669943174613002863369083838808674846570553601361705307321191074337143616258011807610324811072043677811250624098388719938381079922371976883189519863892675298713584676842295980498498965850546058038046153767485062507080578166213021645468524012759218479034626664930754047312615669586697330642569560474834214068398635125150772352002217744352007429063201571861812768341686649351178505032494998443604729402241023532819612290967835627932667873603874681957655280995017990281213098267392567258819022341298528942555562576264326565273182778163934753910607731698039228582279066243018709227438384408065161736392817957162637737361215030143997201225737010680399955712428936337954110625742012788555905813532227155730974024231541933371245948497074365089683507748449458867143773220992204715290781738015133493236992034223579543536295667252169780392688842532290836008821477357367277142789444403297699129036645016314147386639777518295434157572738961033208248833729400839475998367093098219748674838744837080803155213071419070955051631240004948206773907621077950423460865597078248834891629784638180207685462323805391361311840783189340267769290075707831801570410587306555807723603504774171554557254115174763669262039975358885308598179283591095821662533658581686755264094121683089011349432090244569715117580705154773034777911513267889835287111831173454928933024025364923281288526094782198938718633783453945946417150951468493927334226332979919497909632354498439765181819827045979914747160871046732385508214041467934111219373282919378013003147460662052187355783859658418047603147445740538482502889631115233807479393040341346188558796679932150668245669289466975901289724058216698349723171042826987576337353322274742053235090461055105055049706979896731289899280128156981079005197844344582403087702712956500394033301196826177853018244053827898148559539582850879438166733125591061602273801792239896239396844231348556564462052554398536464069802132037515230017664709495985368395930680042465375218245907220557295017372926256820400837594929692282940504857043224293316448635667292447182274477918963626526127702051116978698018804708146361963250200535970990144703005585779757624279390300523413080315087856468888695878025490338598682131378618234825252270089192366090299279707841354478880201292802719847939709458254554651618910670761516497325101161689176991655943889080088089845531138968004267196209948686727645854088791365184316911270832175725966613667971025297261648725914198842757817922641738922058733587984612527407580104701977651101793702195491070156044700342853883602519192241024753992637087827735219067834962602516557208629704858145199830330087998432177495519456859984068291848745759770611029919606237736589533900173487843994125987696482665253483798305022593065744703256179546373555814934934899941955390871985262077335670260943411781904613367494896680647987181255003987964897830115609016440352533545681132577756957343299151057680151711254691835808891547157946143082033394494329220551782156575027853642056843981462373669195582914342544792643175587887825934557187219554770300034180482359932853906266501206298107536016909446229986147843277558074138000194459021512067106987375562829683907634343003840950745167773629115523117173285992026394084890433794828116170907749773611948517864535454910452546798013841673866724280510633825457603329341375312203534142124641544935042118777668840838207376829169836043493970588456280597456593634777690973118901808001437107084088443559941209292816504977931375501269199590281259928568489175819770369583969792451178506382899229411558268610827803582340011189444811305801409530208596515338338245709262371874957133853978813298028138761759580199452154312033167296301120345795520374635708611524743123828558733438914544907133747917350576958971687865216233352043960087535170063168854588932759375224229005308274040571916998605792554888681816706834531723277955153045050689229252405481644345912933770276569298833876688270906769878243256978134747766159451937722986628049647488067751696539329240527136485094832328352210432672902659931526840343751920145633254222768672682998934590927193208026153408662329160753939584735720835459432075754320600228481114361380646201288381780561338061032933423907022320620995020533134256943713498491221184809531977537269501165856314969328042064107921734151816914042969781564328040644087803581991869681912706621605453556443644490921663132374621708160177939269157002219307117562296192350528971594833004553182142312884062882442594666489766097606678494277440346541989183684083004665049938735123328298825509655210744086638583026363846794196326578576538179363395235986984368237224600452516680379461109096695751597044664991829419609293676345982584451046353135826964488358199740621564843752585167485701402255936846135664129620349452967509846350329397972648418523626041936832772585991485826882095329221490974190210942698250566699953992063581409606218626916182490336951401518559238008250415827023070695624173335460487688348760027480583457048325153361146204744445659152481353781802759710462899025679733568909679666629882558904382712762724026678556824908761776111660403490550528993983498278177540624081303220536297990932397199971011485383273337013256812517243589544318955055536197184434926341612844791463400084402343656438416035237185098682008757090874080612592753604665162286199454417572387017762933891619562760137342495954505005707704576489235896595736558589693617726393611314047721987387705636078849339475702129852790254687739259795642400343863202992511875540780468789401136167299230521079688744201808856979824573784736491820627725541480528528441356738366527660991172466710895821167346312648148727256497172832346215023505525729781460751378714284885481673985511288863976568430344322600869313112837884595456665269011717413257965306991952743422688823705804976180992635234256023382262138397417485230125652033011657791064472923250628797253440024422522507694103078883581840107817621036623262701794087013055597754137152237369058880234218231210389840569188244935193945760933886847493016718309941611227079686376783217011071618213855833572484501970689394019318358102934061417662905566496143835986201935572559304347599219299629972572578475949325190671356096334869030833008139527119246926720439426898679083416784515087876970160507809607353717779394588858856169343711187203886918934828050324484777868707510949981836065668993769533964633620701841594146527289319075628411687144136737322097466335431705588037953608393862155655493848860496038828238310735065742553243594874469592787278637279506839093223401386794789456633006715624926613899468484555581735825101715025478726863885864479719514391990339990143631869719847414359073186544176251161387388582536204219046487638432946579617203244689676266818789552234733512814986784221811336058166044296138659426457067547376336690225789635717666210620940775365510864237795235514581812621239044278546955055037665449935147887211815892548018753141780178349980199092328408617582479268609532970060597037573635751112884257057931200042833836826476889623706049807274735853795015620757930614231926222073883654009549921140718846325097543399532621673252564745813174898666506434428232259349990771625408717129083561423200975872530187196262867111280698561763452516852614309185774665763353865606207564781436249169068771482119624055698629210105765246541403478003183393352896356644389160478499713357707164898097733873188136910968094610979312016003644790140193638844127526041601215496142953044343866423412687548769654356898209363234077743257021130677095920648254733568300677683205471157931078704822119373423718799109619865142346550201275446300246066550810552619136302665649803864245194354915151667686148622615376027244639787258825453430801899295935302659079060172258103038558209033550057757712226320991620362499265128715720677839727234270728201210427783320407649324145552612571132474935905793636613633450588966137592159821673968458182196554931325921207636445081062700267348713562164848431991271167469326578398806183374849812643401593114102899330634033490756272549961155900051219778763211113675368586320815987305459896825830338916186677843357377051447076020722169950160790614717712049226273268141721178563499098501017006180111120156277199205833903141483583440997699913183759046620476052511128907197955385138098468020013411782324346903107809364045034706576013567571862741461913796052501071737937814434252399039701545586820811248602709442403184601832084005402271782816400545051520420866733297409538705561648955285550750035014779394547915210096452089961519968333811616874018904842950805839188875718020113264136595427260295238384188882749796504769000397337289581493055521845107229009200249106696156103503476622138714691034418106206341194461726973801411509933236377367044812211136547167081554592771073953474061521078953830716168354751067107680166146764399031977815824268236026549595906674241277272023069385833978464569668659282254065523876660894325546327993147730482498002797996168203284544127339977675452250852611759257098920629141780956932435603609045960756196661420353423891329900375687096342125144821274899546868114083105586494404745279700791465980326961612778806784620794748196023098139351130010675638870260777494585672261531230069319028722131922632904743626578456188340327276771922804719305286903955530531247769910668378952820097364722604558037551331019494998285443564963917018448004325943203320644354722325208506899495323072678383853076701375003930985979002905277787853138154897458859262464325881445529839932317811400769403501975638777278904600859241992354282700104931022843226666780085094098542956627110761291988719351499571926228955093445794172092325047671679561498308795542918143451633600085499347345913927357389701224725759200812440515528671822255000898510460484628765915159912944290608211975300026422093649689222893967690473200600812621928745793307239325494005871408686478101755734926708454577452422468333093340631243687121455429255453722368073107843897239715675599185679958163510123341272472296646563041106851276290174546208745055682521825866943592210651931470376775087714311013951305102743653164160397905333983189328973224094894280215354554717524632866048264027187633080975568413714172375741877175480465810699300841143751094470133564015471782950810138708249267581695700425069326286015947563717776827805933698180442238781652153106067749485713662487356139858398729268438335172118519818895207674745283041122345870141528445076981964087711161539616655902692780882542855244226115795904463768312432838871758580703033741283961241340183140544981181669007323451356981376464937323974566164488837988431280643651194743620850649974503338748914445698393123443496885588524404598059946799517813833061966627057973260484180850203247196687230172168180700183159687089791978261134089911609500803351799801328321947699100971267084607662351749355670473521518178914927457252553571254798720831561779993376384075139113973269327065083061489826246937147178403466228706824159196579914615571876205579345524671443039896986799414299651987293787095780688531420541185929246435326375471038522850904881623359699284485898134543657354553854972331395279597409643173489041142798431279994885377813367837841318552850961258932669385355731269205111703322900381979399256648641355466558977571031060732621153775797524396534192273384476906806882929847423389044291014463700266147571028005281686781792877867429068920446588308468661977902990448464278495399703060147786482270773045134691496008022756853877019105902452892879062194790401201590932764436599525740348382712802039001773695318971446104146732812354210832372814935903703421369109754530424220411309413801990496677633052382197822589845885374676800717563780409620830390609525326895751209249280786307950297844785742796805769897370932989906160659914746087346034858013289705894574506795530221371926910294668534581285436899959543609439269180215405590593379418633013649281605036068571138351104967573575970494164333166380756858767418570622555167484008694985846468844095011691296101682157245615853746846285299823473978497188661323111745799944790901108871186416217220253887043850160081827254144460683381720110492372199528762403749314279386814620546577047882026670297634047175377584565846919503613716302316600372200522996095788784724832084395043132600113016228257457202607936149634633228230608271723565102971225259980077203461300908818282173020952615299839849616899424557252509098308118373031694814008040769155128183160821532816450959106495875524066131993160173937239413127029452959736133115878871371398583302424397590329068668947709639773830370052446649217240312381822341314271865696574103254394930036061409978009742120990132558339994424686482893937092240560776353010968611038334060848470494219677171088134357540831323060271983112600582191667559227340639856959997886062713390285918591932866090069235618747277807968811356298010495202308302285334921440250460952663689389173195436137376267810861113376190131781647544801522078513070249703270125333001954287915311247337920562797883451275813446154363597567387583589366776026106000096661146946697498816212504434397346264764039202288279578379940855389091028054747022124656087737765104481414068112646250175985995885581469326161311708995136079409785373616069713702017726906391851845635011548875249326766419317811727797524377111992763208382749005772912245940345368877300911098459319997057382223446376850004964419551714724290181967271854806115015165691310418748175392471529310372787370664415909997228167485215237427722673576432301904694281804749599571539156253873313351243720585961051667920955200116773387929305265205355853020412318220509983727041722482270169485210673857671149874089895996296445589297802058385058064017372583557331539039178259612423550242899570510153332180844068999995887674121213214141189633321464551546121125908255963492622711739564514493035541283363137712164096968124901573295660554016090903491669103976042268096984952445740601857196827170419660521143112629138290332217678068561554446832548679952990193405146314388372341428054298236170754205387245674606865919134975883773415674648701170591102675920369307880501165523497737794700299504018877096469619904524464902080402443584395646355348687549163375641567679373977195674094664105983101852501177348515934543483219271336890442138228216629054345030898595040605272778923942238984135082068963582039573269998738231689129966814142253293292534117905456253750512332672699569484501463374193079147744308682799408050850765716892729013075760771745782273343374518383153621128050094367170345422401495994764503977602208224725421124061061107113103718356876234679818159102256651318649268230873891900023954840902335642524085872691171064805744586217960446149959485146548545490502492349248062240322312626288162519078922550879727629162513605912789532924383403184999233656313741813021839736285981695840421866889237882294403001341647629192714804784667317386648318150298035541348953784271995024688685932185693263584348472063598520087812694342160781815374589736988021225935728872062427615958836973928492443024665403345791719772881389866356590451680297230894368803156660032776442880536166773110483565452864638761439534982809853491808753264255953844391169662410411219835040140746786398637694133826809998262734726007322192768972828917835730501696678617804571210200390589634267762353634589721285934638883547614342678367690023363101257429520346425662607136725568270087903171837054997216859231841788147263676196972691923324084488076143728737528795192401922914840509299900752543629593929162168525108955572391060994237136576349409398331027406519927645774370686659742471964904637019589965625592671033185552028014549818806951142355606119571177285869054398170844570878661666357732362880151008306401515829144767651138993406204952600635675315330591896809069984191051959600435690790054063651719643011545908587392964125651907820528300912267093828606579743466472769414710114965026837815843583642446999626487075541575117827339476461309927487972454271213464868408763456764785119807977049604708082582602414498745736016480961223704890668749847180530649416705808729953764056714324336685587147230211748341149545547585142557882499053466166454711384464024790560786487251105268773599257891448605341200993680044587046966620951377108435551423484610130918112279733110450071323388796226514223045603915239534368998982080716104141057534596550180783130283640644155339133126532405783052120537155525680083487142812118759425841498967524661635729995256494875330388622375975966557911246122159536077316615668933163045873141148443934226632859653772790429053580488277559543777944637083723204218215704804838558994911606744279721527378010984644605292459984048488404781790087693499255760568318616100555002715771801175205069646470106106926857075339897663203959201351799089704979489052345782167488798765432245307441253837959175152103651854297901046545942959592085897551602933147238088773679791996362820611150330260730026733847186549661178627049007847754069500997045234197862349980560942745345807160389641462038350979258117340059332052141960391829522456592191617732655494274447568090613425944825925763887961088847157967333318473129522792736959604767839515895687738118490996023922321775537704934053635733132873914171758130451961965427218460971603165993442544638153075821139994776680548333873153236618250079535322296084712548235075838416375902846793241463892848958943432289795111334590731962499037161895275195909242086780428419454667359061193148122023177996901328926915826302889460180337703966892946625480075242023032185505670779169185473650853881932736429749682454143553434719998661245046560469076459408164896181558380177453181255846747007695315919009432065329082606801320113820958278752550635120156841535704299516063401655682346939594985440570550312016834863734847684921408589925278405028804679911501959140143792995694935110602440398047585596584556872977527306347757173557595621388753928295167069655325228717587029231378749269517723337116607673542754281420947133192174634953400342396173040763050797351044029615509551869939901702070023368888113688897187640910808520008014555149699248959913906527683205818799774902277766001724334580257524162570242162611351929932910558455235071284968102902969118507320558812699226178920128441781352086076464685777054969222500250750765330769322573267772961211485602468140254600708821669627076039552971084895980194866512451984184644200612546273396936824995185556341206783999929455769659243329043565196634720472191777247172941628197454178360066147960550518247733780612636700046861520429062267171072745533477078927523293558184644426117309006193126543776483611944707380173367837382022705970248306761723087407509639280309197869520849949070704546105803685885508344257983050195649462915429899511192113006625143333182944880889467115858305649528882657202025137475377843804589721030014935137725134113514675132514508164348857476534627180630850179301922542443578110950043146036764379809155369509961202846700952517300874712432966462073103400084902857178071690854030368689911091444885851849302408131651060157147111465674697949914465796372707682536651279895373930088406832414631857318159945739826247727292533120417258997222356336876084288048979252434191804262084188341683193420466885704730465051181368312056180032617221779364344632146440504706045502513164556902602242613779517503306548133952515140161372725723344128449301100670025647514730905511717157723347514381630233991882881921139415013336017041571971960534325141241855887160344970383175362224333385325958568351730196489750861691807792717864759978569323532107040565425450983828720370984754923626902950405564027601313748097713995186312119035960923298457204655613905848066975448849046314418247428253352916163003262403302094537828954014492664529275014425019320070474808673826737025169772362169569628568941657653595850772480594292859868862757399369108495282291309597854212986101890099983902567980334725101545755153981569072553431340490224323845688292049922713940267283525666948959345556842070118211725041098669106006025529671476210434380534417892856883967200506855964536436717713678571386623485055250546310437309262355189969637131484887540564542281469875005317085446566078751379422748524667060652129797968443571120415255345317586098898490385978581727464544326914618669669024111872497860949539427791956694360600352890834602866235027683572717408696447238983752859843659957542378354244220066591609288461227120725692662416757657875921809257660352496938953473251185593935108657591752087200399262168340848981271553255296675496901008937810518931160171651064601692542158415193310491325523692524219807207924453111574277693130789146613530590061205419679794728612295000853317040983680680417683820834457677914780428945710737695835581101268265624696589309494561080705780603712608779928337294560589769381099423903598436891620548002067016643222532191469343932139937251324521452494068378899420692562516184521313069024495550967730421264990014012104551820113294443583088364941490030498122557879621798770913695643102286435492192907306716818435327996257985496708271873331916474520601846376232636967730105323471455378416785955871332417313808262109440690118026047799690441298718609781708529453970227834303366679675483532745169120776423929529588514482948655653342710028131096347304248962486998946350397037130442814760702755338392066925712849656413002693410571490036355980735569234372165073341304453397099927102952406128475019393829999181601918483307628913030817706340631300277243578019512661272478333476698152728685815964175212289589198163781460559547320445944734617075671701857902355849243412793187484873464978140312685508574083556507427199270264351810315598226594951364668268656592846365204360603438072864438984857892434837742226799672039524073381559302637163394531653605837520310544486413171531847547470559468426595704630446952405132809482194307941859787333492741654227360494390605392479895882534939907825650154844958198718677293367293587285683173813896701129344678065884348293122186784485764736386135391481677756532184326403153635838886190206388712102228082943013513694940020029772651304408627614456847797797849829879697351934523482439603578102310327552076780073714059047932710334238984184040312182131834365553029631191769337838210575477542405301099080671685023276016292830126183774636534837927297200444094116360563317398958186192126005354742383797560998104898225565770658626236475700690064640939389202337951032913912686046816295177984270648770117169682966974556224635479723018547315297396876861039240510381879031852444475362713431320210066567546513124016742045508137612593429442847625261672452240205343592161391562814244540041187886274090682146040400836264656976430076728640726411016342402358974404416232043270816904612479675619861649800701505839481984230130605022284929235506373068230530474635193897392353405873732494209631553910772058685079696394344010013395098468295168133130412323867509043614024324315567120529527797999517787298602455293289530535545631927586826371221748872864478415353348940092624435283136747458555714034268649886158324420067652210211935052025455682575722854132535389501103293613745452155698056228457826958382138390337370854731251412405142203037878472284996143737148375318478771019533678438348739236672172887730058681738553544009795187635312489287300743733622558176237848161577065075554478777975738467902218468587701179396849716235300417969417058162864536850606238628427200767572337317391206816479391146187697000047718535020799083714853291391520546802922671907008156993949987206703756451181706453180491519973313315717765256943188252562456687658355175991178918482618705995255620293524276332816380953387854751575279982939966295406407807779502841494411374524472835388540347538391690921041931107882034929190786265907416969407786543111460343906957059814096396695828132155488244261482685363831724255770207513972125704758666424952039665569739088149004374476852058632646775427321568779775755073593005638145190681239729945128491714292773367466312584103979262041945996700654710059889117201344780858557966707332902506127024668887198415428437219534724775016527777284252428208219214763595767847288086520985051664686326700832901967821822653930605729443952883361715822436370797454856288026149392562267236978064818580901829164013782056970511590839743609137254150753587088293246194673654564308992103116099948624009314110999334345612835206995903345380832297555329344718644103951080643510014187543590554953935655518953198746505258766733840021237134237032855651672939620486977312029978731575912559739643325872995102785849128419064947731046102822786421024559599295194720374075524489899430960305268368235310939768433981523158657877542691885182960271148113003297740171072801868514589547183030200953258562983786282210207817114429668663619023875040817434859570354888744148492993810077369690442835896313708478549009389904965147553889568771421780810658153990333837524939127718296181014795553765266294774346045146768652303314014131777250234522342502468617615259584591051788932569976944965027444334441698931828214694495310844394636082408967976063858363993829380547657126059449732506726508891307169924550533124323557614189739656398444337600027258244872415084681199427632345108768792573658254687381940919665000684111485755465654769084363658951427991489698626360953072484381676504350083575340647475457214730971378880975557794009943600810780752473377020430924392184976053237651484438970647134069011822349660057537918773705530539106972090692667425744384608973616658081027273655673543069816652006064069850586765973202156955230956200538365799937928993498021334178320286255617943262768127798583062611385323150027954024692714200756676586109685687429358538936567257245139429192099343902243529861006560784622255946267642485947511814189307839272167095398373921506734718673451161595774839336377229200352057296390975476452704899906074795608557683277279487417285440801850552308710025361803749433821438441263474001224558995167453493933316846321036519720704475641979315617013372619233852854858056967325002426361064715667281461839101645253052547371958111410816664872041075900628226784682808134007393558356092897663597859092680677307647053199780754636977648312812725992493584261620903459989861305207112410122544825253483111500235398208541949171157161297160108219627948241481613359165485380689883834010401159342284379626302655025266687261717402186406779198086022719834324124588659145672130826532049976579014458806119145632034081935375043993499329770383454539328900349851440600931066859229229619587515148495521372447515248514671967852699345662441023442150595441203583968841721325509893785207455766040366956753643809939765755962682739274272377296852156628144097159117478195184914922841253610253533018410116558916385308599130305377903518472240922651956696189601821153533941178141653878745296920972632618210746438697466818580404360043285160643708107148962489999880123961818408023297272551139475303426551400780456505767507859518544814482038065313008363282316751913583032291192965444927933443497277656799310087155339454003319406229635649681946941282908441768638351149689654772493337382311515822098881935751390807912457998688681130301428176602596807910588608270800979670896300045287742374801917505080359635873988536523614194598699170797483685304236221296552739813656762226238473349295044465132619821175778990217550438874833949806323815098345206695912568346240751213976201085263415022590031584504100652449515741466559016434560293533400590341035608450415512854588043732786322560817783617502392928447578503939923706415895078150959175098503413841620522169397913851460540080438434847817004580305866977494721770723948309098934998391383799995100038049258519241838736696444553889007752542986628799666294271594323480119130142811905657704580536333844064705370994811941887661942021865645440067673482126555972855618140935371563584725221935580417142395324054169477606425419808741943589635609566065011840786469773108818462426563402243806280688007816802553007541437561072223133332312638870548447341667028701956090952038712987229742526947846361582415775584545796786547741243538539917554673165923719201095606167106865650422895575851545348161180439869559067543450257402084613223994485792930653701844051268765220462428083838446097495827236508219666584464528588160264541805975594654599930609719684038572621972538425104594202926686573150210506465231672290695132365052077108747741700899824368423305251384200422622045229464381645022858209623653406650879115946578260653582106007542713864787528050931468125303421438238504100863638480564739371275554805267478611177190466489843154685323594011746555633432702565130969535102858068879997075888033500015067199475855906196208070090020662065566998088837475903149606598276628791414151593107415328011790577970404778890880422452156524473925126383170399584579501373498377267508346649478997679984170070598778380856737038515250029867126866226029026325323962700925596075091862223830083329601962874852765359239789145948469052447543942239227239338424963276831729997245277576635008381896870522543273758390806717438891378889568618470104358997582791124095396552548934640206164478329862438635726872667021538949740615445633379274592252559749174865552108265603859143122748319001836509230592268724423212489791723492169372436327037558887774560437801323650487637705971730456162119689281877877087878887075665452055676310724303397584827432644952265223824574178173328130112099999999992491601225219372277393321645030396487115008442807487098522698362399185677258698371805868471719335776838627743415457068895139647759399172939286143496816535216421325187363046885361425772909502231218314437622205930116079297234806627210590217190600996553729143901162562581526621534715086055386213403722171966572167941373807751745003300864621423581428649211471188453869806941140221723112492926739317268445594071265412095987431797270160735945991595165719330107119185281038386587589235057335380940005305693001382608667438803331294871746532631942765649987364807608073283062624357530021849218590642065711037865682141672669354849851791496897063126949603013467264073188883576845527267440287689723188483169943656279220740631078863122122848807728666715806765276137724700730081249994819924328243541666148245400968975846655637729029148061506542592604399222854110732781542370402410205393799770466011365077399427326183232238265030685889279727658938535761785132571276748397638477935037785591264437749875180322256012323784015525604623362096027221464940257283064631540803900300206829890788392390769246502987498583884366757395670906295197448156304193074667013849190537476866082660533871486087905033157186320272974969845529599556451129598514187359685627637446331662670129764298993501000311279054119551795293436077541806432874413466425279225063608468943800996401943757380346521486548236195531740294211488887484747134686945363444367213049217878453660392154283544186751396258154512323118386967652721436408567472452527756993971200559754852597863920008857514212732409177874851597442288818837293554568853805195153691613325750810300585126982063298450310108226571245355801559056941843652396973301352601593155284091292740866549566043921462231493541832798235704528526544571442111119340460174192670996737170522672044496340913168485452207793358350233254119832104800326581380356050265032251032583839368957385716185808989673751999010358645218475784409915307826880584350233021674043072363958462907535238921727737631843362131946446141984858433639685917882538688838455279299045165689088549176965047266147592004928222938280364143281780835667493268283662648947181175663382197730113581951086056976483858969045393044417697346422032942577633765309014213395194927015343742294781043560212256273243309210810716569809706301214533154733404016100418073529100312046963636034590804017050567825790653522898357191706413177756125343416124397399370507867589562528843228068316390479370510851892303499422073776953238504121391931730762288240664013569866350866142106604819742055188356660330055365791434602484732529335545051589352981907788978988990058604020653742020143974368603784198960431131083519382459457408699921193339760634764429396351189234420370288092083429824112366653374881787679545239641552020752120631153730288687107589489120292707186039573592496953996467058100802926320813863991506924956350818555888540996525414748635919832481014061543411899028591355141336710272866541510563545104416207274694774459589776604260396239058370727607349959892805801971059398882844048475144121939895317383936982428706222260824394901932280263573724276353034949545982161526781940144058431729104223959741439456030412058108349089069676217865847696700534979767662164601668811222183982382030893772206399146560758010262654470829182241726963136617745833564854806677266405794940547670254817160231448436415471652215588253282403077494518483979059604469779641259560901785968791059931429223279496161551795049201472582434452956186433007479496688558274059028370960033933982400313564500896108628003186341630250848045877794016078752452682093219965302431201174802460703466949303240338995481386851059348764090725288837013013020011608921825602947584532865947811317643619077326501020663870402563748999202407020433976878196711929493290863773484448608531340169788463969657749061632838221690568410771383593321101134155889643568684994429271588631203707525266160883417131491041471364882422434813088562556089045939993163903528013429218746699758740378492796618110754002770431344488385172399961108195697586578602524887434063218473131399231809850966445274176895376565342801594721183021913241034376765818450045277610296427092909017909490640397231665226655143897873234908479334131724937559293171575071691012991576244466231832358524634166032791301205882308743880508681273044461805376219638399712578583182311288011758141436699004413724899746160081943748014286302164836045926083206041509764298723420154117688346277834439283531997762111037738839718093958280696932332350858147525625008573229204237340394372247648083960109569137593366540739775930840895925072858277695051375234288253312217091018573250416529884608205662426956753329591207982492965987366229082213448124955154198938345191885616600278841489022263636658633093655344408969390989862154149518903671130817413245944686140233224662345818646024351348604373050446768109612455402674390070502386449660692134151894572702981033534329557913465419468013694631931249615970873349155446265463400213081814561358394769318267534167849212083052855832908113584849135879954303777127723870759742323643887732387793413315218595535875800995893373148611257300301755763038093604492546099766828737006134391587178415653169636617191406043687134391871182439283601626063617458675678909288711271101815667373525075658367964412146168599556138576487540761529894205681033399089363571537423187423511481066702046780478664301144511930691602163263183399066990012252975334340234898068957851182672283394727230641160734684284692364127320952802603126352555079909496663924107778180660849680591067001634116078141264730803483109790729372834607102328360051875687031249482966502859719548812630772867174075930109406498030729934120405470316295274791612633445482801702834623580934155701805161957811460349886660009201587283718078756274616763501932609719696288152398349916834595385860875165332907902462330247994503883308590334969327770759051110868169503729243639448057907420194864053286218064066674023488219123457447455194664288635018247644777667919301889894201203300344364491875183739355892740401813520560005797702923345332597348637496551282091136208988892760563113014731677431041707319983119531268712316792952562980263598248581825183877481449279066967542760109116485522596447413221676087447972531500809098998858459084702152820680852688282061276454721277737190455602522458872784230132104859574029441949062452148040871519931227359401497624891843906242119772766540153895784062251159638228604035085243052701635874454891703894294311728652326694467801765506657820835766530737470370254548700565433530756995298894854043707849724257143022903665202897742227204686313931135479826137377432423080908666946197656517348406938601609451315462235258839004763801472953148795323547572320516502953974869593397668441787105415349874240549311995115495498461179384223283631978436475792675347459641182597388880449172569552526188223953156353757922031886162351012961210847813222630501396656338011677754584062724643356597785676357228833285503099605862121196136328379413187716467418886700771232802759612885488139130480156140074005485484304810134961865728780733026193833398372094576150614655912114620264183316643096982424605967898438078529256444121082228228766131257762559222616213034389935103044426258497810003632786866201246093207073275859631681170694542136184874317662571172652535580506732913658882392409278321227568868901230227900792234352337852986851489351281025106081442544272544098632181355319722641042108673398656875014677220106303088883652834979656994904254627222827104056097121601932001971273626056030517128185362691164749767722522283492759156190702472313410684076559351062064746636242089553053297437002643155637732788366791140772268114708586490524732661954842072856466757875811844926897827152440952897083637475752191144290608988992466910012970422557636821490396249371643964330003960181534318276483504146278093405987880592485272849777423148588413759991433232634704622075258790038545052829240996875848413877153614755585223269198090015771856230734980491320093475665349487050837365020266698713114353548130001845674918256574183287715359804825493962560747426577743860287647309496629477138162845066847329226878758487043712750166186245703576075188860274157978846950691719304399363321329420728671122167904300057328458567020380453225362372617806381077804137596799271041971961272231174494791679756900771409391131226715317462490246069128620358127353184451348595773864580815870349053286339864463358905768413784259035576125315256240178076026971530689959744910739950786689837889476172739466870039227150961129016969666462770275476924794551072042548234909313839620140812939468184187965548379392288358193289988448457554735801675927500146974256855864432054553145854359757914443335918470135170889477485773505012818841272677273309882206772481568035665206308363560689013734815758472710983787459946530257287567030313601745766506134684320238763325030037471319681377179420133873193301848745490007768819989756044247357777264926282735836802538908020634833932216762664431328524589710584795855566009967841877056457590154745346371655764287300180299796598763977775968744560158833219371703283311800460017363248190675904789497774218560408922972380306395997317643535130619378438127190993058684797286485627451707617240789499785652412437113149520192059690882635837750279458111519363079633583198919545643436719890989695915826653340518092258887670208942889849992997044121090416957980709582007696006333237676625196219031409838832162224856395977347172680914547940952323162223450040699046199920532542083701388895630978554198159950178660768779299304675572257061793116378758731761107654605239717698013352724526591037557772690566583689081445785209305187695784209233856766329049786578463966770647120193604436835146352794690080818665151744545595386122833204307086066268143549186895224667821134890734401370453903500399440400766359343091174532004464909549829477648148580215874171643808613512879278190807848760667715929315221734019924862580731574971035745020090626377183378882701119050944059841706803934607677444238643075841050360795380372129773997864872225947844501082865547693753986136194255573615473419051274684308762331934544645615439056138942619208893893750446017866324209435980527055479088392489733796101000342911287007216596310399134811359335871129055534958298620100935385464323229384659724999213802804199418944442429372369020508228147507134823710894032013536437719846119299604872244544219079828151601529143459979013795431354666643982981180291408674577847741602256129700085614754208981310841165581534990465664087700338240891416371309673279982900130530817214528522059755054848159837511896894265635548999820297907903074246816968017411141878357604939994715581270062155421206461905359879837475614250841338552134901198825718262704379648853014658309084509515506333381331873751262575708914148909255526385378431220552056864880162864008367297975331745505540670687391778629744741965090758250988863495634826611281557869613705924644982457137797209738979451269367167920418933203362134205355181021143956929089056495073426790347194562473383804886317257165524851624564903906837860139831771249781105973287196905643409837972258350146483660859914986134742796810487256444634438813260363911552243669569378786450102857267502528772028320254146312332965576296036220958465050943391775530825971694310984603607182457767692076668819461443823491428951154776840819107246337513432225648283859393251743207751731963371891003763666198535309728603724707012535205086767102232402313743871269761051275829870005099332250217110860321375311300622882295119080388010640096437233387606674588405347903163829959350560662553965566363859963368062582041604347773182017678099839329640039734335610460179805746583078467529650128865905295696364217014508549489285749040255833687644001324723184972177205346134586983387702034750612570564319306754258635168160684017076885624758884130895065711392020602640117140069602541242580843862293715891762814150712934724905792295429819023675328060143102820373091268529089229005533720944080518071365302191771440313744001022924437326432431736289429807748213466122928853746158977659335419923604120148670271728906688204485793787853475769244840495120693161545323104618638623414030515322191141797107259946770485794398943662643641424426514186215910682338306267604419401910307144300920059387970442703545845390973061700798395448629224596178819509421424187561041919759681813447112680094851930323457439592199645260936205710779170653437529157833525437012819259315726178049093915155917738117239601900664473389523560435482030822925064639856487243918075833921878094934620849758150143842738409940431042851440638846020525813402018767868017050782530793028397342058821085098640893955725614617941066293083742912620008091278112146163956918881881324116273397270143678992786285772329779006485284805901167133366723848628246516285875488966503198261002830706231180997661740779663568550876829250630742940035305204300562267735377650840011041819778225762716756555949222591229967983634549171107863323655977901525560094247519250137144122637075890684590423594665940473190564924483086830616099277256739536679925559895400780842243055033583120991373479977396754348508559478412770073073354353878345655286979405754948003984559307739818236343565395809476940032030076620115088549498180338376325393661037198391846168974363367835693436709808178700824895186773601367965212552117374594109408052773376824225725720283339515120481934186266210458072045233925989510670156551937523635531737145626860685179349121013992787718004398051575801973488332001115062703421212581551887844729397806277792333187830305901156064565782373128491833735387945603377479883561666488154531872028608000422787457321942816281613426781986152876250544438406237728740397900959538339542933015711949907809467262122165360912772524746437827777324761973643670491039695584297385950059345974933399609142416937750532415887440423309744837310769127280486522483282126644794778799980667770610660500236757499113120530747047192159542344084324011828922181794389050595575068782452446979103717186377470749964802800822883706134767737658200972784118042925276786057259596454618721629630872997690224950134646716136437654440495124577601447358323450198845417550811930926224539817780308136000588523555310724629999007116089657055141963606545629038776996966861737916250364921505694137925442525867116818000554366502956952514455465284713539619061143639050080085692168749225337329751255882807789666415808959976645322414138946958928829395917536355898003254591655503545966102957865228465770025182020800740710882140439588322988387196525483288533692192164348077515289951420085897969333563831186200000822465175757357171762073335707089690775774818348807301475457652087097101392891743327372457567180606375019685340867889196781819301666179204791546380603009510851879628560634565916067895771377474172341933556464386287689110633490264009401961318970737122325531714389140352765849158922550865078626816173004823245316865070259765881779464815926138423899766895300452441059940099196224580706076019095107019583919511283120870728930262490167324871686464125204560865181067178803379629499764530296813091303356145732621911572354356674189130993820280991878945444215211552203172983586207283592085346000252353662174006637171549341341493176418908749249897533465460086103099707325161384170451138263440118389829846856621454197384847845650843545331325096323369275774389981126565930915519700801047099204479558355054915775187787778577379256328624753064036368179548669736270146353825221619995209031819532871495182825461765787038851082756407910770008102970690290901899501530150387551935537474742367496184215489824054474167497278817442093415123319363000153268737251637395632052742803660831915626622152423541119399731670474161457039043066536522670336369940392891730209243145600995062262813562861347283130305587280295982437461131567843636925082052602395754812854225587514476808232605214301511395066919330841656045423722026728681909663940553821126239368667993444711423892766645377903286909427072247712093003438029301638249347148809231121766067517917756032991971850642720272461173234638000347453054798535561446205434216432853899660664276439085757959921882073146447529273082055742813072223290477131464326461995327379748514095930714867478572654886345982419365632589000556628153631642370547264760605461615335183102384771254252494240961519615417031898140019849491274081214167566294978208885521787801152572684730118120333794518696014470845125862668051505607019072596082006874881465793362889594397090036238609771528878776085764542826189120365831085824267666728453527423969798338719696834171046469772201318759009479872864936933881620638186003161789608079912861841989187269656071397690818282521407174869618435894339817546581234278684051306705446117057977006994632436831283271510600074702584891684976434532104707738014502405509145757307026318247308647042976038404590079058383483479517100250852796703807755259021866250030563893870116658838254009247188657135132662882570553957650331770090890482971488423500189306766709057723107195041887842702549778946245280148421710278931759801263991082590606675809724578312889715303077973816377544053377909985735322240754697155390879216952093126200203583856779171788493080689963843373943271871168932173374693518843389575892568894863983302571437576248114831700206495067672854000948701024933922275524804806688417750775568092784536676866213367390825371770311213154673428069245441914189283902344488091244411072583255359156356859039032288201017678651144055694524397803071078941508003190302319043641982461300148847886336276779888999456845639764958986070705978778614628584932020467359208159729640182059004102189530843566502240246913550938511749232408164969579269629140419790690811408081582820489679413370552382245264041600727435877769933947853994653230562690067764274590198430449186099800590953160427530003887811450930838567922071707592329804148376531988133589571607921634095508681561676453468901145110486381877314811034814847222407782230568406533336305374095441452608079046432096820862452376301800795215535644892459013189272853373425217165648373909607606914556307805679366801311491072369384835772001044663890333225369352676349984092935540783057490352984832316724819430641351707221430208211313542040977733081853607500192567620944960818151582643914316109066528187761370375595364400619734214616834739422107963932459206621410674903984951595393562898865844166162905269829223613452714050063509171289313056000267750990687906184708118367020763688323964509363748830650598460936816198113586934183478639735977235808344249489872975968631692859140096787319668863530612081002911885889937596633027253030463015718282014944318994239064017699608171971241400861012977879511920390482880683088625404494538730448565288480875722249214340966586068934954256482594153724250146096455332576678465291449143715810573361565073009319931520765391847389840529791194076898089626012019659585995326222377262220562471817838295998397088970060150208017218694463358836240045019544446799655133083948495167485951567477729614013417888308952985743006379419406176298535888237460154764215974311643729582784707062844589006155499949849846933846135485346445407757702879506371949079858235666074584792089405783020803961026697509603163071159877490745320612635000962888731758643200014108846068151334191286960673055905561644550565411674360509164327986770407889896350453243877472659990627695914187546565785450893304584214495341288363071114776538198761374691244703277611058523965326432523595458805950338647655382518498072143938160426095830010185859090778839262822898331148403389960870107416914020097761577398674971333363411023822106576828338870094223468559594972504924431239082055793997012972454973177297064973497098367130228504693074563873829964139615491511284377809991370792647124038168926098007759430659809496539825057513406707585379319983019428564385661829193926262017781711022829630139518373669787968570577706865060410017106840725458463492669744020925213982318633517073628536368010852034750454541493375916548200555528732624783142390204149513161639147583162331663361315906622859053906989763726337588763993476555644127131073570711899058790899497367088619479551477244096499338690373209496971967725454855331174310139779865994870497053818897656568455330497123673953201623423615772116997332796591685605607893134971751628822567931005923364927555133322934808286329653960702049827661638441456427048004286135293578591886914909803234255925803049015274619409918887194479737250380457200962737576192807815340308559068877218830386604910230190737116350514349329416767399347519339581092434209197101467094144997114996135985905038265234652594966045527566086074286211668469280829845503881141428026227448520126178300943541738080429157402779621980003219486403933054979690848969203686185489313731901955135230862341590015457211946543294866610208130888631585976357654991780266178798794894065704757913123893116421428623206559898628807092712656457264285722675302988949890737912538147528962006072573703022491887091543706024998936582910686784249724115450295066587869574040406311285775916948930936482780220301922804283654507091134617076266066195177625500427810092114441608661127879929421833079426752994463285456518260710552203249428031268008491524329151155986681678142307754575854861467516648468424815638148467929500612209305349762881212978268481649582559920147566331830203745689348940664900619798212437896213767965669787079661491568316961337901734895261495156038558415109377685144461373842170677293881987758916064041054277540999829336591803263863916463235833108464417043914210857852460832883779746346875060682138101087783858843879257478244014332541087882046123780115219280312621675890399586596671355493561706131213572012549735095709501186324220115861487496763095737386195100889806453915747001997197579089635977341111283382327011701993900375488424075640245817260871379542712901561418538656636312934400748402900658345625333616705095879630724753472606453978935305708924316642808825733516537238347578111861976394790440061911740256278043658294109205954433139326664064903293450966175844715214094082297103410268869331457994373780730539150207502600210729920592573911437047859448932321586614857430068717399461317885701992728803852886153125566985331739109320580014579409518774304996121234000163679616303338474217393836458731873739944551284396097467745504333304660369454262836807164957542082160367243707888090535910811053076584865659628419528830151317441362503025307004371937462898285183288698514560145947129637936880354681009727066346268681430726959127879312385427112203028421513032451554640065592095185323688139472567321093669278832495937891102717365693630490505888106314680859073910609518973438103561138411628042533301451669154527901121878921504020823493012018434869969031008360256264541326541282542863365237220659774131064386823130341375562643102847052722772921703664448693563134719369272832222761958722257579554383411397297261011995994045469739118274477108630440440430034024060529613095303512079284379537934489584643985257188190413457933152203163191937563573633126889394073761646132432357884904491518939780183865662995344796741433974763245072693032414540559911181176727887336520208362761574798929051523240487800379020354886845868274752704859861987071812122159532409793417217462790636740964403145870245976566063406605088755072904055396290536940520624627792151897923624193629511104927457313735957986686490697375196651590898372477481314111430474947665509551958931281567721687437151091991762422745181863570791919832747068604713984654271854717796731519528205119116753591345836619077504064876027670039859698832103603153973878995543014152898725386353893905072961220521529318825253501158073689217845588262984060721131197997320980306340966373373917535226498191277195135136886575894094440400096442540279508941342093892890873614482634725755650225427104316929330211981475112943372650508288857193146270022768335115986469557957612989594908863484855429173492922099779341277250909568860388754308434608323572321932525829053749717518971559392424305543000771252570324936304245796093264312330252152665565422453988263652289291198040962472937502142539851253275488364752430367684586984889104244404852306419556306282459764120630056752939916406116588367427092629878752274314559846485532536521758636704121770762460599990456292995840183257029341721695890639415465618598368601210002558659248709763658709363901696005337336856446948611362349487508662468328964801764216303476258800948875941295144733436723809322429049684944003412006740918718438444099431701117725095105432922291930492321661815791613778423593014161842746818516606118442691377707931218608588037180720660834373568902351147703462927233655148845958497205574859048266715009592066886052182370199125104629588273470644914535686244044848985281398872370961863752054010974301657141445326506737483179204147591610800659869057988022176559731043828288406658533419498774595066222560316914312556093055044996694444543149514358356157047280846430542382695802989667062734659833419606435635469213878854111209423327656835512725840509028742394770121487546552604387036283819634167197243588605897681832051278172549169849282582341350761065269087138201579376780010275198137177800133130877432958600819330923833540488934131056271179209783871297997162491281889009212868896209360250698948246653231995752573152593428869665412075902604537594004253684817488052071334825400979442830174316187010453790779435442715795088080140961055925184895102020113807938946326352937812046313203695368268424491461622963407945770377399340451965785439626297082090563393959809348287403242743557958436577114066267276195224991836513028085929022251170301401237984526061911432820737258304290198122019006970489222086245715643837868369201933232495012174456340763797040889246946741045130790970646269539337197173644549953095531499506276476948083081789642213486004611006994511133111660213634357061100937831121072783518206404787228327201234123890468574788110053498654698221738566015089893375135288477162052068720311132479994548351025516983063760114473530978246241485268349062523611816066999863177702848906869046183127268209714401702060274727809385503123664699129983284931870504908557053805724223804888441198011279837843849505324595913815121563004789352469703112205870573186197635530067988492416245258893892178605581861466514851123078205276668383794545268865291386036669598787186029882646805359568608953808759892326840012414201300395733164335942748876411347446374440283387477722935369994409195061457159848664682778062862514128292212686548550972114161580131219551294027798687843075548810746471502810497637162138432145566580920325215698653056265309767680845032132724554159929588540721804904709459020018785040878288463344544102516542911839629889538257994927639250113235712311747305199755088200966509301213336630735792696055859104871604136876597325476153229429028388606534999514727787056866543707632179670949389490525608377717836667025591784819874354643063438373198521288328781420467280428181463864538470589360043849072604470337437454801501283147675819308002027738958577517975491034949303377699952920358291610165768567740567978356074410351703677328166902923862023233197919768131543124074739468994946662547656519562718644160382795456033135175082268170865573834693590004684197108238776170873593183612924991201300134045923309092134219930029711879813786628154154076082496970300895725510496950297065606429460130867511795311569880911759283206231655734898021242958508846791926608649271238012046848807463452145145524540629568674371180568176504360963017015431749277949293396317976688216722938280173938924419296305551815469608660762079635769293211764371669224250940615805473476357850712260506636283919127991342967871258378570207502000023975207636318395340545489772104939314689719843908698846498428096291037103592386937398327343536649617283393541761406911014413311300544468640137982568932109199336118754072870063610611743418311646272329770062069045501332523537696835580223612849721838417508400262263773939714364679480638417882278345839804065820739990942451525039616498983928072825202292695277161080260165840503262939152755740689452037268647554752305330140991106973476035764844201956489912225033210038735236980330958660817486330751849757204759782947316995481993683099179869510096851706688196713087941293319881931792878309916897429082391253442735487836443276499521414310484299212015258716820984369808164980299317231675895566120417229707891983912313030436599083938826604501055645855210338180213000321723240000979992390148296151632252660711089222198449491402674240066741145681135303976173971437618868459083892733231187058925801037611622467611595626870911986465303574688805428876371812925687283054955612883916571520935189166104478714916038251611282072878086786997631842706045378236307514687319551238743862398436639489398491712487785555373333537472225890310531666594259608781809592257402554051494610430727683516844883090840642690451751292292016489065366815256159780878766578626869915420884829690930367763912026088186491309948519583077355201102841413869259631189746246955907514383232310780500834552698356066683107094282367947091638804881069080013878056063192285475605492314979081159414662685369957898706953665541860973526989584578250451659820035126315338949723159915475590954107123670995428358075269318669824176810684347869283578798491457227042494389813706374939315712352299179827272303887052125744889038946504277764561906702031369062935281197650688873313459486973806092979428386224000584822393299996986560104828818760758385981995867586886600382232504819370078680344674241717169681378516934397641884405919044221823915509568695105214974723365920083084099725300324546498330670104200464003165985880244323828652592296949994026574626754794194734935207459814880784981627555233983334079607425029446928152042170810306189510491211552154552132315007344633654000550944484672998323620625895491345248321838656512221724222086276305979128200483441775180920689490213071958767104334027512272854625466595692210051876910873324145081549488050165026889578346879228171375450336199632698153881546255115357502041655301566125512734592488222445087912439735269902472458805653908767576062143624424582424222584866909588864737855139320483034513471009546955235085164365334373977580000000001/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "beta": "4999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999997/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "kappa": "8398774780627722606678354969603512884991557192512901477301637600814322741301628194131528280664223161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999998998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "margin_above_kappa": "2500000000000000000000002115008442807487098522698362399185677258698371805868471719335776838627743415457068895139647759399172939286143496816535216421325187363046885361425772909502231218314437622205930116079297234806627210590217190600996553729143901162562581526621534715086055386213403722171966572167941373807751745003300864621423581428649211471188453869806941140221723112492926739317268445594071265412095987431797270160735945991595165719330107119185281038386587589235057335380940005305693001382608667438803331294871746532631942765649987364807608073283062624357530021849218590642065711037865682141672669354849851791496897063126949603013467264073188883576845527267440287689723188483169943656279220740631078863122122848807728666715806765276137724700730081249994819924328243541666148245400968975846655637729029148061506542592604399222854110732781542370402410205393799770466011365077399427326183232238265030685889279727658938535761785132571276748397638477935037785591264437749875180322256012323784015525604623362096027221464940257283064631540803900300206829890788392390769246502987498583884366757395670906295197448156304193074667013849190537476866082660533871486087905033157186320272974969845529599556451129598514187359685627637446331662670129764298993501000311279054119551795293436077541806432874413466425279225063608468943800996401943757380346521486548236195531740294211488887484747134686945363444367213049217878453660392154283544186751396258154512323118386967652721436408567472452527756993971200559754852597863920008857514212732409177874851597442288818837293554568853805195153691613325750810300585126982063298450310108226571245355801559056941843652396973301352601593155284091292740866549566043921462231493541832798235704528526544571442111119340460174192670996737170522672044496340913168485452207793358350233254119832104800326581380356050265032251032583839368957385716185808989673751999010358645218475784409915307826880584350233021674043072363958462907535238921727737631843362131946446141984858433639685917882538688838455279299045165689088549176965047266147592004928222938280364143281780835667493268283662648947181175663382197730113581951086056976483858969045393044417697346422032942577633765309014213395194927015343742294781043560212256273243309210810716569809706301214533154733404016100418073529100312046963636034590804017050567825790653522898357191706413177756125343416124397399370507867589562528843228068316390479370510851892303499422073776953238504121391931730762288240664013569866350866142106604819742055188356660330055365791434602484732529335545051589352981907788978988990058604020653742020143974368603784198960431131083519382459457408699921193339760634764429396351189234420370288092083429824112366653374881787679545239641552020752120631153730288687107589489120292707186039573592496953996467058100802926320813863991506924956350818555888540996525414748635919832481014061543411899028591355141336710272866541510563545104416207274694774459589776604260396239058370727607349959892805801971059398882844048475144121939895317383936982428706222260824394901932280263573724276353034949545982161526781940144058431729104223959741439456030412058108349089069676217865847696700534979767662164601668811222183982382030893772206399146560758010262654470829182241726963136617745833564854806677266405794940547670254817160231448436415471652215588253282403077494518483979059604469779641259560901785968791059931429223279496161551795049201472582434452956186433007479496688558274059028370960033933982400313564500896108628003186341630250848045877794016078752452682093219965302431201174802460703466949303240338995481386851059348764090725288837013013020011608921825602947584532865947811317643619077326501020663870402563748999202407020433976878196711929493290863773484448608531340169788463969657749061632838221690568410771383593321101134155889643568684994429271588631203707525266160883417131491041471364882422434813088562556089045939993163903528013429218746699758740378492796618110754002770431344488385172399961108195697586578602524887434063218473131399231809850966445274176895376565342801594721183021913241034376765818450045277610296427092909017909490640397231665226655143897873234908479334131724937559293171575071691012991576244466231832358524634166032791301205882308743880508681273044461805376219638399712578583182311288011758141436699004413724899746160081943748014286302164836045926083206041509764298723420154117688346277834439283531997762111037738839718093958280696932332350858147525625008573229204237340394372247648083960109569137593366540739775930840895925072858277695051375234288253312217091018573250416529884608205662426956753329591207982492965987366229082213448124955154198938345191885616600278841489022263636658633093655344408969390989862154149518903671130817413245944686140233224662345818646024351348604373050446768109612455402674390070502386449660692134151894572702981033534329557913465419468013694631931249615970873349155446265463400213081814561358394769318267534167849212083052855832908113584849135879954303777127723870759742323643887732387793413315218595535875800995893373148611257300301755763038093604492546099766828737006134391587178415653169636617191406043687134391871182439283601626063617458675678909288711271101815667373525075658367964412146168599556138576487540761529894205681033399089363571537423187423511481066702046780478664301144511930691602163263183399066990012252975334340234898068957851182672283394727230641160734684284692364127320952802603126352555079909496663924107778180660849680591067001634116078141264730803483109790729372834607102328360051875687031249482966502859719548812630772867174075930109406498030729934120405470316295274791612633445482801702834623580934155701805161957811460349886660009201587283718078756274616763501932609719696288152398349916834595385860875165332907902462330247994503883308590334969327770759051110868169503729243639448057907420194864053286218064066674023488219123457447455194664288635018247644777667919301889894201203300344364491875183739355892740401813520560005797702923345332597348637496551282091136208988892760563113014731677431041707319983119531268712316792952562980263598248581825183877481449279066967542760109116485522596447413221676087447972531500809098998858459084702152820680852688282061276454721277737190455602522458872784230132104859574029441949062452148040871519931227359401497624891843906242119772766540153895784062251159638228604035085243052701635874454891703894294311728652326694467801765506657820835766530737470370254548700565433530756995298894854043707849724257143022903665202897742227204686313931135479826137377432423080908666946197656517348406938601609451315462235258839004763801472953148795323547572320516502953974869593397668441787105415349874240549311995115495498461179384223283631978436475792675347459641182597388880449172569552526188223953156353757922031886162351012961210847813222630501396656338011677754584062724643356597785676357228833285503099605862121196136328379413187716467418886700771232802759612885488139130480156140074005485484304810134961865728780733026193833398372094576150614655912114620264183316643096982424605967898438078529256444121082228228766131257762559222616213034389935103044426258497810003632786866201246093207073275859631681170694542136184874317662571172652535580506732913658882392409278321227568868901230227900792234352337852986851489351281025106081442544272544098632181355319722641042108673398656875014677220106303088883652834979656994904254627222827104056097121601932001971273626056030517128185362691164749767722522283492759156190702472313410684076559351062064746636242089553053297437002643155637732788366791140772268114708586490524732661954842072856466757875811844926897827152440952897083637475752191144290608988992466910012970422557636821490396249371643964330003960181534318276483504146278093405987880592485272849777423148588413759991433232634704622075258790038545052829240996875848413877153614755585223269198090015771856230734980491320093475665349487050837365020266698713114353548130001845674918256574183287715359804825493962560747426577743860287647309496629477138162845066847329226878758487043712750166186245703576075188860274157978846950691719304399363321329420728671122167904300057328458567020380453225362372617806381077804137596799271041971961272231174494791679756900771409391131226715317462490246069128620358127353184451348595773864580815870349053286339864463358905768413784259035576125315256240178076026971530689959744910739950786689837889476172739466870039227150961129016969666462770275476924794551072042548234909313839620140812939468184187965548379392288358193289988448457554735801675927500146974256855864432054553145854359757914443335918470135170889477485773505012818841272677273309882206772481568035665206308363560689013734815758472710983787459946530257287567030313601745766506134684320238763325030037471319681377179420133873193301848745490007768819989756044247357777264926282735836802538908020634833932216762664431328524589710584795855566009967841877056457590154745346371655764287300180299796598763977775968744560158833219371703283311800460017363248190675904789497774218560408922972380306395997317643535130619378438127190993058684797286485627451707617240789499785652412437113149520192059690882635837750279458111519363079633583198919545643436719890989695915826653340518092258887670208942889849992997044121090416957980709582007696006333237676625196219031409838832162224856395977347172680914547940952323162223450040699046199920532542083701388895630978554198159950178660768779299304675572257061793116378758731761107654605239717698013352724526591037557772690566583689081445785209305187695784209233856766329049786578463966770647120193604436835146352794690080818665151744545595386122833204307086066268143549186895224667821134890734401370453903500399440400766359343091174532004464909549829477648148580215874171643808613512879278190807848760667715929315221734019924862580731574971035745020090626377183378882701119050944059841706803934607677444238643075841050360795380372129773997864872225947844501082865547693753986136194255573615473419051274684308762331934544645615439056138942619208893893750446017866324209435980527055479088392489733796101000342911287007216596310399134811359335871129055534958298620100935385464323229384659724999213802804199418944442429372369020508228147507134823710894032013536437719846119299604872244544219079828151601529143459979013795431354666643982981180291408674577847741602256129700085614754208981310841165581534990465664087700338240891416371309673279982900130530817214528522059755054848159837511896894265635548999820297907903074246816968017411141878357604939994715581270062155421206461905359879837475614250841338552134901198825718262704379648853014658309084509515506333381331873751262575708914148909255526385378431220552056864880162864008367297975331745505540670687391778629744741965090758250988863495634826611281557869613705924644982457137797209738979451269367167920418933203362134205355181021143956929089056495073426790347194562473383804886317257165524851624564903906837860139831771249781105973287196905643409837972258350146483660859914986134742796810487256444634438813260363911552243669569378786450102857267502528772028320254146312332965576296036220958465050943391775530825971694310984603607182457767692076668819461443823491428951154776840819107246337513432225648283859393251743207751731963371891003763666198535309728603724707012535205086767102232402313743871269761051275829870005099332250217110860321375311300622882295119080388010640096437233387606674588405347903163829959350560662553965566363859963368062582041604347773182017678099839329640039734335610460179805746583078467529650128865905295696364217014508549489285749040255833687644001324723184972177205346134586983387702034750612570564319306754258635168160684017076885624758884130895065711392020602640117140069602541242580843862293715891762814150712934724905792295429819023675328060143102820373091268529089229005533720944080518071365302191771440313744001022924437326432431736289429807748213466122928853746158977659335419923604120148670271728906688204485793787853475769244840495120693161545323104618638623414030515322191141797107259946770485794398943662643641424426514186215910682338306267604419401910307144300920059387970442703545845390973061700798395448629224596178819509421424187561041919759681813447112680094851930323457439592199645260936205710779170653437529157833525437012819259315726178049093915155917738117239601900664473389523560435482030822925064639856487243918075833921878094934620849758150143842738409940431042851440638846020525813402018767868017050782530793028397342058821085098640893955725614617941066293083742912620008091278112146163956918881881324116273397270143678992786285772329779006485284805901167133366723848628246516285875488966503198261002830706231180997661740779663568550876829250630742940035305204300562267735377650840011041819778225762716756555949222591229967983634549171107863323655977901525560094247519250137144122637075890684590423594665940473190564924483086830616099277256739536679925559895400780842243055033583120991373479977396754348508559478412770073073354353878345655286979405754948003984559307739818236343565395809476940032030076620115088549498180338376325393661037198391846168974363367835693436709808178700824895186773601367965212552117374594109408052773376824225725720283339515120481934186266210458072045233925989510670156551937523635531737145626860685179349121013992787718004398051575801973488332001115062703421212581551887844729397806277792333187830305901156064565782373128491833735387945603377479883561666488154531872028608000422787457321942816281613426781986152876250544438406237728740397900959538339542933015711949907809467262122165360912772524746437827777324761973643670491039695584297385950059345974933399609142416937750532415887440423309744837310769127280486522483282126644794778799980667770610660500236757499113120530747047192159542344084324011828922181794389050595575068782452446979103717186377470749964802800822883706134767737658200972784118042925276786057259596454618721629630872997690224950134646716136437654440495124577601447358323450198845417550811930926224539817780308136000588523555310724629999007116089657055141963606545629038776996966861737916250364921505694137925442525867116818000554366502956952514455465284713539619061143639050080085692168749225337329751255882807789666415808959976645322414138946958928829395917536355898003254591655503545966102957865228465770025182020800740710882140439588322988387196525483288533692192164348077515289951420085897969333563831186200000822465175757357171762073335707089690775774818348807301475457652087097101392891743327372457567180606375019685340867889196781819301666179204791546380603009510851879628560634565916067895771377474172341933556464386287689110633490264009401961318970737122325531714389140352765849158922550865078626816173004823245316865070259765881779464815926138423899766895300452441059940099196224580706076019095107019583919511283120870728930262490167324871686464125204560865181067178803379629499764530296813091303356145732621911572354356674189130993820280991878945444215211552203172983586207283592085346000252353662174006637171549341341493176418908749249897533465460086103099707325161384170451138263440118389829846856621454197384847845650843545331325096323369275774389981126565930915519700801047099204479558355054915775187787778577379256328624753064036368179548669736270146353825221619995209031819532871495182825461765787038851082756407910770008102970690290901899501530150387551935537474742367496184215489824054474167497278817442093415123319363000153268737251637395632052742803660831915626622152423541119399731670474161457039043066536522670336369940392891730209243145600995062262813562861347283130305587280295982437461131567843636925082052602395754812854225587514476808232605214301511395066919330841656045423722026728681909663940553821126239368667993444711423892766645377903286909427072247712093003438029301638249347148809231121766067517917756032991971850642720272461173234638000347453054798535561446205434216432853899660664276439085757959921882073146447529273082055742813072223290477131464326461995327379748514095930714867478572654886345982419365632589000556628153631642370547264760605461615335183102384771254252494240961519615417031898140019849491274081214167566294978208885521787801152572684730118120333794518696014470845125862668051505607019072596082006874881465793362889594397090036238609771528878776085764542826189120365831085824267666728453527423969798338719696834171046469772201318759009479872864936933881620638186003161789608079912861841989187269656071397690818282521407174869618435894339817546581234278684051306705446117057977006994632436831283271510600074702584891684976434532104707738014502405509145757307026318247308647042976038404590079058383483479517100250852796703807755259021866250030563893870116658838254009247188657135132662882570553957650331770090890482971488423500189306766709057723107195041887842702549778946245280148421710278931759801263991082590606675809724578312889715303077973816377544053377909985735322240754697155390879216952093126200203583856779171788493080689963843373943271871168932173374693518843389575892568894863983302571437576248114831700206495067672854000948701024933922275524804806688417750775568092784536676866213367390825371770311213154673428069245441914189283902344488091244411072583255359156356859039032288201017678651144055694524397803071078941508003190302319043641982461300148847886336276779888999456845639764958986070705978778614628584932020467359208159729640182059004102189530843566502240246913550938511749232408164969579269629140419790690811408081582820489679413370552382245264041600727435877769933947853994653230562690067764274590198430449186099800590953160427530003887811450930838567922071707592329804148376531988133589571607921634095508681561676453468901145110486381877314811034814847222407782230568406533336305374095441452608079046432096820862452376301800795215535644892459013189272853373425217165648373909607606914556307805679366801311491072369384835772001044663890333225369352676349984092935540783057490352984832316724819430641351707221430208211313542040977733081853607500192567620944960818151582643914316109066528187761370375595364400619734214616834739422107963932459206621410674903984951595393562898865844166162905269829223613452714050063509171289313056000267750990687906184708118367020763688323964509363748830650598460936816198113586934183478639735977235808344249489872975968631692859140096787319668863530612081002911885889937596633027253030463015718282014944318994239064017699608171971241400861012977879511920390482880683088625404494538730448565288480875722249214340966586068934954256482594153724250146096455332576678465291449143715810573361565073009319931520765391847389840529791194076898089626012019659585995326222377262220562471817838295998397088970060150208017218694463358836240045019544446799655133083948495167485951567477729614013417888308952985743006379419406176298535888237460154764215974311643729582784707062844589006155499949849846933846135485346445407757702879506371949079858235666074584792089405783020803961026697509603163071159877490745320612635000962888731758643200014108846068151334191286960673055905561644550565411674360509164327986770407889896350453243877472659990627695914187546565785450893304584214495341288363071114776538198761374691244703277611058523965326432523595458805950338647655382518498072143938160426095830010185859090778839262822898331148403389960870107416914020097761577398674971333363411023822106576828338870094223468559594972504924431239082055793997012972454973177297064973497098367130228504693074563873829964139615491511284377809991370792647124038168926098007759430659809496539825057513406707585379319983019428564385661829193926262017781711022829630139518373669787968570577706865060410017106840725458463492669744020925213982318633517073628536368010852034750454541493375916548200555528732624783142390204149513161639147583162331663361315906622859053906989763726337588763993476555644127131073570711899058790899497367088619479551477244096499338690373209496971967725454855331174310139779865994870497053818897656568455330497123673953201623423615772116997332796591685605607893134971751628822567931005923364927555133322934808286329653960702049827661638441456427048004286135293578591886914909803234255925803049015274619409918887194479737250380457200962737576192807815340308559068877218830386604910230190737116350514349329416767399347519339581092434209197101467094144997114996135985905038265234652594966045527566086074286211668469280829845503881141428026227448520126178300943541738080429157402779621980003219486403933054979690848969203686185489313731901955135230862341590015457211946543294866610208130888631585976357654991780266178798794894065704757913123893116421428623206559898628807092712656457264285722675302988949890737912538147528962006072573703022491887091543706024998936582910686784249724115450295066587869574040406311285775916948930936482780220301922804283654507091134617076266066195177625500427810092114441608661127879929421833079426752994463285456518260710552203249428031268008491524329151155986681678142307754575854861467516648468424815638148467929500612209305349762881212978268481649582559920147566331830203745689348940664900619798212437896213767965669787079661491568316961337901734895261495156038558415109377685144461373842170677293881987758916064041054277540999829336591803263863916463235833108464417043914210857852460832883779746346875060682138101087783858843879257478244014332541087882046123780115219280312621675890399586596671355493561706131213572012549735095709501186324220115861487496763095737386195100889806453915747001997197579089635977341111283382327011701993900375488424075640245817260871379542712901561418538656636312934400748402900658345625333616705095879630724753472606453978935305708924316642808825733516537238347578111861976394790440061911740256278043658294109205954433139326664064903293450966175844715214094082297103410268869331457994373780730539150207502600210729920592573911437047859448932321586614857430068717399461317885701992728803852886153125566985331739109320580014579409518774304996121234000163679616303338474217393836458731873739944551284396097467745504333304660369454262836807164957542082160367243707888090535910811053076584865659628419528830151317441362503025307004371937462898285183288698514560145947129637936880354681009727066346268681430726959127879312385427112203028421513032451554640065592095185323688139472567321093669278832495937891102717365693630490505888106314680859073910609518973438103561138411628042533301451669154527901121878921504020823493012018434869969031008360256264541326541282542863365237220659774131064386823130341375562643102847052722772921703664448693563134719369272832222761958722257579554383411397297261011995994045469739118274477108630440440430034024060529613095303512079284379537934489584643985257188190413457933152203163191937563573633126889394073761646132432357884904491518939780183865662995344796741433974763245072693032414540559911181176727887336520208362761574798929051523240487800379020354886845868274752704859861987071812122159532409793417217462790636740964403145870245976566063406605088755072904055396290536940520624627792151897923624193629511104927457313735957986686490697375196651590898372477481314111430474947665509551958931281567721687437151091991762422745181863570791919832747068604713984654271854717796731519528205119116753591345836619077504064876027670039859698832103603153973878995543014152898725386353893905072961220521529318825253501158073689217845588262984060721131197997320980306340966373373917535226498191277195135136886575894094440400096442540279508941342093892890873614482634725755650225427104316929330211981475112943372650508288857193146270022768335115986469557957612989594908863484855429173492922099779341277250909568860388754308434608323572321932525829053749717518971559392424305543000771252570324936304245796093264312330252152665565422453988263652289291198040962472937502142539851253275488364752430367684586984889104244404852306419556306282459764120630056752939916406116588367427092629878752274314559846485532536521758636704121770762460599990456292995840183257029341721695890639415465618598368601210002558659248709763658709363901696005337336856446948611362349487508662468328964801764216303476258800948875941295144733436723809322429049684944003412006740918718438444099431701117725095105432922291930492321661815791613778423593014161842746818516606118442691377707931218608588037180720660834373568902351147703462927233655148845958497205574859048266715009592066886052182370199125104629588273470644914535686244044848985281398872370961863752054010974301657141445326506737483179204147591610800659869057988022176559731043828288406658533419498774595066222560316914312556093055044996694444543149514358356157047280846430542382695802989667062734659833419606435635469213878854111209423327656835512725840509028742394770121487546552604387036283819634167197243588605897681832051278172549169849282582341350761065269087138201579376780010275198137177800133130877432958600819330923833540488934131056271179209783871297997162491281889009212868896209360250698948246653231995752573152593428869665412075902604537594004253684817488052071334825400979442830174316187010453790779435442715795088080140961055925184895102020113807938946326352937812046313203695368268424491461622963407945770377399340451965785439626297082090563393959809348287403242743557958436577114066267276195224991836513028085929022251170301401237984526061911432820737258304290198122019006970489222086245715643837868369201933232495012174456340763797040889246946741045130790970646269539337197173644549953095531499506276476948083081789642213486004611006994511133111660213634357061100937831121072783518206404787228327201234123890468574788110053498654698221738566015089893375135288477162052068720311132479994548351025516983063760114473530978246241485268349062523611816066999863177702848906869046183127268209714401702060274727809385503123664699129983284931870504908557053805724223804888441198011279837843849505324595913815121563004789352469703112205870573186197635530067988492416245258893892178605581861466514851123078205276668383794545268865291386036669598787186029882646805359568608953808759892326840012414201300395733164335942748876411347446374440283387477722935369994409195061457159848664682778062862514128292212686548550972114161580131219551294027798687843075548810746471502810497637162138432145566580920325215698653056265309767680845032132724554159929588540721804904709459020018785040878288463344544102516542911839629889538257994927639250113235712311747305199755088200966509301213336630735792696055859104871604136876597325476153229429028388606534999514727787056866543707632179670949389490525608377717836667025591784819874354643063438373198521288328781420467280428181463864538470589360043849072604470337437454801501283147675819308002027738958577517975491034949303377699952920358291610165768567740567978356074410351703677328166902923862023233197919768131543124074739468994946662547656519562718644160382795456033135175082268170865573834693590004684197108238776170873593183612924991201300134045923309092134219930029711879813786628154154076082496970300895725510496950297065606429460130867511795311569880911759283206231655734898021242958508846791926608649271238012046848807463452145145524540629568674371180568176504360963017015431749277949293396317976688216722938280173938924419296305551815469608660762079635769293211764371669224250940615805473476357850712260506636283919127991342967871258378570207502000023975207636318395340545489772104939314689719843908698846498428096291037103592386937398327343536649617283393541761406911014413311300544468640137982568932109199336118754072870063610611743418311646272329770062069045501332523537696835580223612849721838417508400262263773939714364679480638417882278345839804065820739990942451525039616498983928072825202292695277161080260165840503262939152755740689452037268647554752305330140991106973476035764844201956489912225033210038735236980330958660817486330751849757204759782947316995481993683099179869510096851706688196713087941293319881931792878309916897429082391253442735487836443276499521414310484299212015258716820984369808164980299317231675895566120417229707891983912313030436599083938826604501055645855210338180213000321723240000979992390148296151632252660711089222198449491402674240066741145681135303976173971437618868459083892733231187058925801037611622467611595626870911986465303574688805428876371812925687283054955612883916571520935189166104478714916038251611282072878086786997631842706045378236307514687319551238743862398436639489398491712487785555373333537472225890310531666594259608781809592257402554051494610430727683516844883090840642690451751292292016489065366815256159780878766578626869915420884829690930367763912026088186491309948519583077355201102841413869259631189746246955907514383232310780500834552698356066683107094282367947091638804881069080013878056063192285475605492314979081159414662685369957898706953665541860973526989584578250451659820035126315338949723159915475590954107123670995428358075269318669824176810684347869283578798491457227042494389813706374939315712352299179827272303887052125744889038946504277764561906702031369062935281197650688873313459486973806092979428386224000584822393299996986560104828818760758385981995867586886600382232504819370078680344674241717169681378516934397641884405919044221823915509568695105214974723365920083084099725300324546498330670104200464003165985880244323828652592296949994026574626754794194734935207459814880784981627555233983334079607425029446928152042170810306189510491211552154552132315007344633654000550944484672998323620625895491345248321838656512221724222086276305979128200483441775180920689490213071958767104334027512272854625466595692210051876910873324145081549488050165026889578346879228171375450336199632698153881546255115357502041655301566125512734592488222445087912439735269902472458805653908767576062143624424582424222584866909588864737855139320483034513471009546955235085164365334373977580000000001/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "checked_cost_powers": 9, + "gap_to_q": "1679754956625544521335670993920703/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_free_sweep_delta_gap_to_q": [ + [ + "1/10000000", + "1.6797549561255445e-10" + ], + [ + "1/1000000000000", + "1.6797549561255446e-15" + ], + [ + "1/1000000000000000000000000000000", + "1.6797549561255446e-33" + ], + [ + "1/1000000000000000000000000000000000000000000000000000000000000", + "1.6797549561255444e-63" + ], + [ + "1/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0.0" + ], + [ + "11/100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0.0" + ] + ] + } + }, + "scope": "Independent balance derivation and margin comparisons for this package's supplier endpoint; the supplier native admission is bound by verify_release.py; inherited all-size assumptions remain." +} diff --git a/research/capped-fusion-t74-k554/outer/LEDGER.json b/research/capped-fusion-t74-k554/outer/LEDGER.json new file mode 100644 index 0000000000..c8ebf991f6 --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/LEDGER.json @@ -0,0 +1,556 @@ +{ + "status": "PASS_FINE_PRIME_PADDING_EXACT_ARITHMETIC", + "scope": "Conditional fine-prime padding composition. Fresh native admission is required by verify.py. The cited prime theorem, written gauge-free theorem and inherited all-size interfaces are not proved by this arithmetic. No independent human review is claimed.", + "geometry_changes": { + "theta_power": { + "rational": "2", + "decimal": "2" + }, + "halo_power": 48, + "core_power": 128, + "matrix_exponent": { + "rational": "45/16", + "decimal": "2.8125" + } + }, + "complex_lower_short": { + "rational": "16797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999999/10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999999" + }, + "complex_lower_pinned": { + "rational": "419938739031386130333917748480175644249577859625645073865081880040716137065081409706576414033211158068612829227146555243017612030041353035692825159173239178933740631847655731928711354524888439084278118889703494196035138259668639470489140469950172313542804941871870923668923264245697230689329813891401671391602931309612412749834956768928820928567539426440577306509652942988913844375353663034136577720296436729395200628410136491963202700420241714033494644040735948080670620538247133230952999734715349930869566628059833435256412673368402861717500631759619596335846868782123498907539070467896714448106715892916366532257507410425155146843652519849326636796340555821157723636627985615513840575841502817186038962968446056843893857559613566664209661736193113764963495937500259003783587822916692587729951551207667218113548542596924672870369780038857294463360922881479879489730310011476699431746130028633690838388086748465705536013617053073211910743371436162580118076103248110720436778112506240983887199383810799223719768831895198638926752987135846768422959804984989658505460580380461537674850625070805781662130216454685240127592184790346266649307540473126156695866973306425695604748342140683986351251507723520022177443520074290632015718618127683416866493511785050324949984436047294022410235328196122909678356279326678736038746819576552809950179902812130982673925672588190223412985289425555625762643265652731827781639347539106077316980392285822790662430187092274383844080651617363928179571626377373612150301439972012257370106803999557124289363379541106257420127885559058135322271557309740242315419333712459484970743650896835077484494588671437732209922047152907817380151334932369920342235795435362956672521697803926888425322908360088214773573672771427894444032976991290366450163141473866397775182954341575727389610332082488337294008394759983670930982197486748387448370808031552130714190709550516312400049482067739076210779504234608655970782488348916297846381802076854623238053913613118407831893402677692900757078318015704105873065558077236035047741715545572541151747636692620399753588853085981792835910958216625336585816867552640941216830890113494320902445697151175807051547730347779115132678898352871118311734549289330240253649232812885260947821989387186337834539459464171509514684939273342263329799194979096323544984397651818198270459799147471608710467323855082140414679341112193732829193780130031474606620521873557838596584180476031474457405384825028896311152338074793930403413461885587966799321506682456692894669759012897240582166983497231710428269875763373533222747420532350904610551050550497069798967312898992801281569810790051978443445824030877027129565003940333011968261778530182440538278981485595395828508794381667331255910616022738017922398962393968442313485565644620525543985364640698021320375152300176647094959853683959306800424653752182459072205572950173729262568204008375949296922829405048570432242933164486356672924471822744779189636265261277020511169786980188047081463619632502005359709901447030055857797576242793903005234130803150878564688886958780254903385986821313786182348252522700891923660902992797078413544788802012928027198479397094582545546516189106707615164973251011616891769916559438890800880898455311389680042671962099486867276458540887913651843169112708321757259666136679710252972616487259141988427578179226417389220587335879846125274075801047019776511017937021954910701560447003428538836025191922410247539926370878277352190678349626025165572086297048581451998303300879984321774955194568599840682918487457597706110299196062377365895339001734878439941259876964826652534837983050225930657447032561795463735558149349348999419553908719852620773356702609434117819046133674948966806479871812550039879648978301156090164403525335456811325777569573432991510576801517112546918358088915471579461430820333944943292205517821565750278536420568439814623736691955829143425447926431755878878259345571872195547703000341804823599328539062665012062981075360169094462299861478432775580741380001944590215120671069873755628296839076343430038409507451677736291155231171732859920263940848904337948281161709077497736119485178645354549104525467980138416738667242805106338254576033293413753122035341421246415449350421187776688408382073768291698360434939705884562805974565936347776909731189018080014371070840884435599412092928165049779313755012691995902812599285684891758197703695839697924511785063828992294115582686108278035823400111894448113058014095302085965153383382457092623718749571338539788132980281387617595801994521543120331672963011203457955203746357086115247431238285587334389145449071337479173505769589716878652162333520439600875351700631688545889327593752242290053082740405719169986057925548886818167068345317232779551530450506892292524054816443459129337702765692988338766882709067698782432569781347477661594519377229866280496474880677516965393292405271364850948323283522104326729026599315268403437519201456332542227686726829989345909271932080261534086623291607539395847357208354594320757543206002284811143613806462012883817805613380610329334239070223206209950205331342569437134984912211848095319775372695011658563149693280420641079217341518169140429697815643280406440878035819918696819127066216054535564436444909216631323746217081601779392691570022193071175622961923505289715948330045531821423128840628824425946664897660976066784942774403465419891836840830046650499387351233282988255096552107440866385830263638467941963265785765381793633952359869843682372246004525166803794611090966957515970446649918294196092936763459825844510463531358269644883581997406215648437525851674857014022559368461356641296203494529675098463503293979726484185236260419368327725859914858268820953292214909741902109426982505666999539920635814096062186269161824903369514015185592380082504158270230706956241733354604876883487600274805834570483251533611462047444456591524813537818027597104628990256797335689096796666298825589043827127627240266785568249087617761116604034905505289939834982781775406240813032205362979909323971999710114853832733370132568125172435895443189550555361971844349263416128447914634000844023436564384160352371850986820087570908740806125927536046651622861994544175723870177629338916195627601373424959545050057077045764892358965957365585896936177263936113140477219873877056360788493394757021298527902546877392597956424003438632029925118755407804687894011361672992305210796887442018088569798245737847364918206277255414805285284413567383665276609911724667108958211673463126481487272564971728323462150235055257297814607513787142848854816739855112888639765684303443226008693131128378845954566652690117174132579653069919527434226888237058049761809926352342560233822621383974174852301256520330116577910644729232506287972534400244225225076941030788835818401078176210366232627017940870130555977541371522373690588802342182312103898405691882449351939457609338868474930167183099416112270796863767832170110716182138558335724845019706893940193183581029340614176629055664961438359862019355725593043475992192996299725725784759493251906713560963348690308330081395271192469267204394268986790834167845150878769701605078096073537177793945888588561693437111872038869189348280503244847778687075109499818360656689937695339646336207018415941465272893190756284116871441367373220974663354317055880379536083938621556554938488604960388282383107350657425532435948744695927872786372795068390932234013867947894566330067156249266138994684845555817358251017150254787268638858644797195143919903399901436318697198474143590731865441762511613873885825362042190464876384329465796172032446896762668187895522347335128149867842218113360581660442961386594264570675473763366902257896357176662106209407753655108642377952355145818126212390442785469550550376654499351478872118158925480187531417801783499801990923284086175824792686095329700605970375736357511128842570579312000428338368264768896237060498072747358537950156207579306142319262220738836540095499211407188463250975433995326216732525647458131748986665064344282322593499907716254087171290835614232009758725301871962628671112806985617634525168526143091857746657633538656062075647814362491690687714821196240556986292101057652465414034780031833933528963566443891604784997133577071648980977338731881369109680946109793120160036447901401936388441275260416012154961429530443438664234126875487696543568982093632340777432570211306770959206482547335683006776832054711579310787048221193734237187991096198651423465502012754463002460665508105526191363026656498038642451943549151516676861486226153760272446397872588254534308018992959353026590790601722581030385582090335500577577122263209916203624992651287157206778397272342707282012104277833204076493241455526125711324749359057936366136334505889661375921598216739684581821965549313259212076364450810627002673487135621648484319912711674693265783988061833748498126434015931141028993306340334907562725499611559000512197787632111136753685863208159873054598968258303389161866778433573770514470760207221699501607906147177120492262732681417211785634990985010170061801111201562771992058339031414835834409976999131837590466204760525111289071979553851380984680200134117823243469031078093640450347065760135675718627414619137960525010717379378144342523990397015455868208112486027094424031846018320840054022717828164005450515204208667332974095387055616489552855507500350147793945479152100964520899615199683338116168740189048429508058391888757180201132641365954272602952383841888827497965047690003973372895814930555218451072290092002491066961561035034766221387146910344181062063411944617269738014115099332363773670448122111365471670815545927710739534740615210789538307161683547510671076801661467643990319778158242682360265495959066742412772720230693858339784645696686592822540655238766608943255463279931477304824980027979961682032845441273399776754522508526117592570989206291417809569324356036090459607561966614203534238913299003756870963421251448212748995468681140831055864944047452797007914659803269616127788067846207947481960230981393511300106756388702607774945856722615312300693190287221319226329047436265784561883403272767719228047193052869039555305312477699106683789528200973647226045580375513310194949982854435649639170184480043259432033206443547223252085068994953230726783838530767013750039309859790029052777878531381548974588592624643258814455298399323178114007694035019756387772789046008592419923542827001049310228432266667800850940985429566271107612919887193514995719262289550934457941720923250476716795614983087955429181434516336000854993473459139273573897012247257592008124405155286718222550008985104604846287659151599129442906082119753000264220936496892228939676904732006008126219287457933072393254940058714086864781017557349267084545774524224683330933406312436871214554292554537223680731078438972397156755991856799581635101233412724722966465630411068512762901745462087450556825218258669435922106519314703767750877143110139513051027436531641603979053339831893289732240948942802153545547175246328660482640271876330809755684137141723757418771754804658106993008411437510944701335640154717829508101387082492675816957004250693262860159475637177768278059336981804422387816521531060677494857136624873561398583987292684383351721185198188952076747452830411223458701415284450769819640877111615396166559026927808825428552442261157959044637683124328388717585807030337412839612413401831405449811816690073234513569813764649373239745661644888379884312806436511947436208506499745033387489144456983931234434968855885244045980599467995178138330619666270579732604841808502032471966872301721681807001831596870897919782611340899116095008033517998013283219476991009712670846076623517493556704735215181789149274572525535712547987208315617799933763840751391139732693270650830614898262469371471784034662287068241591965799146155718762055793455246714430398969867994142996519872937870957806885314205411859292464353263754710385228509048816233596992844858981345436573545538549723313952795974096431734890411427984312799948853778133678378413185528509612589326693853557312692051117033229003819793992566486413554665589775710310607326211537757975243965341922733844769068068829298474233890442910144637002661475710280052816867817928778674290689204465883084686619779029904484642784953997030601477864822707730451346914960080227568538770191059024528928790621947904012015909327644365995257403483827128020390017736953189714461041467328123542108323728149359037034213691097545304242204113094138019904966776330523821978225898458853746768007175637804096208303906095253268957512092492807863079502978447857427968057698973709329899061606599147460873460348580132897058945745067955302213719269102946685345812854368999595436094392691802154055905933794186330136492816050360685711383511049675735759704941643331663807568587674185706225551674840086949858464688440950116912961016821572456158537468462852998234739784971886613231117457999447909011088711864162172202538870438501600818272541444606833817201104923721995287624037493142793868146205465770478820266702976340471753775845658469195036137163023166003722005229960957887847248320843950431326001130162282574572026079361496346332282306082717235651029712252599800772034613009088182821730209526152998398496168994245572525090983081183730316948140080407691551281831608215328164509591064958755240661319931601739372394131270294529597361331158788713713985833024243975903290686689477096397738303700524466492172403123818223413142718656965741032543949300360614099780097421209901325583399944246864828939370922405607763530109686110383340608484704942196771710881343575408313230602719831126005821916675592273406398569599978860627133902859185919328660900692356187472778079688113562980104952023083022853349214402504609526636893891731954361373762678108611133761901317816475448015220785130702497032701253330019542879153112473379205627978834512758134461543635975673875835893667760261060000966611469466974988162125044343973462647640392022882795783799408553890910280547470221246560877377651044814140681126462501759859958855814693261613117089951360794097853736160697137020177269063918518456350115488752493267664193178117277975243771119927632083827490057729122459403453688773009110984593199970573822234463768500049644195517147242901819672718548061150151656913104187481753924715293103727873706644159099972281674852152374277226735764323019046942818047495995715391562538733133512437205859610516679209552001167733879293052652053558530204123182205099837270417224822701694852106738576711498740898959962964455892978020583850580640173725835573315390391782596124235502428995705101533321808440689999958876741212132141411896333214645515461211259082559634926227117395645144930355412833631377121640969681249015732956605540160909034916691039760422680969849524457406018571968271704196605211431126291382903322176780685615544468325486799529901934051463143883723414280542982361707542053872456746068659191349758837734156746487011705911026759203693078805011655234977377947002995040188770964696199045244649020804024435843956463553486875491633756415676793739771956740946641059831018525011773485159345434832192713368904421382282166290543450308985950406052727789239422389841350820689635820395732699987382316891299668141422532932925341179054562537505123326726995694845014633741930791477443086827994080508507657168927290130757607717457822733433745183831536211280500943671703454224014959947645039776022082247254211240610611071131037183568762346798181591022566513186492682308738919000239548409023356425240858726911710648057445862179604461499594851465485454905024923492480622403223126262881625190789225508797276291625136059127895329243834031849992336563137418130218397362859816958404218668892378822944030013416476291927148047846673173866483181502980355413489537842719950246886859321856932635843484720635985200878126943421607818153745897369880212259357288720624276159588369739284924430246654033457917197728813898663565904516802972308943688031566600327764428805361667731104835654528646387614395349828098534918087532642559538443911696624104112198350401407467863986376941338268099982627347260073221927689728289178357305016966786178045712102003905896342677623536345897212859346388835476143426783676900233631012574295203464256626071367255682700879031718370549972168592318417881472636761969726919233240844880761437287375287951924019229148405092999007525436295939291621685251089555723910609942371365763494093983310274065199276457743706866597424719649046370195899656255926710331855520280145498188069511423556061195711772858690543981708445708786616663577323628801510083064015158291447676511389934062049526006356753153305918968090699841910519596004356907900540636517196430115459085873929641256519078205283009122670938286065797434664727694147101149650268378158435836424469996264870755415751178273394764613099274879724542712134648684087634567647851198079770496047080825826024144987457360164809612237048906687498471805306494167058087299537640567143243366855871472302117483411495455475851425578824990534661664547113844640247905607864872511052687735992578914486053412009936800445870469666209513771084355514234846101309181122797331104500713233887962265142230456039152395343689989820807161041410575345965501807831302836406441553391331265324057830521205371555256800834871428121187594258414989675246616357299952564948753303886223759759665579112461221595360773166156689331630458731411484439342266328596537727904290535804882775595437779446370837232042182157048048385589949116067442797215273780109846446052924599840484884047817900876934992557605683186161005550027157718011752050696464701061069268570753398976632039592013517990897049794890523457821674887987654322453074412538379591751521036518542979010465459429595920858975516029331472380887736797919963628206111503302607300267338471865496611786270490078477540695009970452341978623499805609427453458071603896414620383509792581173400593320521419603918295224565921916177326554942744475680906134259448259257638879610888471579673333184731295227927369596047678395158956877381184909960239223217755377049340536357331328739141717581304519619654272184609716031659934425446381530758211399947766805483338731532366182500795353222960847125482350758384163759028467932414638928489589434322897951113345907319624990371618952751959092420867804284194546673590611931481220231779969013289269158263028894601803377039668929466254800752420230321855056707791691854736508538819327364297496824541435534347199986612450465604690764594081648961815583801774531812558467470076953159190094320653290826068013201138209582787525506351201568415357042995160634016556823469395949854405705503120168348637348476849214085899252784050288046799115019591401437929956949351106024403980475855965845568729775273063477571735575956213887539282951670696553252287175870292313787492695177233371166076735427542814209471331921746349534003423961730407630507973510440296155095518699399017020700233688881136888971876409108085200080145551496992489599139065276832058187997749022777660017243345802575241625702421626113519299329105584552350712849681029029691185073205588126992261789201284417813520860764646857770549692225002507507653307693225732677729612114856024681402546007088216696270760395529710848959801948665124519841846442006125462733969368249951855563412067839999294557696592433290435651966347204721917772471729416281974541783600661479605505182477337806126367000468615204290622671710727455334770789275232935581846444261173090061931265437764836119447073801733678373820227059702483067617230874075096392803091978695208499490707045461058036858855083442579830501956494629154298995111921130066251433331829448808894671158583056495288826572020251374753778438045897210300149351377251341135146751325145081643488574765346271806308501793019225424435781109500431460367643798091553695099612028467009525173008747124329664620731034000849028571780716908540303686899110914448858518493024081316510601571471114656746979499144657963727076825366512798953739300884068324146318573181599457398262477272925331204172589972223563368760842880489792524341918042620841883416831934204668857047304650511813683120561800326172217793643446321464405047060455025131645569026022426137795175033065481339525151401613727257233441284493011006700256475147309055117171577233475143816302339918828819211394150133360170415719719605343251412418558871603449703831753622243333853259585683517301964897508616918077927178647599785693235321070405654254509838287203709847549236269029504055640276013137480977139951863121190359609232984572046556139058480669754488490463144182474282533529161630032624033020945378289540144926645292750144250193200704748086738267370251697723621695696285689416576535958507724805942928598688627573993691084952822913095978542129861018900999839025679803347251015457551539815690725534313404902243238456882920499227139402672835256669489593455568420701182117250410986691060060255296714762104343805344178928568839672005068559645364367177136785713866234850552505463104373092623551899696371314848875405645422814698750053170854465660787513794227485246670606521297979684435711204152553453175860988984903859785817274645443269146186696690241118724978609495394277919566943606003528908346028662350276835727174086964472389837528598436599575423783542442200665916092884612271207256926624167576578759218092576603524969389534732511855939351086575917520872003992621683408489812715532552966754969010089378105189311601716510646016925421584151933104913255236925242198072079244531115742776931307891466135305900612054196797947286122950008533170409836806804176838208344576779147804289457107376958355811012682656246965893094945610807057806037126087799283372945605897693810994239035984368916205480020670166432225321914693439321399372513245214524940683788994206925625161845213130690244955509677304212649900140121045518201132944435830883649414900304981225578796217987709136956431022864354921929073067168184353279962579854967082718733319164745206018463762326369677301053234714553784167859558713324173138082621094406901180260477996904412987186097817085294539702278343033666796754835327451691207764239295295885144829486556533427100281310963473042489624869989463503970371304428147607027553383920669257128496564130026934105714900363559807355692343721650733413044533970999271029524061284750193938299991816019184833076289130308177063406313002772435780195126612724783334766981527286858159641752122895891981637814605595473204459447346170756717018579023558492434127931874848734649781403126855085740835565074271992702643518103155982265949513646682686565928463652043606034380728644389848578924348377422267996720395240733815593026371633945316536058375203105444864131715318475474705594684265957046304469524051328094821943079418597873334927416542273604943906053924798958825349399078256501548449581987186772933672935872856831738138967011293446780658843482931221867844857647363861353914816777565321843264031536358388861902063887121022280829430135136949400200297726513044086276144568477977978498298796973519345234824396035781023103275520767800737140590479327103342389841840403121821318343655530296311917693378382105754775424053010990806716850232760162928301261837746365348379272972004440941163605633173989581861921260053547423837975609981048982255657706586262364757006900646409393892023379510329139126860468162951779842706487701171696829669745562246354797230185473152973968768610392405103818790318524444753627134313202100665675465131240167420455081376125934294428476252616724522402053435921613915628142445400411878862740906821460404008362646569764300767286407264110163424023589744044162320432708169046124796756198616498007015058394819842301306050222849292355063730682305304746351938973923534058737324942096315539107720586850796963943440100133950984682951681331304123238675090436140243243155671205295277979995177872986024552932895305355456319275868263712217488728644784153533489400926244352831367474585557140342686498861583244200676522102119350520254556825757228541325353895011032936137454521556980562284578269583821383903373708547312514124051422030378784722849961437371483753184787710195336784383487392366721728877300586817385535440097951876353124892873007437336225581762378481615770650755544787779757384679022184685877011793968497162353004179694170581628645368506062386284272007675723373173912068164793911461876970000477185350207990837148532913915205468029226719070081569939499872067037564511817064531804915199733133157177652569431882525624566876583551759911789184826187059952556202935242763328163809533878547515752799829399662954064078077795028414944113745244728353885403475383916909210419311078820349291907862659074169694077865431114603439069570598140963966958281321554882442614826853638317242557702075139721257047586664249520396655697390881490043744768520586326467754273215687797757550735930056381451906812397299451284917142927733674663125841039792620419459967006547100598891172013447808585579667073329025061270246688871984154284372195347247750165277772842524282082192147635957678472880865209850516646863267008329019678218226539306057294439528833617158224363707974548562880261493925622672369780648185809018291640137820569705115908397436091372541507535870882932461946736545643089921031160999486240093141109993343456128352069959033453808322975553293447186441039510806435100141875435905549539356555189531987465052587667338400212371342370328556516729396204869773120299787315759125597396433258729951027858491284190649477310461028227864210245595992951947203740755244898994309603052683682353109397684339815231586578775426918851829602711481130032977401710728018685145895471830302009532585629837862822102078171144296686636190238750408174348595703548887441484929938100773696904428358963137084785490093899049651475538895687714217808106581539903338375249391277182961810147955537652662947743460451467686523033140141317772502345223425024686176152595845910517889325699769449650274443344416989318282146944953108443946360824089679760638583639938293805476571260594497325067265088913071699245505331243235576141897396563984443376000272582448724150846811994276323451087687925736582546873819409196650006841114857554656547690843636589514279914896986263609530724843816765043500835753406474754572147309713788809755577940099436008107807524733770204309243921849760532376514844389706471340690118223496600575379187737055305391069720906926674257443846089736166580810272736556735430698166520060640698505867659732021569552309562005383657999379289934980213341783202862556179432627681277985830626113853231500279540246927142007566765861096856874293585389365672572451394291920993439022435298610065607846222559462676424859475118141893078392721670953983739215067347186734511615957748393363772292003520572963909754764527048999060747956085576832772794874172854408018505523087100253618037494338214384412634740012245589951674534939333168463210365197207044756419793156170133726192338528548580569673250024263610647156672814618391016452530525473719581114108166648720410759006282267846828081340073935583560928976635978590926806773076470531997807546369776483128127259924935842616209034599898613052071124101225448252534831115002353982085419491711571612971601082196279482414816133591654853806898838340104011593422843796263026550252666872617174021864067791980860227198343241245886591456721308265320499765790144588061191456320340819353750439934993297703834545393289003498514406009310668592292296195875151484955213724475152485146719678526993456624410234421505954412035839688417213255098937852074557660403669567536438099397657559626827392742723772968521566281440971591174781951849149228412536102535330184101165589163853085991303053779035184722409226519566961896018211535339411781416538787452969209726326182107464386974668185804043600432851606437081071489624899998801239618184080232972725511394753034265514007804565057675078595185448144820380653130083632823167519135830322911929654449279334434972776567993100871553394540033194062296356496819469412829084417686383511496896547724933373823115158220988819357513908079124579986886811303014281766025968079105886082708009796708963000452877423748019175050803596358739885365236141945986991707974836853042362212965527398136567622262384733492950444651326198211757789902175504388748339498063238150983452066959125683462407512139762010852634150225900315845041006524495157414665590164345602935334005903410356084504155128545880437327863225608177836175023929284475785039399237064158950781509591750985034138416205221693979138514605400804384348478170045803058669774947217707239483090989349983913837999951000380492585192418387366964445538890077525429866287996662942715943234801191301428119056577045805363338440647053709948119418876619420218656454400676734821265559728556181409353715635847252219355804171423953240541694776064254198087419435896356095660650118407864697731088184624265634022438062806880078168025530075414375610722231333323126388705484473416670287019560909520387129872297425269478463615824157755845457967865477412435385399175546731659237192010956061671068656504228955758515453481611804398695590675434502574020846132239944857929306537018440512687652204624280838384460974958272365082196665844645285881602645418059755946545999306097196840385726219725384251045942029266865731502105064652316722906951323650520771087477417008998243684233052513842004226220452294643816450228582096236534066508791159465782606535821060075427138647875280509314681253034214382385041008636384805647393712755548052674786111771904664898431546853235940117465556334327025651309695351028580688799970758880335000150671994758559061962080700900206620655669980888374759031496065982766287914141515931074153280117905779704047788908804224521565244739251263831703995845795013734983772675083466494789976799841700705987783808567370385152500298671268662260290263253239627009255960750918622238300833296019628748527653592397891459484690524475439422392272393384249632768317299972452775766350083818968705225432737583908067174388913788895686184701043589975827911240953965525489346402061644783298624386357268726670215389497406154456333792745922525597491748655521082656038591431227483190018365092305922687244232124897917234921693724363270375588877745604378013236504876377059717304561621196892818778770878788870756654520556763107243033975848274326449522652238245741781733281301121/250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.001679754956125544521335670993920702576998311438502580295460327520162864548260325638826305656132844632274451316908586220972070448120165412142771300636692956715734962527390622927714845418099553756337112475558813976784140553038674557881956561879800689254171219767487483694675693056982788922757319255565606685566411725238449650999339827075715283714270157705762309226038611771955655377501414652136546310881185746917580802513640545967852810801680966856133978576162943792322682482152988532923811998938861399723478266512239333741025650693473611446870002527038478385343387475128493995630156281871586857792426863571665466129030029641700620587374610079397306547185362223284630894546511942462055362303366011268744155851873784227375575430238454266656838646944772455059853983750001036015134351291666770350919806204830668872454194170387698691481479120155429177853443691525919517958921240045906797726984520114534763353552346993862822144054468212292847642973485744650320472304412992442881747112450024963935548797535243196894879075327580794555707011948543387073691839219939958634021842321521846150699402500283223126648520865818740960510368739161385066597230161892504626783467893225702782418993368562735945405006030894080088709774080297162528062874472510733667465974047140201299799937744189176089640941312784491638713425117306714944154987278306211239800719611248523930695702690352760893651941157702222503050573062610927311126557390156424309267921569143291162649720748369097535376322606469455712718286505509494448601205759888049029480427215998228497157453518164425029680511542236232541289086229238960969261677334849837939882974603587340309937978354685750928839688188611631269520605339729479681368943181741451826690086791215707553701291633440352859094294691085711577776131907965161465800652565895465591100731817366302909558441328329953349176033579039934683723928789946993549793483232126208522856762838202065249600197928270956304843118016938434623883129953395665191385527208307418492952215654452473631327573610710771603028313272062816423492262232308944140190966862182290164606990546770481599014355412343927171343643832866501346343267470210563764867323560453977283609782788604703228206190921391116460530715593411484473246938197157320961014596931251541043791287957548745351338157837856686038058739757093369053319196779916385294179937590607272793081839196589886434841869295420328561658717364448774931316775120520125898426482087494231354386336721904125897829621539300115585244609352299175721613653847542351867197286026729826771578679036051588962328667933988926841713079503053494132890989682129403618442204202201988279195869251595971205126279243160207913773783296123508108518260015761332047873047114120729762153115925942381583314035177526669325023642464090952071689595849575873769253942262578482102175941458562792085281500609200706588379839414735837227201698615008729836288822291800694917050272816033503797187691317620194281728971732657945426691697887290979116758545061045108082044679147920752188325854478530008021438839605788120223431190304971175612020936523212603514258755547835121019613543947285255144729393010090803567694643611971188313654179155208051712108793917588378330182186064756426830460659893004046467567079666237755563203523593821245558720170687848397947469105834163551654607372676450833287029038664546718841011890465949036567953710312716905669556882349343519384501096303204188079106044071748087819642806241788013714155344100767689640990159705483513109408762713398504100662288345188194325807993213203519937287099820778274399362731673949830390824441196784249509463581356006939513759765039507859306610139351932200903722629788130247181854942232597397395997678215634879410483093426810437736471276184534699795867225919487250200159518595913204624360657614101341827245303110278293731966042307206068450187673432355661886317845723281335779773168822071286263001114145682273759258494946767823316573701791705727023515513037382287488782190812001367219294397314156250660048251924301440676377849199445913731102322965520007778360860482684279495022513187356305373720153638029806710945164620924686931439681055763395617351793124646836309990944477940714581418196418101871920553666954668971220425353018304133173655012488141365684985661797401684751106753633528295073166793441739758823538251223898263745391107638924756072320057484283363537742397648371712660199117255020050767983611250397142739567032790814783358791698047140255315969176462330744433112143293600447577792452232056381208343860613533529828370494874998285354159152531921125550470383207978086172481326691852044813831820814985428344460989724953142349337556581796285349916694023078358867514608649334081758403501406802526754183557310375008969160212330961622876679944231702195547272668273381268931118206121802027569170096219265773836517350811062771953355067530836270795129730279125389910646378077508919465121985899522710067861573169621085459403793293134088417306916106397261073613750076805825330168910746907319957383637087728321046136346493166430157583389428833418377283030172824009139244574455225848051535271222453522441317336956280892824839800821325370277748539939648847392381279101490780046634252598773121682564316869366072676561718791262573121625763512143279674787276508264864218142257745779636866525294984868326407117570766280088772284702491847694021158863793320182127285692515362515297703786659590643904267139771097613861679567347363320186601997549404933131953020386208429763465543321054553871767853063143061527174535809439479374729488984018100667215178444363867830063881786599673176784371747053839303378041854125433078579534327989624862593750103406699428056090237473845426565184813978118700393854013175918905936740945041677473310903439659433075283813168859638967608437707930022667998159682543256384248745076647299613478056060742369520330016633080922827824966933418419507533950401099223338281933006134445848189777826366099254151272110388418515961027189342756387186665195302356175308510508961067142272996350471044466416139622021159759339931127101624963252128821451919637295887998840459415330933480530272500689743581772758202221447887377397053664513791658536003376093746257536641409487403947280350283634963224503710144186606491447978176702895480710517355664782510405493699838180200228308183059569435863829462343587744709055744452561908879495508225443153973579028085194111610187509570391825696013754528119700475021631218751576045446691969220843187549768072354279192982951389459672825109021659221141137654269534661106439646898668435832846693852505925949090259886913293848600940221029191258430055148571395419266959420451554559062737213772904034772524513515383818266610760468696530318612279678109736907552948232199047239705409370240935290485535896699409205026081320466311642578916930025151890137600976900900307764123155343273604312704841464930508071763480522223910165486089494762355209368729248415593622767529797407757830437355473899720668732397664449083187455071328680442864728554233342899380078827575760772734324117362456706516222659845753439448077422902372173903968771985198902903139037973007626854243853394761233320325581084769877068817577075947163336671380603515078806420312384294148711175783554354246773748447488155476757393122012979391114748300437999273442626759750781358585344828073663765861091572763025136467485765469492883898653417268223521518144335754486226219753954419841553129532429402629702129743794978783711491145491180273563728936055471791578265320268624997064555978739382223269433004068601019149074555434579188780575679613599605745274788793896574362927461767050046455495543301448168761859505537317863184688129787587050672751582089389340512599471368872453442326641771845546377058282701895053467609031585428706648424837631014620434569511809420583272504849561771141878202201506617997405915488472635701920750125671207133999207963693136344703299170744381318802423881502945430044515370282317248001713353473059075584948241992290989434151800624830317224569277048882955346160381996845628753853003901735981304866930102589832526995946660257377129290373999630865016348685163342456928039034901207487850514684451227942470538100674104572367430986630534154624248302591257449966762750859284784962227945168404230609861656139120127335734115854265775566419139988534308286595923909354927525476438723784439172480640145791605607745553765101041664048619845718121773754656936507501950786174275928374529363109730280845227083836825930189342732027107328218846317243148192884774936948751964384794605693862008051017852009842662032422104765452106625992154569807774196606066707445944904615041089785591490353018137232075971837412106363162406890324121542328361342002310308489052839664814499970605148628827113589089370829128048417111332816305972965822104502845298997436231745464545338023558645503686392866958738327287862197253036848305457803242508010693948542486593937279650846698773063135952247334993992505736063724564115973225361339630250901998446236002048791150528444547014743452832639492218395873033213556647467113734295082057883040828886798006431624588708481969050930725668847142539963940040680247204444806251087968233356125659343337639907996527350361864819042100445156287918215405523938720800536471292973876124312374561801388263040542702874509658476551842100042869517512577370095961588061823472832449944108377696127384073283360216090871312656021802060816834669331896381548222465958211422030001400591175781916608403858083598460798733352464674960756193718032233567555028720804530565463817090411809535367555309991860190760015893491583259722220873804289160368009964267846244140139064885548587641376724248253647778469078952056460397329455094681792488445461886683262183710842958138962460843158153228646734190042684307206645870575961279112632970729441061983836266969651090880922775433359138582786746371290162620955066435773021853119725909219299920111919846728131381765093599107018090034104470370283956825165671238277297424144361838430247866456814136955653196015027483853685005792850995981874724563324223459776189811188031658639213078464511152271384831789927840923925574045200427025554810431099783426890461249202772761148885276905316189745063138247533613091070876912188772211476158221221249910796426735158112803894588904182321502053240779799931417742598556680737920173037728132825774188893008340275979812922907135354123068055000157239439160116211111514125526195898354370498573035257821193597292712456030776140079025551091156184034369679694171308004197240913729066671203403763941718265084430451679548774059982877049158203737831766883693001906867182459932351821716725738065344003419973893836557094295588048989030368032497620621146872890200035940418419385150636606396517771624328479012001056883745987568915758707618928024032504877149831732289573019760234856347459124070229397068338183098096898733323733625249747484858217170218148894722924313755889588627023967427198326540404933650898891865862521644274051051606981848349802227300873034677743688426077258815071003508572440558052204109746126566415916213359327573158928963795771208614182188700985314641930561087505323239022736548566895029675087019218632427972033645750043778805342560618871318032405548329970703267828017002773051440637902548711073112237347927217689551266086124242709979428546499494245594335949170737533406884740792755808306989811321644893834805661137803079278563508446461584666236107711235301714209769044631836178550732497313554870343228121349651358449653607325621799247266760292938054279255058597492958982646579553519537251225746047789744834025998980133549956577827935724937739875423540976183922397871980712553322478665082318930419367234008129887867489206886727228007326387483591679130445363596464380032134071992053132877907964038850683384306494069974226818940860727156597098290102142850191948833262471199735055363005564558930773082603322459593049877485887136138649148272966367863196584622875048223173820986857721595879471976571986079491751483831227541256821647437169857413055018841540914036195264934387971379435925381746294182154198893255811183896385726939561645711937251199795415112534713513652742114038450357306775414229250768204468132916015279175970265945654218662359102841242429304846151031900975861367690935379076272275317193896935561771640578548010645902841120211267471271715114697162756817863532338746479116119617938571139815988122405911459290830921805387659840320910274155080764236098115715162487791616048063637310577463981029613935308512081560070947812758857844165869312494168433294912597436148136854764390181216968816452376552079619867105322095287912903593835414987072028702551216384833215624381013075830048369971231452318011913791429711872230795894837319596246426396589843493841394320531588235782980271821208854877076411786741383251417475998381744377570767208616223623735176745320545971264201442742845534044198702943038819766573326655230274350696742824902206699360347799433858753763800467651844067286289824634149873851411992938959139887546452924469831997791636044354847456648688810155481754006403273090165778427335268804419694887981150496149972571175472584821863081915281066811905361887015103382633876780144548652092664014888020919843831551388993283375801725304004520649130298288104317445985385329129224330868942604118849010399203088138452036352731286920838104611993593984675976982290100363932324734921267792560321630766205127326432861312658038364259835020962645279726406957489576525081178118389445324635154854855943332096975903613162746757908385590953214802097865968689612495272893652570874627862964130175797201442456399120389684839605302333599776987459315757483689622431054120438744441533362433938819768787086843525374301633252922410879324504023287666702369093625594278399915442508535611436743677314643602769424749891112318752454251920419808092332091413396857610018438106547575566927817445495050712434444535047605271265901792060883140522809988130805013320078171516612449893516822511915338051032537846174543902695503343574671041044240003866445877867899952648500177375893850590561568091531183135197634215563641122189880884986243509510604179256562724505850007039439835423258773046452468359805443176391414944642788548080709076255674073825400461955009973070656772712469111900975084479710528335309960230916489837613814755092036443938372799882295288937855074000198576782068588971607278690874192244600606627652416749927015698861172414911494826576636399889126699408609497108906943057292076187771272189983982861566250154932534049748823438442066716838208004670935517172210608214234120816492728820399349081668899290806779408426954306845994963595839851857823571912082335402322560694903342293261561567130384496942009715982820406133287233762759999835506964848528565647585332858582061844845036330238539704908469582580579721421651334525508486563878724996062931826422160643636139666764159041690723879398097829624074287873086816786420845724505165531613288707122742462177873301947198119607736205852575534893657122171929446830168215489826984274636765399035350936626985948046823644107036814772315220046620939909511788011980160755083858784796180978596083216097743375825854213947501966535025662707174959087826963786564239324074100047093940637381739328770853475617685529128665162173801235943801624210911156957689559365403282758543281582930799949529267565198672565690131731701364716218250150020493306907982779380058534967723165909772347311976322034030628675709160523030430869831290933734980735326144845122003774686813816896059839790580159104088328989016844962442444284524148734275049387192726364090266052745970729234955676000958193636093425700963434907646842592229783448718417845998379405861941819620099693969922489612892505051526500763156902035189105166500544236511581316975336127399969346252549672520873589451439267833616874675569515291776120053665905167708592191386692695465932726011921421653958151370879800987547437287427730543373938882543940803512507773686431272614983589479520849037429154882497104638353478957139697720986616133831668790915255594654263618067211889235774752126266401311057715221446670924419342618114585550457581399312394139672350130570238153775646786496416448793401605629871455945507765353072399930509389040292887710758913156713429220067867144712182848408015623585370710494145383588851437385555341904573707134707600934524050297180813857026504285469022730803516126873482199888674369273671525890547047878907676932963379523045749149501151807696076916593620371996030101745183757166486741004358222895642439769485463053976375933241096260797105830974827466389698878596185480783598625023706841327422081120581992752278045694224244782847091434762175926833782835146466654309294515206040332256060633165790706045559736248198104025427012613223675872362799367642078384017427631602162546068785720461836343495718565026076312821132036490683753144263189738658910776588404598601073512633743345697879985059483021663004713093579058452397099518898170848538594736350538270591404792319081984188323303304096579949829440659238448948195626749993887221225976668232349198150562268572973467423485889208469933645981821903405702315299962138646658188455378560991622431459490044210750943970315657944213648039747201783481878664838055084337422056939384405236724491189324418002852935551849060568921824156609581374759959283228644165642301383862007231325211345625766213565325061296231322084821486221027203339485712484750377033659958700986465429199810259795013215544895039038662316449844886381443092664626757326521834925645937757369065314386150911617162143219531102381751117785483348928168728628192193542359796464269771188861095120439385784211698399361939536191271603507739970230422732744644022200108630872047008202785858804244277074283013595906528158368054071963588199179562093831286699551950617289812297650153518367006084146074171916041861837718383683435902064117325889523550947191679854512824446013210429201069353887461986447145081960313910162780039881809367914493999222437709813832286415585658481534039170324693602373282085678415673180898263687664709306219770977902723624537037793037030555518443553886318693332738925180911709478384190713580635827509524739639840956892871021508197362145429325314956566870325218078478617088738438864126639737701785526123032845599791067221933354926129464730003181412891843388501929403033536655036113871729658555713958357737291591804453383629278499961486475811007836369683471217136778186694362447725924880927119876053157076633052115578407213508158675717865019203009680921287420226831166767418946034155277309457189987298165742137388799946449801862418763058376326595847262335207098127250233869880307812636760377282613163304272052804552838331150102025404806273661428171980642536066227293877583799417622822012480673394549393907396856343597011136201152187196460078365605751719827797404424097615921903423863382274919101092253910286942303824855550157131806682786213009148703481169255149970780708933484664306941710171256837885327686985398136013695846921630522031894041761184620382074797596068082800934755524547555887505636432340800320582205987969958396556261107328232751990996091110640068973383210300966502809686504454077197316422338209402851398724116118764740292822352507969047156805137671254083443058587431082198768900010030030613230772902930710918448459424098725610184028352866785083041582118843395839207794660498079367385768024501850935877472999807422253648271359997178230786369733161742607865388818887671089886917665127898167134402645918422020729909351224505468001874460817162490686842909821339083157100931742327385777044692360247725061751059344477788295206934713495280908238809932270468923496300385571212367914780833997962828181844232147435420333770319322007825978516617195980447684520265005733327317795235578684634332225981155306288081005499015113752183588841200597405509005364540587005300580326573954299061385087225234007172076901697743124438001725841470575192366214780398448113868038100692034988497318658482924136003396114287122867634161214747596443657795434073972096325266042406285884458626987917996578631854908307301466051195814957203536273296585274292726397829593049909091701324816690359888894253475043371521959170097367672170483367533667327736818675428189218602047254732482247201304688871174573785285857620188241820100526582276104089704551180700132261925358100605606454909028933765137972044026801025900589236220468686308933900575265209359675315276845576600533440681662878878421373005649674235486413798815327014488973335413038342734069207859590034467672311708714590399142772941284281622617018039353148814839390196945076118016222561104052549923908559807452484761438436931938288186224556233922679017953961852576729897130134116646520130496132083781513158160579706581171000577000772802818992346953069481006790894486782785142757666306143834030899223771714394754510295974764339811291652383914168519444075603999356102719213389004061830206159262762902137253619608972953827531681996908557610691341026677958373822273682804728469001643946764240241021186859048417375221376715714275358688020274238581457468708547142855464939402210021852417492370494207598785485259395501622581691258795000212683417862643150055176909940986682426085191918737742844816610213812703443955939615439143269098581773076584746786760964474899914437981577111678267774424014115633384114649401107342908696347857889559350114393746398301695134169768802663664371538449084829027706496670306315036872370306414099877558138930047423757404346303670083488015970486733633959250862130211867019876040357512420757246406866042584067701686336607732419653020947700968792288316978124462971107725231565864541223602448216787191789144491800034132681639347227216707352833378307116591217157828429507833423244050730624987863572379782443228231224148504351197133491782423590775243976956143937475664821920082680665728901287658773757285597490052980858099762735155976827702500647380852522760979822038709216850599600560484182072804531777743323534597659601219924902315184871950836547825724091457419687716292268672737413119850319419868330874933276658980824073855049305478709204212938858215136671438234853296692552330484377627604721041911987617651948744391268341178158809113372134667187019341309806764831056957181183540579317946226133708401125243853892169958499479957854015881485217712590428110213535682677028513986256520107736422859601454239229422769374886602933652178135883997084118096245139000775753199967264076739332305156521232708253625252011089743120780506450899133339067926109147432638567008491583567926551258422381892817837789384683026868074316094233969736511727499394938599125612507420342963342260297087970810574072412623929063798054586730746263713854608174424137522914577559394315697393509689071986881580962935262372105486535781266144233500812421779456526861273901898822378737063828185217878096205312379287772317674391493339709666169094419775624215699195835301397596313026006193798327948747091734691743491427326952555868045173787122635373931724887471379430589455445415659267110261287373056126145433555447608255548484089123317720540547797600801190906052176345104578273911911913993195187894077380939297584143124092413102083071202948562361917308413369559367361612487285273374622121185247670773513528423019101696212043963226867400931040651713205047350985461393517091888017763764654422532695958327447685040214189695351902439924195929022630826345049459028027602585637575568093518041316556507441872651807119370825950804686787318678982248985419188920741892611895875074441569620415275161274097779014508537252808402662701860524960669681820325504503737177713905010466898089608213743686455662512569781601647515450963627285841616033450586279057203069145629056440653696094358976176649281730832676184499187024794465992028060233579279369205224200891397169420254922729221218985407755895694136234949299768385262156430882347403187855773760400535803938731806725325216492954700361744560972972622684821181111919980711491944098211731581221421825277103473054848869954914579136614133957603704977411325469898342228561370745995446332976802706088408477402081018227303028914165301415580044131744549818086227922249138313078335285535613494834189250056496205688121515138891399845749485935012739150840781347137533949569466886915509202347269542141760391807505412499571492029749344902327049513926463082603022179151119029538716088738743508047175873988649412016718776682326514581474024249545137088030702893492695648272659175645847507880001908741400831963348594131655660821872116906876280326279757999488268150258047268258127219660798932532628710610277727530102498267506334207039647156739304748239810224811740971053312655238135514190063011199317598651816256312311180113659776454980978913415541613901535667636841677244315281397167631450636296678776311461724458413756278282392563855867833125286219529770459307414553268970230808300558885028190346656998081586622789563525960174979074082345305871017092862751191030202943720225525807627249589197805139668571710934698652503364159170481677839868026188402395564688053791234342318668293316100245080986755487936617137488781388991000661111091370097128328768590543830713891523460839402066587453068033316078712872906157224229177758115334468632897454831898194251521045975702490689479122592743236073166560551282278820463633589744365490166030143483531729847786946182572359684124643997944960372564439973373824513408279836133815233291902213173788745764158043225740400567501743622198157426220758127949860210350669353600849485369481314226066917584819479092481199149263036502389585733034919804111433965136762597909241844112911456840982383971807788814963020979595977238412210734729412437590737359260926346315101707675407318410845924520131909606842912074740583581887321208038130342519351451288408312684577186746544760955001632697394382814195549765939719752403094787617713435852548339141960375596198605902155582750856871232426326159613353500997565108731847240591822150610651790973841805870746092132560565271090009380893700098744704610383383642071557302799077798601097773377667957273128587779812433775785443296358719042554334559753175221906285042377989300269060355652286796982021324972942304567589586255937773504001090329794896603387247977105293804350751702946330187495277636786600027364459430218626190763374546358057119659587945054438122899375267060174003343013625899018288589238855155239022311760397744032431230098935080817236975687399042129506059377558825885362760472893986402301516750948221221564278883627706697029775384358944666323241090946226941722792666080242562794023470638928086278209238248021534631997517159739920853367132811450224717730510725111943322504455412926001118160987708568030267063444387427497174341557462690289805577167683973756089741194440262431384890237850705699437900472567572313570886683815934956860269388746938046463830993573455089168014082291855639019058108195996242991824342307331091179496691417632074022092348401014472149977352857537650538960048982359806698139757332673852841460788828179025679172624680534904769354114194322278693000097054442588626691258473564065810122101894878324456432666594881643036025129071387312325360295742334243715906543914363707227092305882127991230185479105932512509039699743370464836138399594452208284496404901793010139324460009415928341677966846286451886404328785117929659264534366619415227595353360416046373691375185052106201010667490468696087456271167923440908793372964983546365826885233061281999063160578352244765825281363277415001759739973190815338181573156013994057624037242674369169184783500605939820854897900609940586878714107973826497640937686023817648143358753668853020395751408298230641614678270145752397590630238507309570970895091874086265125763886364699127807396596913650144410141320736404662356655412343965212215116140738889636906078267847584072846141357647125666155149811876838905304728429857547898672743216174401731406425748324285958499599995204958472736320931890902045579012137062056031218260230700314380741792579281522612520334531292670076543321291647718617797117337739891106271972403486213578160132776249185425987277877651316337670745534045987586190899733495292460632883955277430055632316498319947547245212057127064103872316423544330832039186835852001811509694992076700203214385434959541460944567783947966831899347412169448851862109592546270489049538933971801778605304792847031159608702017554993357992252952603933808267836502733849630048559048043410536600903601263380164026097980629658662360657382411741336023613641424338016620514183521749311452902432711344700095717137903140157596948256635803126038367003940136553664820886775916554058421603217537393912680183212234679099788870828957932363957399935655351999804001521970340769673549467857782155560310101719465151986651770863772939204765205712476226308183221453353762588214839792477675506477680874625817602706939285062238914224725637414862543389008877423216685695812962166779104257016792349677743585424382642600473631458790924352738497062536089752251227520312672102120301657502442888925333292505554821937893666681148078243638081548519489189701077913854463296631023381831871461909649741541596702186926636948768043824246684274626016915823034061813926447217594782362701738010296083384528959779431717226148073762050750608818497123353537843899833089460328786663378581143526410581672239023786183997224388787361542904878901537004183768117067462926008420258609266891627805294602083084349909668035992974736932210055368016904881809178575265800914328384946136266035164637863130426143284240301708554591501122037258725012136857529540164034545539222589574851022192210699144447087618659593726187412943760469862225337308102605238781404114322755199883035521340000602687979034236247848322803600826482622679923553499036125984263931065151656566063724296613120471623118816191155635216898086260978957005055326815983383180054939935090700333865979159907199366802823951135234269481540610001194685074649041161053012958508037023843003674488953203333184078514994110614369591565837938762097901757689569089573536998531073269199889811103065400335275874820901730950335632268697555655155582744738804174359903311644963815862101957385608246579133194497545429074906680861557989624617825335170983690102389966994622084330624154365724909932760073460369223690748976928499591668939686774897453081502355510982417512052946019505508238869218246484787571275115083515155483026618082227052428972135903393097305798090608952982967126933125204484" + }, + "native_moment": [ + { + "rational": "58716065839902519966804540556304352776568300530957942505198912535378251079076250890478078828037184520796317664010736242440213226887635869387134916847290386286151317765132565684880397367051937825445809785106761933372169327826794503658078681147706716641674768258042622650583083090315176581641534024779823518927915903088019816715630514940452131580414200566499447408696456644920941097304891726221321315177838604466206214448317932638880533573362430215410770393851889266999964634882227984269247765662602982272956940612191755364899901566215113689734660065661616334880967234129667496999225720419630129201866585222372626347460898665675079707203104581829761018846970619617678387028923248337945379413097140641978553327651702868021426858143034773601336731283701882400349654799985995455693872176493223584944106338706091255365763122656817862528602937271325850896666743729626943483601523715260579687734183544423491186289221083336158141242574051070387589688971106810690160028280114702229024700086945766590737336042096052689610308533125876592541712299436434568669978874241150599688306141741764809096820841853450685292895135353527285225706856279020443288335413032789338960975724866849707859844491892282972644009528337701503896401569204202868601971693288784887804038901113607005920026187702560773513101244005664650985346095406846940036433317695813932963520654426011585258278186746285644404911233674866241084712197443719903210340611501734638181808351740124893794122132912732137617305887794758902506406524715346491240263227190021941604804525507102355273119457411513623151931129082356305435984447194573309314643543073821427424914783451344356872508253412175102465536079287129070960165845412695112558350339094037899277909312960201942365202553928809873837160123029232712095914819673316493088569721606902922296297910647154315974956237197706883883665269592290673787493331409118402315554164618454032221122163716541386251764543711368536359567005504018602007158639384707541149870728083946558223515356818406131303857560977330786504167504679439352635524157016483817669907005802992558910069777859230539193046504674887352933662168755873088844514569909505699093996624323553571793816710507862110297999244803999206201470331707415100672400466673747754311297459054658807705593399865456866222333611225147700008418641182268842625568726058795062392862720711383927319537957247005262680933999184876378951067979078832364482092894507804666105252058072227280294054697247971917060494004279174662489292511435896699456635133802504275172577112488939818202399303652470344433406142432776436058340275314166715871818899668217688800976223714250608680523103246013698960925747883752216437260148706995273526080272235264500691030291464907467799281185151274388581317971320779210453166782716431438717882100866329542840674880284410981912819443243347215390041213303023529733921288653609002434423372999823219652090720759746249061266460069688068113860721692042990363996035422860824846477739748805985573252670897197616031442282383075236099837443580638220476550700106707680568666053864780677266776464513549459945258716690471836153575367215909949882871782126073381133004568391140812657166742286467924377166587893392250040084617579610423303412972082196269055594264961922358654859397985106555721725046669520054560079857892951235937665615498528505127910809007806862222360156388849997571567182159449945376316421221409480191142922686661715066316798361747883162377802809049926033247339233849139355606380697225463843593310794564749667251222054529903814746788052677474560521217681988525651051625269857780148773161208192134762457044231951522652659727384146738223037243365775303898627745991262836306029762791074736698324212119063028538632311107208554177764648661173376140676824072783442915280890326817288071405427390459205712651585874901621373426365014370943646734844763254809120666545567854776517019429172089559272080515765752451762666489565374459255004258762161351598341866334498241812617632532859762686556454470989196781147412855283199401949090359382622109338413307606850599512526699350648931297663366905674077373739340390767619128034664019735326928772352813993829359806964498447496339775970800966259008464038087344235122920558642518677729531582371666730785738114803735928225507669860152764841792839903316499725228600550461284075210067067453258281535781472448994408295901296616613670607645224202645341291121667671610499804563097273395196306574141246679866332434652269566191185493078908468544784859826358698202359840483571314155314189081332329686516251757604429918587481854101067820301563334672874370769138328673022108180329574493906593652226472919346280700005607529843003995912805920147884146704828766782162569001870933387187655861009063861572526466973894792405172370052565588362072056810248948571394756851444284838080080577787342750987895172389085743947494587708467616625192569123244994611754905286384071860909844502894291251833741041032026923423396244640347731516130885390112995944291185212522798608847166137188403306137123939470028641927398743849568191149125596274142809307045033281855258932685838044764896437688167173371179828667766841352224640498790143185012875685797506462253835356016127327174208621341507242622622908284085082395793373094189119424994605168440365295693097058222662216820205981777467735515877798682532203760516914219891997321130755502994429324909887842512364487872188285309178688511664178092220670148585300517228550963905402377930058258441198319722177456708326167484402761557759005317259672260094746621603919564933225219276414365416149308649418530540118139300226377823168019990455369977039627195099475161678034384037260905191022128152314542897414128456772282579168257219244880920511208653091304706184023534643861936755693454232425426271030008611237713074237624500510218077050086473001005671625326219132740338086232420291990199590514879542222906414848606392334168585854176234497526819388028587861678709622105609039356714738407455017104637551662109858322314427544306568639555657565955146850503156707776085931140393058115120845779932992845910100625077373661964712962589734761678431722075446466981742408161286403540361883818094868520891429380789808597460568760592870502963906083016311250743826174200524754508826225048272657936152856484271889566355259560352243397999004250323218347512775186287313265221137876392873373861338782163623621647318518048933758118501273530251864110747524496788962528480641576721554988915591167227722212910495463058377438334646867482717435043339714473564363017300164152448233930599346460566486247769502898939410626530853369082441167098848176436440317104556145822363101170078970199361915303833420730498593037698442569743269324025323821905135891060355873026899912864742114655216400469396801516521810206488594944128290601495539435195027758621692288424176484831861865123880620674204742887078227888258383546474553784751630577032894276520189793138397698700455857779615153135860456549133914063929353529735008099713293151209765050078851221400911511513760427352034944321744114479419539085784446288970223055234612125739056164335295639157293900400159994469832427405407206935066685825387638308610970376962426045948103046391931862654710018502642818975795242715547875013325380400113342129187300440443760641988053646752736533706134333621023622641198062364040179371616793561140741636219118679853222775875151237496888321484461706560846998582156471954519360826937355086462821759945015377806551297212860615075623933967978691341568324814946422030205768941988394095086916723640719120593446212450509772697644182096371132750849036449839144911895829783054007936870183862466075742843417255391685447426921597930424309637506758844451775058343890240004616267433852550656196096729593915361164209991970990532224701209639572131896634687307126182979008760194327081299277893313694261191274234793185682741833447257418297848388857317818540930250174028500525934322428146510271817755801302365659778215288238246579322428083130071806178492187741803721452177085120399775541606700952114706375630419144152735087948724941597556972435854922353166610214790284159375507560891266721670484282313316256405056643404661827493779300514190478791586477529948464504991991998558720051376249196668120666223620142043825727881901491141287995862274205847245831097666839189809657828151446453489260653527577319955389376888941565605891227819997241695321593236723508347128222229841053439426803121186922092381316498849298411779109699816780611178417963452050214731747881036362387777212626137379230514771833394651779064283281254371398040175963051013389560315925485230677788481930966330896671467422661101445654350383458340093080651630453078373725442019663761000791012913050121206919006455096285219501994444592895029284579594872245674285291906977148171283604855006250624331419977297530890913063888265305813237258115839695504494717594395451024429024342231353146928216220481734073833782231374148073403177571581192707850401723611843456330575118676952444245533440963309959647575518920058443350077127634272879794706672468044547371467864829386531159644610086648638817644685309175592639920324129236080562694167875532531758661196581970524587378612085690089560276927184661883130097696643308626124052434585081071808024444668715552058297609449298409413812904563124335327167223718154878034127335379780333049228268170272617717901201324053905521419032096715996631358603407624827638127499966469596193189486307858919978739489100057174075451384916635273471932063081868858177206828146121199640351324765184333875414232286885574445749560327174345222759516029775600213194028205526965906049018330579317607959824982738372775093460130265671424183746454666574443124655272399763924238512801267490254311241350826133150931675402160773135045652036635560433506162689199084261615945832376557087363112751418585086696812720347977911369314695878065124844020709591455247977700747337116748288340220530558565830335803390610370128232341648893574416865206541490440496694675157200741486996019239346704566994845451894384368988976985322632207879583172340655148669481310046533437180622954120994031941109995186095137725494852444618319913726735426985978015459617175540960932413364829438425530729606559686832330827452722784669969716888496302185405501657263721768508620139485434797969828611925537833218294445159741660300761689849628144745525005738944914644224460452335737833537641082515842666497092089267554685001606952088417212283444865057944170988230196298130925754835901004929007400649942423470571432690507492502104273597195459355171108867152423007055419154534277003107687994678845827264277590555709811825534755441521953705914191264622740761893762016119907939317265498545570382302437052092575801018632104614356844953212891403587075911197423637198270845086775233678710511336070935320662665105656864661148552971265801417622248552209036579471986996202542907546240092019309580419555582003288434330875248777408886852728524248546886205107140768522292997898362973505584326502688551716366743541776019045193652489080530691133325309932869027268961946364739931197071407698254193855195502137029584296879313540336542588832691331032601726190309769656520210294716657664721493722390569801282595861179821877553009213997115716034771212363921362046333340372450197153538183609387070967027276694311538553553309860088492835185963288201177513612631943873027184495339637800461585321826057715406701838048978143543235692322104670113808659097777358282726330696611819986693609781137965055748059424492861687847933817455686509299249873619825575526060096882815995047206739228516667886979333672600031783773363887537204459901779931095656467752164792818777965012825970052367364109530476988044366504293357342268545361173410215874941264700585274291327648222404504779546213963166104860687969459296429730284517831948355561656873113985591288658262722660238244749841788073497349201698404680690626054011395422073307947817855666243865271470556778099582206872333886911143518679017312791928174060905583689135170880956009000372052916829095969815208163022048751196471211343032923852368335922818820114902553395484044299922226905278242965990752222351514131093572707384392340864544072303883080968525570642560911389432510486464257554598108988213182602165529779591735197610592891173788702016796796903470151924429710248789826184809485261017353983181629115419088476526215552543128554058079174029908851827880201452886442288910448263475975936226350904399947757978337317953412045924156840013570010265112919339994192884126856897585380597886379872344379027644781898788243453475734686302965724591154874195844228148569708451462680227012215294490753484660352306198239117008942371340762224670012756713724476900427615245061369533233495354217285183547406598421169116357627346848307835643606160769469882560136868751074676804475434149970928853765452474602159406016753751909560628880220394138632720706349607155360566433677076136127702973352709707677322316277955592822796435751758482132297258560348995462110809408380916212346295257719055253880314062749247198750767332508849556587886261310677836354769329513163997914785901645041573703202174807035060948805046008640233640170106492534069479101089563041275572443675809291480553653177184393598901987161720931090334408734459109046237773803456107470606003916951221914123022186751193663066331108386123407763555309550626359910530980872040335852808757276921756622907535588839561842510097553183801471463800005727965676657537881683060300578873487475961129396718233699825813361514891344589882708205136449269802194898394190968461303454736013611699289656391229967638688186743062916618576399979134765975744734698877559268140693899217801383580685859382793781511428356626804684101420087776537508739741211550682499729025316981625777103263940899560238013377853172779793535003000886083506884370174980513563359699971946075572340121579663143459945009587220481413773321608729217713550223207019841657520930682690263873486415026615195617646074541523545628004299331995516419942934716246646671816519808588362692273016612216360072151386125279825733143071823582945589597586746528366844182384703759955692807136288530425994824540533768635911028710811933096065384272636511358930629064729458174371213575751935417355414221720413558556392528143397763046630985030665087343506104476934648552564903063708816800751992425919840195331223507730151086091264555327431581348250100417340393726095875651641265845352908421903777945576360285066615013305009334075226101916066594064574732426873347418876257079868360169259233280571976449489819025171787877696071518215041306723131436343446895731682660297472531106096368411525332021525516046532719762414938088757830596491111745474154539027143453340289165945311823099260466408573911961784140213766834851396486074049207450395747126407222275951977329232031798808500977351570901042841657377993816163159015517138329152773272973303304767787029042134714426934288510763371725927230562026980917856787119212595387504445667253471661637939818246315372996409206820403708452108062139511439970836723637335254124931855923179497456655163593342844876005562200522640467481331711173243773969733016792879191594669508820337971513975889693383063728851894727619429669628685395433291632911526851246357931062551567137087260327971657130539655219750263261578029687318521386130100095850304828915560195164151306734349305108768699985646087005246656262565275140120358615560039854713156423985364649229579520372604063674972318753417467130285369034047691325078402776606199381111184934016321499023630061856330520400813464911369046894826714725372659401322761905597229352823855108352462877334395254927599386859227808379985806474849316802347258617964963340324614100005690618989920269638989795812401301978911928931624530981734972155953030556176240423600649948651725459185235142168885750387081092060063046012964882623800274325193614119093059478301235872059054569174280871277678537443460944158015142531155336018114425139461201451286770249724719147987648142977115389078561982189156048899298486993962798149416699748840676447542516750213234136934253778017429955727246652567183898194637062708588099691712557034312625292228310419304470724651298862298791989783338261869371302544195157150873143569843583411307722073772842508709660040960485072513835092725134760829797763093898966123285136221642331625786148537817892992365497193384641156685725184853393718839487031884292958448430839426624767163160997996474469557458426650695504356883104937425208442845283511650304897346567810343728433701103296434727893781456362884663635073957426581964258929741764322458777184430781343101498929439027017553617655466304360884246772286106738758797850529334967057878932877187932094679221675712440776158402493055503605866431025598225965180603208000926478603817902701373782887556787640774947815890541509534492759277591897800590573643498391076435334712073282015738740101648546330667325201412875369872865273859997044583742762795506122720037158462208502443903128301460149594425539153626396742372446215412867850494892765324187657283884162779440887155575971168280214466842202620365464704071836196086561179213050917881622785136706488463592857351099122314075260351142540005761565609746550988932003485147820952392058743546770959149630457524184568338561928587868778620130875521369002733716663791058106687663435683148138932211471280725880977064075578691829496101047957742868169933884109148190967984792558030956557179386254016915388130428023032564407999962855498608200572360310295787287366822735202025968112509938917218053490052195613843503261045254190494304390002466020962621405038604194959424329100076006825696351747529378237419696182386235062252004231711977162103132582501996605726291430551822596143108530621020606903716665423918734785132416399421380055274771642685157900971797264895518383535056139352630491861122147895928602976306501072480811819589628661446951767915242670861767430187760210898964905558747606424285099570115599671157102281956051487758274860205002073838922161908185978792449220190127949427763422591782289389846924141199834188001017059289918460132607482931389072276951325697025919952677458150791245991366615913528946004862146609564037462240715581179500527337840535861602748478271111292989793763407581085774578281282429567146926352029428264595211432847555423128268840568117587376976824237067926501656394079504019463565839233637438327591246805166411073288221596747008372672276081544396873310302909847226489795974157107103235040782901284213027665611392765895318798441566290538510063062555002475450175471561532386578898785586672173847306203722481288264536265015301896468556264607805392181883925870501817135824952975474988735287144817075263415028646832786828743697376131531838451630012906665947824195549985788241491788887270243591828473437637899796076074875135047585757418402062459639257689449328393770420974936191885356833104011163123300722058289347224917306899867661017651812268453765116572401295838772479988074971858711533881756161102403256243576862645715718031006750312528077626391585991161022522048154561924474831008378461103395620530738535710073624390554271387263305079460885266799065341441158163196372866760452379634764176643745209064845085587289700692550219859246047178000890072027696869320892719088782173018719153365062353166535472735734354467936433147319669147570822521965984462081526987731475898550952543420310638551932707440929052713012392860763665316437227985001729669515294198349422371346492775361252523340571939333725177287899705764675317432911434290823994100752913781225406480276641759740233601728713876320662349519289360878861664341454983941511980802115817627134390133742082574527952163347135274541394344517494805498402932834776037855368607718636351714787049744109916587579997954993863999229725299855595122747536918414277448757944041348885292009064215495376387613978775882999244002903764499258092392055050481922396329587245511048601746023581991671418159433400842473791162805009930571482957451402177687854730414777080056336941871059932412025518682833326845227542478200886724216014162983816424938149530524943763134889888152528839385820733911443392801439815054695522039527115064929892032015593371333064440568989137675291985303526157908122247152609560513914886369399595814170350283904900170492474458318838840611455264675666398783838622861141376341037148460695561404235901731618458549236779820015671065711908799777164150144622571535104657641556657156319998048462794027696724085848758252503827656659253241711107622581055231219627562424072077131542476252382605712965808889045490359163710220279000866312810437675024160739796221095554370826470316201363433259337706840874537020046518785117212028566215388362567137957803936633065691977179196069817769761747538900992892578695206763431004964103024556240904533659992796261650605692801070079452589088386004017544738329933415382437392460398079737488954036874386296589635585645589447766267986716623546577817783062385926251655895259852847603856337919109325960415548207125465088284494672616099854840974431406848157866706612736690929292381454506386429824918872066796579252297968154069737753446321749440185020653316811216362704810951654338992224454647877075573357895237271574236413370056688376626209226565414059815795010897192119126408539987067940988913744283799312419061250606429090222391959176603908729049534498057438129132811417856333905293501917307596519786407332846984080386306837995087055208811859756518659146325062556308831841257972939468798645839289619866678383584164630330362839491796324449286900971677964614680826991984651570384952788174936016735162584067699877434450050242705663506265288396674382933127212248896055542642839832754699794112192847265862366294170423461223825194772951267946503649203476645095591275446787578523832452802134729942274056607152336943729181248853836943809712362901306291513063442706913455786903136386418585774136257733698549271835924303060660851344741947825384429444286808412069327712884303374242804906895832538047782970811449101352497042924907052772411736021697521912617574053609288516868429128786374411178911372945395069619488454135634348989872239918156506611150977192360688553889667828866669331299832396248285919616957164517038760118056290547078309539678130409396853026259280618301333907824482767018504674113913105783758987274561346547721801358046917125639829520171825518332399862221764085585643668236283624234819365259392030838737235294079786320013206941199035263855457821079392582890724689394042392659263805060545096080042287357280443008889165242676825382228879076186017897854833360556482146116929365286667930808965497765348006710673914783782934052251696649109512367516539947827574620354494681468869985669690680613811775308045933609291191995871985826020918466035240077613562764898610817540874102634101250864792666008452814099686315325403694967413944592280744075412811232128334828334357579784761066644468246560857030112152877472771650732329897663691511967756194664336397628090027057622875486838877840015006660044591946466471958999745004585885071783265282487534608656655297611324754073895806604490516482273523442899962116029504463603255516821491758877619667983385996705460375601043636018255248803237049494208487850045391274311005307793641947387881529899502337513879091272760829472338210213324082712858822274507974570266391270384605412950098393923217299049846116414690711602313436500197389956243328495473395978410364007488155227813679867870019952572833083510884044018950281438432615783828127815212503164977819497123816035812966376729636251977916560568144016926703146427150467974867575105083104791219566307618156111455312273111669689928437043849491568965801673225623803125213337536385103767280781166681284303277562498644190927624682392963412989348144644687418860011984646926662881403719012723135715416255141823820933793540547884495289139241607927076075571374813503986202010848389294823790450545017577204197712023924838255307085568547386715171967779311763764392602861343749124735856088174883498022094529324020406562995489807703402050386743170798636464123587462760989876130848292345549739576173299325321285896824625558300365122514563360887326735557854748905897629627638223610636643432073394522963287679449591613424718874789503365871753066498508106193272391047444993211571554285161830106777008495640965499640457864250708224375333313413943603430156617563263491759550218510688714476810012686323840570415764057449331554450878289179801942314853381714147881542709153938997156469690787318721396596949837793272667154192251935792419680569767592887098826184326078733151472541030206965350523825024122611887072090136324064362301417297600841293463170009589155779857722922653115102908832891167224518019526999268041003170440389680259429152119122308259580536872605768129191357077523029520226018826965656845422271692493820029869476999578951303762590913097241444451794267286114068856883663428736756058637887136818603801629258815773264314181060584312522605777988142437678301684982321155599572288965995177394754259497416139683683137159077408469169471892995475056755774405563629315710721081580560902874521685354964599239874873470349820682650796158925003196050566110624155025525106798047586427270177769018776188530111125718148745345987439661392776091051394007388506822919911807426698662220030619708423913704785997553101380377731003349514493324498111755794820671306180706925204228382653868591093104716358289016017515049534897280469359661789869586322026942526658093243303745932517074547855974354596630414993200145009559386307036462114037208143245999029996677462705728048548480697648384773112514368729412768320957301639153002865640099635698614285275553212807965765704086485250892626938256111790315940929227877668974996552383499650684741953684530647557634440336835332582898601614754810218804842034381294433642247786770423504386169228651385506672241675089407437634621266194133313300665421380816051327454768521364196968759980176089037036110585206450746171567492767917863704072876707455646344802069691083968452467013572582132227891102212301741053349256812688969647873136386221906044798685240342602965398757447081612038367922491077306157383167726071626118561527103433460118954986170447134472026469474831937625490095792419340499302326538920650434320636811233564777759967421229572360662636549265778568125419936852137709313260479273775001800740718858875377906557255028901954659680512170054930368413835222459031321097263740933987645103774697830053995568790434788415279473376104606661159654325091516588200045624395849268490370555280713441019041638652829225940751076248316032951743227619010721295700261882578484381682685703454487531318134098572928219121990307979287149620946253588080732438155112505350483313952617164626649353421227526951663192885174811562707132243806969211452717940110718475645989627636242708942572326103976214141707523019097494570223657753625421862984014701253635430984116232603908982506455868240292043332133752895244408243563851096998898426357546261129373274275260470654560170963095979001517746508501458940969043293230823728605320262080938187279056042592318806381833924924389303246364105088325233768271781357863927324702860180895570125198792229289225568194637052721481019964049476738038546273193083069060543901553371430477185661867028120124237252964630090066459829466685097880917859466531344212786632282968892754751416322694295707266411610321372473379908672773573648271204479429118538118412342652899083095772863740285114225029420139576559202305066609798114553029610964171795619206912333336205588089548088499813979363022010818738709385311511220339164749913420284396560059388783033680358733187403310052755004566784839690589858583576588646593844915835307211547014531117073570065972534853511308143674184311795119563843442309198838043917079598621926322167526017655590585285227027052167601061875192155426574151434518756002584643948536673470514546650646694302219098029340782786102730402024353153452019460812545130188843357616018417814260727927595359300371511123992215050514605735715080157551847738698943504219173988960077892248385572394093711011323886825719708113806319634561683689991216680748329670454150025333713547963616798308156089377220416196076579369696308489659387496739715270653597907200569486963366426385116079769375761618912711749475559120299115638022058901658826963140367627308747954377645206312272762478339107275541186162220723121289518359480379658935088995547399066328631206670557379600357050010492775611031712161854731934465680994732404729570275172089226359851065463612477362126155350597794605318420635106280389642729169707330027070924716613904033447017116165826584887263619011475959249139069915885305349806429260686012333117501610981989469431250380181384684054311230491701237991279458567495599331484111996620255110876110080231169850490777037751752493017066697227988267326006339589595727889917775606384367578793627658684745050199841942547539301346183515135756505190435353673351008175542199779719511806117308697296421832460290360894309139155221850967578665674900579230818810195580188021154349359123273510794947198363356244292982450007402648349695657478382542403285732447096586318969351802301518092465425896444517880164208742057065854265846860256178747582013817393913246176118925867591437904953421984182582141041931367554545860272782124101845287402612141834552086756749404276155683017074917161758566144095873080351682252436885594598314909800182644744058977094218218997934040177058012293249307456251639258596883500442907302554996579880390494423213176380805485546296412719750115227382429698225647701773178828747819536089817938341818992893738141379621623097728577750163208603740209487596014552308777770300515943410887630268646131636542962217199954440463727740304681194879577455974336430545802371531926936910146596304088591438706746400710584096920286716095875821058708913474443913676465654839581846599944954456995088443208798508327896460234982887145366493703480555642576264609999008915160050177200184220711718045915140256823096624417697325382638549188322540468616818166712342235626667275237373080471031744501892464651688562802029266814543931017078800614948899952731275100459869364815779665341926293615203855791685190265883180833341252934766969140830682500487406246419149445262171028819848873578956241353192967523656102825989930940138076021200693458442613329088271430915589292053969654921695568832377903262259177017356161843130611803947224370490160681065488015589745196814663999258587362349054825030618158249385513332326726565810456118439084247/58716065839902519966804540556304352776568300530957942505198912535378251079076250890478078828037184520796317664010736242440213226887635869387134916847290386286151317765132565684880397367051937825445809785106761933372169327826794503658078681147706716641674768258042622650583083090315176581641534024779823518927915903088019816715630514940452131580414200566499447408696456644920941097304891726221321315177838604466206214448317932638880533573362430215410770393851889266999964634882227984269247765662602982272956940612191755364899901566215113689734660065661616334880967234129667496999225720419630129201866585222372626347460898665675079707203104581829761018846970619617678387028923248337945379413097140641978553327651702868021426858143034773601336731283701882400349654799985995455693872176493223584944106338706091255365763122656817862528602937271325850896666743729626943483601523715260579687734183544423491186289221083336158141242574051070387589688971106810690160028280114702229024700086945766590737336042096052689610308533125876592541712299436434568669978874241150599688306141741764809096820841853450685292895135353527285225706856279020443288335413032789338960975724866849707859844491892282972644009528337701503896401569204202868601971693288784887804038901113607005920026187702560773513101244005664650985346095406846940036433317695813932963520654426011585258278186746285644404911233674866241084712197443719903210340611501734638181808351740124893794122132912732137617305887794758902506406524715346491240263227190021941604804525507102355273119457411513623151931129082356305435984447194573309314643543073821427424914783451344356872508253412175102465536079287129070960165845412695112558350339094037899277909312960201942365202553928809873837160123029232712095914819673316493088569721606902922296297910647154315974956237197706883883665269592290673787493331409118402315554164618454032221122163716541386251764543711368536359567005504018602007158639384707541149870728083946558223515356818406131303857560977330786504167504679439352635524157016483817669907005802992558910069777859230539193046504674887352933662168755873088844514569909505699093996624323553571793816710507862110297999244803999206201470331707415100672400466673747754311297459054658807705593399865456866222333611225147700008418641182268842625568726058795062392862720711383927319537957247005262680933999184876378951067979078832364482092894507804666105252058072227280294054697247971917060494004279174662489292511435896699456635133802504275172577112488939818202399303652470344433406142432776436058340275314166715871818899668217688800976223714250608680523103246013698960925747883752216437260148706995273526080272235264500691030291464907467799281185151274388581317971320779210453166782716431438717882100866329542840674880284410981912819443243347215390041213303023529733921288653609002434423372999823219652090720759746249061266460069688068113860721692042990363996035422860824846477739748805985573252670897197616031442282383075236099837443580638220476550700106707680568666053864780677266776464513549459945258716690471836153575367215909949882871782126073381133004568391140812657166742286467924377166587893392250040084617579610423303412972082196269055594264961922358654859397985106555721725046669520054560079857892951235937665615498528505127910809007806862222360156388849997571567182159449945376316421221409480191142922686661715066316798361747883162377802809049926033247339233849139355606380697225463843593310794564749667251222054529903814746788052677474560521217681988525651051625269857780148773161208192134762457044231951522652659727384146738223037243365775303898627745991262836306029762791074736698324212119063028538632311107208554177764648661173376140676824072783442915280890326817288071405427390459205712651585874901621373426365014370943646734844763254809120666545567854776517019429172089559272080515765752451762666489565374459255004258762161351598341866334498241812617632532859762686556454470989196781147412855283199401949090359382622109338413307606850599512526699350648931297663366905674077373739340390767619128034664019735326928772352813993829359806964498447496339775970800966259008464038087344235122920558642518677729531582371666730785738114803735928225507669860152764841792839903316499725228600550461284075210067067453258281535781472448994408295901296616613670607645224202645341291121667671610499804563097273395196306574141246679866332434652269566191185493078908468544784859826358698202359840483571314155314189081332329686516251757604429918587481854101067820301563334672874370769138328673022108180329574493906593652226472919346280700005607529843003995912805920147884146704828766782162569001870933387187655861009063861572526466973894792405172370052565588362072056810248948571394756851444284838080080577787342750987895172389085743947494587708467616625192569123244994611754905286384071860909844502894291251833741041032026923423396244640347731516130885390112995944291185212522798608847166137188403306137123939470028641927398743849568191149125596274142809307045033281855258932685838044764896437688167173371179828667766841352224640498790143185012875685797506462253835356016127327174208621341507242622622908284085082395793373094189119424994605168440365295693097058222662216820205981777467735515877798682532203760516914219891997321130755502994429324909887842512364487872188285309178688511664178092220670148585300517228550963905402377930058258441198319722177456708326167484402761557759005317259672260094746621603919564933225219276414365416149308649418530540118139300226377823168019990455369977039627195099475161678034384037260905191022128152314542897414128456772282579168257219244880920511208653091304706184023534643861936755693454232425426271030008611237713074237624500510218077050086473001005671625326219132740338086232420291990199590514879542222906414848606392334168585854176234497526819388028587861678709622105609039356714738407455017104637551662109858322314427544306568639555657565955146850503156707776085931140393058115120845779932992845910100625077373661964712962589734761678431722075446466981742408161286403540361883818094868520891429380789808597460568760592870502963906083016311250743826174200524754508826225048272657936152856484271889566355259560352243397999004250323218347512775186287313265221137876392873373861338782163623621647318518048933758118501273530251864110747524496788962528480641576721554988915591167227722212910495463058377438334646867482717435043339714473564363017300164152448233930599346460566486247769502898939410626530853369082441167098848176436440317104556145822363101170078970199361915303833420730498593037698442569743269324025323821905135891060355873026899912864742114655216400469396801516521810206488594944128290601495539435195027758621692288424176484831861865123880620674204742887078227888258383546474553784751630577032894276520189793138397698700455857779615153135860456549133914063929353529735008099713293151209765050078851221400911511513760427352034944321744114479419539085784446288970223055234612125739056164335295639157293900400159994469832427405407206935066685825387638308610970376962426045948103046391931862654710018502642818975795242715547875013325380400113342129187300440443760641988053646752736533706134333621023622641198062364040179371616793561140741636219118679853222775875151237496888321484461706560846998582156471954519360826937355086462821759945015377806551297212860615075623933967978691341568324814946422030205768941988394095086916723640719120593446212450509772697644182096371132750849036449839144911895829783054007936870183862466075742843417255391685447426921597930424309637506758844451775058343890240004616267433852550656196096729593915361164209991970990532224701209639572131896634687307126182979008760194327081299277893313694261191274234793185682741833447257418297848388857317818540930250174028500525934322428146510271817755801302365659778215288238246579322428083130071806178492187741803721452177085120399775541606700952114706375630419144152735087948724941597556972435854922353166610214790284159375507560891266721670484282313316256405056643404661827493779300514190478791586477529948464504991991998558720051376249196668120666223620142043825727881901491141287995862274205847245831097666839189809657828151446453489260653527577319955389376888941565605891227819997241695321593236723508347128222229841053439426803121186922092381316498849298411779109699816780611178417963452050214731747881036362387777212626137379230514771833394651779064283281254371398040175963051013389560315925485230677788481930966330896671467422661101445654350383458340093080651630453078373725442019663761000791012913050121206919006455096285219501994444592895029284579594872245674285291906977148171283604855006250624331419977297530890913063888265305813237258115839695504494717594395451024429024342231353146928216220481734073833782231374148073403177571581192707850401723611843456330575118676952444245533440963309959647575518920058443350077127634272879794706672468044547371467864829386531159644610086648638817644685309175592639920324129236080562694167875532531758661196581970524587378612085690089560276927184661883130097696643308626124052434585081071808024444668715552058297609449298409413812904563124335327167223718154878034127335379780333049228268170272617717901201324053905521419032096715996631358603407624827638127499966469596193189486307858919978739489100057174075451384916635273471932063081868858177206828146121199640351324765184333875414232286885574445749560327174345222759516029775600213194028205526965906049018330579317607959824982738372775093460130265671424183746454666574443124655272399763924238512801267490254311241350826133150931675402160773135045652036635560433506162689199084261615945832376557087363112751418585086696812720347977911369314695878065124844020709591455247977700747337116748288340220530558565830335803390610370128232341648893574416865206541490440496694675157200741486996019239346704566994845451894384368988976985322632207879583172340655148669481310046533437180622954120994031941109995186095137725494852444618319913726735426985978015459617175540960932413364829438425530729606559686832330827452722784669969716888496302185405501657263721768508620139485434797969828611925537833218294445159741660300761689849628144745525005738944914644224460452335737833537641082515842666497092089267554685001606952088417212283444865057944170988230196298130925754835901004929007400649942423470571432690507492502104273597195459355171108867152423007055419154534277003107687994678845827264277590555709811825534755441521953705914191264622740761893762016119907939317265498545570382302437052092575801018632104614356844953212891403587075911197423637198270845086775233678710511336070935320662665105656864661148552971265801417622248552209036579471986996202542907546240092019309580419555582003288434330875248777408886852728524248546886205107140768522292997898362973505584326502688551716366743541776019045193652489080530691133325309932869027268961946364739931197071407698254193855195502137029584296879313540336542588832691331032601726190309769656520210294716657664721493722390569801282595861179821877553009213997115716034771212363921362046333340372450197153538183609387070967027276694311538553553309860088492835185963288201177513612631943873027184495339637800461585321826057715406701838048978143543235692322104670113808659097777358282726330696611819986693609781137965055748059424492861687847933817455686509299249873619825575526060096882815995047206739228516667886979333672600031783773363887537204459901779931095656467752164792818777965012825970052367364109530476988044366504293357342268545361173410215874941264700585274291327648222404504779546213963166104860687969459296429730284517831948355561656873113985591288658262722660238244749841788073497349201698404680690626054011395422073307947817855666243865271470556778099582206872333886911143518679017312791928174060905583689135170880956009000372052916829095969815208163022048751196471211343032923852368335922818820114902553395484044299922226905278242965990752222351514131093572707384392340864544072303883080968525570642560911389432510486464257554598108988213182602165529779591735197610592891173788702016796796903470151924429710248789826184809485261017353983181629115419088476526215552543128554058079174029908851827880201452886442288910448263475975936226350904399947757978337317953412045924156840013570010265112919339994192884126856897585380597886379872344379027644781898788243453475734686302965724591154874195844228148569708451462680227012215294490753484660352306198239117008942371340762224670012756713724476900427615245061369533233495354217285183547406598421169116357627346848307835643606160769469882560136868751074676804475434149970928853765452474602159406016753751909560628880220394138632720706349607155360566433677076136127702973352709707677322316277955592822796435751758482132297258560348995462110809408380916212346295257719055253880314062749247198750767332508849556587886261310677836354769329513163997914785901645041573703202174807035060948805046008640233640170106492534069479101089563041275572443675809291480553653177184393598901987161720931090334408734459109046237773803456107470606003916951221914123022186751193663066331108386123407763555309550626359910530980872040335852808757276921756622907535588839561842510097553183801471463800005727965676657537881683060300578873487475961129396718233699825813361514891344589882708205136449269802194898394190968461303454736013611699289656391229967638688186743062916618576399979134765975744734698877559268140693899217801383580685859382793781511428356626804684101420087776537508739741211550682499729025316981625777103263940899560238013377853172779793535003000886083506884370174980513563359699971946075572340121579663143459945009587220481413773321608729217713550223207019841657520930682690263873486415026615195617646074541523545628004299331995516419942934716246646671816519808588362692273016612216360072151386125279825733143071823582945589597586746528366844182384703759955692807136288530425994824540533768635911028710811933096065384272636511358930629064729458174371213575751935417355414221720413558556392528143397763046630985030665087343506104476934648552564903063708816800751992425919840195331223507730151086091264555327431581348250100417340393726095875651641265845352908421903777945576360285066615013305009334075226101916066594064574732426873347418876257079868360169259233280571976449489819025171787877696071518215041306723131436343446895731682660297472531106096368411525332021525516046532719762414938088757830596491111745474154539027143453340289165945311823099260466408573911961784140213766834851396486074049207450395747126407222275951977329232031798808500977351570901042841657377993816163159015517138329152773272973303304767787029042134714426934288510763371725927230562026980917856787119212595387504445667253471661637939818246315372996409206820403708452108062139511439970836723637335254124931855923179497456655163593342844876005562200522640467481331711173243773969733016792879191594669508820337971513975889693383063728851894727619429669628685395433291632911526851246357931062551567137087260327971657130539655219750263261578029687318521386130100095850304828915560195164151306734349305108768699985646087005246656262565275140120358615560039854713156423985364649229579520372604063674972318753417467130285369034047691325078402776606199381111184934016321499023630061856330520400813464911369046894826714725372659401322761905597229352823855108352462877334395254927599386859227808379985806474849316802347258617964963340324614100005690618989920269638989795812401301978911928931624530981734972155953030556176240423600649948651725459185235142168885750387081092060063046012964882623800274325193614119093059478301235872059054569174280871277678537443460944158015142531155336018114425139461201451286770249724719147987648142977115389078561982189156048899298486993962798149416699748840676447542516750213234136934253778017429955727246652567183898194637062708588099691712557034312625292228310419304470724651298862298791989783338261869371302544195157150873143569843583411307722073772842508709660040960485072513835092725134760829797763093898966123285136221642331625786148537817892992365497193384641156685725184853393718839487031884292958448430839426624767163160997996474469557458426650695504356883104937425208442845283511650304897346567810343728433701103296434727893781456362884663635073957426581964258929741764322458777184430781343101498929439027017553617655466304360884246772286106738758797850529334967057878932877187932094679221675712440776158402493055503605866431025598225965180603208000926478603817902701373782887556787640774947815890541509534492759277591897800590573643498391076435334712073282015738740101648546330667325201412875369872865273859997044583742762795506122720037158462208502443903128301460149594425539153626396742372446215412867850494892765324187657283884162779440887155575971168280214466842202620365464704071836196086561179213050917881622785136706488463592857351099122314075260351142540005761565609746550988932003485147820952392058743546770959149630457524184568338561928587868778620130875521369002733716663791058106687663435683148138932211471280725880977064075578691829496101047957742868169933884109148190967984792558030956557179386254016915388130428023032564407999962855498608200572360310295787287366822735202025968112509938917218053490052195613843503261045254190494304390002466020962621405038604194959424329100076006825696351747529378237419696182386235062252004231711977162103132582501996605726291430551822596143108530621020606903716665423918734785132416399421380055274771642685157900971797264895518383535056139352630491861122147895928602976306501072480811819589628661446951767915242670861767430187760210898964905558747606424285099570115599671157102281956051487758274860205002073838922161908185978792449220190127949427763422591782289389846924141199834188001017059289918460132607482931389072276951325697025919952677458150791245991366615913528946004862146609564037462240715581179500527337840535861602748478271111292989793763407581085774578281282429567146926352029428264595211432847555423128268840568117587376976824237067926501656394079504019463565839233637438327591246805166411073288221596747008372672276081544396873310302909847226489795974157107103235040782901284213027665611392765895318798441566290538510063062555002475450175471561532386578898785586672173847306203722481288264536265015301896468556264607805392181883925870501817135824952975474988735287144817075263415028646832786828743697376131531838451630012906665947824195549985788241491788887270243591828473437637899796076074875135047585757418402062459639257689449328393770420974936191885356833104011163123300722058289347224917306899867661017651812268453765116572401295838772479988074971858711533881756161102403256243576862645715718031006750312528077626391585991161022522048154561924474831008378461103395620530738535710073624390554271387263305079460885266799065341441158163196372866760452379634764176643745209064845085587289700692550219859246047178000890072027696869320892719088782173018719153365062353166535472735734354467936433147319669147570822521965984462081526987731475898550952543420310638551932707440929052713012392860763665316437227985001729669515294198349422371346492775361252523340571939333725177287899705764675317432911434290823994100752913781225406480276641759740233601728713876320662349519289360878861664341454983941511980802115817627134390133742082574527952163347135274541394344517494805498402932834776037855368607718636351714787049744109916587579997954993863999229725299855595122747536918414277448757944041348885292009064215495376387613978775882999244002903764499258092392055050481922396329587245511048601746023581991671418159433400842473791162805009930571482957451402177687854730414777080056336941871059932412025518682833326845227542478200886724216014162983816424938149530524943763134889888152528839385820733911443392801439815054695522039527115064929892032015593371333064440568989137675291985303526157908122247152609560513914886369399595814170350283904900170492474458318838840611455264675666398783838622861141376341037148460695561404235901731618458549236779820015671065711908799777164150144622571535104657641556657156319998048462794027696724085848758252503827656659253241711107622581055231219627562424072077131542476252382605712965808889045490359163710220279000866312810437675024160739796221095554370826470316201363433259337706840874537020046518785117212028566215388362567137957803936633065691977179196069817769761747538900992892578695206763431004964103024556240904533659992796261650605692801070079452589088386004017544738329933415382437392460398079737488954036874386296589635585645589447766267986716623546577817783062385926251655895259852847603856337919109325960415548207125465088284494672616099854840974431406848157866706612736690929292381454506386429824918872066796579252297968154069737753446321749440185020653316811216362704810951654338992224454647877075573357895237271574236413370056688376626209226565414059815795010897192119126408539987067940988913744283799312419061250606429090222391959176603908729049534498057438129132811417856333905293501917307596519786407332846984080386306837995087055208811859756518659146325062556308831841257972939468798645839289619866678383584164630330362839491796324449286900971677964614680826991984651570384952788174936016735162584067699877434450050242705663506265288396674382933127212248896055542642839832754699794112192847265862366294170423461223825194772951267946503649203476645095591275446787578523832452802134729942274056607152336943729181248853836943809712362901306291513063442706913455786903136386418585774136257733698549271835924303060660851344741947825384429444286808412069327712884303374242804906895832538047782970811449101352497042924907052772411736021697521912617574053609288516868429128786374411178911372945395069619488454135634348989872239918156506611150977192360688553889667828866669331299832396248285919616957164517038760118056290547078309539678130409396853026259280618301333907824482767018504674113913105783758987274561346547721801358046917125639829520171825518332399862221764085585643668236283624234819365259392030838737235294079786320013206941199035263855457821079392582890724689394042392659263805060545096080042287357280443008889165242676825382228879076186017897854833360556482146116929365286667930808965497765348006710673914783782934052251696649109512367516539947827574620354494681468869985669690680613811775308045933609291191995871985826020918466035240077613562764898610817540874102634101250864792666008452814099686315325403694967413944592280744075412811232128334828334357579784761066644468246560857030112152877472771650732329897663691511967756194664336397628090027057622875486838877840015006660044591946466471958999745004585885071783265282487534608656655297611324754073895806604490516482273523442899962116029504463603255516821491758877619667983385996705460375601043636018255248803237049494208487850045391274311005307793641947387881529899502337513879091272760829472338210213324082712858822274507974570266391270384605412950098393923217299049846116414690711602313436500197389956243328495473395978410364007488155227813679867870019952572833083510884044018950281438432615783828127815212503164977819497123816035812966376729636251977916560568144016926703146427150467974867575105083104791219566307618156111455312273111669689928437043849491568965801673225623803125213337536385103767280781166681284303277562498644190927624682392963412989348144644687418860011984646926662881403719012723135715416255141823820933793540547884495289139241607927076075571374813503986202010848389294823790450545017577204197712023924838255307085568547386715171967779311763764392602861343749124735856088174883498022094529324020406562995489807703402050386743170798636464123587462760989876130848292345549739576173299325321285896824625558300365122514563360887326735557854748905897629627638223610636643432073394522963287679449591613424718874789503365871753066498508106193272391047444993211571554285161830106777008495640965499640457864250708224375333313413943603430156617563263491759550218510688714476810012686323840570415764057449331554450878289179801942314853381714147881542709153938997156469690787318721396596949837793272667154192251935792419680569767592887098826184326078733151472541030206965350523825024122611887072090136324064362301417297600841293463170009589155779857722922653115102908832891167224518019526999268041003170440389680259429152119122308259580536872605768129191357077523029520226018826965656845422271692493820029869476999578951303762590913097241444451794267286114068856883663428736756058637887136818603801629258815773264314181060584312522605777988142437678301684982321155599572288965995177394754259497416139683683137159077408469169471892995475056755774405563629315710721081580560902874521685354964599239874873470349820682650796158925003196050566110624155025525106798047586427270177769018776188530111125718148745345987439661392776091051394007388506822919911807426698662220030619708423913704785997553101380377731003349514493324498111755794820671306180706925204228382653868591093104716358289016017515049534897280469359661789869586322026942526658093243303745932517074547855974354596630414993200145009559386307036462114037208143245999029996677462705728048548480697648384773112514368729412768320957301639153002865640099635698614285275553212807965765704086485250892626938256111790315940929227877668974996552383499650684741953684530647557634440336835332582898601614754810218804842034381294433642247786770423504386169228651385506672241675089407437634621266194133313300665421380816051327454768521364196968759980176089037036110585206450746171567492767917863704072876707455646344802069691083968452467013572582132227891102212301741053349256812688969647873136386221906044798685240342602965398757447081612038367922491077306157383167726071626118561527103433460118954986170447134472026469474831937625490095792419340499302326538920650434320636811233564777759967421229572360662636549265778568125419936852137709313260479273775001800740718858875377906557255028901954659680512170054930368413835222459031321097263740933987645103774697830053995568790434788415279473376104606661159654325091516588200045624395849268490370555280713441019041638652829225940751076248316032951743227619010721295700261882578484381682685703454487531318134098572928219121990307979287149620946253588080732438155112505350483313952617164626649353421227526951663192885174811562707132243806969211452717940110718475645989627636242708942572326103976214141707523019097494570223657753625421862984014701253635430984116232603908982506455868240292043332133752895244408243563851096998898426357546261129373274275260470654560170963095979001517746508501458940969043293230823728605320262080938187279056042592318806381833924924389303246364105088325233768271781357863927324702860180895570125198792229289225568194637052721481019964049476738038546273193083069060543901553371430477185661867028120124237252964630090066459829466685097880917859466531344212786632282968892754751416322694295707266411610321372473379908672773573648271204479429118538118412342652899083095772863740285114225029420139576559202305066609798114553029610964171795619206912333336205588089548088499813979363022010818738709385311511220339164749913420284396560059388783033680358733187403310052755004566784839690589858583576588646593844915835307211547014531117073570065972534853511308143674184311795119563843442309198838043917079598621926322167526017655590585285227027052167601061875192155426574151434518756002584643948536673470514546650646694302219098029340782786102730402024353153452019460812545130188843357616018417814260727927595359300371511123992215050514605735715080157551847738698943504219173988960077892248385572394093711011323886825719708113806319634561683689991216680748329670454150025333713547963616798308156089377220416196076579369696308489659387496739715270653597907200569486963366426385116079769375761618912711749475559120299115638022058901658826963140367627308747954377645206312272762478339107275541186162220723121289518359480379658935088995547399066328631206670557379600357050010492775611031712161854731934465680994732404729570275172089226359851065463612477362126155350597794605318420635106280389642729169707330027070924716613904033447017116165826584887263619011475959249139069915885305349806429260686012333117501610981989469431250380181384684054311230491701237991279458567495599331484111996620255110876110080231169850490777037751752493017066697227988267326006339589595727889917775606384367578793627658684745050199841942547539301346183515135756505190435353673351008175542199779719511806117308697296421832460290360894309139155221850967578665674900579230818810195580188021154349359123273510794947198363356244292982450007402648349695657478382542403285732447096586318969351802301518092465425896444517880164208742057065854265846860256178747582013817393913246176118925867591437904953421984182582141041931367554545860272782124101845287402612141834552086756749404276155683017074917161758566144095873080351682252436885594598314909800182644744058977094218218997934040177058012293249307456251639258596883500442907302554996579880390494423213176380805485546296412719750115227382429698225647701773178828747819536089817938341818992893738141379621623097728577750163208603740209487596014552308777770300515943410887630268646131636542962217199954440463727740304681194879577455974336430545802371531926936910146596304088591438706746400710584096920286716095875821058708913474443913676465654839581846599944954456995088443208798508327896460234982887145366493703480555642576264609999008915160050177200184220711718045915140256823096624417697325382638549188322540468616818166712342235626667275237373080471031744501892464651688562802029266814543931017078800614948899952731275100459869364815779665341926293615203855791685190265883180833341252934766969140830682500487406246419149445262171028819848873578956241353192967523656102825989930940138076021200693458442613329088271430915589292053969654921695568832377903262259177017356161843130611803947224370490160681065488015589745196814663999260320996327718291874531291116744917711425169014247850798735163392", + "decimal": "0.99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999997047428239844168326784047128756004014133325787851913276379806625964009845539983367990531622043746326967414549680517974122322814087249434597638829503572553175901258525112343908102141472965392910981082" + }, + { + "rational": "234864263359610079867218162225217411106273202123831770020795650141513004316305003561912315312148738083185270656042944969760852907550543477548539667389161545144605271060530262739521589468207751301783239140427047733488677311307178014632314724590826866566699073032170490602332332361260706326566136099119294075711663612352079266862522059761808526321656802265997789634785826579683764389219566904885285260711354417864824857793271730555522134293449720861643081575407557067999858539528911937076991062650411929091827762448767021459599606264860454758938640262646465339523868936518669987996902881678520516807466340889490505389843594662700318828812418327319044075387882478470713548115692993351781517652388562567914213310606811472085707432572139094405346925134807529601398619199943981822775488705972894339776425354824365021463052490627271450114411749085303403586666974918507773934406094861042318750936734177693964745156884333344632564970296204281550358755884427242760640113120458808916098800347783066362949344168384210758441234132503506370166849197745738274679915496964602398753224566967059236387283367413802741171580541414109140902827425116081773153341652131157355843902899467398831439377967569131890576038113350806015585606276816811474407886773155139551216155604454428023680104750810243094052404976022658603941384381627387760145733270783255731854082617704046341033112746985142577619644934699464964338848789774879612841362446006938552727233406960499575176488531650928550469223551179035610025626098861385964961052908760087766419218102028409421092477829646054492607724516329425221743937788778293237258574172295285709699659133805377427490033013648700409862144317148516283840663381650780450233401356376151597111637251840807769460810215715239495348640492116930848383659278693265972354278886427611689185191642588617263899824948790827535534661078369162695149973325636473609262216658473816128884488654866165545007058174845474145438268022016074408028634557538830164599482912335786232894061427273624525215430243909323146016670018717757410542096628065935270679628023211970235640279111436922156772186018699549411734648675023492355378058279638022796375986497294214287175266842031448441191996979215996824805881326829660402689601866694991017245189836218635230822373599461827464889334444900590800033674564729075370502274904235180249571450882845535709278151828988021050723735996739505515804271916315329457928371578031218664421008232288909121176218788991887668241976017116698649957170045743586797826540535210017100690308449955759272809597214609881377733624569731105744233361101256666863487275598672870755203904894857002434722092412984054795843702991535008865749040594827981094104321088941058002764121165859629871197124740605097554325271885283116841812667130865725754871528403465318171362699521137643927651277772973388861560164853212094118935685154614436009737693491999292878608362883038984996245065840278752272455442886768171961455984141691443299385910958995223942293010683588790464125769129532300944399349774322552881906202800426830722274664215459122709067105858054197839781034866761887344614301468863639799531487128504293524532018273564563250628666969145871697508666351573569000160338470318441693213651888328785076222377059847689434619437591940426222886900186678080218240319431571804943750662461994114020511643236031227448889440625555399990286268728637799781505265684885637920764571690746646860265267193446991532649511211236199704132989356935396557422425522788901855374373243178258998669004888218119615258987152210709898242084870727954102604206501079431120595092644832768539049828176927806090610638909536586952892148973463101215594510983965051345224119051164298946793296848476252114154529244428834216711058594644693504562707296291133771661123561307269152285621709561836822850606343499606485493705460057483774586939379053019236482666182271419106068077716688358237088322063063009807050665958261497837020017035048645406393367465337992967250470530131439050746225817883956787124589651421132797607796361437530488437353653230427402398050106797402595725190653467622696309494957361563070476512138656078941307715089411255975317439227857993789985359103883203865036033856152349376940491682234570074710918126329486666923142952459214943712902030679440611059367171359613265998900914402201845136300840268269813033126143125889795977633183605186466454682430580896810581365164486670686441999218252389093580785226296564986719465329738609078264764741972315633874179139439305434792809439361934285256621256756325329318746065007030417719674349927416404271281206253338691497483076553314692088432721318297975626374608905891677385122800022430119372015983651223680591536586819315067128650276007483733548750623444036255446290105867895579169620689480210262353448288227240995794285579027405777139352320322311149371003951580689556342975789978350833870466500770276492979978447019621145536287443639378011577165007334964164128107693693584978561390926064523541560451983777164740850091194435388664548753613224548495757880114567709594975398272764596502385096571237228180133127421035730743352179059585750752668693484719314671067365408898561995160572740051502743190025849015341424064509308696834485366028970490491633136340329583173492376756477699978420673761461182772388232890648867280823927109870942063511194730128815042067656879567989284523022011977717299639551370049457951488753141236714754046656712368882680594341202068914203855621609511720233033764793278888709826833304669937611046231036021269038689040378986486415678259732900877105657461664597234597674122160472557200905511292672079961821479908158508780397900646712137536149043620764088512609258171589656513827089130316673028876979523682044834612365218824736094138575447747022773816929701705084120034444950852296950498002040872308200345892004022686501304876530961352344929681167960798362059518168891625659394425569336674343416704937990107277552114351446714838488422436157426858953629820068418550206648439433289257710177226274558222630263820587402012626831104343724561572232460483383119731971383640402500309494647858851850358939046713726888301785867926969632645145614161447535272379474083565717523159234389842275042371482011855624332065245002975304696802099018035304900193090631744611425937087558265421038241408973591996017001292873390051100745149253060884551505571493495445355128654494486589274072195735032474005094121007456442990097987155850113922566306886219955662364668910888851641981852233509753338587469930869740173358857894257452069200656609792935722397385842265944991078011595757642506123413476329764668395392705745761268418224583289452404680315880797447661215333682921994372150793770278973077296101295287620543564241423492107599651458968458620865601877587206066087240825954379776513162405982157740780111034486769153696705939327447460495522482696818971548312911553033534185898215139006522308131577106080759172553590794801823431118460612543441826196535656255717414118940032398853172604839060200315404885603646046055041709408139777286976457917678156343137785155880892220938448502956224657341182556629175601600639977879329709621628827740266743301550553234443881507849704183792412185567727450618840074010571275903180970862191500053301521600453368516749201761775042567952214587010946134824537334484094490564792249456160717486467174244562966544876474719412891103500604949987553285937846826243387994328625887818077443307749420345851287039780061511226205188851442460302495735871914765366273299259785688120823075767953576380347666894562876482373784849802039090790576728385484531003396145799356579647583319132216031747480735449864302971373669021566741789707686391721697238550027035377807100233375560960018465069735410202624784386918375661444656839967883962128898804838558288527586538749228504731916035040777308325197111573254777044765096939172742730967333789029673191393555429271274163721000696114002103737289712586041087271023205209462639112861152952986317289712332520287224713968750967214885808708340481599102166426803808458825502521676576610940351794899766390227889743419689412666440859161136637502030243565066886681937129253265025620226573618647309975117202056761915166345910119793858019967967994234880205504996786672482664894480568175302911527605964565151983449096823388983324390667356759238631312605785813957042614110309279821557507555766262423564911279988966781286372946894033388512888919364213757707212484747688369525265995397193647116438799267122444713671853808200858926991524145449551108850504549516922059087333578607116257133125017485592160703852204053558241263701940922711153927723865323586685869690644405782617401533833360372322606521812313494901768078655044003164051652200484827676025820385140878007977778371580117138318379488982697141167627908592685134419420025002497325679909190123563652255553061223252949032463358782017978870377581804097716097368925412587712864881926936295335128925496592293612710286324770831401606894447373825322300474707809776982133763853239838590302075680233773400308510537091519178826689872178189485871459317546124638578440346594555270578741236702370559681296516944322250776671502130127034644786327882098349514448342760358241107708738647532520390786573234504496209738340324287232097778674862208233190437797193637655251618252497341308668894872619512136509341519121332196913072681090470871604805296215622085676128386863986525434413630499310552509999865878384772757945231435679914957956400228696301805539666541093887728252327475432708827312584484798561405299060737335501656929147542297782998241308697380891038064119102400852776112822107863624196073322317270431839299930953491100373840521062685696734985818666297772498621089599055696954051205069961017244965403304532603726701608643092540182608146542241734024650756796337046463783329506228349452451005674340346787250881391911645477258783512260499376082838365820991910802989348466993153360882122234263321343213562441480512929366595574297667460826165961761986778700628802965947984076957386818267979381807577537475955907941290528831518332689362620594677925240186133748722491816483976127764439980744380550901979409778473279654906941707943912061838468702163843729653459317753702122918426238747329323309810891138679878867553985208741622006629054887074034480557941739191879314447702151332873177780638966641203046759398512578982100022955779658576897841809342951334150564330063370665988368357070218740006427808353668849133779460231776683952920785192523703019343604019716029602599769693882285730762029970008417094388781837420684435468609692028221676618137108012430751978715383309057110362222839247302139021766087814823656765058490963047575048064479631757269061994182281529209748208370303204074528418457427379812851565614348303644789694548793083380347100934714842045344283741282650660422627458644594211885063205670488994208836146317887947984810171630184960368077238321678222328013153737323500995109635547410914096994187544820428563074089171991593451894022337306010754206865466974167104076180774609956322122764533301239731476109075847785458959724788285630793016775420782008548118337187517254161346170355330765324130406904761239078626080841178866630658885974889562279205130383444719287510212036855988462864139084849455685448185333361489800788614152734437548283868109106777246154214213239440353971340743853152804710054450527775492108737981358551201846341287304230861626807352195912574172942769288418680455234636391109433130905322786447279946774439124551860222992237697971446751391735269822746037196999494479302302104240387531263980188826956914066671547917334690400127135093455550148817839607119724382625871008659171275111860051303880209469456438121907952177466017173429369074181444693640863499765058802341097165310592889618019118184855852664419442751877837185718921138071327793422246627492455942365154633050890640952978999367152293989396806793618722762504216045581688293231791271422664975461085882227112398328827489335547644574074716069251167712696243622334756540683523824036001488211667316383879260832652088195004785884845372131695409473343691275280459610213581936177199688907621112971863963008889406056524374290829537569363458176289215532323874102282570243645557730041945857030218392435952852730408662119118366940790442371564695154808067187187613880607697718840995159304739237941044069415932726516461676353906104862210172514216232316696119635407311520805811545769155641793053903903744905403617599791031913349271813648183696627360054280041060451677359976771536507427590341522391545519489377516110579127595152973813902938745211862898364619496783376912594278833805850720908048861177963013938641409224792956468035769485363048898680051026854897907601710460980245478132933981416869140734189626393684676465430509387393231342574424643077879530240547475004298707217901736599883715415061809898408637624067015007638242515520881576554530882825398428621442265734708304544510811893410838830709289265111822371291185743007033928529189034241395981848443237633523664849385181030876221015521256250996988795003069330035398226351545045242711345419077318052655991659143606580166294812808699228140243795220184034560934560680425970136277916404358252165102289774703237165922214612708737574395607948646883724361337634937836436184951095213824429882424015667804887656492088747004774652265324433544493631054221238202505439642123923488161343411235029107687026491630142355358247370040390212735205885855200022911862706630151526732241202315493949903844517586872934799303253446059565378359530832820545797079208779593576763873845213818944054446797158625564919870554752746972251666474305599916539063902978938795510237072562775596871205534322743437531175126045713426507218736405680351106150034958964846202729998916101267926503108413055763598240952053511412691119174140012003544334027537480699922054253438799887784302289360486318652573839780038348881925655093286434916870854200892828079366630083722730761055493945660106460782470584298166094182512017197327982065679771738864986586687266079234353450769092066448865440288605544501119302932572287294331782358390346986113467376729538815039822771228545154121703979298162135074543644114843247732384261537090546045435722516258917832697484854303007741669421656886881654234225570112573591052186523940122660349374024417907738594210259612254835267203007969703679360781324894030920604344365058221309726325393000401669361574904383502606565063381411633687615111782305441140266460053220037336300904407664266376258298929707493389675505028319473440677036933122287905797959276100687151510784286072860165226892525745373787582926730641189890124424385473646101328086102064186130879049659752355031322385964446981896618156108573813361156663781247292397041865634295647847136560855067339405585944296196829801582988505628889103807909316928127195234003909406283604171366629511975264652636062068553316611093091893213219071148116168538857707737154043053486903708922248107923671427148476850381550017782669013886646551759272985261491985636827281614833808432248558045759883346894549341016499727423692717989826620654373371379504022248802090561869925326844692975095878932067171516766378678035281351886055903558773532254915407578910477718678514741581733166531646107404985431724250206268548349041311886628522158620879001053046312118749274085544520400383401219315662240780656605226937397220435074799942584348020986625050261100560481434462240159418852625695941458596918318081490416254699889275013669868521141476136190765300313611106424797524444739736065285996094520247425322081603253859645476187579306858901490637605291047622388917411295420433409851509337581019710397547436911233519943225899397267209389034471859853361298456400022762475959681078555959183249605207915647715726498123926939888623812122224704961694402599794606901836740940568675543001548324368240252184051859530495201097300774456476372237913204943488236218276697123485110714149773843776632060570124621344072457700557844805805147080998898876591950592571908461556314247928756624195597193947975851192597666798995362705790170067000852936547737015112069719822908986610268735592778548250834352398766850228137250501168913241677217882898605195449195167959133353047477485210176780628603492574279374333645230888295091370034838640163841940290055340370900539043319191052375595864493140544886569326503144594151271571969461988773538564626742900739413574875357948127537171833793723357706499068652643991985897878229833706602782017427532419749700833771381134046601219589386271241374913734804413185738911575125825451538654540295829706327857035718967057289835108737723125372405995717756108070214470621865217443536987089144426955035191402117339868231515731508751728378716886702849763104633609972222014423465724102392903860722412832003705914415271610805495131550227150563099791263562166038137971037110367591202362294573993564305741338848293128062954960406594185322669300805651501479491461095439988178334971051182024490880148633848834009775612513205840598377702156614505586969489784861651471401979571061296750629135536651117763548622303884673120857867368810481461858816287344784346244716852203671526491140546825953854371429404396489256301041404570160023046262438986203955728013940591283809568234974187083836598521830096738273354247714351475114480523502085476010934866655164232426750653742732592555728845885122903523908256302314767317984404191830971472679735536436592763871939170232123826228717545016067661552521712092130257631999851421994432802289441241183149149467290940808103872450039755668872213960208782455374013044181016761977217560009864083850485620154416779837697316400304027302785406990117512949678784729544940249008016926847908648412530330007986422905165722207290384572434122484082427614866661695674939140529665597685520221099086570740631603887189059582073534140224557410521967444488591583714411905226004289923247278358514645787807071660970683447069720751040843595859622234990425697140398280462398684628409127824205951033099440820008295355688647632743915169796880760511797711053690367129157559387696564799336752004068237159673840530429931725556289107805302788103679810709832603164983965466463654115784019448586438256149848962862324718002109351362143446410993913084445171959175053630324343098313125129718268587705408117713058380845731390221692513075362272470349507907296948271706006625576318016077854263356934549753310364987220665644293152886386988033490689104326177587493241211639388905959183896628428412940163131605136852110662445571063581275193766265162154040252250220009901800701886246129546315595142346688695389224814889925153058145060061207585874225058431221568727535703482007268543299811901899954941148579268301053660114587331147314974789504526127353806520051626663791296782199943152965967155549080974367313893750551599184304299500540190343029673608249838557030757797313575081683899744767541427332416044652493202888233157388899669227599470644070607249073815060466289605183355089919952299887434846135527024644409613024974307450582862872124027001250112310505566343964644090088192618247697899324033513844413582482122954142840294497562217085549053220317843541067196261365764632652785491467041809518539056706574980836259380342349158802770200879436984188712003560288110787477283570876355128692074876613460249412666141890942937417871745732589278676590283290087863937848326107950925903594203810173681242554207730829763716210852049571443054661265748911940006918678061176793397689485385971101445010093362287757334900709151598823058701269731645737163295976403011655124901625921106567038960934406914855505282649398077157443515446657365819935766047923208463270508537560534968330298111808653388541098165577378069979221993611731339104151421474430874545406859148198976439666350319991819975455996918901199422380490990147673657109795031776165395541168036256861981505550455915103531996976011615057997032369568220201927689585318348982044194406984094327966685672637733603369895164651220039722285931829805608710751418921659108320225347767484239729648102074731333307380910169912803546896864056651935265699752598122099775052539559552610115357543282935645773571205759260218782088158108460259719568128062373485332257762275956550701167941214104631632488988610438242055659545477598383256681401135619600681969897833275355362445821058702665595135354491444565505364148593842782245616943606926473834196947119280062684262847635199108656600578490286140418630566226628625279992193851176110786896343395033010015310626637012966844430490324220924878510249696288308526169905009530422851863235556181961436654840881116003465251241750700096642959184884382217483305881264805453733037350827363498148080186075140468848114264861553450268551831215746532262767908716784279271079046990155603971570314780827053724019856412098224963618134639971185046602422771204280317810356353544016070178953319733661529749569841592318949955816147497545186358542342582357791065071946866494186311271132249543705006623581039411390415425351676437303841662192828501860353137978690464399419363897725627392631466826450946763717169525818025545719299675488267186317009191872616278951013785286997760740082613267244865450819243806617355968897818591508302293431580949086296945653480226753506504836906261656239263180043588768476505634159948271763955654977135197249676245002425716360889567836706415634916198137992229752516531245671425335621174007669230386079145629331387936321545227351980348220835247439026074636585300250225235327365031891757875194583357158479466713534336658521321451357967185297797147603886711858458723307967938606281539811152699744066940650336270799509737800200970822654025061153586697531732508848995584222170571359331018799176448771389063449465176681693844895300779091805071786014596813906580382365101787150314095329811208538919769096226428609347774916724995415347775238849451605225166052253770827653823147612545545674343096545030934794197087343697212242643405378967791301537717777147233648277310851537213496971219627583330152191131883245796405409988171699628211089646944086790087650470296214437154067473716515145497644715645491781580278477953816542537395959488959672626026444603908769442754215558671315466677325199329584993143678467828658068155040472225162188313238158712521637587412105037122473205335631297931068074018696455652423135035949098245386190887205432187668502559318080687302073329599448887056342342574672945134496939277461037568123354948941176319145280052827764796141055421831284317570331562898757576169570637055220242180384320169149429121772035556660970707301528915516304744071591419333442225928584467717461146671723235861991061392026842695659135131736209006786596438049470066159791310298481417978725875479942678762722455247101232183734437164767983487943304083673864140960310454251059594443270163496410536405003459170664033811256398745261301614779869655778369122976301651244928513339313337430319139044266577872986243428120448611509891086602929319590654766047871024778657345590512360108230491501947355511360060026640178367785865887835998980018343540287133061129950138434626621190445299016295583226417962065929094093771599848464118017854413022067285967035510478671933543986821841502404174544073020995212948197976833951400181565097244021231174567789551526119598009350055516365091043317889352840853296330851435289098031898281065565081538421651800393575692869196199384465658762846409253746000789559824973313981893583913641456029952620911254719471480079810291332334043536176075801125753730463135312511260850012659911277988495264143251865506918545007911666242272576067706812585708601871899470300420332419164878265230472624445821249092446678759713748175397966275863206692902495212500853350145540415069123124666725137213110249994576763710498729571853651957392578578749675440047938587706651525614876050892542861665020567295283735174162191537981156556966431708304302285499254015944808043393557179295161802180070308816790848095699353021228342274189546860687871117247055057570411445374996498943424352699533992088378117296081626251981959230813608201546972683194545856494349851043959504523393169382198958304693197301285143587298502233201460490058253443549306942231418995623590518510552894442546573728293578091853150717798366453698875499158013463487012265994032424773089564189779972846286217140647320427108033982563861998561831457002832897501333253655774413720626470253053967038200874042754857907240050745295362281663056229797326217803513156719207769259413526856591526170836615755988625878763149274885586387799351173090668616769007743169678722279070371548395304737304314932605890164120827861402095300096490447548288360545296257449205669190403365173852680038356623119430891690612460411635331564668898072078107997072164012681761558721037716608476489233038322147490423072516765428310092118080904075307862627381689086769975280119477907998315805215050363652388965777807177069144456275427534653714947024234551548547274415206517035263093057256724242337250090423111952569750713206739929284622398289155863980709579017037989664558734732548636309633876677887571981900227023097622254517262842884326322243611498086741419858396959499493881399282730603184635700012784202264442496620102100427192190345709080711076075104754120444502872594981383949758645571104364205576029554027291679647229706794648880122478833695654819143990212405521510924013398057973297992447023179282685224722827700816913530615474364372418865433156064070060198139589121877438647159478345288107770106632372973214983730068298191423897418386521659972800580038237545228145848456148832572983996119986709850822912194193922790593539092450057474917651073283829206556612011462560398542794457141102212851231863062816345941003570507753024447161263763716911510675899986209533998602738967814738122590230537761347341330331594406459019240875219368137525177734568991147081694017544676914605542026688966700357629750538485064776533253202661685523264205309819074085456787875039920704356148144442340825802984686269971071671454816291506829822585379208278764335873809868054290328528911564408849206964213397027250755878591492545544887624179194740961370411861595029788326448153471689964309224629532670904286504474246108413733840475819944681788537888105877899327750501960383169677361997209306155682601737282547244934259111039869684918289442650546197063114272501679747408550837253041917095100007202962875435501511626229020115607818638722048680219721473655340889836125284389054963735950580415098791320215982275161739153661117893504418426644638617300366066352800182497583397073961482221122853764076166554611316903763004304993264131806972910476042885182801047530313937526730742813817950125272536394291712876487961231917148598483785014352322929752620450021401933255810468658506597413684910107806652771540699246250828528975227876845810871760442873902583958510544970835770289304415904856566830092076389978280894631014501687451936058805014541723936464930415635930025823472961168173328535011580977632974255404387995593705430185044517493097101041882618240683852383916006070986034005835763876173172923294914421281048323752749116224170369275225527335699697557212985456420353300935073087125431455709298811440723582280500795168917156902272778548210885924079856197906952154185092772332276242175606213485721908742647468112480496949011858520360265839317866740391523671437866125376851146529131875571019005665290777182829065646441285489893519634691094294593084817917716474152473649370611596332383091454961140456900117680558306236809220266439192458212118443856687182476827649333344822352358192353999255917452088043274954837541246044881356658999653681137586240237555132134721434932749613240211020018267139358762359434334306354586375379663341228846188058124468294280263890139414045232574696737247180478255373769236795352175668318394487705288670104070622362341140908108208670404247500768621706296605738075024010338575794146693882058186602586777208876392117363131144410921608097412613808077843250180520755373430464073671257042911710381437201486044495968860202058422942860320630207390954795774016876695955840311568993542289576374844045295547302878832455225278538246734759964866722993318681816600101334854191854467193232624357508881664784306317478785233958637549986958861082614391628802277947853465705540464319077503046475650846997902236481196462552088235606635307852561470509234991817510580825249091049913356429102164744648882892485158073437921518635740355982189596265314524826682229518401428200041971102444126848647418927737862723978929618918281100688356905439404261854449909448504621402391178421273682540425121558570916678829320108283698866455616133788068464663306339549054476045903836996556279663541221399225717042744049332470006443927957877725001520725538736217244921966804951965117834269982397325936447986481020443504440320924679401963108151007009972068266788911953069304025358358382911559671102425537470315174510634738980200799367770190157205384734060543026020761741414693404032702168799118878047224469234789185687329841161443577236556620887403870314662699602316923275240782320752084617397436493094043179788793453424977171929800029610593398782629913530169613142929788386345275877407209206072369861703585778071520656834968228263417063387441024714990328055269575652984704475703470365751619813687936730328564167725470218183441091128496407381149610448567338208347026997617104622732068299668647034264576383492321406729009747542378393259639200730578976235908376872875991736160708232049172997229825006557034387534001771629210219986319521561977692852705523221942185185650879000460909529718792902590807092715314991278144359271753367275971574952565518486492390914311000652834414960837950384058209235111081202063773643550521074584526546171848868799817761854910961218724779518309823897345722183209486127707747640586385216354365754826985602842336387681146864383503284234835653897775654705862619358327386399779817827980353772835194033311585840939931548581465974813922222570305058439996035660640200708800736882846872183660561027292386497670789301530554196753290161874467272666849368942506669100949492321884126978007569858606754251208117067258175724068315202459795599810925100401839477459263118661367705174460815423166740761063532723333365011739067876563322730001949624985676597781048684115279395494315824965412771870094624411303959723760552304084802773833770453316353085723662357168215878619686782275329511613049036708069424647372522447215788897481960642724261952062358980787258655997034349449396219300122472632997542053329306906263241824473756354107/234864263359610079867218162225217411106273202123831770020795650141513004316305003561912315312148738083185270656042944969760852907550543477548539667389161545144605271060530262739521589468207751301783239140427047733488677311307178014632314724590826866566699073032170490602332332361260706326566136099119294075711663612352079266862522059761808526321656802265997789634785826579683764389219566904885285260711354417864824857793271730555522134293449720861643081575407557067999858539528911937076991062650411929091827762448767021459599606264860454758938640262646465339523868936518669987996902881678520516807466340889490505389843594662700318828812418327319044075387882478470713548115692993351781517652388562567914213310606811472085707432572139094405346925134807529601398619199943981822775488705972894339776425354824365021463052490627271450114411749085303403586666974918507773934406094861042318750936734177693964745156884333344632564970296204281550358755884427242760640113120458808916098800347783066362949344168384210758441234132503506370166849197745738274679915496964602398753224566967059236387283367413802741171580541414109140902827425116081773153341652131157355843902899467398831439377967569131890576038113350806015585606276816811474407886773155139551216155604454428023680104750810243094052404976022658603941384381627387760145733270783255731854082617704046341033112746985142577619644934699464964338848789774879612841362446006938552727233406960499575176488531650928550469223551179035610025626098861385964961052908760087766419218102028409421092477829646054492607724516329425221743937788778293237258574172295285709699659133805377427490033013648700409862144317148516283840663381650780450233401356376151597111637251840807769460810215715239495348640492116930848383659278693265972354278886427611689185191642588617263899824948790827535534661078369162695149973325636473609262216658473816128884488654866165545007058174845474145438268022016074408028634557538830164599482912335786232894061427273624525215430243909323146016670018717757410542096628065935270679628023211970235640279111436922156772186018699549411734648675023492355378058279638022796375986497294214287175266842031448441191996979215996824805881326829660402689601866694991017245189836218635230822373599461827464889334444900590800033674564729075370502274904235180249571450882845535709278151828988021050723735996739505515804271916315329457928371578031218664421008232288909121176218788991887668241976017116698649957170045743586797826540535210017100690308449955759272809597214609881377733624569731105744233361101256666863487275598672870755203904894857002434722092412984054795843702991535008865749040594827981094104321088941058002764121165859629871197124740605097554325271885283116841812667130865725754871528403465318171362699521137643927651277772973388861560164853212094118935685154614436009737693491999292878608362883038984996245065840278752272455442886768171961455984141691443299385910958995223942293010683588790464125769129532300944399349774322552881906202800426830722274664215459122709067105858054197839781034866761887344614301468863639799531487128504293524532018273564563250628666969145871697508666351573569000160338470318441693213651888328785076222377059847689434619437591940426222886900186678080218240319431571804943750662461994114020511643236031227448889440625555399990286268728637799781505265684885637920764571690746646860265267193446991532649511211236199704132989356935396557422425522788901855374373243178258998669004888218119615258987152210709898242084870727954102604206501079431120595092644832768539049828176927806090610638909536586952892148973463101215594510983965051345224119051164298946793296848476252114154529244428834216711058594644693504562707296291133771661123561307269152285621709561836822850606343499606485493705460057483774586939379053019236482666182271419106068077716688358237088322063063009807050665958261497837020017035048645406393367465337992967250470530131439050746225817883956787124589651421132797607796361437530488437353653230427402398050106797402595725190653467622696309494957361563070476512138656078941307715089411255975317439227857993789985359103883203865036033856152349376940491682234570074710918126329486666923142952459214943712902030679440611059367171359613265998900914402201845136300840268269813033126143125889795977633183605186466454682430580896810581365164486670686441999218252389093580785226296564986719465329738609078264764741972315633874179139439305434792809439361934285256621256756325329318746065007030417719674349927416404271281206253338691497483076553314692088432721318297975626374608905891677385122800022430119372015983651223680591536586819315067128650276007483733548750623444036255446290105867895579169620689480210262353448288227240995794285579027405777139352320322311149371003951580689556342975789978350833870466500770276492979978447019621145536287443639378011577165007334964164128107693693584978561390926064523541560451983777164740850091194435388664548753613224548495757880114567709594975398272764596502385096571237228180133127421035730743352179059585750752668693484719314671067365408898561995160572740051502743190025849015341424064509308696834485366028970490491633136340329583173492376756477699978420673761461182772388232890648867280823927109870942063511194730128815042067656879567989284523022011977717299639551370049457951488753141236714754046656712368882680594341202068914203855621609511720233033764793278888709826833304669937611046231036021269038689040378986486415678259732900877105657461664597234597674122160472557200905511292672079961821479908158508780397900646712137536149043620764088512609258171589656513827089130316673028876979523682044834612365218824736094138575447747022773816929701705084120034444950852296950498002040872308200345892004022686501304876530961352344929681167960798362059518168891625659394425569336674343416704937990107277552114351446714838488422436157426858953629820068418550206648439433289257710177226274558222630263820587402012626831104343724561572232460483383119731971383640402500309494647858851850358939046713726888301785867926969632645145614161447535272379474083565717523159234389842275042371482011855624332065245002975304696802099018035304900193090631744611425937087558265421038241408973591996017001292873390051100745149253060884551505571493495445355128654494486589274072195735032474005094121007456442990097987155850113922566306886219955662364668910888851641981852233509753338587469930869740173358857894257452069200656609792935722397385842265944991078011595757642506123413476329764668395392705745761268418224583289452404680315880797447661215333682921994372150793770278973077296101295287620543564241423492107599651458968458620865601877587206066087240825954379776513162405982157740780111034486769153696705939327447460495522482696818971548312911553033534185898215139006522308131577106080759172553590794801823431118460612543441826196535656255717414118940032398853172604839060200315404885603646046055041709408139777286976457917678156343137785155880892220938448502956224657341182556629175601600639977879329709621628827740266743301550553234443881507849704183792412185567727450618840074010571275903180970862191500053301521600453368516749201761775042567952214587010946134824537334484094490564792249456160717486467174244562966544876474719412891103500604949987553285937846826243387994328625887818077443307749420345851287039780061511226205188851442460302495735871914765366273299259785688120823075767953576380347666894562876482373784849802039090790576728385484531003396145799356579647583319132216031747480735449864302971373669021566741789707686391721697238550027035377807100233375560960018465069735410202624784386918375661444656839967883962128898804838558288527586538749228504731916035040777308325197111573254777044765096939172742730967333789029673191393555429271274163721000696114002103737289712586041087271023205209462639112861152952986317289712332520287224713968750967214885808708340481599102166426803808458825502521676576610940351794899766390227889743419689412666440859161136637502030243565066886681937129253265025620226573618647309975117202056761915166345910119793858019967967994234880205504996786672482664894480568175302911527605964565151983449096823388983324390667356759238631312605785813957042614110309279821557507555766262423564911279988966781286372946894033388512888919364213757707212484747688369525265995397193647116438799267122444713671853808200858926991524145449551108850504549516922059087333578607116257133125017485592160703852204053558241263701940922711153927723865323586685869690644405782617401533833360372322606521812313494901768078655044003164051652200484827676025820385140878007977778371580117138318379488982697141167627908592685134419420025002497325679909190123563652255553061223252949032463358782017978870377581804097716097368925412587712864881926936295335128925496592293612710286324770831401606894447373825322300474707809776982133763853239838590302075680233773400308510537091519178826689872178189485871459317546124638578440346594555270578741236702370559681296516944322250776671502130127034644786327882098349514448342760358241107708738647532520390786573234504496209738340324287232097778674862208233190437797193637655251618252497341308668894872619512136509341519121332196913072681090470871604805296215622085676128386863986525434413630499310552509999865878384772757945231435679914957956400228696301805539666541093887728252327475432708827312584484798561405299060737335501656929147542297782998241308697380891038064119102400852776112822107863624196073322317270431839299930953491100373840521062685696734985818666297772498621089599055696954051205069961017244965403304532603726701608643092540182608146542241734024650756796337046463783329506228349452451005674340346787250881391911645477258783512260499376082838365820991910802989348466993153360882122234263321343213562441480512929366595574297667460826165961761986778700628802965947984076957386818267979381807577537475955907941290528831518332689362620594677925240186133748722491816483976127764439980744380550901979409778473279654906941707943912061838468702163843729653459317753702122918426238747329323309810891138679878867553985208741622006629054887074034480557941739191879314447702151332873177780638966641203046759398512578982100022955779658576897841809342951334150564330063370665988368357070218740006427808353668849133779460231776683952920785192523703019343604019716029602599769693882285730762029970008417094388781837420684435468609692028221676618137108012430751978715383309057110362222839247302139021766087814823656765058490963047575048064479631757269061994182281529209748208370303204074528418457427379812851565614348303644789694548793083380347100934714842045344283741282650660422627458644594211885063205670488994208836146317887947984810171630184960368077238321678222328013153737323500995109635547410914096994187544820428563074089171991593451894022337306010754206865466974167104076180774609956322122764533301239731476109075847785458959724788285630793016775420782008548118337187517254161346170355330765324130406904761239078626080841178866630658885974889562279205130383444719287510212036855988462864139084849455685448185333361489800788614152734437548283868109106777246154214213239440353971340743853152804710054450527775492108737981358551201846341287304230861626807352195912574172942769288418680455234636391109433130905322786447279946774439124551860222992237697971446751391735269822746037196999494479302302104240387531263980188826956914066671547917334690400127135093455550148817839607119724382625871008659171275111860051303880209469456438121907952177466017173429369074181444693640863499765058802341097165310592889618019118184855852664419442751877837185718921138071327793422246627492455942365154633050890640952978999367152293989396806793618722762504216045581688293231791271422664975461085882227112398328827489335547644574074716069251167712696243622334756540683523824036001488211667316383879260832652088195004785884845372131695409473343691275280459610213581936177199688907621112971863963008889406056524374290829537569363458176289215532323874102282570243645557730041945857030218392435952852730408662119118366940790442371564695154808067187187613880607697718840995159304739237941044069415932726516461676353906104862210172514216232316696119635407311520805811545769155641793053903903744905403617599791031913349271813648183696627360054280041060451677359976771536507427590341522391545519489377516110579127595152973813902938745211862898364619496783376912594278833805850720908048861177963013938641409224792956468035769485363048898680051026854897907601710460980245478132933981416869140734189626393684676465430509387393231342574424643077879530240547475004298707217901736599883715415061809898408637624067015007638242515520881576554530882825398428621442265734708304544510811893410838830709289265111822371291185743007033928529189034241395981848443237633523664849385181030876221015521256250996988795003069330035398226351545045242711345419077318052655991659143606580166294812808699228140243795220184034560934560680425970136277916404358252165102289774703237165922214612708737574395607948646883724361337634937836436184951095213824429882424015667804887656492088747004774652265324433544493631054221238202505439642123923488161343411235029107687026491630142355358247370040390212735205885855200022911862706630151526732241202315493949903844517586872934799303253446059565378359530832820545797079208779593576763873845213818944054446797158625564919870554752746972251666474305599916539063902978938795510237072562775596871205534322743437531175126045713426507218736405680351106150034958964846202729998916101267926503108413055763598240952053511412691119174140012003544334027537480699922054253438799887784302289360486318652573839780038348881925655093286434916870854200892828079366630083722730761055493945660106460782470584298166094182512017197327982065679771738864986586687266079234353450769092066448865440288605544501119302932572287294331782358390346986113467376729538815039822771228545154121703979298162135074543644114843247732384261537090546045435722516258917832697484854303007741669421656886881654234225570112573591052186523940122660349374024417907738594210259612254835267203007969703679360781324894030920604344365058221309726325393000401669361574904383502606565063381411633687615111782305441140266460053220037336300904407664266376258298929707493389675505028319473440677036933122287905797959276100687151510784286072860165226892525745373787582926730641189890124424385473646101328086102064186130879049659752355031322385964446981896618156108573813361156663781247292397041865634295647847136560855067339405585944296196829801582988505628889103807909316928127195234003909406283604171366629511975264652636062068553316611093091893213219071148116168538857707737154043053486903708922248107923671427148476850381550017782669013886646551759272985261491985636827281614833808432248558045759883346894549341016499727423692717989826620654373371379504022248802090561869925326844692975095878932067171516766378678035281351886055903558773532254915407578910477718678514741581733166531646107404985431724250206268548349041311886628522158620879001053046312118749274085544520400383401219315662240780656605226937397220435074799942584348020986625050261100560481434462240159418852625695941458596918318081490416254699889275013669868521141476136190765300313611106424797524444739736065285996094520247425322081603253859645476187579306858901490637605291047622388917411295420433409851509337581019710397547436911233519943225899397267209389034471859853361298456400022762475959681078555959183249605207915647715726498123926939888623812122224704961694402599794606901836740940568675543001548324368240252184051859530495201097300774456476372237913204943488236218276697123485110714149773843776632060570124621344072457700557844805805147080998898876591950592571908461556314247928756624195597193947975851192597666798995362705790170067000852936547737015112069719822908986610268735592778548250834352398766850228137250501168913241677217882898605195449195167959133353047477485210176780628603492574279374333645230888295091370034838640163841940290055340370900539043319191052375595864493140544886569326503144594151271571969461988773538564626742900739413574875357948127537171833793723357706499068652643991985897878229833706602782017427532419749700833771381134046601219589386271241374913734804413185738911575125825451538654540295829706327857035718967057289835108737723125372405995717756108070214470621865217443536987089144426955035191402117339868231515731508751728378716886702849763104633609972222014423465724102392903860722412832003705914415271610805495131550227150563099791263562166038137971037110367591202362294573993564305741338848293128062954960406594185322669300805651501479491461095439988178334971051182024490880148633848834009775612513205840598377702156614505586969489784861651471401979571061296750629135536651117763548622303884673120857867368810481461858816287344784346244716852203671526491140546825953854371429404396489256301041404570160023046262438986203955728013940591283809568234974187083836598521830096738273354247714351475114480523502085476010934866655164232426750653742732592555728845885122903523908256302314767317984404191830971472679735536436592763871939170232123826228717545016067661552521712092130257631999851421994432802289441241183149149467290940808103872450039755668872213960208782455374013044181016761977217560009864083850485620154416779837697316400304027302785406990117512949678784729544940249008016926847908648412530330007986422905165722207290384572434122484082427614866661695674939140529665597685520221099086570740631603887189059582073534140224557410521967444488591583714411905226004289923247278358514645787807071660970683447069720751040843595859622234990425697140398280462398684628409127824205951033099440820008295355688647632743915169796880760511797711053690367129157559387696564799336752004068237159673840530429931725556289107805302788103679810709832603164983965466463654115784019448586438256149848962862324718002109351362143446410993913084445171959175053630324343098313125129718268587705408117713058380845731390221692513075362272470349507907296948271706006625576318016077854263356934549753310364987220665644293152886386988033490689104326177587493241211639388905959183896628428412940163131605136852110662445571063581275193766265162154040252250220009901800701886246129546315595142346688695389224814889925153058145060061207585874225058431221568727535703482007268543299811901899954941148579268301053660114587331147314974789504526127353806520051626663791296782199943152965967155549080974367313893750551599184304299500540190343029673608249838557030757797313575081683899744767541427332416044652493202888233157388899669227599470644070607249073815060466289605183355089919952299887434846135527024644409613024974307450582862872124027001250112310505566343964644090088192618247697899324033513844413582482122954142840294497562217085549053220317843541067196261365764632652785491467041809518539056706574980836259380342349158802770200879436984188712003560288110787477283570876355128692074876613460249412666141890942937417871745732589278676590283290087863937848326107950925903594203810173681242554207730829763716210852049571443054661265748911940006918678061176793397689485385971101445010093362287757334900709151598823058701269731645737163295976403011655124901625921106567038960934406914855505282649398077157443515446657365819935766047923208463270508537560534968330298111808653388541098165577378069979221993611731339104151421474430874545406859148198976439666350319991819975455996918901199422380490990147673657109795031776165395541168036256861981505550455915103531996976011615057997032369568220201927689585318348982044194406984094327966685672637733603369895164651220039722285931829805608710751418921659108320225347767484239729648102074731333307380910169912803546896864056651935265699752598122099775052539559552610115357543282935645773571205759260218782088158108460259719568128062373485332257762275956550701167941214104631632488988610438242055659545477598383256681401135619600681969897833275355362445821058702665595135354491444565505364148593842782245616943606926473834196947119280062684262847635199108656600578490286140418630566226628625279992193851176110786896343395033010015310626637012966844430490324220924878510249696288308526169905009530422851863235556181961436654840881116003465251241750700096642959184884382217483305881264805453733037350827363498148080186075140468848114264861553450268551831215746532262767908716784279271079046990155603971570314780827053724019856412098224963618134639971185046602422771204280317810356353544016070178953319733661529749569841592318949955816147497545186358542342582357791065071946866494186311271132249543705006623581039411390415425351676437303841662192828501860353137978690464399419363897725627392631466826450946763717169525818025545719299675488267186317009191872616278951013785286997760740082613267244865450819243806617355968897818591508302293431580949086296945653480226753506504836906261656239263180043588768476505634159948271763955654977135197249676245002425716360889567836706415634916198137992229752516531245671425335621174007669230386079145629331387936321545227351980348220835247439026074636585300250225235327365031891757875194583357158479466713534336658521321451357967185297797147603886711858458723307967938606281539811152699744066940650336270799509737800200970822654025061153586697531732508848995584222170571359331018799176448771389063449465176681693844895300779091805071786014596813906580382365101787150314095329811208538919769096226428609347774916724995415347775238849451605225166052253770827653823147612545545674343096545030934794197087343697212242643405378967791301537717777147233648277310851537213496971219627583330152191131883245796405409988171699628211089646944086790087650470296214437154067473716515145497644715645491781580278477953816542537395959488959672626026444603908769442754215558671315466677325199329584993143678467828658068155040472225162188313238158712521637587412105037122473205335631297931068074018696455652423135035949098245386190887205432187668502559318080687302073329599448887056342342574672945134496939277461037568123354948941176319145280052827764796141055421831284317570331562898757576169570637055220242180384320169149429121772035556660970707301528915516304744071591419333442225928584467717461146671723235861991061392026842695659135131736209006786596438049470066159791310298481417978725875479942678762722455247101232183734437164767983487943304083673864140960310454251059594443270163496410536405003459170664033811256398745261301614779869655778369122976301651244928513339313337430319139044266577872986243428120448611509891086602929319590654766047871024778657345590512360108230491501947355511360060026640178367785865887835998980018343540287133061129950138434626621190445299016295583226417962065929094093771599848464118017854413022067285967035510478671933543986821841502404174544073020995212948197976833951400181565097244021231174567789551526119598009350055516365091043317889352840853296330851435289098031898281065565081538421651800393575692869196199384465658762846409253746000789559824973313981893583913641456029952620911254719471480079810291332334043536176075801125753730463135312511260850012659911277988495264143251865506918545007911666242272576067706812585708601871899470300420332419164878265230472624445821249092446678759713748175397966275863206692902495212500853350145540415069123124666725137213110249994576763710498729571853651957392578578749675440047938587706651525614876050892542861665020567295283735174162191537981156556966431708304302285499254015944808043393557179295161802180070308816790848095699353021228342274189546860687871117247055057570411445374996498943424352699533992088378117296081626251981959230813608201546972683194545856494349851043959504523393169382198958304693197301285143587298502233201460490058253443549306942231418995623590518510552894442546573728293578091853150717798366453698875499158013463487012265994032424773089564189779972846286217140647320427108033982563861998561831457002832897501333253655774413720626470253053967038200874042754857907240050745295362281663056229797326217803513156719207769259413526856591526170836615755988625878763149274885586387799351173090668616769007743169678722279070371548395304737304314932605890164120827861402095300096490447548288360545296257449205669190403365173852680038356623119430891690612460411635331564668898072078107997072164012681761558721037716608476489233038322147490423072516765428310092118080904075307862627381689086769975280119477907998315805215050363652388965777807177069144456275427534653714947024234551548547274415206517035263093057256724242337250090423111952569750713206739929284622398289155863980709579017037989664558734732548636309633876677887571981900227023097622254517262842884326322243611498086741419858396959499493881399282730603184635700012784202264442496620102100427192190345709080711076075104754120444502872594981383949758645571104364205576029554027291679647229706794648880122478833695654819143990212405521510924013398057973297992447023179282685224722827700816913530615474364372418865433156064070060198139589121877438647159478345288107770106632372973214983730068298191423897418386521659972800580038237545228145848456148832572983996119986709850822912194193922790593539092450057474917651073283829206556612011462560398542794457141102212851231863062816345941003570507753024447161263763716911510675899986209533998602738967814738122590230537761347341330331594406459019240875219368137525177734568991147081694017544676914605542026688966700357629750538485064776533253202661685523264205309819074085456787875039920704356148144442340825802984686269971071671454816291506829822585379208278764335873809868054290328528911564408849206964213397027250755878591492545544887624179194740961370411861595029788326448153471689964309224629532670904286504474246108413733840475819944681788537888105877899327750501960383169677361997209306155682601737282547244934259111039869684918289442650546197063114272501679747408550837253041917095100007202962875435501511626229020115607818638722048680219721473655340889836125284389054963735950580415098791320215982275161739153661117893504418426644638617300366066352800182497583397073961482221122853764076166554611316903763004304993264131806972910476042885182801047530313937526730742813817950125272536394291712876487961231917148598483785014352322929752620450021401933255810468658506597413684910107806652771540699246250828528975227876845810871760442873902583958510544970835770289304415904856566830092076389978280894631014501687451936058805014541723936464930415635930025823472961168173328535011580977632974255404387995593705430185044517493097101041882618240683852383916006070986034005835763876173172923294914421281048323752749116224170369275225527335699697557212985456420353300935073087125431455709298811440723582280500795168917156902272778548210885924079856197906952154185092772332276242175606213485721908742647468112480496949011858520360265839317866740391523671437866125376851146529131875571019005665290777182829065646441285489893519634691094294593084817917716474152473649370611596332383091454961140456900117680558306236809220266439192458212118443856687182476827649333344822352358192353999255917452088043274954837541246044881356658999653681137586240237555132134721434932749613240211020018267139358762359434334306354586375379663341228846188058124468294280263890139414045232574696737247180478255373769236795352175668318394487705288670104070622362341140908108208670404247500768621706296605738075024010338575794146693882058186602586777208876392117363131144410921608097412613808077843250180520755373430464073671257042911710381437201486044495968860202058422942860320630207390954795774016876695955840311568993542289576374844045295547302878832455225278538246734759964866722993318681816600101334854191854467193232624357508881664784306317478785233958637549986958861082614391628802277947853465705540464319077503046475650846997902236481196462552088235606635307852561470509234991817510580825249091049913356429102164744648882892485158073437921518635740355982189596265314524826682229518401428200041971102444126848647418927737862723978929618918281100688356905439404261854449909448504621402391178421273682540425121558570916678829320108283698866455616133788068464663306339549054476045903836996556279663541221399225717042744049332470006443927957877725001520725538736217244921966804951965117834269982397325936447986481020443504440320924679401963108151007009972068266788911953069304025358358382911559671102425537470315174510634738980200799367770190157205384734060543026020761741414693404032702168799118878047224469234789185687329841161443577236556620887403870314662699602316923275240782320752084617397436493094043179788793453424977171929800029610593398782629913530169613142929788386345275877407209206072369861703585778071520656834968228263417063387441024714990328055269575652984704475703470365751619813687936730328564167725470218183441091128496407381149610448567338208347026997617104622732068299668647034264576383492321406729009747542378393259639200730578976235908376872875991736160708232049172997229825006557034387534001771629210219986319521561977692852705523221942185185650879000460909529718792902590807092715314991278144359271753367275971574952565518486492390914311000652834414960837950384058209235111081202063773643550521074584526546171848868799817761854910961218724779518309823897345722183209486127707747640586385216354365754826985602842336387681146864383503284234835653897775654705862619358327386399779817827980353772835194033311585840939931548581465974813922222570305058439996035660640200708800736882846872183660561027292386497670789301530554196753290161874467272666849368942506669100949492321884126978007569858606754251208117067258175724068315202459795599810925100401839477459263118661367705174460815423166740761063532723333365011739067876563322730001949624985676597781048684115279395494315824965412771870094624411303959723760552304084802773833770453316353085723662357168215878619686782275329511613049036708069424647372522447215788897481960642724261952062358980787258655997041283985310873167498125164466979670845700676056991403194940653568", + "decimal": "0.99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999997047428239844168326784047128756004014133325787851913276379813914854944175729455242126407306540534636115366590148274358178383547326779675838946173509121411248696014866201796050968441880126635999218231" + } + ], + "profile": { + "1": 1560432, + "2": 336336, + "3": 278724, + "4": 84912, + "5": 54612, + "8": 5328, + "48": 22748 + }, + "m": 73, + "W": 66304, + "online_final_kappa": { + "rational": "1676938111022438771190100017020725032555691674761792047536039179544860041426416167047617951325080392375254668024881417704785844941873659190796874311269827844869294021609609878761760222726040503052361411290178071724514229511402997717835482222843694901217948470487965568309887619068847172953045805114461684934711435396733506293734841325861343304787721299532310229772589857694912111395953739686988727269468587554963277272937736454132255987090515404981010625380300398405414878988986157122637397706184264087627982251269279798737026724345745293965473508101366799393414789255206473161090950205950222122146222214078495368679130218674743146981670162403132582245706410548976470471745261542621302339241637171485342456816268520436435015281896393166247367278251553892803720247630029686984490078449352925557594904328569557484936591314303562431384381815420956360401044641472858822422582249979327207407410771660534313638231315935852892804132000147855397374322839591253536678984113084406988061438073184576016444328921205389213529360577549973971376403629568215377310772683219872177641391235708289818177925111881904300159619886665581137346322368568517117054240697628828913445767477326813624632908438476547455879789107389590165055563621760005781866188169710716495393304278850831707997384951261122215314912573099782120041249291001704783534963738038572909971460841194675956590556076487792844912046546289858480261722453906692121870900082361801253111254144535093557728890773576633275758296564385411181157194862013091717849684584397938692558192964504781548675242535472712168931345518712335315915091266802943695072033856713124737821702995413450878780710543025022928367906358090455917086551989910908356551317048398786986223728008709261755659180657097881480210424400144326299522878899777309399785895823672660416198403019568310343066278519210175123753322433148335319042110990102411115200155300905387480079481700793678398050055515674040740856110030688345147844637789304089124913488117865786102166259717537500608759271291542722618322268281881663249358096379805154548573054994939237543547344173213952238264923740581810541229342858729478428954424334131984148528784253998363568146237934288204812018977227175503767320972634467026605192430135456053386113854884936860690294856101608528249351841900676852113360746683010464546201975712535358643485273158405560713865159800025122453589321193849172272066813081451220206058867971739737852070562324696516989207167963722931205291831473897915831792236815542295351188421063491836041247452594134942209248413959680506248294593138389527422611136953102302258580121119666547884229014665725387964957084758968413322045525425313159249785544693731687537315908301437954586432098708787436507280265297509916984377327757196545848017185878187062075159807032253568563028327500466582827335502867854520125997555385653463180702511918745834613175695522817685388291478286861612733969705688420644803538993179921273082708231874645832277385151428336442791128121978844066863554759096512774567579514289358707813509712718614130837562928206888921092674847318865226502728725179504977454401235880436947166740879502845747251596396655438160627530891850366869113895456020655205727893563542322622934338187248429303755141424186144474851853038306051923346395342354169281469594504892858930927902734348204335524896282268283840385003189021115481306575985862301793725780239151376869964584730266367336592691055607610651395063452603950944137862475446094930322214251358925052162286516401501833382682009320185880700417626331391478426609811488522913323132102482939912440342675871636751981019800624634556412964612021651509481849038354557327885118381399789737921596751588189136821311831572343974889880678147466701932258512936242526046436206816962331619699576207481390195922724823856070618674582904131192629686384802772248025853565678688314716666529945311819044893560583315670136120200275855626940106396462406527068931089988702153309519230955113826416851095731603794043292915725451350181670888284691076554151637367282132699085416188720367321383556752795675446405859930575697456927411763363545818313874769811153200067443291026490825427143755817384089318952827706975802328578654060907310215933377202379529380163975222129749560910405469286325637889228656375209046139691727565799369454169799212172154190968007377296424461690352125762595869274922547147525570129817756823199696525210212593270375402119926487508947288180067142456329591203283997566500022674847080431168662174637209570629416830805601156788805418143373182215558446650310703543647015694751991619953590707511324503909687011954702203413782642378782037876483375951368505794557953578496314592205135043591193566218868778919000859827161236488817139192560862291428323398653291362388365138930281949623180624723430911220942364686086046811881095915076746280981830204413463502784589382914033720262163341801603895164465674237717521333553167444602702811423316239713043005712564513772123853640035325065916924660396852728500005955179986648160252906063818799410347442766786664711055874019008578881083537349681430773130796175261193827304599951725282101645776758227174040896025563972981356206057403055309359397803272752587584779898438292225351510689231016155941311614820345064156818468803931273430749310658977969794877739340106809807004217252335064678107177709738012342060949858124985939230944824099910816271686161045402302285297508303681740813423348350907451994012462784540355981010175250712507883425235359201011808190666715806901660337144936235013148504434618824507245850842711973003744446139783867771723508396116379467414673415606715716625914128533840969111912668685753089611477414283825465766233324600402108966568083865071195380389644064013225659789744058092069645276517941125418069973350260300280165435974786063150831838352844310895510990318838354096171074350901696604159609422545044432761405299893043166541471867539675148486601560709246012708765545511597405073650829192121506104352681979794721015327502789766595183378343313723972484630114099556180557404294775235619155991070995527689166962206915248692621723625349339886515813623371808024686285707580920325672974427246775594726257411915539820593521399646428719846155809016057142699866621674513998351006749905500243107644939008808283763056501335942666191769933208506315238830408038282952426951835706158652627835482438894937789837153427367984447438051922524608125636636354724642013592812413107221430038029951167528733632716495615098437698583723053533447798933250326700341673333994491349324617054234374857974757947615668818142972436911989201090528370744441973134132489090952568566403607460351786192700714317580878597847073275756461350544869658254948076345268993614534959881068956246376804772024874092287169129213186992223561462651658309780876752930386455758693852694419490316659070860880743872739756880986904608018185984447853004026912027028273674529733461856841101564521508287143103037105067406368884230169363092631082755618313589906637262234129963011384967274857835139637864747427281583226400504907023008806698966457880414815368581397227078662183740420462942245571835386209001540438595088462864815007422004248638126993194256733512441492762449359278264922627792929285604902259734784403139315955611635003088223285824742574585458199873484901143020578529226315336078237949517482509692606200070152399485636376460680083740681021982344306694849027211113016447096401664870109144789682310713027431057384988031850550073244022390664796252560251451047216241213622375149340154216946861782898546303245835481369726611482902356440118142802032911748577808744084580778888911583089537842528650350224300921031540555865720176640122675904405012834212606926720618076289350828192187374984894089231066370630648217898798896854426065721884878592112635879124018176081793622544776554917666612551712871940751135017411377174225478399645409241946348408968428229073749874922687804564946639149976097593853489919634179725302583519573365757810136809822693526329471277325032409077196569397908967330248117771231446718887760986447476076588633927432181839026436879618786438853924243552028724202149273586302070473159717257943700945527157809011120941201529129788112093374491395033762472838884021537166728636994436301630665161113541049013409799618516961971476705317102922179678760146451898465363215347773093120951670829714701916443141270735200245820497008506142137601082528684204057140216430536629443137761846135272920564936772781919878233766540547322707811014534785957220140510623262662299343688283812806778629871242749277818029936608902411376290956165421313339767652702964419424693427929795158225848307752402086866409298570827428830545979466593659732831201670303380333570266312497272799132209681506621971049738347072828669221324163330170520592810183637637084676061595353012884871526329217462580337694487152011554983679272629347872552272518691638301740526482861621518288819594890421541872633329221995265917763392018304235223710211877106016863005554214940071097592447423155732624240717137321612736711511015452334444244516915061963673208003062941532292298709576423406637199353790437669830561829911320018003588451801530555126063671274612572553492770019219854791346853529899217083993804001606413511906618984636285538071695085513529572393748324787169923762281249473751546125440467353229002557361226236674635339436866734922913588421644861984589171440144253273958082163140915326761894534071656568137443244291662187835317160943823412816299475701782833976092311688640981763963728493263436400943578122515811767475034937219257215640249300435151568809787937128054000271594403310948533139517857990326033962436461201598318153082901330418743578769240898590057345795829717851017043935795818891434187053885338008250148874777092005912883517999782964815867469662105182116763677981910973490277023174288291105221418269158586756990709428422258931331442794504592971213986331014533822819316821047908153050267474761529581470496327848025323027806364632033755649712473796125592228231866383200012128177464973234171077910612178261832411844451327540658886299846731331960517943677908866544491234822877726722608013231560973012977712928113553017511539323668523359646877817602388003417812687721442241818362060758935286678602512028457556322432966860496534005973185496234116477130021431674556455724709800620103308407729226922684038249705160650604896025216208815549465459682105347120826071162670172323777604724415197632836186075282884471606443456595251082216687911538792058088617154935477327331611707604852599408953090562317165764901586091510839742905904169286077141775199951431996332141976528202006263439398577377694506562160327542781285057223145500080567894256936192104539532877544352557327014219884470270365898840818498910201120508939952099877099720125578677214600835678617522169579215244883617583224197071677669304447578449721695589326557080911289822172061232340430764951103351599537784081168550992450354599464306633252877984996323071735638212830249012125486137788763260240891048087053849765686283457059743121403444156442434650092054570938652942415947381592814566634431149031023214916834305254458008262138465921898971414412933926955648154529822504803874360101183545710678445298023496236357526280439620594953936970736132761346050554194072969850892802948707228511672212584586522459338679891063201992970976168849230988075980782268063321703100204105023867793359171663271120284689216266982922854555024458257194082880055670679251104989805518404654208118408971091397544413690740524617333256625860315671131348038003541725250012752470040117945491193565910672258306452166479239821822013167232978752210217065148213007997704617037581406969510024983642886094271501468515266517951412212678737863672374815850850018617167169404724193804196755226918630965977916620235037471936721474981760628389091696282830495083442946558386495173677129758843046535838765135261122211278015936644081113146013862655555473632728900177060404803909932570717096973233380397678154770570806159305328853159769847239408357381063591160857884936553235371301103805176084499744960861799096564455069188415173167466307325300507550789057356996012675411971914689885179790635217876635528742729289074038515582958823940756956282983982013297931392208702531339786326606085898964704306490183276443673432665409714392781588142314113003879544653826652456905279400423892864645145732150442385519751256630020969800111816195991768662067877844919742610629349456167364098842554260162810595843651246109839484140616200074396692161189445190771678850343616248833964152149294400909855021088301430637435077258954376881056167952757841603623150114848723868296455274843131964942644809739308334847250591037638159933773303030266553644713708830512000152768829599928357599043658354782218018604632389949399820228309873566731644105967969411392566463659821308439256239024768765466932891350654938606302906507157591494480884912600616501977681873739893405341267961274488122366978988526043488327734498352473374470344425684195823197530049518654219041369495526538909792142894614436674356956779117253565744461001646077291258616721028615171489377225797248963434748615709621863224494162425093903405418908099536448372409615645800088500708000326863586343258941824395046674640894829867490410076274904303597563905414607619538415264240951244758012373279165979420578572764543801612784311044524671534411110470778947786791611869579075129825637914942374298443150726849182979180295889400445095841912728739025398599890800774013815552097491946061432696683059850908007684892130277014649129866533075391480756752616874917082950665615788569283989718523234950496323961843015310890061750616561544250497511367802721749620997692277424816590831045033667753129456587899216950209169192979420525209830749278011259435256629864158365514213967842968168852592255041056372878403978961231539607315363463824015865789036667647691679656765508135153206123784725092541720945622842906505096885988904944731675837028018001025369395696577970702714790856223322126194193086879362041008496505122567070083836633891608966742224926341734754378992241704703243946477594438680084470924808222981898241634435942817665042296423620945634192168991400779159174135163441203854172667463449799823859132238474271344875663382011115657821650061331564093476251376766151284211905634835598395726437036943697945398550666243562475047103495260078498713415945222861217223171191565427545908948803739406056259045194404209652395524496033012280547163425869609206017318807219351721432592317710506582161595503691169181574298010469974027909045375705070521426723500918468327100399762174003571496690116771511985310875084366530193825729519512792584187969264095544191303231245159595600158757195018937452448153918214771803047236892338699087191418543548127176631207008647905211976016479693344991363133604423145030530786983149981370565686142920349543376635283587834198046392613205009938873884317306158749934987122636533735554280431472885838392469748433188218244359361739850329083230877907986952326531659062931518445494292395883081770960571149009946528303538416903468568251787904875888959724011669751379689737745645781536063724368281057535501651300779278159221234236286476121483406748542795836599283974286399156586351721302901945910999424737242212435193890764123794068613318807291025634632455033216836347178547306991763011371294447804930704701076731794985624544867144232618127801807016743557525975223094237419800926860726343207303307490100223761773175419194741775266790808437768846346409513854007597404533426060629802937997434365138785933283771190883963112026714630358610871566529511577973773030641278181999794138862952860277849836957045243572727803772994044145219612484151101958595754233134772206594546257843194920354988050720562487373090358396902105101130905837416215041528213742332237544479754016802420848946663972948503196038233831486326015598974745250367099024402883536680710078680762442499569967224988002820831131489501714654935338950677916179417687378341621029590525586118145500385979674551635569073802595703509410104399056700082765735783514023916990580895035122998824139043522887937954243773818239486908817691218594461231775612498171814739761413223626548921134907470266749601882455318834051789070693294645378614273559817817669746175386190129207670796969347985925964201887739954957753063968991721994851537886826528718670187266951754691015100558554402416365382385571832699593516591871870129088950860959141365335405217475952569409437291705958132591035713852844020829390425243231152363311794058641932466821316123556220896978638238220851910854724225235801007566651687786293048920022864118873127653443897973287588289387355188527675762544818352972527202121956442164497960525118889429669158090847617248951856454184175011498584011151403843803616755070289562925291847693557468307471261855527743027793546388523180320303004531983787654968848885848044699382269524772992632828988529578250814217690251050538376318335987796054397392497819218945083583664479090210799067472301403668337559717597696977088660955704497252993776510793040389765797660003249309625621362413925006069689309741971348529472497910193831688377960993355293627778448218590992466907233023703434373342057619370142024150125919309597715211156119767719732799607180802790498035895181361368464888110051483059351056184478484935493907429774952809935838380670176114207577213231055350562935778210633178408589597114305208221445655571987043537222818641682257047013012523444306760980045634005807686693738653391512637351420386342471114731815863473555201852437480757773007117982214562511842789783403459207342446159950243392750801338546694453486882568558848221354119195364009948864482241943581175911046898758169191479049496589974376791349764450442378828930324034667011081601620280965349871472897408240015827835518911156870088245687077093734365098735053286572410319803080845798477163786287405364614064557437293304038102544036292654227764945227264663048205357008355771555088876595623139814435346749309964251946324880814583325021791421487797394988004538164305707469202106410211746503094306261906393808913646542952700315906267119779115998936128115065250206974734764465723585855511288580743400943809404288053471362642477523155475104031429412338193516993778125188851380426304674403369331302000716910342442997402937084557795367644496744142127987816340111528592554037797331020548717415225820119609382845549093796192490788732113363701319748743582000057303130051864228415577489842331046903247484601487466945180308802933831335767729683043613008237949546121375297802081297570627860665109297721191437971730304701194425144397124039096483670712819736875268727402950591193053215181214096094048991393513777953150345340375660727343308643780150161106624994355510672070504545638446348452832252739655357173432358505096323375391303231882706135850625263417142649071194773339832168083329388229371358567930229577131216277825259179573015218766375412085298526771708373976067632393542346710047549333985975581637892627834271510655196435256189543806335151275352311851042677322949803447199292923778361766440734496397738456055035681622997810149954634752627304431261203403272402323263787629123971290482208451728904179443479389133519955703392435705474476748581704437622129709874923772469427028692459169602692805773639884662839746902870259093711807913191778518892984073217487857897145970076468785664351978921228123955117538280981756811931365956219580769189165945354676982348448641247423518916350607877458000174846036861863407457585325426314682733609519279784663870218253170105990573783095295023636803500871717068656715873633323087889492672610932474421508618433271859746984902531599213685724749939166049437563039991443426494641652084430858140240110164289828469966850406832046716413390246110504245355115799426391378253248390613249284106740790339822458676277775822335702599336006873832060694120069151050502014160550879568956384777357561859297390815082320829238627565303595738227693040342653965811892001847940938696513716543372327453960265811436008036854866115271237812510903990539558847305647245954573152782787927223519635147727442216430929838945633240618968678002759612737346710149551481908355465926257591837274267945140065675067487109210401442076201140299815065215337544433220665579426653603156460913576244881143145816448433738435651908257707727075610250384686423897417587261466555923582154604137885444936333821387834125809275860172638633835215739911477550980579247697382084916194531361048661532192816958299987572396642484438585923345173977858953684709725360571645392436476987259650911307276196399085956903945476705317120950973221080222867047309737747692333164724006655517007030727397960981567443221606976290010701795178049647288909166395148988516523192292581698055459163120683313344444026844836973153374353724642859131405325364718843964487074859668019409627048319805633617946336241192339134443576925361983436149277034101251407931959500054852494406073752219382170270967693958490164322312794878286345936957582386357275444677552426326439427826509522110738746691329185514606540626514423926874666224032806665098968650564881401857662657770710747087290859146102020115348143461159085941199326422716587378456255513417188700369411413129886379359732827155687107299430516909440159150380295166927316885689919350464777363564940285040026385166191840356368272064334076945688910500707807400058611344300435064124118815434239882300439634498123276176222834094588002203477029431703120666721026088295166015938208578787452447617470420981110681742739501589729089688874701219977168675643400393501019031636735986156822800481179704399515441333154708852980193106051030371025975971140726105231868543289435682591068444682077058566949230294979329627187207330557461522535158209452349970946341295444060370265323350453604017667009504931558488322362480477139404005020402210256373133185810213186000671100094991969672203880497368249472670172473685829890560841738110667750353843071701215593780773237695292015553765731821037415644534697332757544054136342442611065425983461993557816127218299747813249898673155023681652001011599808410703519043808486258338062380633014322224632525851242478791268521796713383807610953638108916481582615453738864215354784246899761520394834810677248132444520115686989454496860603289963464336818674004697427066812628688013998463105270784005072590903591611313839737107838258436291376002487538111360585948203215629334421029248469146775627736729719342208489763395020681781452795833958136949380550036079100240398898889389849252608470062554378594962388685336357216755803837358816405620086072071176469517413795119595374249497832288900760644287948928311592218296413287328446577953788769594394339392514655278303538552555898922916252237259193439724646836560387747782111580693016237997784295593736191244946353544825573071081996645657175132549264602309166640190368655194868986750821808317633143747707688421453957800726547186638452809961959598731886280385650251823377199879643189111713690739645357494689387177711802146134749530592168168345624819545768693067168247301464137758737197018183738459575407555878161118760337275800081444696169086781775351213559112592993901434041121776782474650001633695434512031485285878558145263662365998253819157684573117531084220496817004897291154580464223101825601472092884251530232116661317651093337450030754076385822339417218860692479003613744609946316742314705543165710124459051394714878279134401672107226267803609962193138856792900484752902470520988587601414384933191291734854382395352282440797296885048506472379194229156342632002047812524843665970679080511973109865435364195788209865506917401954381665308062805413955228942862559405525303081470994335666784273579330975462174029875904075898214925437624320830778377604879902231705539088003972242375377163407504527814387215373929932820075952230730426187028489575444103627085194228781668465866370988482938198356199186534115745201920103677043251693174081020976062447761863590800579906886792181777742156009319795711044728813206351019920026269505396107764339207145221124052247470443607598597587645190602090898656393448033976533512873855955558373569073339246213325780229074048560949817806949497316398904489248318359547212746157764423183115761075256922766267618079444938445813063835981835010994749992496473677964144699862848532795286090926800899287362007760422533315435261506883732730881416381102028953640704570824671628009653080447900107160879845692008662375543341315556602935585967178117417888778897290474772529202668543319405216581861939313989165528089002442284106034577658902238120359877735839515337028680433053906722552550112469834286060372350860574351417497289384736471316626435105419859303651191641688482246351373444910432004807499661747545743852735773951796400956829673627476930591077714821117321938939833629321273339251945988549324006347858721428672217073279201404982327048814275767668487297709151847166846535088862479817919558871368253784881856779677863322827191561030423171537141499273357419285754704716833361187674582343986237237692438415259332625783983116733381800900460222397323284250868786343994394788994902404316901505097884132648222151414666520620426510105297854178242827766461180834905113351654939640062268961710435818005801545652951317962034361168726330599538762471676175173142834999121236110829467611015580441113147230820805782376570114219089495025121520377794043802755823155726739524707725064037703823183239107593726211002817594000930907418336833002191704555498162694662951500177437533637636236526542426405871904716033621074598208259974898055136925076890506911662227843075729721088945361179443033888514118101765714605660570081703889081290352471957232733096474597143587427513149349441235603115170807314766819690916461840670765355185557145150574895932631957029622339939331433062312662160947510923628612832693366690266324282667263012748994681083128312244663092078762661670884620179330465333540556247754952323421647854838853067976410464698977307188346637472243433519928634884352898827118795531859968411629234230142452547815455293828191489346254416881420131891794892006179487962449454328255960370697140568252052117352403135646265616847028480359990651312756222525345703057441274397348423131133519206169750143760940495428327571443302517577793343817131232163337460799191445414521093967097768020040009124406618799134508572594865415545733082611903447363205053399679280466225447828065672067013683072700409996479377492034127043613313142083323303252598237482197977041825109125217265807438496985359178873990235040632703410757212992684257978266892371099574041803001116360527242454731039628003509480212936796016070849356307326874445244694613184227040547876249454860310855291709202587683952223299614002361514379233494057064415805125651873200661981783610693866709877502288471558528849013350292481490997002098643734196426389302765576887806702683520438195134076182871874440167504482536200724127294730237118998213289733578198193096736145393971065351440121160309265360611074281395676822838425123395624337580004512050906419792013446424519561887820322722352795382697922724720586116098321679355829281216053221544575197854933325467153190731781269595109321813702001210141005079058500427271530017294470975739588531980913398025472984747853535346332936782107718073250112634615576905849349729426007173515308774793632551331548457905761985389071350673859689825834455165581049813779413410893036210666629871429981752611375976113163585083916305328620635549969684841540512125954127315174132052436151737157453326453989239979774559279793439306704479725990879371873758431967899255544838520913793468798410265438414058761727828916398010011794293479338609008701632640094869758086116687822663579552889453295620436152433018178780959981009298635043456792229176183205573655961277019484629834405625657823439667975383081223561409531277928510330062223878169457235353215167872644414697606476383146068019078036635949964184601129360284345115229483223563470538486959294272394668382966150890714115541117626082230445033508522907847338366916544187050461188142159105764444419207908163634494858706986260718589047620566355797827276845671641382755691829574310032203463252511926577105575017156898242680400241676402135123443699548847784163452701360656963120332012196904406099810500939548855289200756349948125270136369115720179488348223166567556426750575505829871418494997431496186899683765071536442457879724031537699131391498764706296237329680181548447277626471381254661126461870186053866731602237830710851475114362398985200833901699730078395666173510940080897885127861074026069852517512230261037822937769721902523746594677296313909339728442592170478309968166563795886470725687169371570343237766648564624293676814897564660183948624653983220651015570223111111063411069208145026916505750178505396201485964736603173758304426890642320941343986735785840981998174241788605920496845867590522740602437870132041320891216702447068621932429816304404408688048793505449697460005880830572873942797539743526974512159482068018134260735403850449616518787945200829222216943987909305108459238654168752178660355713789866268964706697686302929174468029925079040023565299988000338479503549977962465046711184737460146735813018789414003140411202698059730314217897319920063105016870252192203939794197361184499151530989877844193647602178787706099058911799959406668704250070077270503186215484153123852819961560954703612763118612400881746773464298614500409830675266484857039952530194273450918189329190156340525887491303896212784663097469087678773345166471788122377053704101542878683823430584307274687198184395387155451001942832598016438871364542258271725501428445938231271525782841978870390113468080836582770603359494989669143385890354312904276390282192498748237605143216982577303242656269227604778431876039016370295745792329594482596190014263128084656952979015645458320504270612477451398551761009846404021306309206586373876097772270522982581530998935456838201677112207424845174275972239187023936223350388407712319110197317172430129184930706994848456532437516441632844455073011404286435127820809532904367514776851581984803637248579684895988401922834769849638431402123060927571901167269603315134543317314872784492750634083055022268376270800016756425125616990569517656484203281617892699105306474376713760560394500472847201119270221543761360213807312000108767753942898778079561250003555302364717499659209040621/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.001676938111022438771190100017020725032555691674761792047536039179544860041426416167047617951325080392375254668024881417704785844941873659190796874311269827844869294021609609878761760222726040503052361411290178071724514229511402997717835482222843694901217948470487965568309887619068847172953045805114461684934711435396733506293734841325861343304787721299532310229772589857694912111395953739686988727269468587554963277272937736454132255987090515404981010625380300398405414878988986157122637397706184264087627982251269279798737026724345745293965473508101366799393414789255206473161090950205950222122146222214078495368679130218674743146981670162403132582245706410548976470471745261542621302339241637171485342456816268520436435015281896393166247367278251553892803720247630029686984490078449352925557594904328569557484936591314303562431384381815420956360401044641472858822422582249979327207407410771660534313638231315935852892804132000147855397374322839591253536678984113084406988061438073184576016444328921205389213529360577549973971376403629568215377310772683219872177641391235708289818177925111881904300159619886665581137346322368568517117054240697628828913445767477326813624632908438476547455879789107389590165055563621760005781866188169710716495393304278850831707997384951261122215314912573099782120041249291001704783534963738038572909971460841194675956590556076487792844912046546289858480261722453906692121870900082361801253111254144535093557728890773576633275758296564385411181157194862013091717849684584397938692558192964504781548675242535472712168931345518712335315915091266802943695072033856713124737821702995413450878780710543025022928367906358090455917086551989910908356551317048398786986223728008709261755659180657097881480210424400144326299522878899777309399785895823672660416198403019568310343066278519210175123753322433148335319042110990102411115200155300905387480079481700793678398050055515674040740856110030688345147844637789304089124913488117865786102166259717537500608759271291542722618322268281881663249358096379805154548573054994939237543547344173213952238264923740581810541229342858729478428954424334131984148528784253998363568146237934288204812018977227175503767320972634467026605192430135456053386113854884936860690294856101608528249351841900676852113360746683010464546201975712535358643485273158405560713865159800025122453589321193849172272066813081451220206058867971739737852070562324696516989207167963722931205291831473897915831792236815542295351188421063491836041247452594134942209248413959680506248294593138389527422611136953102302258580121119666547884229014665725387964957084758968413322045525425313159249785544693731687537315908301437954586432098708787436507280265297509916984377327757196545848017185878187062075159807032253568563028327500466582827335502867854520125997555385653463180702511918745834613175695522817685388291478286861612733969705688420644803538993179921273082708231874645832277385151428336442791128121978844066863554759096512774567579514289358707813509712718614130837562928206888921092674847318865226502728725179504977454401235880436947166740879502845747251596396655438160627530891850366869113895456020655205727893563542322622934338187248429303755141424186144474851853038306051923346395342354169281469594504892858930927902734348204335524896282268283840385003189021115481306575985862301793725780239151376869964584730266367336592691055607610651395063452603950944137862475446094930322214251358925052162286516401501833382682009320185880700417626331391478426609811488522913323132102482939912440342675871636751981019800624634556412964612021651509481849038354557327885118381399789737921596751588189136821311831572343974889880678147466701932258512936242526046436206816962331619699576207481390195922724823856070618674582904131192629686384802772248025853565678688314716666529945311819044893560583315670136120200275855626940106396462406527068931089988702153309519230955113826416851095731603794043292915725451350181670888284691076554151637367282132699085416188720367321383556752795675446405859930575697456927411763363545818313874769811153200067443291026490825427143755817384089318952827706975802328578654060907310215933377202379529380163975222129749560910405469286325637889228656375209046139691727565799369454169799212172154190968007377296424461690352125762595869274922547147525570129817756823199696525210212593270375402119926487508947288180067142456329591203283997566500022674847080431168662174637209570629416830805601156788805418143373182215558446650310703543647015694751991619953590707511324503909687011954702203413782642378782037876483375951368505794557953578496314592205135043591193566218868778919000859827161236488817139192560862291428323398653291362388365138930281949623180624723430911220942364686086046811881095915076746280981830204413463502784589382914033720262163341801603895164465674237717521333553167444602702811423316239713043005712564513772123853640035325065916924660396852728500005955179986648160252906063818799410347442766786664711055874019008578881083537349681430773130796175261193827304599951725282101645776758227174040896025563972981356206057403055309359397803272752587584779898438292225351510689231016155941311614820345064156818468803931273430749310658977969794877739340106809807004217252335064678107177709738012342060949858124985939230944824099910816271686161045402302285297508303681740813423348350907451994012462784540355981010175250712507883425235359201011808190666715806901660337144936235013148504434618824507245850842711973003744446139783867771723508396116379467414673415606715716625914128533840969111912668685753089611477414283825465766233324600402108966568083865071195380389644064013225659789744058092069645276517941125418069973350260300280165435974786063150831838352844310895510990318838354096171074350901696604159609422545044432761405299893043166541471867539675148486601560709246012708765545511597405073650829192121506104352681979794721015327502789766595183378343313723972484630114099556180557404294775235619155991070995527689166962206915248692621723625349339886515813623371808024686285707580920325672974427246775594726257411915539820593521399646428719846155809016057142699866621674513998351006749905500243107644939008808283763056501335942666191769933208506315238830408038282952426951835706158652627835482438894937789837153427367984447438051922524608125636636354724642013592812413107221430038029951167528733632716495615098437698583723053533447798933250326700341673333994491349324617054234374857974757947615668818142972436911989201090528370744441973134132489090952568566403607460351786192700714317580878597847073275756461350544869658254948076345268993614534959881068956246376804772024874092287169129213186992223561462651658309780876752930386455758693852694419490316659070860880743872739756880986904608018185984447853004026912027028273674529733461856841101564521508287143103037105067406368884230169363092631082755618313589906637262234129963011384967274857835139637864747427281583226400504907023008806698966457880414815368581397227078662183740420462942245571835386209001540438595088462864815007422004248638126993194256733512441492762449359278264922627792929285604902259734784403139315955611635003088223285824742574585458199873484901143020578529226315336078237949517482509692606200070152399485636376460680083740681021982344306694849027211113016447096401664870109144789682310713027431057384988031850550073244022390664796252560251451047216241213622375149340154216946861782898546303245835481369726611482902356440118142802032911748577808744084580778888911583089537842528650350224300921031540555865720176640122675904405012834212606926720618076289350828192187374984894089231066370630648217898798896854426065721884878592112635879124018176081793622544776554917666612551712871940751135017411377174225478399645409241946348408968428229073749874922687804564946639149976097593853489919634179725302583519573365757810136809822693526329471277325032409077196569397908967330248117771231446718887760986447476076588633927432181839026436879618786438853924243552028724202149273586302070473159717257943700945527157809011120941201529129788112093374491395033762472838884021537166728636994436301630665161113541049013409799618516961971476705317102922179678760146451898465363215347773093120951670829714701916443141270735200245820497008506142137601082528684204057140216430536629443137761846135272920564936772781919878233766540547322707811014534785957220140510623262662299343688283812806778629871242749277818029936608902411376290956165421313339767652702964419424693427929795158225848307752402086866409298570827428830545979466593659732831201670303380333570266312497272799132209681506621971049738347072828669221324163330170520592810183637637084676061595353012884871526329217462580337694487152011554983679272629347872552272518691638301740526482861621518288819594890421541872633329221995265917763392018304235223710211877106016863005554214940071097592447423155732624240717137321612736711511015452334444244516915061963673208003062941532292298709576423406637199353790437669830561829911320018003588451801530555126063671274612572553492770019219854791346853529899217083993804001606413511906618984636285538071695085513529572393748324787169923762281249473751546125440467353229002557361226236674635339436866734922913588421644861984589171440144253273958082163140915326761894534071656568137443244291662187835317160943823412816299475701782833976092311688640981763963728493263436400943578122515811767475034937219257215640249300435151568809787937128054000271594403310948533139517857990326033962436461201598318153082901330418743578769240898590057345795829717851017043935795818891434187053885338008250148874777092005912883517999782964815867469662105182116763677981910973490277023174288291105221418269158586756990709428422258931331442794504592971213986331014533822819316821047908153050267474761529581470496327848025323027806364632033755649712473796125592228231866383200012128177464973234171077910612178261832411844451327540658886299846731331960517943677908866544491234822877726722608013231560973012977712928113553017511539323668523359646877817602388003417812687721442241818362060758935286678602512028457556322432966860496534005973185496234116477130021431674556455724709800620103308407729226922684038249705160650604896025216208815549465459682105347120826071162670172323777604724415197632836186075282884471606443456595251082216687911538792058088617154935477327331611707604852599408953090562317165764901586091510839742905904169286077141775199951431996332141976528202006263439398577377694506562160327542781285057223145500080567894256936192104539532877544352557327014219884470270365898840818498910201120508939952099877099720125578677214600835678617522169579215244883617583224197071677669304447578449721695589326557080911289822172061232340430764951103351599537784081168550992450354599464306633252877984996323071735638212830249012125486137788763260240891048087053849765686283457059743121403444156442434650092054570938652942415947381592814566634431149031023214916834305254458008262138465921898971414412933926955648154529822504803874360101183545710678445298023496236357526280439620594953936970736132761346050554194072969850892802948707228511672212584586522459338679891063201992970976168849230988075980782268063321703100204105023867793359171663271120284689216266982922854555024458257194082880055670679251104989805518404654208118408971091397544413690740524617333256625860315671131348038003541725250012752470040117945491193565910672258306452166479239821822013167232978752210217065148213007997704617037581406969510024983642886094271501468515266517951412212678737863672374815850850018617167169404724193804196755226918630965977916620235037471936721474981760628389091696282830495083442946558386495173677129758843046535838765135261122211278015936644081113146013862655555473632728900177060404803909932570717096973233380397678154770570806159305328853159769847239408357381063591160857884936553235371301103805176084499744960861799096564455069188415173167466307325300507550789057356996012675411971914689885179790635217876635528742729289074038515582958823940756956282983982013297931392208702531339786326606085898964704306490183276443673432665409714392781588142314113003879544653826652456905279400423892864645145732150442385519751256630020969800111816195991768662067877844919742610629349456167364098842554260162810595843651246109839484140616200074396692161189445190771678850343616248833964152149294400909855021088301430637435077258954376881056167952757841603623150114848723868296455274843131964942644809739308334847250591037638159933773303030266553644713708830512000152768829599928357599043658354782218018604632389949399820228309873566731644105967969411392566463659821308439256239024768765466932891350654938606302906507157591494480884912600616501977681873739893405341267961274488122366978988526043488327734498352473374470344425684195823197530049518654219041369495526538909792142894614436674356956779117253565744461001646077291258616721028615171489377225797248963434748615709621863224494162425093903405418908099536448372409615645800088500708000326863586343258941824395046674640894829867490410076274904303597563905414607619538415264240951244758012373279165979420578572764543801612784311044524671534411110470778947786791611869579075129825637914942374298443150726849182979180295889400445095841912728739025398599890800774013815552097491946061432696683059850908007684892130277014649129866533075391480756752616874917082950665615788569283989718523234950496323961843015310890061750616561544250497511367802721749620997692277424816590831045033667753129456587899216950209169192979420525209830749278011259435256629864158365514213967842968168852592255041056372878403978961231539607315363463824015865789036667647691679656765508135153206123784725092541720945622842906505096885988904944731675837028018001025369395696577970702714790856223322126194193086879362041008496505122567070083836633891608966742224926341734754378992241704703243946477594438680084470924808222981898241634435942817665042296423620945634192168991400779159174135163441203854172667463449799823859132238474271344875663382011115657821650061331564093476251376766151284211905634835598395726437036943697945398550666243562475047103495260078498713415945222861217223171191565427545908948803739406056259045194404209652395524496033012280547163425869609206017318807219351721432592317710506582161595503691169181574298010469974027909045375705070521426723500918468327100399762174003571496690116771511985310875084366530193825729519512792584187969264095544191303231245159595600158757195018937452448153918214771803047236892338699087191418543548127176631207008647905211976016479693344991363133604423145030530786983149981370565686142920349543376635283587834198046392613205009938873884317306158749934987122636533735554280431472885838392469748433188218244359361739850329083230877907986952326531659062931518445494292395883081770960571149009946528303538416903468568251787904875888959724011669751379689737745645781536063724368281057535501651300779278159221234236286476121483406748542795836599283974286399156586351721302901945910999424737242212435193890764123794068613318807291025634632455033216836347178547306991763011371294447804930704701076731794985624544867144232618127801807016743557525975223094237419800926860726343207303307490100223761773175419194741775266790808437768846346409513854007597404533426060629802937997434365138785933283771190883963112026714630358610871566529511577973773030641278181999794138862952860277849836957045243572727803772994044145219612484151101958595754233134772206594546257843194920354988050720562487373090358396902105101130905837416215041528213742332237544479754016802420848946663972948503196038233831486326015598974745250367099024402883536680710078680762442499569967224988002820831131489501714654935338950677916179417687378341621029590525586118145500385979674551635569073802595703509410104399056700082765735783514023916990580895035122998824139043522887937954243773818239486908817691218594461231775612498171814739761413223626548921134907470266749601882455318834051789070693294645378614273559817817669746175386190129207670796969347985925964201887739954957753063968991721994851537886826528718670187266951754691015100558554402416365382385571832699593516591871870129088950860959141365335405217475952569409437291705958132591035713852844020829390425243231152363311794058641932466821316123556220896978638238220851910854724225235801007566651687786293048920022864118873127653443897973287588289387355188527675762544818352972527202121956442164497960525118889429669158090847617248951856454184175011498584011151403843803616755070289562925291847693557468307471261855527743027793546388523180320303004531983787654968848885848044699382269524772992632828988529578250814217690251050538376318335987796054397392497819218945083583664479090210799067472301403668337559717597696977088660955704497252993776510793040389765797660003249309625621362413925006069689309741971348529472497910193831688377960993355293627778448218590992466907233023703434373342057619370142024150125919309597715211156119767719732799607180802790498035895181361368464888110051483059351056184478484935493907429774952809935838380670176114207577213231055350562935778210633178408589597114305208221445655571987043537222818641682257047013012523444306760980045634005807686693738653391512637351420386342471114731815863473555201852437480757773007117982214562511842789783403459207342446159950243392750801338546694453486882568558848221354119195364009948864482241943581175911046898758169191479049496589974376791349764450442378828930324034667011081601620280965349871472897408240015827835518911156870088245687077093734365098735053286572410319803080845798477163786287405364614064557437293304038102544036292654227764945227264663048205357008355771555088876595623139814435346749309964251946324880814583325021791421487797394988004538164305707469202106410211746503094306261906393808913646542952700315906267119779115998936128115065250206974734764465723585855511288580743400943809404288053471362642477523155475104031429412338193516993778125188851380426304674403369331302000716910342442997402937084557795367644496744142127987816340111528592554037797331020548717415225820119609382845549093796192490788732113363701319748743582000057303130051864228415577489842331046903247484601487466945180308802933831335767729683043613008237949546121375297802081297570627860665109297721191437971730304701194425144397124039096483670712819736875268727402950591193053215181214096094048991393513777953150345340375660727343308643780150161106624994355510672070504545638446348452832252739655357173432358505096323375391303231882706135850625263417142649071194773339832168083329388229371358567930229577131216277825259179573015218766375412085298526771708373976067632393542346710047549333985975581637892627834271510655196435256189543806335151275352311851042677322949803447199292923778361766440734496397738456055035681622997810149954634752627304431261203403272402323263787629123971290482208451728904179443479389133519955703392435705474476748581704437622129709874923772469427028692459169602692805773639884662839746902870259093711807913191778518892984073217487857897145970076468785664351978921228123955117538280981756811931365956219580769189165945354676982348448641247423518916350607877458000174846036861863407457585325426314682733609519279784663870218253170105990573783095295023636803500871717068656715873633323087889492672610932474421508618433271859746984902531599213685724749939166049437563039991443426494641652084430858140240110164289828469966850406832046716413390246110504245355115799426391378253248390613249284106740790339822458676277775822335702599336006873832060694120069151050502014160550879568956384777357561859297390815082320829238627565303595738227693040342653965811892001847940938696513716543372327453960265811436008036854866115271237812510903990539558847305647245954573152782787927223519635147727442216430929838945633240618968678002759612737346710149551481908355465926257591837274267945140065675067487109210401442076201140299815065215337544433220665579426653603156460913576244881143145816448433738435651908257707727075610250384686423897417587261466555923582154604137885444936333821387834125809275860172638633835215739911477550980579247697382084916194531361048661532192816958299987572396642484438585923345173977858953684709725360571645392436476987259650911307276196399085956903945476705317120950973221080222867047309737747692333164724006655517007030727397960981567443221606976290010701795178049647288909166395148988516523192292581698055459163120683313344444026844836973153374353724642859131405325364718843964487074859668019409627048319805633617946336241192339134443576925361983436149277034101251407931959500054852494406073752219382170270967693958490164322312794878286345936957582386357275444677552426326439427826509522110738746691329185514606540626514423926874666224032806665098968650564881401857662657770710747087290859146102020115348143461159085941199326422716587378456255513417188700369411413129886379359732827155687107299430516909440159150380295166927316885689919350464777363564940285040026385166191840356368272064334076945688910500707807400058611344300435064124118815434239882300439634498123276176222834094588002203477029431703120666721026088295166015938208578787452447617470420981110681742739501589729089688874701219977168675643400393501019031636735986156822800481179704399515441333154708852980193106051030371025975971140726105231868543289435682591068444682077058566949230294979329627187207330557461522535158209452349970946341295444060370265323350453604017667009504931558488322362480477139404005020402210256373133185810213186000671100094991969672203880497368249472670172473685829890560841738110667750353843071701215593780773237695292015553765731821037415644534697332757544054136342442611065425983461993557816127218299747813249898673155023681652001011599808410703519043808486258338062380633014322224632525851242478791268521796713383807610953638108916481582615453738864215354784246899761520394834810677248132444520115686989454496860603289963464336818674004697427066812628688013998463105270784005072590903591611313839737107838258436291376002487538111360585948203215629334421029248469146775627736729719342208489763395020681781452795833958136949380550036079100240398898889389849252608470062554378594962388685336357216755803837358816405620086072071176469517413795119595374249497832288900760644287948928311592218296413287328446577953788769594394339392514655278303538552555898922916252237259193439724646836560387747782111580693016237997784295593736191244946353544825573071081996645657175132549264602309166640190368655194868986750821808317633143747707688421453957800726547186638452809961959598731886280385650251823377199879643189111713690739645357494689387177711802146134749530592168168345624819545768693067168247301464137758737197018183738459575407555878161118760337275800081444696169086781775351213559112592993901434041121776782474650001633695434512031485285878558145263662365998253819157684573117531084220496817004897291154580464223101825601472092884251530232116661317651093337450030754076385822339417218860692479003613744609946316742314705543165710124459051394714878279134401672107226267803609962193138856792900484752902470520988587601414384933191291734854382395352282440797296885048506472379194229156342632002047812524843665970679080511973109865435364195788209865506917401954381665308062805413955228942862559405525303081470994335666784273579330975462174029875904075898214925437624320830778377604879902231705539088003972242375377163407504527814387215373929932820075952230730426187028489575444103627085194228781668465866370988482938198356199186534115745201920103677043251693174081020976062447761863590800579906886792181777742156009319795711044728813206351019920026269505396107764339207145221124052247470443607598597587645190602090898656393448033976533512873855955558373569073339246213325780229074048560949817806949497316398904489248318359547212746157764423183115761075256922766267618079444938445813063835981835010994749992496473677964144699862848532795286090926800899287362007760422533315435261506883732730881416381102028953640704570824671628009653080447900107160879845692008662375543341315556602935585967178117417888778897290474772529202668543319405216581861939313989165528089002442284106034577658902238120359877735839515337028680433053906722552550112469834286060372350860574351417497289384736471316626435105419859303651191641688482246351373444910432004807499661747545743852735773951796400956829673627476930591077714821117321938939833629321273339251945988549324006347858721428672217073279201404982327048814275767668487297709151847166846535088862479817919558871368253784881856779677863322827191561030423171537141499273357419285754704716833361187674582343986237237692438415259332625783983116733381800900460222397323284250868786343994394788994902404316901505097884132648222151414666520620426510105297854178242827766461180834905113351654939640062268961710435818005801545652951317962034361168726330599538762471676175173142834999121236110829467611015580441113147230820805782376570114219089495025121520377794043802755823155726739524707725064037703823183239107593726211002817594000930907418336833002191704555498162694662951500177437533637636236526542426405871904716033621074598208259974898055136925076890506911662227843075729721088945361179443033888514118101765714605660570081703889081290352471957232733096474597143587427513149349441235603115170807314766819690916461840670765355185557145150574895932631957029622339939331433062312662160947510923628612832693366690266324282667263012748994681083128312244663092078762661670884620179330465333540556247754952323421647854838853067976410464698977307188346637472243433519928634884352898827118795531859968411629234230142452547815455293828191489346254416881420131891794892006179487962449454328255960370697140568252052117352403135646265616847028480359990651312756222525345703057441274397348423131133519206169750143760940495428327571443302517577793343817131232163337460799191445414521093967097768020040009124406618799134508572594865415545733082611903447363205053399679280466225447828065672067013683072700409996479377492034127043613313142083323303252598237482197977041825109125217265807438496985359178873990235040632703410757212992684257978266892371099574041803001116360527242454731039628003509480212936796016070849356307326874445244694613184227040547876249454860310855291709202587683952223299614002361514379233494057064415805125651873200661981783610693866709877502288471558528849013350292481490997002098643734196426389302765576887806702683520438195134076182871874440167504482536200724127294730237118998213289733578198193096736145393971065351440121160309265360611074281395676822838425123395624337580004512050906419792013446424519561887820322722352795382697922724720586116098321679355829281216053221544575197854933325467153190731781269595109321813702001210141005079058500427271530017294470975739588531980913398025472984747853535346332936782107718073250112634615576905849349729426007173515308774793632551331548457905761985389071350673859689825834455165581049813779413410893036210666629871429981752611375976113163585083916305328620635549969684841540512125954127315174132052436151737157453326453989239979774559279793439306704479725990879371873758431967899255544838520913793468798410265438414058761727828916398010011794293479338609008701632640094869758086116687822663579552889453295620436152433018178780959981009298635043456792229176183205573655961277019484629834405625657823439667975383081223561409531277928510330062223878169457235353215167872644414697606476383146068019078036635949964184601129360284345115229483223563470538486959294272394668382966150890714115541117626082230445033508522907847338366916544187050461188142159105764444419207908163634494858706986260718589047620566355797827276845671641382755691829574310032203463252511926577105575017156898242680400241676402135123443699548847784163452701360656963120332012196904406099810500939548855289200756349948125270136369115720179488348223166567556426750575505829871418494997431496186899683765071536442457879724031537699131391498764706296237329680181548447277626471381254661126461870186053866731602237830710851475114362398985200833901699730078395666173510940080897885127861074026069852517512230261037822937769721902523746594677296313909339728442592170478309968166563795886470725687169371570343237766648564624293676814897564660183948624653983220651015570223111111063411069208145026916505750178505396201485964736603173758304426890642320941343986735785840981998174241788605920496845867590522740602437870132041320891216702447068621932429816304404408688048793505449697460005880830572873942797539743526974512159482068018134260735403850449616518787945200829222216943987909305108459238654168752178660355713789866268964706697686302929174468029925079040023565299988000338479503549977962465046711184737460146735813018789414003140411202698059730314217897319920063105016870252192203939794197361184499151530989877844193647602178787706099058911799959406668704250070077270503186215484153123852819961560954703612763118612400881746773464298614500409830675266484857039952530194273450918189329190156340525887491303896212784663097469087678773345166471788122377053704101542878683823430584307274687198184395387155451001942832598016438871364542258271725501428445938231271525782841978870390113468080836582770603359494989669143385890354312904276390282192498748237605143216982577303242656269227604778431876039016370295745792329594482596190014263128084656952979015645458320504270612477451398551761009846404021306309206586373876097772270522982581530998935456838201677112207424845174275972239187023936223350388407712319110197317172430129184930706994848456532437516441632844455073011404286435127820809532904367514776851581984803637248579684895988401922834769849638431402123060927571901167269603315134543317314872784492750634083055022268376270800016756425125616990569517656484203281617892699105306474376713760560394500472847201119270221543761360213807312000108767753942898778079561250003555302364717499659209040621" + }, + "rows": { + "struct_boundary_radix_union": { + "kind": "struct_boundary_radix_union", + "kappa": { + "rational": "8398774780627722606678354969603512884991557192512901477301637600814322741301628194131528280664223161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999998998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997996640490086748910957328658012158594" + }, + "epsilon": { + "rational": "4999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999998" + }, + "xi": { + "rational": "22698243873903138613033391774848017564424957785962564507386508188004071613706508140970657641403321115806861282922714655524301761203004135303569282515917323917893374063184765573192871135452488843908427811888970349419603513825966863947048914046995017231354280494187187092366892326424569723068932981389140167139160293130961241274983495676892882092856753942644057730650965294298891384437535366303413657772029643672939520062841013649196320270042024171403349464404073594808067062053824713323095299973471534993086956662805983343525641267336840286171750063175961959633584686878212349890753907046789671444810671589291636653225750741042515514684365251984932663679634055582115772363662798561551384057584150281718603896296844605684389385755961356666420966173619311376496349593750025900378358782291669258772995155120766721811354854259692467287036978003885729446336092288147987948973031001147669943174613002863369083838808674846570553601361705307321191074337143616258011807610324811072043677811250624098388719938381079922371976883189519863892675298713584676842295980498498965850546058038046153767485062507080578166213021645468524012759218479034626664930754047312615669586697330642569560474834214068398635125150772352002217744352007429063201571861812768341686649351178505032494998443604729402241023532819612290967835627932667873603874681957655280995017990281213098267392567258819022341298528942555562576264326565273182778163934753910607731698039228582279066243018709227438384408065161736392817957162637737361215030143997201225737010680399955712428936337954110625742012788555905813532227155730974024231541933371245948497074365089683507748449458867143773220992204715290781738015133493236992034223579543536295667252169780392688842532290836008821477357367277142789444403297699129036645016314147386639777518295434157572738961033208248833729400839475998367093098219748674838744837080803155213071419070955051631240004948206773907621077950423460865597078248834891629784638180207685462323805391361311840783189340267769290075707831801570410587306555807723603504774171554557254115174763669262039975358885308598179283591095821662533658581686755264094121683089011349432090244569715117580705154773034777911513267889835287111831173454928933024025364923281288526094782198938718633783453945946417150951468493927334226332979919497909632354498439765181819827045979914747160871046732385508214041467934111219373282919378013003147460662052187355783859658418047603147445740538482502889631115233807479393040341346188558796679932150668245669289466975901289724058216698349723171042826987576337353322274742053235090461055105055049706979896731289899280128156981079005197844344582403087702712956500394033301196826177853018244053827898148559539582850879438166733125591061602273801792239896239396844231348556564462052554398536464069802132037515230017664709495985368395930680042465375218245907220557295017372926256820400837594929692282940504857043224293316448635667292447182274477918963626526127702051116978698018804708146361963250200535970990144703005585779757624279390300523413080315087856468888695878025490338598682131378618234825252270089192366090299279707841354478880201292802719847939709458254554651618910670761516497325101161689176991655943889080088089845531138968004267196209948686727645854088791365184316911270832175725966613667971025297261648725914198842757817922641738922058733587984612527407580104701977651101793702195491070156044700342853883602519192241024753992637087827735219067834962602516557208629704858145199830330087998432177495519456859984068291848745759770611029919606237736589533900173487843994125987696482665253483798305022593065744703256179546373555814934934899941955390871985262077335670260943411781904613367494896680647987181255003987964897830115609016440352533545681132577756957343299151057680151711254691835808891547157946143082033394494329220551782156575027853642056843981462373669195582914342544792643175587887825934557187219554770300034180482359932853906266501206298107536016909446229986147843277558074138000194459021512067106987375562829683907634343003840950745167773629115523117173285992026394084890433794828116170907749773611948517864535454910452546798013841673866724280510633825457603329341375312203534142124641544935042118777668840838207376829169836043493970588456280597456593634777690973118901808001437107084088443559941209292816504977931375501269199590281259928568489175819770369583969792451178506382899229411558268610827803582340011189444811305801409530208596515338338245709262371874957133853978813298028138761759580199452154312033167296301120345795520374635708611524743123828558733438914544907133747917350576958971687865216233352043960087535170063168854588932759375224229005308274040571916998605792554888681816706834531723277955153045050689229252405481644345912933770276569298833876688270906769878243256978134747766159451937722986628049647488067751696539329240527136485094832328352210432672902659931526840343751920145633254222768672682998934590927193208026153408662329160753939584735720835459432075754320600228481114361380646201288381780561338061032933423907022320620995020533134256943713498491221184809531977537269501165856314969328042064107921734151816914042969781564328040644087803581991869681912706621605453556443644490921663132374621708160177939269157002219307117562296192350528971594833004553182142312884062882442594666489766097606678494277440346541989183684083004665049938735123328298825509655210744086638583026363846794196326578576538179363395235986984368237224600452516680379461109096695751597044664991829419609293676345982584451046353135826964488358199740621564843752585167485701402255936846135664129620349452967509846350329397972648418523626041936832772585991485826882095329221490974190210942698250566699953992063581409606218626916182490336951401518559238008250415827023070695624173335460487688348760027480583457048325153361146204744445659152481353781802759710462899025679733568909679666629882558904382712762724026678556824908761776111660403490550528993983498278177540624081303220536297990932397199971011485383273337013256812517243589544318955055536197184434926341612844791463400084402343656438416035237185098682008757090874080612592753604665162286199454417572387017762933891619562760137342495954505005707704576489235896595736558589693617726393611314047721987387705636078849339475702129852790254687739259795642400343863202992511875540780468789401136167299230521079688744201808856979824573784736491820627725541480528528441356738366527660991172466710895821167346312648148727256497172832346215023505525729781460751378714284885481673985511288863976568430344322600869313112837884595456665269011717413257965306991952743422688823705804976180992635234256023382262138397417485230125652033011657791064472923250628797253440024422522507694103078883581840107817621036623262701794087013055597754137152237369058880234218231210389840569188244935193945760933886847493016718309941611227079686376783217011071618213855833572484501970689394019318358102934061417662905566496143835986201935572559304347599219299629972572578475949325190671356096334869030833008139527119246926720439426898679083416784515087876970160507809607353717779394588858856169343711187203886918934828050324484777868707510949981836065668993769533964633620701841594146527289319075628411687144136737322097466335431705588037953608393862155655493848860496038828238310735065742553243594874469592787278637279506839093223401386794789456633006715624926613899468484555581735825101715025478726863885864479719514391990339990143631869719847414359073186544176251161387388582536204219046487638432946579617203244689676266818789552234733512814986784221811336058166044296138659426457067547376336690225789635717666210620940775365510864237795235514581812621239044278546955055037665449935147887211815892548018753141780178349980199092328408617582479268609532970060597037573635751112884257057931200042833836826476889623706049807274735853795015620757930614231926222073883654009549921140718846325097543399532621673252564745813174898666506434428232259349990771625408717129083561423200975872530187196262867111280698561763452516852614309185774665763353865606207564781436249169068771482119624055698629210105765246541403478003183393352896356644389160478499713357707164898097733873188136910968094610979312016003644790140193638844127526041601215496142953044343866423412687548769654356898209363234077743257021130677095920648254733568300677683205471157931078704822119373423718799109619865142346550201275446300246066550810552619136302665649803864245194354915151667686148622615376027244639787258825453430801899295935302659079060172258103038558209033550057757712226320991620362499265128715720677839727234270728201210427783320407649324145552612571132474935905793636613633450588966137592159821673968458182196554931325921207636445081062700267348713562164848431991271167469326578398806183374849812643401593114102899330634033490756272549961155900051219778763211113675368586320815987305459896825830338916186677843357377051447076020722169950160790614717712049226273268141721178563499098501017006180111120156277199205833903141483583440997699913183759046620476052511128907197955385138098468020013411782324346903107809364045034706576013567571862741461913796052501071737937814434252399039701545586820811248602709442403184601832084005402271782816400545051520420866733297409538705561648955285550750035014779394547915210096452089961519968333811616874018904842950805839188875718020113264136595427260295238384188882749796504769000397337289581493055521845107229009200249106696156103503476622138714691034418106206341194461726973801411509933236377367044812211136547167081554592771073953474061521078953830716168354751067107680166146764399031977815824268236026549595906674241277272023069385833978464569668659282254065523876660894325546327993147730482498002797996168203284544127339977675452250852611759257098920629141780956932435603609045960756196661420353423891329900375687096342125144821274899546868114083105586494404745279700791465980326961612778806784620794748196023098139351130010675638870260777494585672261531230069319028722131922632904743626578456188340327276771922804719305286903955530531247769910668378952820097364722604558037551331019494998285443564963917018448004325943203320644354722325208506899495323072678383853076701375003930985979002905277787853138154897458859262464325881445529839932317811400769403501975638777278904600859241992354282700104931022843226666780085094098542956627110761291988719351499571926228955093445794172092325047671679561498308795542918143451633600085499347345913927357389701224725759200812440515528671822255000898510460484628765915159912944290608211975300026422093649689222893967690473200600812621928745793307239325494005871408686478101755734926708454577452422468333093340631243687121455429255453722368073107843897239715675599185679958163510123341272472296646563041106851276290174546208745055682521825866943592210651931470376775087714311013951305102743653164160397905333983189328973224094894280215354554717524632866048264027187633080975568413714172375741877175480465810699300841143751094470133564015471782950810138708249267581695700425069326286015947563717776827805933698180442238781652153106067749485713662487356139858398729268438335172118519818895207674745283041122345870141528445076981964087711161539616655902692780882542855244226115795904463768312432838871758580703033741283961241340183140544981181669007323451356981376464937323974566164488837988431280643651194743620850649974503338748914445698393123443496885588524404598059946799517813833061966627057973260484180850203247196687230172168180700183159687089791978261134089911609500803351799801328321947699100971267084607662351749355670473521518178914927457252553571254798720831561779993376384075139113973269327065083061489826246937147178403466228706824159196579914615571876205579345524671443039896986799414299651987293787095780688531420541185929246435326375471038522850904881623359699284485898134543657354553854972331395279597409643173489041142798431279994885377813367837841318552850961258932669385355731269205111703322900381979399256648641355466558977571031060732621153775797524396534192273384476906806882929847423389044291014463700266147571028005281686781792877867429068920446588308468661977902990448464278495399703060147786482270773045134691496008022756853877019105902452892879062194790401201590932764436599525740348382712802039001773695318971446104146732812354210832372814935903703421369109754530424220411309413801990496677633052382197822589845885374676800717563780409620830390609525326895751209249280786307950297844785742796805769897370932989906160659914746087346034858013289705894574506795530221371926910294668534581285436899959543609439269180215405590593379418633013649281605036068571138351104967573575970494164333166380756858767418570622555167484008694985846468844095011691296101682157245615853746846285299823473978497188661323111745799944790901108871186416217220253887043850160081827254144460683381720110492372199528762403749314279386814620546577047882026670297634047175377584565846919503613716302316600372200522996095788784724832084395043132600113016228257457202607936149634633228230608271723565102971225259980077203461300908818282173020952615299839849616899424557252509098308118373031694814008040769155128183160821532816450959106495875524066131993160173937239413127029452959736133115878871371398583302424397590329068668947709639773830370052446649217240312381822341314271865696574103254394930036061409978009742120990132558339994424686482893937092240560776353010968611038334060848470494219677171088134357540831323060271983112600582191667559227340639856959997886062713390285918591932866090069235618747277807968811356298010495202308302285334921440250460952663689389173195436137376267810861113376190131781647544801522078513070249703270125333001954287915311247337920562797883451275813446154363597567387583589366776026106000096661146946697498816212504434397346264764039202288279578379940855389091028054747022124656087737765104481414068112646250175985995885581469326161311708995136079409785373616069713702017726906391851845635011548875249326766419317811727797524377111992763208382749005772912245940345368877300911098459319997057382223446376850004964419551714724290181967271854806115015165691310418748175392471529310372787370664415909997228167485215237427722673576432301904694281804749599571539156253873313351243720585961051667920955200116773387929305265205355853020412318220509983727041722482270169485210673857671149874089895996296445589297802058385058064017372583557331539039178259612423550242899570510153332180844068999995887674121213214141189633321464551546121125908255963492622711739564514493035541283363137712164096968124901573295660554016090903491669103976042268096984952445740601857196827170419660521143112629138290332217678068561554446832548679952990193405146314388372341428054298236170754205387245674606865919134975883773415674648701170591102675920369307880501165523497737794700299504018877096469619904524464902080402443584395646355348687549163375641567679373977195674094664105983101852501177348515934543483219271336890442138228216629054345030898595040605272778923942238984135082068963582039573269998738231689129966814142253293292534117905456253750512332672699569484501463374193079147744308682799408050850765716892729013075760771745782273343374518383153621128050094367170345422401495994764503977602208224725421124061061107113103718356876234679818159102256651318649268230873891900023954840902335642524085872691171064805744586217960446149959485146548545490502492349248062240322312626288162519078922550879727629162513605912789532924383403184999233656313741813021839736285981695840421866889237882294403001341647629192714804784667317386648318150298035541348953784271995024688685932185693263584348472063598520087812694342160781815374589736988021225935728872062427615958836973928492443024665403345791719772881389866356590451680297230894368803156660032776442880536166773110483565452864638761439534982809853491808753264255953844391169662410411219835040140746786398637694133826809998262734726007322192768972828917835730501696678617804571210200390589634267762353634589721285934638883547614342678367690023363101257429520346425662607136725568270087903171837054997216859231841788147263676196972691923324084488076143728737528795192401922914840509299900752543629593929162168525108955572391060994237136576349409398331027406519927645774370686659742471964904637019589965625592671033185552028014549818806951142355606119571177285869054398170844570878661666357732362880151008306401515829144767651138993406204952600635675315330591896809069984191051959600435690790054063651719643011545908587392964125651907820528300912267093828606579743466472769414710114965026837815843583642446999626487075541575117827339476461309927487972454271213464868408763456764785119807977049604708082582602414498745736016480961223704890668749847180530649416705808729953764056714324336685587147230211748341149545547585142557882499053466166454711384464024790560786487251105268773599257891448605341200993680044587046966620951377108435551423484610130918112279733110450071323388796226514223045603915239534368998982080716104141057534596550180783130283640644155339133126532405783052120537155525680083487142812118759425841498967524661635729995256494875330388622375975966557911246122159536077316615668933163045873141148443934226632859653772790429053580488277559543777944637083723204218215704804838558994911606744279721527378010984644605292459984048488404781790087693499255760568318616100555002715771801175205069646470106106926857075339897663203959201351799089704979489052345782167488798765432245307441253837959175152103651854297901046545942959592085897551602933147238088773679791996362820611150330260730026733847186549661178627049007847754069500997045234197862349980560942745345807160389641462038350979258117340059332052141960391829522456592191617732655494274447568090613425944825925763887961088847157967333318473129522792736959604767839515895687738118490996023922321775537704934053635733132873914171758130451961965427218460971603165993442544638153075821139994776680548333873153236618250079535322296084712548235075838416375902846793241463892848958943432289795111334590731962499037161895275195909242086780428419454667359061193148122023177996901328926915826302889460180337703966892946625480075242023032185505670779169185473650853881932736429749682454143553434719998661245046560469076459408164896181558380177453181255846747007695315919009432065329082606801320113820958278752550635120156841535704299516063401655682346939594985440570550312016834863734847684921408589925278405028804679911501959140143792995694935110602440398047585596584556872977527306347757173557595621388753928295167069655325228717587029231378749269517723337116607673542754281420947133192174634953400342396173040763050797351044029615509551869939901702070023368888113688897187640910808520008014555149699248959913906527683205818799774902277766001724334580257524162570242162611351929932910558455235071284968102902969118507320558812699226178920128441781352086076464685777054969222500250750765330769322573267772961211485602468140254600708821669627076039552971084895980194866512451984184644200612546273396936824995185556341206783999929455769659243329043565196634720472191777247172941628197454178360066147960550518247733780612636700046861520429062267171072745533477078927523293558184644426117309006193126543776483611944707380173367837382022705970248306761723087407509639280309197869520849949070704546105803685885508344257983050195649462915429899511192113006625143333182944880889467115858305649528882657202025137475377843804589721030014935137725134113514675132514508164348857476534627180630850179301922542443578110950043146036764379809155369509961202846700952517300874712432966462073103400084902857178071690854030368689911091444885851849302408131651060157147111465674697949914465796372707682536651279895373930088406832414631857318159945739826247727292533120417258997222356336876084288048979252434191804262084188341683193420466885704730465051181368312056180032617221779364344632146440504706045502513164556902602242613779517503306548133952515140161372725723344128449301100670025647514730905511717157723347514381630233991882881921139415013336017041571971960534325141241855887160344970383175362224333385325958568351730196489750861691807792717864759978569323532107040565425450983828720370984754923626902950405564027601313748097713995186312119035960923298457204655613905848066975448849046314418247428253352916163003262403302094537828954014492664529275014425019320070474808673826737025169772362169569628568941657653595850772480594292859868862757399369108495282291309597854212986101890099983902567980334725101545755153981569072553431340490224323845688292049922713940267283525666948959345556842070118211725041098669106006025529671476210434380534417892856883967200506855964536436717713678571386623485055250546310437309262355189969637131484887540564542281469875005317085446566078751379422748524667060652129797968443571120415255345317586098898490385978581727464544326914618669669024111872497860949539427791956694360600352890834602866235027683572717408696447238983752859843659957542378354244220066591609288461227120725692662416757657875921809257660352496938953473251185593935108657591752087200399262168340848981271553255296675496901008937810518931160171651064601692542158415193310491325523692524219807207924453111574277693130789146613530590061205419679794728612295000853317040983680680417683820834457677914780428945710737695835581101268265624696589309494561080705780603712608779928337294560589769381099423903598436891620548002067016643222532191469343932139937251324521452494068378899420692562516184521313069024495550967730421264990014012104551820113294443583088364941490030498122557879621798770913695643102286435492192907306716818435327996257985496708271873331916474520601846376232636967730105323471455378416785955871332417313808262109440690118026047799690441298718609781708529453970227834303366679675483532745169120776423929529588514482948655653342710028131096347304248962486998946350397037130442814760702755338392066925712849656413002693410571490036355980735569234372165073341304453397099927102952406128475019393829999181601918483307628913030817706340631300277243578019512661272478333476698152728685815964175212289589198163781460559547320445944734617075671701857902355849243412793187484873464978140312685508574083556507427199270264351810315598226594951364668268656592846365204360603438072864438984857892434837742226799672039524073381559302637163394531653605837520310544486413171531847547470559468426595704630446952405132809482194307941859787333492741654227360494390605392479895882534939907825650154844958198718677293367293587285683173813896701129344678065884348293122186784485764736386135391481677756532184326403153635838886190206388712102228082943013513694940020029772651304408627614456847797797849829879697351934523482439603578102310327552076780073714059047932710334238984184040312182131834365553029631191769337838210575477542405301099080671685023276016292830126183774636534837927297200444094116360563317398958186192126005354742383797560998104898225565770658626236475700690064640939389202337951032913912686046816295177984270648770117169682966974556224635479723018547315297396876861039240510381879031852444475362713431320210066567546513124016742045508137612593429442847625261672452240205343592161391562814244540041187886274090682146040400836264656976430076728640726411016342402358974404416232043270816904612479675619861649800701505839481984230130605022284929235506373068230530474635193897392353405873732494209631553910772058685079696394344010013395098468295168133130412323867509043614024324315567120529527797999517787298602455293289530535545631927586826371221748872864478415353348940092624435283136747458555714034268649886158324420067652210211935052025455682575722854132535389501103293613745452155698056228457826958382138390337370854731251412405142203037878472284996143737148375318478771019533678438348739236672172887730058681738553544009795187635312489287300743733622558176237848161577065075554478777975738467902218468587701179396849716235300417969417058162864536850606238628427200767572337317391206816479391146187697000047718535020799083714853291391520546802922671907008156993949987206703756451181706453180491519973313315717765256943188252562456687658355175991178918482618705995255620293524276332816380953387854751575279982939966295406407807779502841494411374524472835388540347538391690921041931107882034929190786265907416969407786543111460343906957059814096396695828132155488244261482685363831724255770207513972125704758666424952039665569739088149004374476852058632646775427321568779775755073593005638145190681239729945128491714292773367466312584103979262041945996700654710059889117201344780858557966707332902506127024668887198415428437219534724775016527777284252428208219214763595767847288086520985051664686326700832901967821822653930605729443952883361715822436370797454856288026149392562267236978064818580901829164013782056970511590839743609137254150753587088293246194673654564308992103116099948624009314110999334345612835206995903345380832297555329344718644103951080643510014187543590554953935655518953198746505258766733840021237134237032855651672939620486977312029978731575912559739643325872995102785849128419064947731046102822786421024559599295194720374075524489899430960305268368235310939768433981523158657877542691885182960271148113003297740171072801868514589547183030200953258562983786282210207817114429668663619023875040817434859570354888744148492993810077369690442835896313708478549009389904965147553889568771421780810658153990333837524939127718296181014795553765266294774346045146768652303314014131777250234522342502468617615259584591051788932569976944965027444334441698931828214694495310844394636082408967976063858363993829380547657126059449732506726508891307169924550533124323557614189739656398444337600027258244872415084681199427632345108768792573658254687381940919665000684111485755465654769084363658951427991489698626360953072484381676504350083575340647475457214730971378880975557794009943600810780752473377020430924392184976053237651484438970647134069011822349660057537918773705530539106972090692667425744384608973616658081027273655673543069816652006064069850586765973202156955230956200538365799937928993498021334178320286255617943262768127798583062611385323150027954024692714200756676586109685687429358538936567257245139429192099343902243529861006560784622255946267642485947511814189307839272167095398373921506734718673451161595774839336377229200352057296390975476452704899906074795608557683277279487417285440801850552308710025361803749433821438441263474001224558995167453493933316846321036519720704475641979315617013372619233852854858056967325002426361064715667281461839101645253052547371958111410816664872041075900628226784682808134007393558356092897663597859092680677307647053199780754636977648312812725992493584261620903459989861305207112410122544825253483111500235398208541949171157161297160108219627948241481613359165485380689883834010401159342284379626302655025266687261717402186406779198086022719834324124588659145672130826532049976579014458806119145632034081935375043993499329770383454539328900349851440600931066859229229619587515148495521372447515248514671967852699345662441023442150595441203583968841721325509893785207455766040366956753643809939765755962682739274272377296852156628144097159117478195184914922841253610253533018410116558916385308599130305377903518472240922651956696189601821153533941178141653878745296920972632618210746438697466818580404360043285160643708107148962489999880123961818408023297272551139475303426551400780456505767507859518544814482038065313008363282316751913583032291192965444927933443497277656799310087155339454003319406229635649681946941282908441768638351149689654772493337382311515822098881935751390807912457998688681130301428176602596807910588608270800979670896300045287742374801917505080359635873988536523614194598699170797483685304236221296552739813656762226238473349295044465132619821175778990217550438874833949806323815098345206695912568346240751213976201085263415022590031584504100652449515741466559016434560293533400590341035608450415512854588043732786322560817783617502392928447578503939923706415895078150959175098503413841620522169397913851460540080438434847817004580305866977494721770723948309098934998391383799995100038049258519241838736696444553889007752542986628799666294271594323480119130142811905657704580536333844064705370994811941887661942021865645440067673482126555972855618140935371563584725221935580417142395324054169477606425419808741943589635609566065011840786469773108818462426563402243806280688007816802553007541437561072223133332312638870548447341667028701956090952038712987229742526947846361582415775584545796786547741243538539917554673165923719201095606167106865650422895575851545348161180439869559067543450257402084613223994485792930653701844051268765220462428083838446097495827236508219666584464528588160264541805975594654599930609719684038572621972538425104594202926686573150210506465231672290695132365052077108747741700899824368423305251384200422622045229464381645022858209623653406650879115946578260653582106007542713864787528050931468125303421438238504100863638480564739371275554805267478611177190466489843154685323594011746555633432702565130969535102858068879997075888033500015067199475855906196208070090020662065566998088837475903149606598276628791414151593107415328011790577970404778890880422452156524473925126383170399584579501373498377267508346649478997679984170070598778380856737038515250029867126866226029026325323962700925596075091862223830083329601962874852765359239789145948469052447543942239227239338424963276831729997245277576635008381896870522543273758390806717438891378889568618470104358997582791124095396552548934640206164478329862438635726872667021538949740615445633379274592252559749174865552108265603859143122748319001836509230592268724423212489791723492169372436327037558887774560437801323650487637705971730456162119689281877877087878887075665452055676310724303397584827432644952265223824574178173328130112099999999992491601225219372277393321645030396487115008442807487098522698362399185677258698371805868471719335776838627743415457068895139647759399172939286143496816535216421325187363046885361425772909502231218314437622205930116079297234806627210590217190600996553729143901162562581526621534715086055386213403722171966572167941373807751745003300864621423581428649211471188453869806941140221723112492926739317268445594071265412095987431797270160735945991595165719330107119185281038386587589235057335380940005305693001382608667438803331294871746532631942765649987364807608073283062624357530021849218590642065711037865682141672669354849851791496897063126949603013467264073188883576845527267440287689723188483169943656279220740631078863122122848807728666715806765276137724700730081249994819924328243541666148245400968975846655637729029148061506542592604399222854110732781542370402410205393799770466011365077399427326183232238265030685889279727658938535761785132571276748397638477935037785591264437749875180322256012323784015525604623362096027221464940257283064631540803900300206829890788392390769246502987498583884366757395670906295197448156304193074667013849190537476866082660533871486087905033157186320272974969845529599556451129598514187359685627637446331662670129764298993501000311279054119551795293436077541806432874413466425279225063608468943800996401943757380346521486548236195531740294211488887484747134686945363444367213049217878453660392154283544186751396258154512323118386967652721436408567472452527756993971200559754852597863920008857514212732409177874851597442288818837293554568853805195153691613325750810300585126982063298450310108226571245355801559056941843652396973301352601593155284091292740866549566043921462231493541832798235704528526544571442111119340460174192670996737170522672044496340913168485452207793358350233254119832104800326581380356050265032251032583839368957385716185808989673751999010358645218475784409915307826880584350233021674043072363958462907535238921727737631843362131946446141984858433639685917882538688838455279299045165689088549176965047266147592004928222938280364143281780835667493268283662648947181175663382197730113581951086056976483858969045393044417697346422032942577633765309014213395194927015343742294781043560212256273243309210810716569809706301214533154733404016100418073529100312046963636034590804017050567825790653522898357191706413177756125343416124397399370507867589562528843228068316390479370510851892303499422073776953238504121391931730762288240664013569866350866142106604819742055188356660330055365791434602484732529335545051589352981907788978988990058604020653742020143974368603784198960431131083519382459457408699921193339760634764429396351189234420370288092083429824112366653374881787679545239641552020752120631153730288687107589489120292707186039573592496953996467058100802926320813863991506924956350818555888540996525414748635919832481014061543411899028591355141336710272866541510563545104416207274694774459589776604260396239058370727607349959892805801971059398882844048475144121939895317383936982428706222260824394901932280263573724276353034949545982161526781940144058431729104223959741439456030412058108349089069676217865847696700534979767662164601668811222183982382030893772206399146560758010262654470829182241726963136617745833564854806677266405794940547670254817160231448436415471652215588253282403077494518483979059604469779641259560901785968791059931429223279496161551795049201472582434452956186433007479496688558274059028370960033933982400313564500896108628003186341630250848045877794016078752452682093219965302431201174802460703466949303240338995481386851059348764090725288837013013020011608921825602947584532865947811317643619077326501020663870402563748999202407020433976878196711929493290863773484448608531340169788463969657749061632838221690568410771383593321101134155889643568684994429271588631203707525266160883417131491041471364882422434813088562556089045939993163903528013429218746699758740378492796618110754002770431344488385172399961108195697586578602524887434063218473131399231809850966445274176895376565342801594721183021913241034376765818450045277610296427092909017909490640397231665226655143897873234908479334131724937559293171575071691012991576244466231832358524634166032791301205882308743880508681273044461805376219638399712578583182311288011758141436699004413724899746160081943748014286302164836045926083206041509764298723420154117688346277834439283531997762111037738839718093958280696932332350858147525625008573229204237340394372247648083960109569137593366540739775930840895925072858277695051375234288253312217091018573250416529884608205662426956753329591207982492965987366229082213448124955154198938345191885616600278841489022263636658633093655344408969390989862154149518903671130817413245944686140233224662345818646024351348604373050446768109612455402674390070502386449660692134151894572702981033534329557913465419468013694631931249615970873349155446265463400213081814561358394769318267534167849212083052855832908113584849135879954303777127723870759742323643887732387793413315218595535875800995893373148611257300301755763038093604492546099766828737006134391587178415653169636617191406043687134391871182439283601626063617458675678909288711271101815667373525075658367964412146168599556138576487540761529894205681033399089363571537423187423511481066702046780478664301144511930691602163263183399066990012252975334340234898068957851182672283394727230641160734684284692364127320952802603126352555079909496663924107778180660849680591067001634116078141264730803483109790729372834607102328360051875687031249482966502859719548812630772867174075930109406498030729934120405470316295274791612633445482801702834623580934155701805161957811460349886660009201587283718078756274616763501932609719696288152398349916834595385860875165332907902462330247994503883308590334969327770759051110868169503729243639448057907420194864053286218064066674023488219123457447455194664288635018247644777667919301889894201203300344364491875183739355892740401813520560005797702923345332597348637496551282091136208988892760563113014731677431041707319983119531268712316792952562980263598248581825183877481449279066967542760109116485522596447413221676087447972531500809098998858459084702152820680852688282061276454721277737190455602522458872784230132104859574029441949062452148040871519931227359401497624891843906242119772766540153895784062251159638228604035085243052701635874454891703894294311728652326694467801765506657820835766530737470370254548700565433530756995298894854043707849724257143022903665202897742227204686313931135479826137377432423080908666946197656517348406938601609451315462235258839004763801472953148795323547572320516502953974869593397668441787105415349874240549311995115495498461179384223283631978436475792675347459641182597388880449172569552526188223953156353757922031886162351012961210847813222630501396656338011677754584062724643356597785676357228833285503099605862121196136328379413187716467418886700771232802759612885488139130480156140074005485484304810134961865728780733026193833398372094576150614655912114620264183316643096982424605967898438078529256444121082228228766131257762559222616213034389935103044426258497810003632786866201246093207073275859631681170694542136184874317662571172652535580506732913658882392409278321227568868901230227900792234352337852986851489351281025106081442544272544098632181355319722641042108673398656875014677220106303088883652834979656994904254627222827104056097121601932001971273626056030517128185362691164749767722522283492759156190702472313410684076559351062064746636242089553053297437002643155637732788366791140772268114708586490524732661954842072856466757875811844926897827152440952897083637475752191144290608988992466910012970422557636821490396249371643964330003960181534318276483504146278093405987880592485272849777423148588413759991433232634704622075258790038545052829240996875848413877153614755585223269198090015771856230734980491320093475665349487050837365020266698713114353548130001845674918256574183287715359804825493962560747426577743860287647309496629477138162845066847329226878758487043712750166186245703576075188860274157978846950691719304399363321329420728671122167904300057328458567020380453225362372617806381077804137596799271041971961272231174494791679756900771409391131226715317462490246069128620358127353184451348595773864580815870349053286339864463358905768413784259035576125315256240178076026971530689959744910739950786689837889476172739466870039227150961129016969666462770275476924794551072042548234909313839620140812939468184187965548379392288358193289988448457554735801675927500146974256855864432054553145854359757914443335918470135170889477485773505012818841272677273309882206772481568035665206308363560689013734815758472710983787459946530257287567030313601745766506134684320238763325030037471319681377179420133873193301848745490007768819989756044247357777264926282735836802538908020634833932216762664431328524589710584795855566009967841877056457590154745346371655764287300180299796598763977775968744560158833219371703283311800460017363248190675904789497774218560408922972380306395997317643535130619378438127190993058684797286485627451707617240789499785652412437113149520192059690882635837750279458111519363079633583198919545643436719890989695915826653340518092258887670208942889849992997044121090416957980709582007696006333237676625196219031409838832162224856395977347172680914547940952323162223450040699046199920532542083701388895630978554198159950178660768779299304675572257061793116378758731761107654605239717698013352724526591037557772690566583689081445785209305187695784209233856766329049786578463966770647120193604436835146352794690080818665151744545595386122833204307086066268143549186895224667821134890734401370453903500399440400766359343091174532004464909549829477648148580215874171643808613512879278190807848760667715929315221734019924862580731574971035745020090626377183378882701119050944059841706803934607677444238643075841050360795380372129773997864872225947844501082865547693753986136194255573615473419051274684308762331934544645615439056138942619208893893750446017866324209435980527055479088392489733796101000342911287007216596310399134811359335871129055534958298620100935385464323229384659724999213802804199418944442429372369020508228147507134823710894032013536437719846119299604872244544219079828151601529143459979013795431354666643982981180291408674577847741602256129700085614754208981310841165581534990465664087700338240891416371309673279982900130530817214528522059755054848159837511896894265635548999820297907903074246816968017411141878357604939994715581270062155421206461905359879837475614250841338552134901198825718262704379648853014658309084509515506333381331873751262575708914148909255526385378431220552056864880162864008367297975331745505540670687391778629744741965090758250988863495634826611281557869613705924644982457137797209738979451269367167920418933203362134205355181021143956929089056495073426790347194562473383804886317257165524851624564903906837860139831771249781105973287196905643409837972258350146483660859914986134742796810487256444634438813260363911552243669569378786450102857267502528772028320254146312332965576296036220958465050943391775530825971694310984603607182457767692076668819461443823491428951154776840819107246337513432225648283859393251743207751731963371891003763666198535309728603724707012535205086767102232402313743871269761051275829870005099332250217110860321375311300622882295119080388010640096437233387606674588405347903163829959350560662553965566363859963368062582041604347773182017678099839329640039734335610460179805746583078467529650128865905295696364217014508549489285749040255833687644001324723184972177205346134586983387702034750612570564319306754258635168160684017076885624758884130895065711392020602640117140069602541242580843862293715891762814150712934724905792295429819023675328060143102820373091268529089229005533720944080518071365302191771440313744001022924437326432431736289429807748213466122928853746158977659335419923604120148670271728906688204485793787853475769244840495120693161545323104618638623414030515322191141797107259946770485794398943662643641424426514186215910682338306267604419401910307144300920059387970442703545845390973061700798395448629224596178819509421424187561041919759681813447112680094851930323457439592199645260936205710779170653437529157833525437012819259315726178049093915155917738117239601900664473389523560435482030822925064639856487243918075833921878094934620849758150143842738409940431042851440638846020525813402018767868017050782530793028397342058821085098640893955725614617941066293083742912620008091278112146163956918881881324116273397270143678992786285772329779006485284805901167133366723848628246516285875488966503198261002830706231180997661740779663568550876829250630742940035305204300562267735377650840011041819778225762716756555949222591229967983634549171107863323655977901525560094247519250137144122637075890684590423594665940473190564924483086830616099277256739536679925559895400780842243055033583120991373479977396754348508559478412770073073354353878345655286979405754948003984559307739818236343565395809476940032030076620115088549498180338376325393661037198391846168974363367835693436709808178700824895186773601367965212552117374594109408052773376824225725720283339515120481934186266210458072045233925989510670156551937523635531737145626860685179349121013992787718004398051575801973488332001115062703421212581551887844729397806277792333187830305901156064565782373128491833735387945603377479883561666488154531872028608000422787457321942816281613426781986152876250544438406237728740397900959538339542933015711949907809467262122165360912772524746437827777324761973643670491039695584297385950059345974933399609142416937750532415887440423309744837310769127280486522483282126644794778799980667770610660500236757499113120530747047192159542344084324011828922181794389050595575068782452446979103717186377470749964802800822883706134767737658200972784118042925276786057259596454618721629630872997690224950134646716136437654440495124577601447358323450198845417550811930926224539817780308136000588523555310724629999007116089657055141963606545629038776996966861737916250364921505694137925442525867116818000554366502956952514455465284713539619061143639050080085692168749225337329751255882807789666415808959976645322414138946958928829395917536355898003254591655503545966102957865228465770025182020800740710882140439588322988387196525483288533692192164348077515289951420085897969333563831186200000822465175757357171762073335707089690775774818348807301475457652087097101392891743327372457567180606375019685340867889196781819301666179204791546380603009510851879628560634565916067895771377474172341933556464386287689110633490264009401961318970737122325531714389140352765849158922550865078626816173004823245316865070259765881779464815926138423899766895300452441059940099196224580706076019095107019583919511283120870728930262490167324871686464125204560865181067178803379629499764530296813091303356145732621911572354356674189130993820280991878945444215211552203172983586207283592085346000252353662174006637171549341341493176418908749249897533465460086103099707325161384170451138263440118389829846856621454197384847845650843545331325096323369275774389981126565930915519700801047099204479558355054915775187787778577379256328624753064036368179548669736270146353825221619995209031819532871495182825461765787038851082756407910770008102970690290901899501530150387551935537474742367496184215489824054474167497278817442093415123319363000153268737251637395632052742803660831915626622152423541119399731670474161457039043066536522670336369940392891730209243145600995062262813562861347283130305587280295982437461131567843636925082052602395754812854225587514476808232605214301511395066919330841656045423722026728681909663940553821126239368667993444711423892766645377903286909427072247712093003438029301638249347148809231121766067517917756032991971850642720272461173234638000347453054798535561446205434216432853899660664276439085757959921882073146447529273082055742813072223290477131464326461995327379748514095930714867478572654886345982419365632589000556628153631642370547264760605461615335183102384771254252494240961519615417031898140019849491274081214167566294978208885521787801152572684730118120333794518696014470845125862668051505607019072596082006874881465793362889594397090036238609771528878776085764542826189120365831085824267666728453527423969798338719696834171046469772201318759009479872864936933881620638186003161789608079912861841989187269656071397690818282521407174869618435894339817546581234278684051306705446117057977006994632436831283271510600074702584891684976434532104707738014502405509145757307026318247308647042976038404590079058383483479517100250852796703807755259021866250030563893870116658838254009247188657135132662882570553957650331770090890482971488423500189306766709057723107195041887842702549778946245280148421710278931759801263991082590606675809724578312889715303077973816377544053377909985735322240754697155390879216952093126200203583856779171788493080689963843373943271871168932173374693518843389575892568894863983302571437576248114831700206495067672854000948701024933922275524804806688417750775568092784536676866213367390825371770311213154673428069245441914189283902344488091244411072583255359156356859039032288201017678651144055694524397803071078941508003190302319043641982461300148847886336276779888999456845639764958986070705978778614628584932020467359208159729640182059004102189530843566502240246913550938511749232408164969579269629140419790690811408081582820489679413370552382245264041600727435877769933947853994653230562690067764274590198430449186099800590953160427530003887811450930838567922071707592329804148376531988133589571607921634095508681561676453468901145110486381877314811034814847222407782230568406533336305374095441452608079046432096820862452376301800795215535644892459013189272853373425217165648373909607606914556307805679366801311491072369384835772001044663890333225369352676349984092935540783057490352984832316724819430641351707221430208211313542040977733081853607500192567620944960818151582643914316109066528187761370375595364400619734214616834739422107963932459206621410674903984951595393562898865844166162905269829223613452714050063509171289313056000267750990687906184708118367020763688323964509363748830650598460936816198113586934183478639735977235808344249489872975968631692859140096787319668863530612081002911885889937596633027253030463015718282014944318994239064017699608171971241400861012977879511920390482880683088625404494538730448565288480875722249214340966586068934954256482594153724250146096455332576678465291449143715810573361565073009319931520765391847389840529791194076898089626012019659585995326222377262220562471817838295998397088970060150208017218694463358836240045019544446799655133083948495167485951567477729614013417888308952985743006379419406176298535888237460154764215974311643729582784707062844589006155499949849846933846135485346445407757702879506371949079858235666074584792089405783020803961026697509603163071159877490745320612635000962888731758643200014108846068151334191286960673055905561644550565411674360509164327986770407889896350453243877472659990627695914187546565785450893304584214495341288363071114776538198761374691244703277611058523965326432523595458805950338647655382518498072143938160426095830010185859090778839262822898331148403389960870107416914020097761577398674971333363411023822106576828338870094223468559594972504924431239082055793997012972454973177297064973497098367130228504693074563873829964139615491511284377809991370792647124038168926098007759430659809496539825057513406707585379319983019428564385661829193926262017781711022829630139518373669787968570577706865060410017106840725458463492669744020925213982318633517073628536368010852034750454541493375916548200555528732624783142390204149513161639147583162331663361315906622859053906989763726337588763993476555644127131073570711899058790899497367088619479551477244096499338690373209496971967725454855331174310139779865994870497053818897656568455330497123673953201623423615772116997332796591685605607893134971751628822567931005923364927555133322934808286329653960702049827661638441456427048004286135293578591886914909803234255925803049015274619409918887194479737250380457200962737576192807815340308559068877218830386604910230190737116350514349329416767399347519339581092434209197101467094144997114996135985905038265234652594966045527566086074286211668469280829845503881141428026227448520126178300943541738080429157402779621980003219486403933054979690848969203686185489313731901955135230862341590015457211946543294866610208130888631585976357654991780266178798794894065704757913123893116421428623206559898628807092712656457264285722675302988949890737912538147528962006072573703022491887091543706024998936582910686784249724115450295066587869574040406311285775916948930936482780220301922804283654507091134617076266066195177625500427810092114441608661127879929421833079426752994463285456518260710552203249428031268008491524329151155986681678142307754575854861467516648468424815638148467929500612209305349762881212978268481649582559920147566331830203745689348940664900619798212437896213767965669787079661491568316961337901734895261495156038558415109377685144461373842170677293881987758916064041054277540999829336591803263863916463235833108464417043914210857852460832883779746346875060682138101087783858843879257478244014332541087882046123780115219280312621675890399586596671355493561706131213572012549735095709501186324220115861487496763095737386195100889806453915747001997197579089635977341111283382327011701993900375488424075640245817260871379542712901561418538656636312934400748402900658345625333616705095879630724753472606453978935305708924316642808825733516537238347578111861976394790440061911740256278043658294109205954433139326664064903293450966175844715214094082297103410268869331457994373780730539150207502600210729920592573911437047859448932321586614857430068717399461317885701992728803852886153125566985331739109320580014579409518774304996121234000163679616303338474217393836458731873739944551284396097467745504333304660369454262836807164957542082160367243707888090535910811053076584865659628419528830151317441362503025307004371937462898285183288698514560145947129637936880354681009727066346268681430726959127879312385427112203028421513032451554640065592095185323688139472567321093669278832495937891102717365693630490505888106314680859073910609518973438103561138411628042533301451669154527901121878921504020823493012018434869969031008360256264541326541282542863365237220659774131064386823130341375562643102847052722772921703664448693563134719369272832222761958722257579554383411397297261011995994045469739118274477108630440440430034024060529613095303512079284379537934489584643985257188190413457933152203163191937563573633126889394073761646132432357884904491518939780183865662995344796741433974763245072693032414540559911181176727887336520208362761574798929051523240487800379020354886845868274752704859861987071812122159532409793417217462790636740964403145870245976566063406605088755072904055396290536940520624627792151897923624193629511104927457313735957986686490697375196651590898372477481314111430474947665509551958931281567721687437151091991762422745181863570791919832747068604713984654271854717796731519528205119116753591345836619077504064876027670039859698832103603153973878995543014152898725386353893905072961220521529318825253501158073689217845588262984060721131197997320980306340966373373917535226498191277195135136886575894094440400096442540279508941342093892890873614482634725755650225427104316929330211981475112943372650508288857193146270022768335115986469557957612989594908863484855429173492922099779341277250909568860388754308434608323572321932525829053749717518971559392424305543000771252570324936304245796093264312330252152665565422453988263652289291198040962472937502142539851253275488364752430367684586984889104244404852306419556306282459764120630056752939916406116588367427092629878752274314559846485532536521758636704121770762460599990456292995840183257029341721695890639415465618598368601210002558659248709763658709363901696005337336856446948611362349487508662468328964801764216303476258800948875941295144733436723809322429049684944003412006740918718438444099431701117725095105432922291930492321661815791613778423593014161842746818516606118442691377707931218608588037180720660834373568902351147703462927233655148845958497205574859048266715009592066886052182370199125104629588273470644914535686244044848985281398872370961863752054010974301657141445326506737483179204147591610800659869057988022176559731043828288406658533419498774595066222560316914312556093055044996694444543149514358356157047280846430542382695802989667062734659833419606435635469213878854111209423327656835512725840509028742394770121487546552604387036283819634167197243588605897681832051278172549169849282582341350761065269087138201579376780010275198137177800133130877432958600819330923833540488934131056271179209783871297997162491281889009212868896209360250698948246653231995752573152593428869665412075902604537594004253684817488052071334825400979442830174316187010453790779435442715795088080140961055925184895102020113807938946326352937812046313203695368268424491461622963407945770377399340451965785439626297082090563393959809348287403242743557958436577114066267276195224991836513028085929022251170301401237984526061911432820737258304290198122019006970489222086245715643837868369201933232495012174456340763797040889246946741045130790970646269539337197173644549953095531499506276476948083081789642213486004611006994511133111660213634357061100937831121072783518206404787228327201234123890468574788110053498654698221738566015089893375135288477162052068720311132479994548351025516983063760114473530978246241485268349062523611816066999863177702848906869046183127268209714401702060274727809385503123664699129983284931870504908557053805724223804888441198011279837843849505324595913815121563004789352469703112205870573186197635530067988492416245258893892178605581861466514851123078205276668383794545268865291386036669598787186029882646805359568608953808759892326840012414201300395733164335942748876411347446374440283387477722935369994409195061457159848664682778062862514128292212686548550972114161580131219551294027798687843075548810746471502810497637162138432145566580920325215698653056265309767680845032132724554159929588540721804904709459020018785040878288463344544102516542911839629889538257994927639250113235712311747305199755088200966509301213336630735792696055859104871604136876597325476153229429028388606534999514727787056866543707632179670949389490525608377717836667025591784819874354643063438373198521288328781420467280428181463864538470589360043849072604470337437454801501283147675819308002027738958577517975491034949303377699952920358291610165768567740567978356074410351703677328166902923862023233197919768131543124074739468994946662547656519562718644160382795456033135175082268170865573834693590004684197108238776170873593183612924991201300134045923309092134219930029711879813786628154154076082496970300895725510496950297065606429460130867511795311569880911759283206231655734898021242958508846791926608649271238012046848807463452145145524540629568674371180568176504360963017015431749277949293396317976688216722938280173938924419296305551815469608660762079635769293211764371669224250940615805473476357850712260506636283919127991342967871258378570207502000023975207636318395340545489772104939314689719843908698846498428096291037103592386937398327343536649617283393541761406911014413311300544468640137982568932109199336118754072870063610611743418311646272329770062069045501332523537696835580223612849721838417508400262263773939714364679480638417882278345839804065820739990942451525039616498983928072825202292695277161080260165840503262939152755740689452037268647554752305330140991106973476035764844201956489912225033210038735236980330958660817486330751849757204759782947316995481993683099179869510096851706688196713087941293319881931792878309916897429082391253442735487836443276499521414310484299212015258716820984369808164980299317231675895566120417229707891983912313030436599083938826604501055645855210338180213000321723240000979992390148296151632252660711089222198449491402674240066741145681135303976173971437618868459083892733231187058925801037611622467611595626870911986465303574688805428876371812925687283054955612883916571520935189166104478714916038251611282072878086786997631842706045378236307514687319551238743862398436639489398491712487785555373333537472225890310531666594259608781809592257402554051494610430727683516844883090840642690451751292292016489065366815256159780878766578626869915420884829690930367763912026088186491309948519583077355201102841413869259631189746246955907514383232310780500834552698356066683107094282367947091638804881069080013878056063192285475605492314979081159414662685369957898706953665541860973526989584578250451659820035126315338949723159915475590954107123670995428358075269318669824176810684347869283578798491457227042494389813706374939315712352299179827272303887052125744889038946504277764561906702031369062935281197650688873313459486973806092979428386224000584822393299996986560104828818760758385981995867586886600382232504819370078680344674241717169681378516934397641884405919044221823915509568695105214974723365920083084099725300324546498330670104200464003165985880244323828652592296949994026574626754794194734935207459814880784981627555233983334079607425029446928152042170810306189510491211552154552132315007344633654000550944484672998323620625895491345248321838656512221724222086276305979128200483441775180920689490213071958767104334027512272854625466595692210051876910873324145081549488050165026889578346879228171375450336199632698153881546255115357502041655301566125512734592488222445087912439735269902472458805653908767576062143624424582424222584866909588864737855139320483034513471009546955235085164365334373977580000000001/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.90792975495612554452133567099392070257699831143850258029546032752016286454826032563882630565613284463227445131690858622097207044812016541214277130063669295671573496252739062292771484541809955375633711247555881397678414055303867455788195656187980068925417121976748748369467569305698278892275731925556560668556641172523844965099933982707571528371427015770576230922603861177195565537750141465213654631088118574691758080251364054596785281080168096685613397857616294379232268248215298853292381199893886139972347826651223933374102565069347361144687000252703847838534338747512849399563015628187158685779242686357166546612903002964170062058737461007939730654718536222328463089454651194246205536230336601126874415585187378422737557543023845426665683864694477245505985398375000103601513435129166677035091980620483066887245419417038769869148147912015542917785344369152591951795892124004590679772698452011453476335355234699386282214405446821229284764297348574465032047230441299244288174711245002496393554879753524319689487907532758079455570701194854338707369183921993995863402184232152184615069940250028322312664852086581874096051036873916138506659723016189250462678346789322570278241899336856273594540500603089408008870977408029716252806287447251073366746597404714020129979993774418917608964094131278449163871342511730671494415498727830621123980071961124852393069570269035276089365194115770222250305057306261092731112655739015642430926792156914329116264972074836909753537632260646945571271828650550949444860120575988804902948042721599822849715745351816442502968051154223623254128908622923896096926167733484983793988297460358734030993797835468575092883968818861163126952060533972947968136894318174145182669008679121570755370129163344035285909429469108571157777613190796516146580065256589546559110073181736630290955844132832995334917603357903993468372392878994699354979348323212620852285676283820206524960019792827095630484311801693843462388312995339566519138552720830741849295221565445247363132757361071077160302831327206281642349226223230894414019096686218229016460699054677048159901435541234392717134364383286650134634326747021056376486732356045397728360978278860470322820619092139111646053071559341148447324693819715732096101459693125154104379128795754874535133815783785668603805873975709336905331919677991638529417993759060727279308183919658988643484186929542032856165871736444877493131677512052012589842648208749423135438633672190412589782962153930011558524460935229917572161365384754235186719728602672982677157867903605158896232866793398892684171307950305349413289098968212940361844220420220198827919586925159597120512627924316020791377378329612350810851826001576133204787304711412072976215311592594238158331403517752666932502364246409095207168959584957587376925394226257848210217594145856279208528150060920070658837983941473583722720169861500872983628882229180069491705027281603350379718769131762019428172897173265794542669169788729097911675854506104510808204467914792075218832585447853000802143883960578812022343119030497117561202093652321260351425875554783512101961354394728525514472939301009080356769464361197118831365417915520805171210879391758837833018218606475642683046065989300404646756707966623775556320352359382124555872017068784839794746910583416355165460737267645083328702903866454671884101189046594903656795371031271690566955688234934351938450109630320418807910604407174808781964280624178801371415534410076768964099015970548351310940876271339850410066228834518819432580799321320351993728709982077827439936273167394983039082444119678424950946358135600693951375976503950785930661013935193220090372262978813024718185494223259739739599767821563487941048309342681043773647127618453469979586722591948725020015951859591320462436065761410134182724530311027829373196604230720606845018767343235566188631784572328133577977316882207128626300111414568227375925849494676782331657370179170572702351551303738228748878219081200136721929439731415625066004825192430144067637784919944591373110232296552000777836086048268427949502251318735630537372015363802980671094516462092468693143968105576339561735179312464683630999094447794071458141819641810187192055366695466897122042535301830413317365501248814136568498566179740168475110675363352829507316679344173975882353825122389826374539110763892475607232005748428336353774239764837171266019911725502005076798361125039714273956703279081478335879169804714025531596917646233074443311214329360044757779245223205638120834386061353352982837049487499828535415915253192112555047038320797808617248132669185204481383182081498542834446098972495314234933755658179628534991669402307835886751460864933408175840350140680252675418355731037500896916021233096162287667994423170219554727266827338126893111820612180202756917009621926577383651735081106277195335506753083627079512973027912538991064637807750891946512198589952271006786157316962108545940379329313408841730691610639726107361375007680582533016891074690731995738363708772832104613634649316643015758338942883341837728303017282400913924457445522584805153527122245352244131733695628089282483980082132537027774853993964884739238127910149078004663425259877312168256431686936607267656171879126257312162576351214327967478727650826486421814225774577963686652529498486832640711757076628008877228470249184769402115886379332018212728569251536251529770378665959064390426713977109761386167956734736332018660199754940493313195302038620842976346554332105455387176785306314306152717453580943947937472948898401810066721517844436386783006388178659967317678437174705383930337804185412543307857953432798962486259375010340669942805609023747384542656518481397811870039385401317591890593674094504167747331090343965943307528381316885963896760843770793002266799815968254325638424874507664729961347805606074236952033001663308092282782496693341841950753395040109922333828193300613444584818977782636609925415127211038841851596102718934275638718666519530235617530851050896106714227299635047104446641613962202115975933993112710162496325212882145191963729588799884045941533093348053027250068974358177275820222144788737739705366451379165853600337609374625753664140948740394728035028363496322450371014418660649144797817670289548071051735566478251040549369983818020022830818305956943586382946234358774470905574445256190887949550822544315397357902808519411161018750957039182569601375452811970047502163121875157604544669196922084318754976807235427919298295138945967282510902165922114113765426953466110643964689866843583284669385250592594909025988691329384860094022102919125843005514857139541926695942045155455906273721377290403477252451351538381826661076046869653031861227967810973690755294823219904723970540937024093529048553589669940920502608132046631164257891693002515189013760097690090030776412315534327360431270484146493050807176348052222391016548608949476235520936872924841559362276752979740775783043735547389972066873239766444908318745507132868044286472855423334289938007882757576077273432411736245670651622265984575343944807742290237217390396877198519890290313903797300762685424385339476123332032558108476987706881757707594716333667138060351507880642031238429414871117578355435424677374844748815547675739312201297939111474830043799927344262675975078135858534482807366376586109157276302513646748576546949288389865341726822352151814433575448622621975395441984155312953242940262970212974379497878371149114549118027356372893605547179157826532026862499706455597873938222326943300406860101914907455543457918878057567961359960574527478879389657436292746176705004645549554330144816876185950553731786318468812978758705067275158208938934051259947136887245344232664177184554637705828270189505346760903158542870664842483763101462043456951180942058327250484956177114187820220150661799740591548847263570192075012567120713399920796369313634470329917074438131880242388150294543004451537028231724800171335347305907558494824199229098943415180062483031722456927704888295534616038199684562875385300390173598130486693010258983252699594666025737712929037399963086501634868516334245692803903490120748785051468445122794247053810067410457236743098663053415462424830259125744996676275085928478496222794516840423060986165613912012733573411585426577556641913998853430828659592390935492752547643872378443917248064014579160560774555376510104166404861984571812177375465693650750195078617427592837452936310973028084522708383682593018934273202710732821884631724314819288477493694875196438479460569386200805101785200984266203242210476545210662599215456980777419660606670744594490461504108978559149035301813723207597183741210636316240689032412154232836134200231030848905283966481449997060514862882711358908937082912804841711133281630597296582210450284529899743623174546454533802355864550368639286695873832728786219725303684830545780324250801069394854248659393727965084669877306313595224733499399250573606372456411597322536133963025090199844623600204879115052844454701474345283263949221839587303321355664746711373429508205788304082888679800643162458870848196905093072566884714253996394004068024720444480625108796823335612565934333763990799652735036186481904210044515628791821540552393872080053647129297387612431237456180138826304054270287450965847655184210004286951751257737009596158806182347283244994410837769612738407328336021609087131265602180206081683466933189638154822246595821142203000140059117578191660840385808359846079873335246467496075619371803223356755502872080453056546381709041180953536755530999186019076001589349158325972222087380428916036800996426784624414013906488554858764137672424825364777846907895205646039732945509468179248844546188668326218371084295813896246084315815322864673419004268430720664587057596127911263297072944106198383626696965109088092277543335913858278674637129016262095506643577302185311972590921929992011191984672813138176509359910701809003410447037028395682516567123827729742414436183843024786645681413695565319601502748385368500579285099598187472456332422345977618981118803165863921307846451115227138483178992784092392557404520042702555481043109978342689046124920277276114888527690531618974506313824753361309107087691218877221147615822122124991079642673515811280389458890418232150205324077979993141774259855668073792017303772813282577418889300834027597981292290713535412306805500015723943916011621111151412552619589835437049857303525782119359729271245603077614007902555109115618403436967969417130800419724091372906667120340376394171826508443045167954877405998287704915820373783176688369300190686718245993235182171672573806534400341997389383655709429558804898903036803249762062114687289020003594041841938515063660639651777162432847901200105688374598756891575870761892802403250487714983173228957301976023485634745912407022939706833818309809689873332373362524974748485821717021814889472292431375588958862702396742719832654040493365089889186586252164427405105160698184834980222730087303467774368842607725881507100350857244055805220410974612656641591621335932757315892896379577120861418218870098531464193056108750532323902273654856689502967508701921863242797203364575004377880534256061887131803240554832997070326782801700277305144063790254871107311223734792721768955126608612424270997942854649949424559433594917073753340688474079275580830698981132164489383480566113780307927856350844646158466623610771123530171420976904463183617855073249731355487034322812134965135844965360732562179924726676029293805427925505859749295898264657955351953725122574604778974483402599898013354995657782793572493773987542354097618392239787198071255332247866508231893041936723400812988786748920688672722800732638748359167913044536359646438003213407199205313287790796403885068338430649406997422681894086072715659709829010214285019194883326247119973505536300556455893077308260332245959304987748588713613864914827296636786319658462287504822317382098685772159587947197657198607949175148383122754125682164743716985741305501884154091403619526493438797137943592538174629418215419889325581118389638572693956164571193725119979541511253471351365274211403845035730677541422925076820446813291601527917597026594565421866235910284124242930484615103190097586136769093537907627227531719389693556177164057854801064590284112021126747127171511469716275681786353233874647911611961793857113981598812240591145929083092180538765984032091027415508076423609811571516248779161604806363731057746398102961393530851208156007094781275885784416586931249416843329491259743614813685476439018121696881645237655207961986710532209528791290359383541498707202870255121638483321562438101307583004836997123145231801191379142971187223079589483731959624642639658984349384139432053158823578298027182120885487707641178674138325141747599838174437757076720861622362373517674532054597126420144274284553404419870294303881976657332665523027435069674282490220669936034779943385875376380046765184406728628982463414987385141199293895913988754645292446983199779163604435484745664868881015548175400640327309016577842733526880441969488798115049614997257117547258482186308191528106681190536188701510338263387678014454865209266401488802091984383155138899328337580172530400452064913029828810431744598538532912922433086894260411884901039920308813845203635273128692083810461199359398467597698229010036393232473492126779256032163076620512732643286131265803836425983502096264527972640695748957652508117811838944532463515485485594333209697590361316274675790838559095321480209786596868961249527289365257087462786296413017579720144245639912038968483960530233359977698745931575748368962243105412043874444153336243393881976878708684352537430163325292241087932450402328766670236909362559427839991544250853561143674367731464360276942474989111231875245425192041980809233209141339685761001843810654757556692781744549505071243444453504760527126590179206088314052280998813080501332007817151661244989351682251191533805103253784617454390269550334357467104104424000386644587786789995264850017737589385059056156809153118313519763421556364112218988088498624350951060417925656272450585000703943983542325877304645246835980544317639141494464278854808070907625567407382540046195500997307065677271246911190097508447971052833530996023091648983761381475509203644393837279988229528893785507400019857678206858897160727869087419224460060662765241674992701569886117241491149482657663639988912669940860949710890694305729207618777127218998398286156625015493253404974882343844206671683820800467093551717221060821423412081649272882039934908166889929080677940842695430684599496359583985185782357191208233540232256069490334229326156156713038449694200971598282040613328723376275999983550696484852856564758533285858206184484503633023853970490846958258057972142165133452550848656387872499606293182642216064363613966676415904169072387939809782962407428787308681678642084572450516553161328870712274246217787330194719811960773620585257553489365712217192944683016821548982698427463676539903535093662698594804682364410703681477231522004662093990951178801198016075508385878479618097859608321609774337582585421394750196653502566270717495908782696378656423932407410004709394063738173932877085347561768552912866516217380123594380162421091115695768955936540328275854328158293079994952926756519867256569013173170136471621825015002049330690798277938005853496772316590977234731197632203403062867570916052303043086983129093373498073532614484512200377468681381689605983979058015910408832898901684496244244428452414873427504938719272636409026605274597072923495567600095819363609342570096343490764684259222978344871841784599837940586194181962009969396992248961289250505152650076315690203518910516650054423651158131697533612739996934625254967252087358945143926783361687467556951529177612005366590516770859219138669269546593272601192142165395815137087980098754743728742773054337393888254394080351250777368643127261498358947952084903742915488249710463835347895713969772098661613383166879091525559465426361806721188923577475212626640131105771522144667092441934261811458555045758139931239413967235013057023815377564678649641644879340160562987145594550776535307239993050938904029288771075891315671342922006786714471218284840801562358537071049414538358885143738555534190457370713470760093452405029718081385702650428546902273080351612687348219988867436927367152589054704787890767693296337952304574914950115180769607691659362037199603010174518375716648674100435822289564243976948546305397637593324109626079710583097482746638969887859618548078359862502370684132742208112058199275227804569422424478284709143476217592683378283514646665430929451520604033225606063316579070604555973624819810402542701261322367587236279936764207838401742763160216254606878572046183634349571856502607631282113203649068375314426318973865891077658840459860107351263374334569787998505948302166300471309357905845239709951889817084853859473635053827059140479231908198418832330330409657994982944065923844894819562674999388722122597666823234919815056226857297346742348588920846993364598182190340570231529996213864665818845537856099162243145949004421075094397031565794421364803974720178348187866483805508433742205693938440523672449118932441800285293555184906056892182415660958137475995928322864416564230138386200723132521134562576621356532506129623132208482148622102720333948571248475037703365995870098646542919981025979501321554489503903866231644984488638144309266462675732652183492564593775736906531438615091161716214321953110238175111778548334892816872862819219354235979646426977118886109512043938578421169839936193953619127160350773997023042273274464402220010863087204700820278585880424427707428301359590652815836805407196358819917956209383128669955195061728981229765015351836700608414607417191604186183771838368343590206411732588952355094719167985451282444601321042920106935388746198644714508196031391016278003988180936791449399922243770981383228641558565848153403917032469360237328208567841567318089826368766470930621977097790272362453703779303703055551844355388631869333273892518091170947838419071358063582750952473963984095689287102150819736214542932531495656687032521807847861708873843886412663973770178552612303284559979106722193335492612946473000318141289184338850192940303353665503611387172965855571395835773729159180445338362927849996148647581100783636968347121713677818669436244772592488092711987605315707663305211557840721350815867571786501920300968092128742022683116676741894603415527730945718998729816574213738879994644980186241876305837632659584726233520709812725023386988030781263676037728261316330427205280455283833115010202540480627366142817198064253606622729387758379941762282201248067339454939390739685634359701113620115218719646007836560575171982779740442409761592190342386338227491910109225391028694230382485555015713180668278621300914870348116925514997078070893348466430694171017125683788532768698539813601369584692163052203189404176118462038207479759606808280093475552454755588750563643234080032058220598796995839655626110732823275199099609111064006897338321030096650280968650445407719731642233820940285139872411611876474029282235250796904715680513767125408344305858743108219876890001003003061323077290293071091844845942409872561018402835286678508304158211884339583920779466049807936738576802450185093587747299980742225364827135999717823078636973316174260786538881888767108988691766512789816713440264591842202072990935122450546800187446081716249068684290982133908315710093174232738577704469236024772506175105934447778829520693471349528090823880993227046892349630038557121236791478083399796282818184423214743542033377031932200782597851661719598044768452026500573332731779523557868463433222598115530628808100549901511375218358884120059740550900536454058700530058032657395429906138508722523400717207690169774312443800172584147057519236621478039844811386803810069203498849731865848292413600339611428712286763416121474759644365779543407397209632526604240628588445862698791799657863185490830730146605119581495720353627329658527429272639782959304990909170132481669035988889425347504337152195917009736767217048336753366732773681867542818921860204725473248224720130468887117457378528585762018824182010052658227610408970455118070013226192535810060560645490902893376513797204402680102590058923622046868630893390057526520935967531527684557660053344068166287887842137300564967423548641379881532701448897333541303834273406920785959003446767231170871459039914277294128428162261701803935314881483939019694507611801622256110405254992390855980745248476143843693193828818622455623392267901795396185257672989713013411664652013049613208378151315816057970658117100057700077280281899234695306948100679089448678278514275766630614383403089922377171439475451029597476433981129165238391416851944407560399935610271921338900406183020615926276290213725361960897295382753168199690855761069134102667795837382227368280472846900164394676424024102118685904841737522137671571427535868802027423858145746870854714285546493940221002185241749237049420759878548525939550162258169125879500021268341786264315005517690994098668242608519191873774284481661021381270344395593961543914326909858177307658474678676096447489991443798157711167826777442401411563338411464940110734290869634785788955935011439374639830169513416976880266366437153844908482902770649667030631503687237030641409987755813893004742375740434630367008348801597048673363395925086213021186701987604035751242075724640686604258406770168633660773241965302094770096879228831697812446297110772523156586454122360244821678719178914449180003413268163934722721670735283337830711659121715782842950783342324405073062498786357237978244322823122414850435119713349178242359077524397695614393747566482192008268066572890128765877375728559749005298085809976273515597682770250064738085252276097982203870921685059960056048418207280453177774332353459765960121992490231518487195083654782572409145741968771629226867273741311985031941986833087493327665898082407385504930547870920421293885821513667143823485329669255233048437762760472104191198761765194874439126834117815880911337213466718701934130980676483105695718118354057931794622613370840112524385389216995849947995785401588148521771259042811021353568267702851398625652010773642285960145423922942276937488660293365217813588399708411809624513900077575319996726407673933230515652123270825362525201108974312078050645089913333906792610914743263856700849158356792655125842238189281783778938468302686807431609423396973651172749939493859912561250742034296334226029708797081057407241262392906379805458673074626371385460817442413752291457755939431569739350968907198688158096293526237210548653578126614423350081242177945652686127390189882237873706382818521787809620531237928777231767439149333970966616909441977562421569919583530139759631302600619379832794874709173469174349142732695255586804517378712263537393172488747137943058945544541565926711026128737305612614543355544760825554848408912331772054054779760080119090605217634510457827391191191399319518789407738093929758414312409241310208307120294856236191730841336955936736161248728527337462212118524767077351352842301910169621204396322686740093104065171320504735098546139351709188801776376465442253269595832744768504021418969535190243992419592902263082634504945902802760258563757556809351804131655650744187265180711937082595080468678731867898224898541918892074189261189587507444156962041527516127409777901450853725280840266270186052496066968182032550450373717771390501046689808960821374368645566251256978160164751545096362728584161603345058627905720306914562905644065369609435897617664928173083267618449918702479446599202806023357927936920522420089139716942025492272922121898540775589569413623494929976838526215643088234740318785577376040053580393873180672532521649295470036174456097297262268482118111191998071149194409821173158122142182527710347305484886995491457913661413395760370497741132546989834222856137074599544633297680270608840847740208101822730302891416530141558004413174454981808622792224913831307833528553561349483418925005649620568812151513889139984574948593501273915084078134713753394956946688691550920234726954214176039180750541249957149202974934490232704951392646308260302217915111902953871608873874350804717587398864941201671877668232651458147402424954513708803070289349269564827265917564584750788000190874140083196334859413165566082187211690687628032627975799948826815025804726825812721966079893253262871061027772753010249826750633420703964715673930474823981022481174097105331265523813551419006301119931759865181625631231118011365977645498097891341554161390153566763684167724431528139716763145063629667877631146172445841375627828239256385586783312528621952977045930741455326897023080830055888502819034665699808158662278956352596017497907408234530587101709286275119103020294372022552580762724958919780513966857171093469865250336415917048167783986802618840239556468805379123434231866829331610024508098675548793661713748878138899100066111109137009712832876859054383071389152346083940206658745306803331607871287290615722422917775811533446863289745483189819425152104597570249068947912259274323607316656055128227882046363358974436549016603014348353172984778694618257235968412464399794496037256443997337382451340827983613381523329190221317378874576415804322574040056750174362219815742622075812794986021035066935360084948536948131422606691758481947909248119914926303650238958573303491980411143396513676259790924184411291145684098238397180778881496302097959597723841221073472941243759073735926092634631510170767540731841084592452013190960684291207474058358188732120803813034251935145128840831268457718674654476095500163269739438281419554976593971975240309478761771343585254833914196037559619860590215558275085687123242632615961335350099756510873184724059182215061065179097384180587074609213256056527109000938089370009874470461038338364207155730279907779860109777337766795727312858777981243377578544329635871904255433455975317522190628504237798930026906035565228679698202132497294230456758958625593777350400109032979489660338724797710529380435075170294633018749527763678660002736445943021862619076337454635805711965958794505443812289937526706017400334301362589901828858923885515523902231176039774403243123009893508081723697568739904212950605937755882588536276047289398640230151675094822122156427888362770669702977538435894466632324109094622694172279266608024256279402347063892808627820923824802153463199751715973992085336713281145022471773051072511194332250445541292600111816098770856803026706344438742749717434155746269028980557716768397375608974119444026243138489023785070569943790047256757231357088668381593495686026938874693804646383099357345508916801408229185563901905810819599624299182434230733109117949669141763207402209234840101447214997735285753765053896004898235980669813975733267385284146078882817902567917262468053490476935411419432227869300009705444258862669125847356406581012210189487832445643266659488164303602512907138731232536029574233424371590654391436370722709230588212799123018547910593251250903969974337046483613839959445220828449640490179301013932446000941592834167796684628645188640432878511792965926453436661941522759535336041604637369137518505210620101066749046869608745627116792344090879337296498354636582688523306128199906316057835224476582528136327741500175973997319081533818157315601399405762403724267436916918478350060593982085489790060994058687871410797382649764093768602381764814335875366885302039575140829823064161467827014575239759063023850730957097089509187408626512576388636469912780739659691365014441014132073640466235665541234396521221511614073888963690607826784758407284614135764712566615514981187683890530472842985754789867274321617440173140642574832428595849959999520495847273632093189090204557901213706205603121826023070031438074179257928152261252033453129267007654332129164771861779711733773989110627197240348621357816013277624918542598727787765131633767074553404598758619089973349529246063288395527743005563231649831994754724521205712706410387231642354433083203918683585200181150969499207670020321438543495954146094456778394796683189934741216944885186210959254627048904953893397180177860530479284703115960870201755499335799225295260393380826783650273384963004855904804341053660090360126338016402609798062965866236065738241174133602361364142433801662051418352174931145290243271134470009571713790314015759694825663580312603836700394013655366482088677591655405842160321753739391268018321223467909978887082895793236395739993565535199980400152197034076967354946785778215556031010171946515198665177086377293920476520571247622630818322145335376258821483979247767550647768087462581760270693928506223891422472563741486254338900887742321668569581296216677910425701679234967774358542438264260047363145879092435273849706253608975225122752031267210212030165750244288892533329250555482193789366668114807824363808154851948918970107791385446329663102338183187146190964974154159670218692663694876804382424668427462601691582303406181392644721759478236270173801029608338452895977943171722614807376205075060881849712335353784389983308946032878666337858114352641058167223902378618399722438878736154290487890153700418376811706746292600842025860926689162780529460208308434990966803599297473693221005536801690488180917857526580091432838494613626603516463786313042614328424030170855459150112203725872501213685752954016403454553922258957485102219221069914444708761865959372618741294376046986222533730810260523878140411432275519988303552134000060268797903423624784832280360082648262267992355349903612598426393106515165656606372429661312047162311881619115563521689808626097895700505532681598338318005493993509070033386597915990719936680282395113523426948154061000119468507464904116105301295850803702384300367448895320333318407851499411061436959156583793876209790175768956908957353699853107326919988981110306540033527587482090173095033563226869755565515558274473880417435990331164496381586210195738560824657913319449754542907490668086155798962461782533517098369010238996699462208433062415436572490993276007346036922369074897692849959166893968677489745308150235551098241751205294601950550823886921824648478757127511508351515548302661808222705242897213590339309730579809060895298296712693312520448399999999969966404900877489109573286580121585948460033771229948394090793449596742709034793487223473886877343107354510973661828275580558591037596691757144573987266140865685300749452187541445703091638009" + }, + "beta": { + "rational": "4999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999997/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999994" + }, + "q": { + "rational": "8398774780627722606678354969603512884991557192512901477301637600814322741301628194131528280664223161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999999/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999998" + }, + "a": { + "rational": "33595099122510890426713419878414051539966228770051605909206550403257290965206512776526113122656892645489026338171724419441408962403308242855426012733859134314699250547812458554296908361991075126742249511176279535682811060773491157639131237596013785083424395349749673893513861139655778455146385111312133711328234504768993019986796541514305674285403154115246184520772235439113107550028293042730926217623714938351616050272810919357056216033619337122679571523258875846453649643059770658476239978777227994469565330244786674820513013869472228937400050540769567706867749502569879912603125637431737155848537271433309322580600592834012411747492201587946130943707244465692617890930238849241107246067320225374883117037475684547511508604769085333136772938895449101197079675000020720302687025833335407018396124096613377449083883407753973829629582403108583557068873830518390359178424800918135954539690402290695267071046939877256442881089364245856952859469714893006409446088259848857634942249000499278710975950704863937897581506551615891114140238970867741473836784398799172680436846430436923013988050005664462532970417316374819210207374783227701331944603237850092535669357864514055648379867371254718908100120617881601774195481605943250561257489450214673349319480942804025995998754883783521792818826255689832774268502346134298883099745566124224796014392224970478613914053807055217873038823154044450061011461252218546222531147803128486185358431382865823252994414967381950707526452129389114254365730110189888972024115197760980589608544319964569943149070363288500593610230844724650825781724584779219385233546696996758797659492071746806198759567093715018576793763772232625390412106794589593627378863634829036533801735824314151074025832668807057181885893821714231555522638159303229316013051317909311822014636347326058191168826566599066983520671580798693674478575798939870995869664642524170457135256764041304992003958565419126096862360338768692477662599067913303827710544166148369859044313089049472626551472214215432060566265441256328469845244646178882803819337243645803292139810935409631980287108246878543426872876657330026926865349404211275297346471209079545672195655772094064564123818427822329210614311868229689464938763943146419220291938625030820875825759150974907026763156757133720761174795141867381066383935598327705883598751812145455861636783931797728696837385908406571233174347288975498626335502410402517968529641749884627087726734438082517956592430786002311704892187045983514432273076950847037343945720534596535431573580721031779246573358679778536834261590061069882657819793642588072368844084044039765583917385031919424102525584863204158275475665922470162170365200315226640957460942282414595243062318518847631666280703550533386500472849281819041433791916991517475385078845251569642043518829171255841705630012184014131767596788294716744544033972300174596725776445836013898341005456320670075943753826352403885634579434653158908533833957745819582335170901220902161640893582958415043766517089570600160428776792115762404468623806099423512240418730464252070285175110956702420392270878945705102894587860201816071353892872239423766273083583104161034242175878351767566603643721295128536609213197860080929351341593324755111264070471876424911174403413756967958949382116683271033092147453529016665740580773290934376820237809318980731359074206254338113391137646986870387690021926064083761582120881434961756392856124835760274283106882015353792819803194109670262188175254267970082013245766903763886516159864264070398745741996415565487987254633478996607816488823935684990189271627120138790275195300790157186132202787038644018074452595762604943637098844651947947919953564312697588209661868536208754729425523690693995917344518389745004003190371918264092487213152282026836544906062205565874639320846144121369003753468647113237726356914465626715595463376441425725260022282913645475185169898935356466331474035834114540470310260747645749775643816240027344385887946283125013200965038486028813527556983988918274622046459310400155567217209653685589900450263747126107474403072760596134218903292418493738628793621115267912347035862492936726199818889558814291628363928362037438411073339093379424408507060366082663473100249762827313699713235948033695022135072670565901463335868834795176470765024477965274907822152778495121446401149685667270754847952967434253203982345100401015359672225007942854791340655816295667175833960942805106319383529246614888662242865872008951555849044641127624166877212270670596567409897499965707083183050638422511009407664159561723449626533837040896276636416299708566889219794499062846986751131635925706998333880461567177350292172986681635168070028136050535083671146207500179383204246619232457533598884634043910945453365467625378622364122436040551383401924385315476730347016221255439067101350616725415902594605582507798212927561550178389302439717990454201357231463392421709188075865862681768346138322127945221472275001536116506603378214938146399147672741754566420922726929863328603151667788576668367545660603456480182784891489104516961030705424449070448826346739125617856496796016426507405554970798792976947847625582029815600932685051975462433651286337387321453531234375825251462432515270242865593495745530165297284362845154915592737330505899697366528142351415325601775445694049836953880423177275866403642545713850307250305954075733191812878085342795421952277233591346947266403732039950988098662639060407724168595269310866421091077435357061262861230543490716188789587494589779680362013344303568887277356601277635731993463535687434941076786067560837082508661571590686559792497251875002068133988561121804749476908531303696279562374007877080263518378118734818900833549466218068793188661505676263377192779352168754158600453359963193650865127684974901532945992269561121214847390406600332661618456556499338668368390150679008021984466765638660122688916963795556527321985083025442207768370319220543786855127743733303906047123506170210179221342845459927009420889328322792440423195186798622542032499265042576429038392745917759976809188306618669610605450013794871635455164044428957747547941073290275833170720067521874925150732828189748078945607005672699264490074202883732129828959563534057909614210347113295650208109873996763604004566163661191388717276589246871754894181114889051238177589910164508863079471580561703882232203750191407836513920275090562394009500432624375031520908933839384416863750995361447085583859659027789193456502180433184422822753085390693222128792937973368716656933877050118518981805197738265876972018804420583825168601102971427908385339188409031091181254744275458080695450490270307676365332215209373930606372245593562194738151058964643980944794108187404818705809710717933988184100521626409326232851578338600503037802752019538018006155282463106865472086254096829298610161435269610444478203309721789895247104187374584968311872455350595948155156608747109477994413374647953288981663749101426573608857294571084666857987601576551515215454686482347249134130324453196915068788961548458047443478079375439703978058062780759460152537084877067895224666406511621695397541376351541518943266733427612070301576128406247685882974223515671087084935474968949763109535147862440259587822294966008759985468852535195015627171706896561473275317221831455260502729349715309389857677973068345364470430362886715089724524395079088396831062590648588052594042594875899575674229822909823605471274578721109435831565306405372499941291119574787644465388660081372020382981491108691583775611513592271992114905495775877931487258549235341000929109910866028963375237190110746357263693762595751741013455031641787786810251989427377449068846532835436910927541165654037901069352180631708574132968496752620292408691390236188411665450096991235422837564044030132359948118309769452714038415002513424142679984159273862726894065983414887626376048477630058908600890307405646344960034267069461181511698964839845819788683036012496606344491385540977659106923207639936912575077060078034719626097338602051796650539918933205147542585807479992617300326973703266849138560780698024149757010293689024558849410762013482091447348619732610683092484966051825148999335255017185695699244558903368084612197233122782402546714682317085315511328382799770686165731918478187098550509528774475688783449612802915832112154911075302020833280972396914362435475093138730150039015723485518567490587262194605616904541676736518603786854640542146564376926344862963857695498738975039287695892113877240161020357040196853240648442095309042132519843091396155483932121334148918898092300821795711829807060362744641519436748242127263248137806482430846567226840046206169781056793296289999412102972576542271781787416582560968342226656326119459316442090056905979948724634909290906760471172910073727857339174766545757243945060736966109156064850160213878970849731878745593016933975461262719044946699879850114721274491282319464507226792605018039968924720040975823010568890940294869056652789844367917460664271132949342274685901641157660816577735960128632491774169639381018614513376942850799278800813604944088896125021759364667122513186866752798159930547007237296380842008903125758364308110478774416010729425859477522486247491236027765260810854057490193169531036842000857390350251547401919231761236469456648998882167553922547681465667204321817426253120436041216336693386637927630964449319164228440600028011823515638332168077161671969215974667049293499215123874360644671351100574416090611309276341808236190707351106199837203815200317869831665194444417476085783207360199285356924882802781297710971752827534484965072955569381579041129207946589101893635849768909237733665243674216859162779249216863163064572934683800853686144132917411519225582252659414588821239676725339393021817618455508667182771655734927425803252419101328715460437062394518184385998402238396934562627635301871982140361800682089407405679136503313424765545948482887236768604957329136282739113063920300549677073700115857019919637494491266484469195523796223760633172784261569290223045427696635798556818478511480904008540511096208621995668537809224984055455222977705538106323794901262764950672261821417538243775444229523164424424998215928534703162256077891778083646430041064815595998628354851971133614758403460754562656515483777860166805519596258458142707082461361100003144788783202324222230282510523917967087409971460705156423871945854249120615522801580511021823123680687393593883426160083944818274581333424068075278834365301688609033590975481199657540983164074756635337673860038137343649198647036434334514761306880068399477876731141885911760979780607360649952412422937457804000718808368387703012732127930355432486569580240021137674919751378315174152378560480650097542996634645791460395204697126949182481404587941366763661961937974666474672504994949697164343404362977894458486275117791772540479348543966530808098673017977837317250432885481021032139636966996044546017460693554873768521545176301420070171448811161044082194922531328318324267186551463178579275915424172283643774019706292838611221750106464780454730971337900593501740384372648559440672915000875576106851212377426360648110966599414065356560340055461028812758050974221462244746958544353791025321722484854199588570929989884911886718983414750668137694815855116166139796226432897876696113222756061585571270168929231693324722154224706034284195380892636723571014649946271097406864562426993027168993072146512435984945335205858761085585101171949859179652931591070390745024514920955794896680519979602670999131556558714498754797508470819523678447957439614251066449573301646378608387344680162597757349784137734544560146527749671833582608907271929287600642681439841062657558159280777013667686129881399484536378817214543131941965802042857003838976665249423994701107260111291178615461652066449191860997549717742722772982965459327357263931692457500964463476419737154431917589439531439721589835029676624550825136432948743397148261100376830818280723905298687759427588718507634925883643083977865116223677927714538791232914238745023995908302250694270273054842280769007146135508284585015364089362658320305583519405318913084373247182056824848586096923020638019517227353818707581525445506343877938711235432811570960212918056822404225349425434302293943255136357270646774929582322392358771422796319762448118229185816618436107753196806418205483101615284721962314303249755832320961272746211549279620592278706170241631201418956255177156883317386249883368665898251948722962737095287803624339376329047531041592397342106441905758258071876708299741440574051024327696664312487620261516600967399424629046360238275828594237444615917896746391924928527931796869876827886410631764715659605436424177097541528235734827665028349519967634887551415344172324472474703534906410919425284028854856910680883974058860776395331466533104605487013934856498044133987206955988677175075276009353036881345725796492682997477028239858779182797750929058489396639955832720887096949132973776203109635080128065461803315568546705376088393897759623009922999451423509451696437261638305621336238107237740302067652677535602890973041853280297760418396876631027779865667516034506080090412982605965762086348919707706582584486617378852082376980207984061762769040727054625738416762092239871879693519539645802007278646494698425355851206432615324102546528657226253160767285196700419252905594528139149791530501623562367788906492703097097118866641939518072263254935158167711819064296041957319373792249905457873051417492557259282603515944028849127982407793696792106046671995539749186315149673792448621082408774888830667248678776395375741736870507486032665058448217586490080465753334047381872511885567998308850170712228734873546292872055388494997822246375049085038408396161846641828267937152200368762130951511338556348909901014248688890700952105425318035841217662810456199762616100266401563430332248997870336450238306761020650756923490878053910066871493420820884800077328917557357999052970003547517877011811231361830623662703952684311272822443797617699724870190212083585131254490117000140788796708465175460929049367196108863527828298892855770961614181525113481476508009239100199461413135454249382238019501689594210566706199204618329796752276295101840728878767455997645905778757101480003971535641371779432145573817483844892012132553048334998540313977223448298229896531532727997782533988172189942178138861145841523755425443799679657231325003098650680994976468768841334336764160093418710343444212164284682416329854576407986981633377985816135588168539086136919899271916797037156471438241646708046451213898066845865231231342607689938840194319656408122665744675255199996710139296970571312951706657171641236896900726604770794098169391651611594428433026690510169731277574499921258636528443212872722793335283180833814477587961956592481485757461736335728416914490103310632265774142454849243557466038943962392154724117051510697873142443438588936603364309796539685492735307980707018732539718960936472882140736295446304400932418798190235760239603215101677175695923619571921664321954867516517084278950039330700513254143499181756539275731284786481482000941878812747634786575417069512353710582573303243476024718876032484218223139153791187308065655170865631658615998990585351303973451313802634634027294324365003000409866138159655587601170699354463318195446946239526440680612573514183210460608617396625818674699614706522896902440075493736276337921196795811603182081766579780336899248848885690482974685500987743854527281805321054919414584699113520019163872721868514019268698152936851844595668974368356919967588117238836392401993879398449792257850101030530015263138040703782103330010884730231626339506722547999386925050993450417471789028785356672337493511390305835522401073318103354171843827733853909318654520238428433079163027417596019750948745748554610867478777650878816070250155473728625452299671789590416980748583097649942092767069579142793954419732322676633375818305111893085272361344237784715495042525328026221154304428933418488386852362291711009151627986247882793447002611404763075512935729928328975868032112597429118910155307061447998610187780805857754215178263134268584401357342894243656968160312471707414209882907671777028747711106838091474142694152018690481005943616277140530085709380454616070322537469643997773487385473430517810940957578153538659267590460914982990023036153921538331872407439920602034903675143329734820087164457912848795389709261079527518664821925215942116619496549327793977571923709615671972500474136826548441622411639855045560913884484895656941828695243518536675656702929333086185890304120806645121212663315814120911194724963962080508540252264473517447255987352841567680348552632043250921375714409236726869914371300521526256422640729813675062885263794773178215531768091972021470252674866913957599701189660433260094261871581169047941990377963416970771894727010765411828095846381639683766466066081931598996588813184768978963912534999877744424519533364646983963011245371459469348469717784169398672919636438068114046305999242772933163769107571219832448629189800884215018879406313158884272960794944035669637573296761101686748441138787688104734489823786488360057058711036981211378436483132191627495199185664572883312846027677240144626504226912515324271306501225924626441696429724420544066789714249695007540673199174019729308583996205195900264310897900780773246328996897727628861853292535146530436698512918755147381306287723018232343242864390622047635022355709666978563374572563843870847195929285395423777221902408787715684233967987238790723825432070154799404608454654892880444002172617440940164055717176084885541485660271918130563167361081439271763983591241876625733991039012345796245953003070367340121682921483438320837236754367673668718041282346517790471018943833597090256488920264208584021387077749239728942901639206278203255600797636187358289879984448754196276645728311713169630680783406493872047465641713568313463617965273753294186124395419558054472490740755860740611110368871077726373866654778503618234189567683814271612716550190494792796819137857420430163947242908586506299131337406504361569572341774768777282532794754035710522460656911995821344438667098522589294600063628257836867770038588060670733100722277434593171114279167154745831836089067672585569999229729516220156727393669424342735563733887248954518497618542397521063141532661042311568144270163173514357300384060193618425748404536623335348378920683105546189143799745963314842747775998928996037248375261167526531916945246704141962545004677397606156252735207545652263266085441056091056766623002040508096125473228563439612850721324545877551675988352456440249613467890987878147937126871940222724023043743929201567312115034396555948088481952318438068477267645498382021845078205738846076497111003142636133655724260182974069623385102999415614178669693286138834203425136757706553739707962720273916938432610440637880835223692407641495951921361656018695110490951117750112728646816006411644119759399167931125222146564655039819921822212801379467664206019330056193730089081543946328446764188057027974482322375294805856447050159380943136102753425081668861171748621643975378000200600612264615458058614218368969188481974512203680567057335701660831642376867916784155893209961587347715360490037018717549459996148445072965427199943564615727394663234852157307776377753421797738353302557963342688052918368440414598187024490109360037489216343249813736858196426781663142018634846547715540893847204954501235021186889555765904138694269905618164776198645409378469926007711424247358295616679959256563636884642948708406675406386440156519570332343919608953690405300114666546355904711573692686644519623106125761620109980302275043671776824011948110180107290811740106011606531479085981227701744504680143441538033954862488760034516829411503847324295607968962277360762013840699769946373169658482720067922285742457352683224294951928873155908681479441926505320848125717689172539758359931572637098166146029321023916299144070725465931705485854527956591860998181834026496333807197777885069500867430439183401947353443409667350673346554736373508563784372040945094649644944026093777423491475705717152403764836402010531645522081794091023614002645238507162012112129098180578675302759440880536020518011784724409373726178678011505304187193506305536911532010668813633257577568427460112993484709728275976306540289779466708260766854681384157191800689353446234174291807982855458825685632452340360787062976296787803938901522360324451222081050998478171196149049695228768738638765763724491124678453580359079237051534597942602682332930402609922641675630263163211594131623420011540015456056379846939061389620135817889735655702855153326122876680617984475434287895090205919495286796225833047678283370388881512079987122054384267780081236604123185255258042745072392179459076550633639938171152213826820533559167476445473656094569380032878935284804820423737180968347504427534314285507173760405484771629149374170942857109298788044200437048349847409884151975709705187910032451633825175900004253668357252863001103538198819733648521703838374754856896332204276254068879118792308782865381971635461531694935735219289497998288759631542233565355488480282312667682292988022146858173926957157791187002287874927966033902683395376053273287430768981696580554129933406126300737447406128281997551162778600948475148086926073401669760319409734672679185017242604237340397520807150248415144928137320851681354033726732154648393060418954019375845766339562489259422154504631317290824472048964335743835782889836000682653632786944544334147056667566142331824343156568590156668464881014612499757271447595648864564624482970087023942669835648471815504879539122878749513296438401653613314578025753175475145711949801059617161995254703119536554050012947617050455219596440774184337011992011209683641456090635554866470691953192024398498046303697439016730956514481829148393754325845373454748262397006388397366617498665533179616481477100986109574184084258777164302733428764697065933851046609687552552094420838239752353038974887825366823563176182267442693343740386826196135296621139143623670811586358924522674168022504877077843399169989599157080317629704354251808562204270713653540570279725130402154728457192029084784588455387497732058673043562717679941682361924902780015515063999345281534786646103130424654165072505040221794862415610129017982666781358522182948652771340169831671358531025168447637856356755787693660537361486321884679394730234549987898771982512250148406859266845205941759416211481448252478581275961091734614925274277092163488482750458291551187886313947870193781439737631619258705247442109730715625322884670016248435589130537225478037976447574741276563704357561924106247585755446353487829866794193323381888395512484313983916706027951926260520123875966558974941834693834869828546539051117360903475742452707478634497749427588611789108908313185342205225747461122522908671108952165110969681782466354410810955952016023818121043526902091565478238238279863903757881547618785951682862481848262041661424058971247238346168267391187347232249745705467492442423704953415470270568460382033924240879264537348018620813034264100947019709227870341837760355275293088450653919166548953700804283793907038048798483918580452616526900989180560552051712751511361870360826331130148837453036142387416519016093735746373579644979708383778414837852237917501488831392408305503225481955580290170745056168053254037210499213393636406510090074743554278100209337961792164274873729113250251395632032950309019272545716832320669011725581144061382912581128813073921887179523532985634616653523689983740495889319840561204671585587384104484017827943388405098454584424379708155117913882724698985995367705243128617646948063757115475208010716078774636134506504329859094007234891219459452453696423622238399614229838881964234631624428436505542069461096977399098291582732282679152074099548226509397966844571227414919908926659536054121768169548041620364546060578283306028311600882634890996361724558444982766261566705710712269896683785001129924113762430302777827996914989718700254783016815626942750678991389337738310184046945390842835207836150108249991429840594986898046540990278529261652060443583022380590774321774774870160943517479772988240334375533646530291629480484990902741760614057869853912965453183512916950157600038174828016639266971882633113216437442338137525606525595159989765363005160945365162544393215978650652574212205554550602049965350126684140792943134786094964796204496234819421066253104762710283801260223986351973036325126246223602273195529099619578268310832278030713352736833544886305627943352629012725933575526229234489168275125565647851277117356662505724390595409186148291065379404616166011177700563806933139961631732455791270519203499581481646906117420341857255023820604058874404510516152544991783956102793371434218693973050067283183409633556797360523768047911293761075824686846373365866322004901619735109758732342749775627779820013222221827401942566575371810876614277830469216788041331749061360666321574257458123144484583555162306689372657949096637963885030420919514049813789582451854864721463331211025645576409272671794887309803320602869670634596955738923651447193682492879958899207451288799467476490268165596722676304665838044263475774915283160864514808011350034872443963148524415162558997204207013387072016989707389626284521338351696389581849623982985260730047791714660698396082228679302735251958184836882258229136819647679436155776299260419591919544768244214694588248751814747185218526926302034153508146368216918490402638192136858241494811671637746424160762606850387029025768166253691543734930895219100032653947887656283910995318794395048061895752354268717050966782839207511923972118043111655017137424648526523192267070019951302174636944811836443012213035819476836117414921842651211305421800187617874001974894092207667672841431146055981555972021955467553359145462571755596248675515708865927174380851086691195063504438125700847559786005381207113045735939640426499458846091351791725118755470080021806595897932067744959542105876087015034058926603749905552735732000547289188604372523815267490927161142393191758901088762457987505341203480066860272517980365771784777103104780446235207954880648624601978701616344739513747980842590121187551176517707255209457879728046030335018964424431285577672554133940595507687178893326464821818924538834455853321604851255880469412778561725564184764960430692639950343194798417067342656229004494354610214502238866450089108258520022363219754171360605341268887748549943486831149253805796111543353679475121794823888805248627697804757014113988758009451351446271417733676318699137205387774938760929276619871469101783360281645837112780381162163919924859836486846146621823589933828352641480441846968020289442999547057150753010779200979647196133962795146653477056829215776563580513583452493610698095387082283886445573860001941088851772533825169471281316202442037897566489128653331897632860720502581427746246507205914846684874318130878287274144541846117642559824603709582118650250180793994867409296722767991889044165689928098035860202786489200188318566833559336925729037728086575702358593185290687332388304551907067208320927473827503701042124020213349809373921749125423358468818175867459299670927316537704661225639981263211567044895316505627265548300035194799463816306763631463120279881152480744853487383383695670012118796417097958012198811737574282159476529952818753720476352962867175073377060407915028165964612832293565402915047951812604770146191419417901837481725302515277727293982556147931938273002888202826414728093247133108246879304244302322814777792738121565356951681456922827152942513323102996237536778106094568597150957973454864323488034628128514966485719169991999904099169454726418637818040911580242741241120624365204614006287614835851585630452250406690625853401530866425832954372355942346754797822125439448069724271563202655524983708519745557553026326753414910680919751723817994669905849212657679105548601112646329966398950944904241142541282077446328470886616640783736717040036230193899841534004064287708699190829218891355678959336637986948243388977037242191850925409780990778679436035572106095856940623192174040351099867159845059052078676165356730054676992600971180960868210732018072025267603280521959612593173247213147648234826720472272828486760332410283670434986229058048654226894001914342758062803151938965132716062520767340078802731073296417735518331081168432064350747878253603664244693581995777416579158647279147998713107039996080030439406815393470989357155643111206202034389303039733035417275458784095304114249524526163664429067075251764296795849553510129553617492516352054138785701244778284494512748297250867780177548464333713916259243335582085140335846993554871708487652852009472629175818487054769941250721795045024550406253442042406033150048857778506665850111096438757873333622961564872761630970389783794021558277089265932620467636637429238192994830831934043738532738975360876484933685492520338316460681236278528944351895647254034760205921667690579195588634344522961475241015012176369942467070756877996661789206575733267571622870528211633444780475723679944487775747230858097578030740083675362341349258520168405172185337832556105892041661686998193360719859494738644201107360338097636183571505316018286567698922725320703292757262608522865684806034171091830022440745174500242737150590803280690910784451791497020443844213982888941752373191874523748258875209397244506746162052104775628082286455103997660710426800012053759580684724956966456072016529652453598471069980722519685278621303033131321274485932262409432462376323823112704337961725219579140101106536319667663601098798701814006677319583198143987336056479022704685389630812200023893701492980823221060259170160740476860073489779064066663681570299882212287391831316758775241958035153791381791470739970621465383997796222061308006705517496418034619006712645373951113103111654894776083487198066232899276317242039147712164931582663889950908581498133617231159792492356506703419673802047799339892441686612483087314498198655201469207384473814979538569991833378793735497949061630047110219648350241058920390110164777384364929695751425502301670303109660532361644541048579442718067861946115961812179059659342538662504089679999999997/20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.00167975495612554452133567099392070257699831143850258029546032752016286454826032563882630565613284463227445131690858622097207044812016541214277130063669295671573496252739062292771484541809955375633711247555881397678414055303867455788195656187980068925417121976748748369467569305698278892275731925556560668556641172523844965099933982707571528371427015770576230922603861177195565537750141465213654631088118574691758080251364054596785281080168096685613397857616294379232268248215298853292381199893886139972347826651223933374102565069347361144687000252703847838534338747512849399563015628187158685779242686357166546612903002964170062058737461007939730654718536222328463089454651194246205536230336601126874415585187378422737557543023845426665683864694477245505985398375000103601513435129166677035091980620483066887245419417038769869148147912015542917785344369152591951795892124004590679772698452011453476335355234699386282214405446821229284764297348574465032047230441299244288174711245002496393554879753524319689487907532758079455570701194854338707369183921993995863402184232152184615069940250028322312664852086581874096051036873916138506659723016189250462678346789322570278241899336856273594540500603089408008870977408029716252806287447251073366746597404714020129979993774418917608964094131278449163871342511730671494415498727830621123980071961124852393069570269035276089365194115770222250305057306261092731112655739015642430926792156914329116264972074836909753537632260646945571271828650550949444860120575988804902948042721599822849715745351816442502968051154223623254128908622923896096926167733484983793988297460358734030993797835468575092883968818861163126952060533972947968136894318174145182669008679121570755370129163344035285909429469108571157777613190796516146580065256589546559110073181736630290955844132832995334917603357903993468372392878994699354979348323212620852285676283820206524960019792827095630484311801693843462388312995339566519138552720830741849295221565445247363132757361071077160302831327206281642349226223230894414019096686218229016460699054677048159901435541234392717134364383286650134634326747021056376486732356045397728360978278860470322820619092139111646053071559341148447324693819715732096101459693125154104379128795754874535133815783785668603805873975709336905331919677991638529417993759060727279308183919658988643484186929542032856165871736444877493131677512052012589842648208749423135438633672190412589782962153930011558524460935229917572161365384754235186719728602672982677157867903605158896232866793398892684171307950305349413289098968212940361844220420220198827919586925159597120512627924316020791377378329612350810851826001576133204787304711412072976215311592594238158331403517752666932502364246409095207168959584957587376925394226257848210217594145856279208528150060920070658837983941473583722720169861500872983628882229180069491705027281603350379718769131762019428172897173265794542669169788729097911675854506104510808204467914792075218832585447853000802143883960578812022343119030497117561202093652321260351425875554783512101961354394728525514472939301009080356769464361197118831365417915520805171210879391758837833018218606475642683046065989300404646756707966623775556320352359382124555872017068784839794746910583416355165460737267645083328702903866454671884101189046594903656795371031271690566955688234934351938450109630320418807910604407174808781964280624178801371415534410076768964099015970548351310940876271339850410066228834518819432580799321320351993728709982077827439936273167394983039082444119678424950946358135600693951375976503950785930661013935193220090372262978813024718185494223259739739599767821563487941048309342681043773647127618453469979586722591948725020015951859591320462436065761410134182724530311027829373196604230720606845018767343235566188631784572328133577977316882207128626300111414568227375925849494676782331657370179170572702351551303738228748878219081200136721929439731415625066004825192430144067637784919944591373110232296552000777836086048268427949502251318735630537372015363802980671094516462092468693143968105576339561735179312464683630999094447794071458141819641810187192055366695466897122042535301830413317365501248814136568498566179740168475110675363352829507316679344173975882353825122389826374539110763892475607232005748428336353774239764837171266019911725502005076798361125039714273956703279081478335879169804714025531596917646233074443311214329360044757779245223205638120834386061353352982837049487499828535415915253192112555047038320797808617248132669185204481383182081498542834446098972495314234933755658179628534991669402307835886751460864933408175840350140680252675418355731037500896916021233096162287667994423170219554727266827338126893111820612180202756917009621926577383651735081106277195335506753083627079512973027912538991064637807750891946512198589952271006786157316962108545940379329313408841730691610639726107361375007680582533016891074690731995738363708772832104613634649316643015758338942883341837728303017282400913924457445522584805153527122245352244131733695628089282483980082132537027774853993964884739238127910149078004663425259877312168256431686936607267656171879126257312162576351214327967478727650826486421814225774577963686652529498486832640711757076628008877228470249184769402115886379332018212728569251536251529770378665959064390426713977109761386167956734736332018660199754940493313195302038620842976346554332105455387176785306314306152717453580943947937472948898401810066721517844436386783006388178659967317678437174705383930337804185412543307857953432798962486259375010340669942805609023747384542656518481397811870039385401317591890593674094504167747331090343965943307528381316885963896760843770793002266799815968254325638424874507664729961347805606074236952033001663308092282782496693341841950753395040109922333828193300613444584818977782636609925415127211038841851596102718934275638718666519530235617530851050896106714227299635047104446641613962202115975933993112710162496325212882145191963729588799884045941533093348053027250068974358177275820222144788737739705366451379165853600337609374625753664140948740394728035028363496322450371014418660649144797817670289548071051735566478251040549369983818020022830818305956943586382946234358774470905574445256190887949550822544315397357902808519411161018750957039182569601375452811970047502163121875157604544669196922084318754976807235427919298295138945967282510902165922114113765426953466110643964689866843583284669385250592594909025988691329384860094022102919125843005514857139541926695942045155455906273721377290403477252451351538381826661076046869653031861227967810973690755294823219904723970540937024093529048553589669940920502608132046631164257891693002515189013760097690090030776412315534327360431270484146493050807176348052222391016548608949476235520936872924841559362276752979740775783043735547389972066873239766444908318745507132868044286472855423334289938007882757576077273432411736245670651622265984575343944807742290237217390396877198519890290313903797300762685424385339476123332032558108476987706881757707594716333667138060351507880642031238429414871117578355435424677374844748815547675739312201297939111474830043799927344262675975078135858534482807366376586109157276302513646748576546949288389865341726822352151814433575448622621975395441984155312953242940262970212974379497878371149114549118027356372893605547179157826532026862499706455597873938222326943300406860101914907455543457918878057567961359960574527478879389657436292746176705004645549554330144816876185950553731786318468812978758705067275158208938934051259947136887245344232664177184554637705828270189505346760903158542870664842483763101462043456951180942058327250484956177114187820220150661799740591548847263570192075012567120713399920796369313634470329917074438131880242388150294543004451537028231724800171335347305907558494824199229098943415180062483031722456927704888295534616038199684562875385300390173598130486693010258983252699594666025737712929037399963086501634868516334245692803903490120748785051468445122794247053810067410457236743098663053415462424830259125744996676275085928478496222794516840423060986165613912012733573411585426577556641913998853430828659592390935492752547643872378443917248064014579160560774555376510104166404861984571812177375465693650750195078617427592837452936310973028084522708383682593018934273202710732821884631724314819288477493694875196438479460569386200805101785200984266203242210476545210662599215456980777419660606670744594490461504108978559149035301813723207597183741210636316240689032412154232836134200231030848905283966481449997060514862882711358908937082912804841711133281630597296582210450284529899743623174546454533802355864550368639286695873832728786219725303684830545780324250801069394854248659393727965084669877306313595224733499399250573606372456411597322536133963025090199844623600204879115052844454701474345283263949221839587303321355664746711373429508205788304082888679800643162458870848196905093072566884714253996394004068024720444480625108796823335612565934333763990799652735036186481904210044515628791821540552393872080053647129297387612431237456180138826304054270287450965847655184210004286951751257737009596158806182347283244994410837769612738407328336021609087131265602180206081683466933189638154822246595821142203000140059117578191660840385808359846079873335246467496075619371803223356755502872080453056546381709041180953536755530999186019076001589349158325972222087380428916036800996426784624414013906488554858764137672424825364777846907895205646039732945509468179248844546188668326218371084295813896246084315815322864673419004268430720664587057596127911263297072944106198383626696965109088092277543335913858278674637129016262095506643577302185311972590921929992011191984672813138176509359910701809003410447037028395682516567123827729742414436183843024786645681413695565319601502748385368500579285099598187472456332422345977618981118803165863921307846451115227138483178992784092392557404520042702555481043109978342689046124920277276114888527690531618974506313824753361309107087691218877221147615822122124991079642673515811280389458890418232150205324077979993141774259855668073792017303772813282577418889300834027597981292290713535412306805500015723943916011621111151412552619589835437049857303525782119359729271245603077614007902555109115618403436967969417130800419724091372906667120340376394171826508443045167954877405998287704915820373783176688369300190686718245993235182171672573806534400341997389383655709429558804898903036803249762062114687289020003594041841938515063660639651777162432847901200105688374598756891575870761892802403250487714983173228957301976023485634745912407022939706833818309809689873332373362524974748485821717021814889472292431375588958862702396742719832654040493365089889186586252164427405105160698184834980222730087303467774368842607725881507100350857244055805220410974612656641591621335932757315892896379577120861418218870098531464193056108750532323902273654856689502967508701921863242797203364575004377880534256061887131803240554832997070326782801700277305144063790254871107311223734792721768955126608612424270997942854649949424559433594917073753340688474079275580830698981132164489383480566113780307927856350844646158466623610771123530171420976904463183617855073249731355487034322812134965135844965360732562179924726676029293805427925505859749295898264657955351953725122574604778974483402599898013354995657782793572493773987542354097618392239787198071255332247866508231893041936723400812988786748920688672722800732638748359167913044536359646438003213407199205313287790796403885068338430649406997422681894086072715659709829010214285019194883326247119973505536300556455893077308260332245959304987748588713613864914827296636786319658462287504822317382098685772159587947197657198607949175148383122754125682164743716985741305501884154091403619526493438797137943592538174629418215419889325581118389638572693956164571193725119979541511253471351365274211403845035730677541422925076820446813291601527917597026594565421866235910284124242930484615103190097586136769093537907627227531719389693556177164057854801064590284112021126747127171511469716275681786353233874647911611961793857113981598812240591145929083092180538765984032091027415508076423609811571516248779161604806363731057746398102961393530851208156007094781275885784416586931249416843329491259743614813685476439018121696881645237655207961986710532209528791290359383541498707202870255121638483321562438101307583004836997123145231801191379142971187223079589483731959624642639658984349384139432053158823578298027182120885487707641178674138325141747599838174437757076720861622362373517674532054597126420144274284553404419870294303881976657332665523027435069674282490220669936034779943385875376380046765184406728628982463414987385141199293895913988754645292446983199779163604435484745664868881015548175400640327309016577842733526880441969488798115049614997257117547258482186308191528106681190536188701510338263387678014454865209266401488802091984383155138899328337580172530400452064913029828810431744598538532912922433086894260411884901039920308813845203635273128692083810461199359398467597698229010036393232473492126779256032163076620512732643286131265803836425983502096264527972640695748957652508117811838944532463515485485594333209697590361316274675790838559095321480209786596868961249527289365257087462786296413017579720144245639912038968483960530233359977698745931575748368962243105412043874444153336243393881976878708684352537430163325292241087932450402328766670236909362559427839991544250853561143674367731464360276942474989111231875245425192041980809233209141339685761001843810654757556692781744549505071243444453504760527126590179206088314052280998813080501332007817151661244989351682251191533805103253784617454390269550334357467104104424000386644587786789995264850017737589385059056156809153118313519763421556364112218988088498624350951060417925656272450585000703943983542325877304645246835980544317639141494464278854808070907625567407382540046195500997307065677271246911190097508447971052833530996023091648983761381475509203644393837279988229528893785507400019857678206858897160727869087419224460060662765241674992701569886117241491149482657663639988912669940860949710890694305729207618777127218998398286156625015493253404974882343844206671683820800467093551717221060821423412081649272882039934908166889929080677940842695430684599496359583985185782357191208233540232256069490334229326156156713038449694200971598282040613328723376275999983550696484852856564758533285858206184484503633023853970490846958258057972142165133452550848656387872499606293182642216064363613966676415904169072387939809782962407428787308681678642084572450516553161328870712274246217787330194719811960773620585257553489365712217192944683016821548982698427463676539903535093662698594804682364410703681477231522004662093990951178801198016075508385878479618097859608321609774337582585421394750196653502566270717495908782696378656423932407410004709394063738173932877085347561768552912866516217380123594380162421091115695768955936540328275854328158293079994952926756519867256569013173170136471621825015002049330690798277938005853496772316590977234731197632203403062867570916052303043086983129093373498073532614484512200377468681381689605983979058015910408832898901684496244244428452414873427504938719272636409026605274597072923495567600095819363609342570096343490764684259222978344871841784599837940586194181962009969396992248961289250505152650076315690203518910516650054423651158131697533612739996934625254967252087358945143926783361687467556951529177612005366590516770859219138669269546593272601192142165395815137087980098754743728742773054337393888254394080351250777368643127261498358947952084903742915488249710463835347895713969772098661613383166879091525559465426361806721188923577475212626640131105771522144667092441934261811458555045758139931239413967235013057023815377564678649641644879340160562987145594550776535307239993050938904029288771075891315671342922006786714471218284840801562358537071049414538358885143738555534190457370713470760093452405029718081385702650428546902273080351612687348219988867436927367152589054704787890767693296337952304574914950115180769607691659362037199603010174518375716648674100435822289564243976948546305397637593324109626079710583097482746638969887859618548078359862502370684132742208112058199275227804569422424478284709143476217592683378283514646665430929451520604033225606063316579070604555973624819810402542701261322367587236279936764207838401742763160216254606878572046183634349571856502607631282113203649068375314426318973865891077658840459860107351263374334569787998505948302166300471309357905845239709951889817084853859473635053827059140479231908198418832330330409657994982944065923844894819562674999388722122597666823234919815056226857297346742348588920846993364598182190340570231529996213864665818845537856099162243145949004421075094397031565794421364803974720178348187866483805508433742205693938440523672449118932441800285293555184906056892182415660958137475995928322864416564230138386200723132521134562576621356532506129623132208482148622102720333948571248475037703365995870098646542919981025979501321554489503903866231644984488638144309266462675732652183492564593775736906531438615091161716214321953110238175111778548334892816872862819219354235979646426977118886109512043938578421169839936193953619127160350773997023042273274464402220010863087204700820278585880424427707428301359590652815836805407196358819917956209383128669955195061728981229765015351836700608414607417191604186183771838368343590206411732588952355094719167985451282444601321042920106935388746198644714508196031391016278003988180936791449399922243770981383228641558565848153403917032469360237328208567841567318089826368766470930621977097790272362453703779303703055551844355388631869333273892518091170947838419071358063582750952473963984095689287102150819736214542932531495656687032521807847861708873843886412663973770178552612303284559979106722193335492612946473000318141289184338850192940303353665503611387172965855571395835773729159180445338362927849996148647581100783636968347121713677818669436244772592488092711987605315707663305211557840721350815867571786501920300968092128742022683116676741894603415527730945718998729816574213738879994644980186241876305837632659584726233520709812725023386988030781263676037728261316330427205280455283833115010202540480627366142817198064253606622729387758379941762282201248067339454939390739685634359701113620115218719646007836560575171982779740442409761592190342386338227491910109225391028694230382485555015713180668278621300914870348116925514997078070893348466430694171017125683788532768698539813601369584692163052203189404176118462038207479759606808280093475552454755588750563643234080032058220598796995839655626110732823275199099609111064006897338321030096650280968650445407719731642233820940285139872411611876474029282235250796904715680513767125408344305858743108219876890001003003061323077290293071091844845942409872561018402835286678508304158211884339583920779466049807936738576802450185093587747299980742225364827135999717823078636973316174260786538881888767108988691766512789816713440264591842202072990935122450546800187446081716249068684290982133908315710093174232738577704469236024772506175105934447778829520693471349528090823880993227046892349630038557121236791478083399796282818184423214743542033377031932200782597851661719598044768452026500573332731779523557868463433222598115530628808100549901511375218358884120059740550900536454058700530058032657395429906138508722523400717207690169774312443800172584147057519236621478039844811386803810069203498849731865848292413600339611428712286763416121474759644365779543407397209632526604240628588445862698791799657863185490830730146605119581495720353627329658527429272639782959304990909170132481669035988889425347504337152195917009736767217048336753366732773681867542818921860204725473248224720130468887117457378528585762018824182010052658227610408970455118070013226192535810060560645490902893376513797204402680102590058923622046868630893390057526520935967531527684557660053344068166287887842137300564967423548641379881532701448897333541303834273406920785959003446767231170871459039914277294128428162261701803935314881483939019694507611801622256110405254992390855980745248476143843693193828818622455623392267901795396185257672989713013411664652013049613208378151315816057970658117100057700077280281899234695306948100679089448678278514275766630614383403089922377171439475451029597476433981129165238391416851944407560399935610271921338900406183020615926276290213725361960897295382753168199690855761069134102667795837382227368280472846900164394676424024102118685904841737522137671571427535868802027423858145746870854714285546493940221002185241749237049420759878548525939550162258169125879500021268341786264315005517690994098668242608519191873774284481661021381270344395593961543914326909858177307658474678676096447489991443798157711167826777442401411563338411464940110734290869634785788955935011439374639830169513416976880266366437153844908482902770649667030631503687237030641409987755813893004742375740434630367008348801597048673363395925086213021186701987604035751242075724640686604258406770168633660773241965302094770096879228831697812446297110772523156586454122360244821678719178914449180003413268163934722721670735283337830711659121715782842950783342324405073062498786357237978244322823122414850435119713349178242359077524397695614393747566482192008268066572890128765877375728559749005298085809976273515597682770250064738085252276097982203870921685059960056048418207280453177774332353459765960121992490231518487195083654782572409145741968771629226867273741311985031941986833087493327665898082407385504930547870920421293885821513667143823485329669255233048437762760472104191198761765194874439126834117815880911337213466718701934130980676483105695718118354057931794622613370840112524385389216995849947995785401588148521771259042811021353568267702851398625652010773642285960145423922942276937488660293365217813588399708411809624513900077575319996726407673933230515652123270825362525201108974312078050645089913333906792610914743263856700849158356792655125842238189281783778938468302686807431609423396973651172749939493859912561250742034296334226029708797081057407241262392906379805458673074626371385460817442413752291457755939431569739350968907198688158096293526237210548653578126614423350081242177945652686127390189882237873706382818521787809620531237928777231767439149333970966616909441977562421569919583530139759631302600619379832794874709173469174349142732695255586804517378712263537393172488747137943058945544541565926711026128737305612614543355544760825554848408912331772054054779760080119090605217634510457827391191191399319518789407738093929758414312409241310208307120294856236191730841336955936736161248728527337462212118524767077351352842301910169621204396322686740093104065171320504735098546139351709188801776376465442253269595832744768504021418969535190243992419592902263082634504945902802760258563757556809351804131655650744187265180711937082595080468678731867898224898541918892074189261189587507444156962041527516127409777901450853725280840266270186052496066968182032550450373717771390501046689808960821374368645566251256978160164751545096362728584161603345058627905720306914562905644065369609435897617664928173083267618449918702479446599202806023357927936920522420089139716942025492272922121898540775589569413623494929976838526215643088234740318785577376040053580393873180672532521649295470036174456097297262268482118111191998071149194409821173158122142182527710347305484886995491457913661413395760370497741132546989834222856137074599544633297680270608840847740208101822730302891416530141558004413174454981808622792224913831307833528553561349483418925005649620568812151513889139984574948593501273915084078134713753394956946688691550920234726954214176039180750541249957149202974934490232704951392646308260302217915111902953871608873874350804717587398864941201671877668232651458147402424954513708803070289349269564827265917564584750788000190874140083196334859413165566082187211690687628032627975799948826815025804726825812721966079893253262871061027772753010249826750633420703964715673930474823981022481174097105331265523813551419006301119931759865181625631231118011365977645498097891341554161390153566763684167724431528139716763145063629667877631146172445841375627828239256385586783312528621952977045930741455326897023080830055888502819034665699808158662278956352596017497907408234530587101709286275119103020294372022552580762724958919780513966857171093469865250336415917048167783986802618840239556468805379123434231866829331610024508098675548793661713748878138899100066111109137009712832876859054383071389152346083940206658745306803331607871287290615722422917775811533446863289745483189819425152104597570249068947912259274323607316656055128227882046363358974436549016603014348353172984778694618257235968412464399794496037256443997337382451340827983613381523329190221317378874576415804322574040056750174362219815742622075812794986021035066935360084948536948131422606691758481947909248119914926303650238958573303491980411143396513676259790924184411291145684098238397180778881496302097959597723841221073472941243759073735926092634631510170767540731841084592452013190960684291207474058358188732120803813034251935145128840831268457718674654476095500163269739438281419554976593971975240309478761771343585254833914196037559619860590215558275085687123242632615961335350099756510873184724059182215061065179097384180587074609213256056527109000938089370009874470461038338364207155730279907779860109777337766795727312858777981243377578544329635871904255433455975317522190628504237798930026906035565228679698202132497294230456758958625593777350400109032979489660338724797710529380435075170294633018749527763678660002736445943021862619076337454635805711965958794505443812289937526706017400334301362589901828858923885515523902231176039774403243123009893508081723697568739904212950605937755882588536276047289398640230151675094822122156427888362770669702977538435894466632324109094622694172279266608024256279402347063892808627820923824802153463199751715973992085336713281145022471773051072511194332250445541292600111816098770856803026706344438742749717434155746269028980557716768397375608974119444026243138489023785070569943790047256757231357088668381593495686026938874693804646383099357345508916801408229185563901905810819599624299182434230733109117949669141763207402209234840101447214997735285753765053896004898235980669813975733267385284146078882817902567917262468053490476935411419432227869300009705444258862669125847356406581012210189487832445643266659488164303602512907138731232536029574233424371590654391436370722709230588212799123018547910593251250903969974337046483613839959445220828449640490179301013932446000941592834167796684628645188640432878511792965926453436661941522759535336041604637369137518505210620101066749046869608745627116792344090879337296498354636582688523306128199906316057835224476582528136327741500175973997319081533818157315601399405762403724267436916918478350060593982085489790060994058687871410797382649764093768602381764814335875366885302039575140829823064161467827014575239759063023850730957097089509187408626512576388636469912780739659691365014441014132073640466235665541234396521221511614073888963690607826784758407284614135764712566615514981187683890530472842985754789867274321617440173140642574832428595849959999520495847273632093189090204557901213706205603121826023070031438074179257928152261252033453129267007654332129164771861779711733773989110627197240348621357816013277624918542598727787765131633767074553404598758619089973349529246063288395527743005563231649831994754724521205712706410387231642354433083203918683585200181150969499207670020321438543495954146094456778394796683189934741216944885186210959254627048904953893397180177860530479284703115960870201755499335799225295260393380826783650273384963004855904804341053660090360126338016402609798062965866236065738241174133602361364142433801662051418352174931145290243271134470009571713790314015759694825663580312603836700394013655366482088677591655405842160321753739391268018321223467909978887082895793236395739993565535199980400152197034076967354946785778215556031010171946515198665177086377293920476520571247622630818322145335376258821483979247767550647768087462581760270693928506223891422472563741486254338900887742321668569581296216677910425701679234967774358542438264260047363145879092435273849706253608975225122752031267210212030165750244288892533329250555482193789366668114807824363808154851948918970107791385446329663102338183187146190964974154159670218692663694876804382424668427462601691582303406181392644721759478236270173801029608338452895977943171722614807376205075060881849712335353784389983308946032878666337858114352641058167223902378618399722438878736154290487890153700418376811706746292600842025860926689162780529460208308434990966803599297473693221005536801690488180917857526580091432838494613626603516463786313042614328424030170855459150112203725872501213685752954016403454553922258957485102219221069914444708761865959372618741294376046986222533730810260523878140411432275519988303552134000060268797903423624784832280360082648262267992355349903612598426393106515165656606372429661312047162311881619115563521689808626097895700505532681598338318005493993509070033386597915990719936680282395113523426948154061000119468507464904116105301295850803702384300367448895320333318407851499411061436959156583793876209790175768956908957353699853107326919988981110306540033527587482090173095033563226869755565515558274473880417435990331164496381586210195738560824657913319449754542907490668086155798962461782533517098369010238996699462208433062415436572490993276007346036922369074897692849959166893968677489745308150235551098241751205294601950550823886921824648478757127511508351515548302661808222705242897213590339309730579809060895298296712693312520448399999999985" + }, + "r0": { + "rational": "1/10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "1E-30010" + }, + "zeta": { + "rational": "1/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "1E-30012" + }, + "slack": { + "rational": "1/10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "1E-30010" + }, + "margins": { + "main_transform": { + "rational": "41993873903138613033391774848017564424957785962564507386508188004071613706508140970657641403321115806861282922714655524301761203004135303569282515917323917893374063184765573192871135452488843908427811888970349419603513825966863947048914046995017231354280494187187092366892326424569723068932981389140167139160293130961241274983495676892882092856753942644057730650965294298891384437535366303413657772029643672939520062841013649196320270042024171403349464404073594808067062053824713323095299973471534993086956662805983343525641267336840286171750063175961959633584686878212349890753907046789671444810671589291636653225750741042515514684365251984932663679634055582115772363662798561551384057584150281718603896296844605684389385755961356666420966173619311376496349593750025900378358782291669258772995155120766721811354854259692467287036978003885729446336092288147987948973031001147669943174613002863369083838808674846570553601361705307321191074337143616258011807610324811072043677811250624098388719938381079922371976883189519863892675298713584676842295980498498965850546058038046153767485062507080578166213021645468524012759218479034626664930754047312615669586697330642569560474834214068398635125150772352002217744352007429063201571861812768341686649351178505032494998443604729402241023532819612290967835627932667873603874681957655280995017990281213098267392567258819022341298528942555562576264326565273182778163934753910607731698039228582279066243018709227438384408065161736392817957162637737361215030143997201225737010680399955712428936337954110625742012788555905813532227155730974024231541933371245948497074365089683507748449458867143773220992204715290781738015133493236992034223579543536295667252169780392688842532290836008821477357367277142789444403297699129036645016314147386639777518295434157572738961033208248833729400839475998367093098219748674838744837080803155213071419070955051631240004948206773907621077950423460865597078248834891629784638180207685462323805391361311840783189340267769290075707831801570410587306555807723603504774171554557254115174763669262039975358885308598179283591095821662533658581686755264094121683089011349432090244569715117580705154773034777911513267889835287111831173454928933024025364923281288526094782198938718633783453945946417150951468493927334226332979919497909632354498439765181819827045979914747160871046732385508214041467934111219373282919378013003147460662052187355783859658418047603147445740538482502889631115233807479393040341346188558796679932150668245669289466975901289724058216698349723171042826987576337353322274742053235090461055105055049706979896731289899280128156981079005197844344582403087702712956500394033301196826177853018244053827898148559539582850879438166733125591061602273801792239896239396844231348556564462052554398536464069802132037515230017664709495985368395930680042465375218245907220557295017372926256820400837594929692282940504857043224293316448635667292447182274477918963626526127702051116978698018804708146361963250200535970990144703005585779757624279390300523413080315087856468888695878025490338598682131378618234825252270089192366090299279707841354478880201292802719847939709458254554651618910670761516497325101161689176991655943889080088089845531138968004267196209948686727645854088791365184316911270832175725966613667971025297261648725914198842757817922641738922058733587984612527407580104701977651101793702195491070156044700342853883602519192241024753992637087827735219067834962602516557208629704858145199830330087998432177495519456859984068291848745759770611029919606237736589533900173487843994125987696482665253483798305022593065744703256179546373555814934934899941955390871985262077335670260943411781904613367494896680647987181255003987964897830115609016440352533545681132577756957343299151057680151711254691835808891547157946143082033394494329220551782156575027853642056843981462373669195582914342544792643175587887825934557187219554770300034180482359932853906266501206298107536016909446229986147843277558074138000194459021512067106987375562829683907634343003840950745167773629115523117173285992026394084890433794828116170907749773611948517864535454910452546798013841673866724280510633825457603329341375312203534142124641544935042118777668840838207376829169836043493970588456280597456593634777690973118901808001437107084088443559941209292816504977931375501269199590281259928568489175819770369583969792451178506382899229411558268610827803582340011189444811305801409530208596515338338245709262371874957133853978813298028138761759580199452154312033167296301120345795520374635708611524743123828558733438914544907133747917350576958971687865216233352043960087535170063168854588932759375224229005308274040571916998605792554888681816706834531723277955153045050689229252405481644345912933770276569298833876688270906769878243256978134747766159451937722986628049647488067751696539329240527136485094832328352210432672902659931526840343751920145633254222768672682998934590927193208026153408662329160753939584735720835459432075754320600228481114361380646201288381780561338061032933423907022320620995020533134256943713498491221184809531977537269501165856314969328042064107921734151816914042969781564328040644087803581991869681912706621605453556443644490921663132374621708160177939269157002219307117562296192350528971594833004553182142312884062882442594666489766097606678494277440346541989183684083004665049938735123328298825509655210744086638583026363846794196326578576538179363395235986984368237224600452516680379461109096695751597044664991829419609293676345982584451046353135826964488358199740621564843752585167485701402255936846135664129620349452967509846350329397972648418523626041936832772585991485826882095329221490974190210942698250566699953992063581409606218626916182490336951401518559238008250415827023070695624173335460487688348760027480583457048325153361146204744445659152481353781802759710462899025679733568909679666629882558904382712762724026678556824908761776111660403490550528993983498278177540624081303220536297990932397199971011485383273337013256812517243589544318955055536197184434926341612844791463400084402343656438416035237185098682008757090874080612592753604665162286199454417572387017762933891619562760137342495954505005707704576489235896595736558589693617726393611314047721987387705636078849339475702129852790254687739259795642400343863202992511875540780468789401136167299230521079688744201808856979824573784736491820627725541480528528441356738366527660991172466710895821167346312648148727256497172832346215023505525729781460751378714284885481673985511288863976568430344322600869313112837884595456665269011717413257965306991952743422688823705804976180992635234256023382262138397417485230125652033011657791064472923250628797253440024422522507694103078883581840107817621036623262701794087013055597754137152237369058880234218231210389840569188244935193945760933886847493016718309941611227079686376783217011071618213855833572484501970689394019318358102934061417662905566496143835986201935572559304347599219299629972572578475949325190671356096334869030833008139527119246926720439426898679083416784515087876970160507809607353717779394588858856169343711187203886918934828050324484777868707510949981836065668993769533964633620701841594146527289319075628411687144136737322097466335431705588037953608393862155655493848860496038828238310735065742553243594874469592787278637279506839093223401386794789456633006715624926613899468484555581735825101715025478726863885864479719514391990339990143631869719847414359073186544176251161387388582536204219046487638432946579617203244689676266818789552234733512814986784221811336058166044296138659426457067547376336690225789635717666210620940775365510864237795235514581812621239044278546955055037665449935147887211815892548018753141780178349980199092328408617582479268609532970060597037573635751112884257057931200042833836826476889623706049807274735853795015620757930614231926222073883654009549921140718846325097543399532621673252564745813174898666506434428232259349990771625408717129083561423200975872530187196262867111280698561763452516852614309185774665763353865606207564781436249169068771482119624055698629210105765246541403478003183393352896356644389160478499713357707164898097733873188136910968094610979312016003644790140193638844127526041601215496142953044343866423412687548769654356898209363234077743257021130677095920648254733568300677683205471157931078704822119373423718799109619865142346550201275446300246066550810552619136302665649803864245194354915151667686148622615376027244639787258825453430801899295935302659079060172258103038558209033550057757712226320991620362499265128715720677839727234270728201210427783320407649324145552612571132474935905793636613633450588966137592159821673968458182196554931325921207636445081062700267348713562164848431991271167469326578398806183374849812643401593114102899330634033490756272549961155900051219778763211113675368586320815987305459896825830338916186677843357377051447076020722169950160790614717712049226273268141721178563499098501017006180111120156277199205833903141483583440997699913183759046620476052511128907197955385138098468020013411782324346903107809364045034706576013567571862741461913796052501071737937814434252399039701545586820811248602709442403184601832084005402271782816400545051520420866733297409538705561648955285550750035014779394547915210096452089961519968333811616874018904842950805839188875718020113264136595427260295238384188882749796504769000397337289581493055521845107229009200249106696156103503476622138714691034418106206341194461726973801411509933236377367044812211136547167081554592771073953474061521078953830716168354751067107680166146764399031977815824268236026549595906674241277272023069385833978464569668659282254065523876660894325546327993147730482498002797996168203284544127339977675452250852611759257098920629141780956932435603609045960756196661420353423891329900375687096342125144821274899546868114083105586494404745279700791465980326961612778806784620794748196023098139351130010675638870260777494585672261531230069319028722131922632904743626578456188340327276771922804719305286903955530531247769910668378952820097364722604558037551331019494998285443564963917018448004325943203320644354722325208506899495323072678383853076701375003930985979002905277787853138154897458859262464325881445529839932317811400769403501975638777278904600859241992354282700104931022843226666780085094098542956627110761291988719351499571926228955093445794172092325047671679561498308795542918143451633600085499347345913927357389701224725759200812440515528671822255000898510460484628765915159912944290608211975300026422093649689222893967690473200600812621928745793307239325494005871408686478101755734926708454577452422468333093340631243687121455429255453722368073107843897239715675599185679958163510123341272472296646563041106851276290174546208745055682521825866943592210651931470376775087714311013951305102743653164160397905333983189328973224094894280215354554717524632866048264027187633080975568413714172375741877175480465810699300841143751094470133564015471782950810138708249267581695700425069326286015947563717776827805933698180442238781652153106067749485713662487356139858398729268438335172118519818895207674745283041122345870141528445076981964087711161539616655902692780882542855244226115795904463768312432838871758580703033741283961241340183140544981181669007323451356981376464937323974566164488837988431280643651194743620850649974503338748914445698393123443496885588524404598059946799517813833061966627057973260484180850203247196687230172168180700183159687089791978261134089911609500803351799801328321947699100971267084607662351749355670473521518178914927457252553571254798720831561779993376384075139113973269327065083061489826246937147178403466228706824159196579914615571876205579345524671443039896986799414299651987293787095780688531420541185929246435326375471038522850904881623359699284485898134543657354553854972331395279597409643173489041142798431279994885377813367837841318552850961258932669385355731269205111703322900381979399256648641355466558977571031060732621153775797524396534192273384476906806882929847423389044291014463700266147571028005281686781792877867429068920446588308468661977902990448464278495399703060147786482270773045134691496008022756853877019105902452892879062194790401201590932764436599525740348382712802039001773695318971446104146732812354210832372814935903703421369109754530424220411309413801990496677633052382197822589845885374676800717563780409620830390609525326895751209249280786307950297844785742796805769897370932989906160659914746087346034858013289705894574506795530221371926910294668534581285436899959543609439269180215405590593379418633013649281605036068571138351104967573575970494164333166380756858767418570622555167484008694985846468844095011691296101682157245615853746846285299823473978497188661323111745799944790901108871186416217220253887043850160081827254144460683381720110492372199528762403749314279386814620546577047882026670297634047175377584565846919503613716302316600372200522996095788784724832084395043132600113016228257457202607936149634633228230608271723565102971225259980077203461300908818282173020952615299839849616899424557252509098308118373031694814008040769155128183160821532816450959106495875524066131993160173937239413127029452959736133115878871371398583302424397590329068668947709639773830370052446649217240312381822341314271865696574103254394930036061409978009742120990132558339994424686482893937092240560776353010968611038334060848470494219677171088134357540831323060271983112600582191667559227340639856959997886062713390285918591932866090069235618747277807968811356298010495202308302285334921440250460952663689389173195436137376267810861113376190131781647544801522078513070249703270125333001954287915311247337920562797883451275813446154363597567387583589366776026106000096661146946697498816212504434397346264764039202288279578379940855389091028054747022124656087737765104481414068112646250175985995885581469326161311708995136079409785373616069713702017726906391851845635011548875249326766419317811727797524377111992763208382749005772912245940345368877300911098459319997057382223446376850004964419551714724290181967271854806115015165691310418748175392471529310372787370664415909997228167485215237427722673576432301904694281804749599571539156253873313351243720585961051667920955200116773387929305265205355853020412318220509983727041722482270169485210673857671149874089895996296445589297802058385058064017372583557331539039178259612423550242899570510153332180844068999995887674121213214141189633321464551546121125908255963492622711739564514493035541283363137712164096968124901573295660554016090903491669103976042268096984952445740601857196827170419660521143112629138290332217678068561554446832548679952990193405146314388372341428054298236170754205387245674606865919134975883773415674648701170591102675920369307880501165523497737794700299504018877096469619904524464902080402443584395646355348687549163375641567679373977195674094664105983101852501177348515934543483219271336890442138228216629054345030898595040605272778923942238984135082068963582039573269998738231689129966814142253293292534117905456253750512332672699569484501463374193079147744308682799408050850765716892729013075760771745782273343374518383153621128050094367170345422401495994764503977602208224725421124061061107113103718356876234679818159102256651318649268230873891900023954840902335642524085872691171064805744586217960446149959485146548545490502492349248062240322312626288162519078922550879727629162513605912789532924383403184999233656313741813021839736285981695840421866889237882294403001341647629192714804784667317386648318150298035541348953784271995024688685932185693263584348472063598520087812694342160781815374589736988021225935728872062427615958836973928492443024665403345791719772881389866356590451680297230894368803156660032776442880536166773110483565452864638761439534982809853491808753264255953844391169662410411219835040140746786398637694133826809998262734726007322192768972828917835730501696678617804571210200390589634267762353634589721285934638883547614342678367690023363101257429520346425662607136725568270087903171837054997216859231841788147263676196972691923324084488076143728737528795192401922914840509299900752543629593929162168525108955572391060994237136576349409398331027406519927645774370686659742471964904637019589965625592671033185552028014549818806951142355606119571177285869054398170844570878661666357732362880151008306401515829144767651138993406204952600635675315330591896809069984191051959600435690790054063651719643011545908587392964125651907820528300912267093828606579743466472769414710114965026837815843583642446999626487075541575117827339476461309927487972454271213464868408763456764785119807977049604708082582602414498745736016480961223704890668749847180530649416705808729953764056714324336685587147230211748341149545547585142557882499053466166454711384464024790560786487251105268773599257891448605341200993680044587046966620951377108435551423484610130918112279733110450071323388796226514223045603915239534368998982080716104141057534596550180783130283640644155339133126532405783052120537155525680083487142812118759425841498967524661635729995256494875330388622375975966557911246122159536077316615668933163045873141148443934226632859653772790429053580488277559543777944637083723204218215704804838558994911606744279721527378010984644605292459984048488404781790087693499255760568318616100555002715771801175205069646470106106926857075339897663203959201351799089704979489052345782167488798765432245307441253837959175152103651854297901046545942959592085897551602933147238088773679791996362820611150330260730026733847186549661178627049007847754069500997045234197862349980560942745345807160389641462038350979258117340059332052141960391829522456592191617732655494274447568090613425944825925763887961088847157967333318473129522792736959604767839515895687738118490996023922321775537704934053635733132873914171758130451961965427218460971603165993442544638153075821139994776680548333873153236618250079535322296084712548235075838416375902846793241463892848958943432289795111334590731962499037161895275195909242086780428419454667359061193148122023177996901328926915826302889460180337703966892946625480075242023032185505670779169185473650853881932736429749682454143553434719998661245046560469076459408164896181558380177453181255846747007695315919009432065329082606801320113820958278752550635120156841535704299516063401655682346939594985440570550312016834863734847684921408589925278405028804679911501959140143792995694935110602440398047585596584556872977527306347757173557595621388753928295167069655325228717587029231378749269517723337116607673542754281420947133192174634953400342396173040763050797351044029615509551869939901702070023368888113688897187640910808520008014555149699248959913906527683205818799774902277766001724334580257524162570242162611351929932910558455235071284968102902969118507320558812699226178920128441781352086076464685777054969222500250750765330769322573267772961211485602468140254600708821669627076039552971084895980194866512451984184644200612546273396936824995185556341206783999929455769659243329043565196634720472191777247172941628197454178360066147960550518247733780612636700046861520429062267171072745533477078927523293558184644426117309006193126543776483611944707380173367837382022705970248306761723087407509639280309197869520849949070704546105803685885508344257983050195649462915429899511192113006625143333182944880889467115858305649528882657202025137475377843804589721030014935137725134113514675132514508164348857476534627180630850179301922542443578110950043146036764379809155369509961202846700952517300874712432966462073103400084902857178071690854030368689911091444885851849302408131651060157147111465674697949914465796372707682536651279895373930088406832414631857318159945739826247727292533120417258997222356336876084288048979252434191804262084188341683193420466885704730465051181368312056180032617221779364344632146440504706045502513164556902602242613779517503306548133952515140161372725723344128449301100670025647514730905511717157723347514381630233991882881921139415013336017041571971960534325141241855887160344970383175362224333385325958568351730196489750861691807792717864759978569323532107040565425450983828720370984754923626902950405564027601313748097713995186312119035960923298457204655613905848066975448849046314418247428253352916163003262403302094537828954014492664529275014425019320070474808673826737025169772362169569628568941657653595850772480594292859868862757399369108495282291309597854212986101890099983902567980334725101545755153981569072553431340490224323845688292049922713940267283525666948959345556842070118211725041098669106006025529671476210434380534417892856883967200506855964536436717713678571386623485055250546310437309262355189969637131484887540564542281469875005317085446566078751379422748524667060652129797968443571120415255345317586098898490385978581727464544326914618669669024111872497860949539427791956694360600352890834602866235027683572717408696447238983752859843659957542378354244220066591609288461227120725692662416757657875921809257660352496938953473251185593935108657591752087200399262168340848981271553255296675496901008937810518931160171651064601692542158415193310491325523692524219807207924453111574277693130789146613530590061205419679794728612295000853317040983680680417683820834457677914780428945710737695835581101268265624696589309494561080705780603712608779928337294560589769381099423903598436891620548002067016643222532191469343932139937251324521452494068378899420692562516184521313069024495550967730421264990014012104551820113294443583088364941490030498122557879621798770913695643102286435492192907306716818435327996257985496708271873331916474520601846376232636967730105323471455378416785955871332417313808262109440690118026047799690441298718609781708529453970227834303366679675483532745169120776423929529588514482948655653342710028131096347304248962486998946350397037130442814760702755338392066925712849656413002693410571490036355980735569234372165073341304453397099927102952406128475019393829999181601918483307628913030817706340631300277243578019512661272478333476698152728685815964175212289589198163781460559547320445944734617075671701857902355849243412793187484873464978140312685508574083556507427199270264351810315598226594951364668268656592846365204360603438072864438984857892434837742226799672039524073381559302637163394531653605837520310544486413171531847547470559468426595704630446952405132809482194307941859787333492741654227360494390605392479895882534939907825650154844958198718677293367293587285683173813896701129344678065884348293122186784485764736386135391481677756532184326403153635838886190206388712102228082943013513694940020029772651304408627614456847797797849829879697351934523482439603578102310327552076780073714059047932710334238984184040312182131834365553029631191769337838210575477542405301099080671685023276016292830126183774636534837927297200444094116360563317398958186192126005354742383797560998104898225565770658626236475700690064640939389202337951032913912686046816295177984270648770117169682966974556224635479723018547315297396876861039240510381879031852444475362713431320210066567546513124016742045508137612593429442847625261672452240205343592161391562814244540041187886274090682146040400836264656976430076728640726411016342402358974404416232043270816904612479675619861649800701505839481984230130605022284929235506373068230530474635193897392353405873732494209631553910772058685079696394344010013395098468295168133130412323867509043614024324315567120529527797999517787298602455293289530535545631927586826371221748872864478415353348940092624435283136747458555714034268649886158324420067652210211935052025455682575722854132535389501103293613745452155698056228457826958382138390337370854731251412405142203037878472284996143737148375318478771019533678438348739236672172887730058681738553544009795187635312489287300743733622558176237848161577065075554478777975738467902218468587701179396849716235300417969417058162864536850606238628427200767572337317391206816479391146187697000047718535020799083714853291391520546802922671907008156993949987206703756451181706453180491519973313315717765256943188252562456687658355175991178918482618705995255620293524276332816380953387854751575279982939966295406407807779502841494411374524472835388540347538391690921041931107882034929190786265907416969407786543111460343906957059814096396695828132155488244261482685363831724255770207513972125704758666424952039665569739088149004374476852058632646775427321568779775755073593005638145190681239729945128491714292773367466312584103979262041945996700654710059889117201344780858557966707332902506127024668887198415428437219534724775016527777284252428208219214763595767847288086520985051664686326700832901967821822653930605729443952883361715822436370797454856288026149392562267236978064818580901829164013782056970511590839743609137254150753587088293246194673654564308992103116099948624009314110999334345612835206995903345380832297555329344718644103951080643510014187543590554953935655518953198746505258766733840021237134237032855651672939620486977312029978731575912559739643325872995102785849128419064947731046102822786421024559599295194720374075524489899430960305268368235310939768433981523158657877542691885182960271148113003297740171072801868514589547183030200953258562983786282210207817114429668663619023875040817434859570354888744148492993810077369690442835896313708478549009389904965147553889568771421780810658153990333837524939127718296181014795553765266294774346045146768652303314014131777250234522342502468617615259584591051788932569976944965027444334441698931828214694495310844394636082408967976063858363993829380547657126059449732506726508891307169924550533124323557614189739656398444337600027258244872415084681199427632345108768792573658254687381940919665000684111485755465654769084363658951427991489698626360953072484381676504350083575340647475457214730971378880975557794009943600810780752473377020430924392184976053237651484438970647134069011822349660057537918773705530539106972090692667425744384608973616658081027273655673543069816652006064069850586765973202156955230956200538365799937928993498021334178320286255617943262768127798583062611385323150027954024692714200756676586109685687429358538936567257245139429192099343902243529861006560784622255946267642485947511814189307839272167095398373921506734718673451161595774839336377229200352057296390975476452704899906074795608557683277279487417285440801850552308710025361803749433821438441263474001224558995167453493933316846321036519720704475641979315617013372619233852854858056967325002426361064715667281461839101645253052547371958111410816664872041075900628226784682808134007393558356092897663597859092680677307647053199780754636977648312812725992493584261620903459989861305207112410122544825253483111500235398208541949171157161297160108219627948241481613359165485380689883834010401159342284379626302655025266687261717402186406779198086022719834324124588659145672130826532049976579014458806119145632034081935375043993499329770383454539328900349851440600931066859229229619587515148495521372447515248514671967852699345662441023442150595441203583968841721325509893785207455766040366956753643809939765755962682739274272377296852156628144097159117478195184914922841253610253533018410116558916385308599130305377903518472240922651956696189601821153533941178141653878745296920972632618210746438697466818580404360043285160643708107148962489999880123961818408023297272551139475303426551400780456505767507859518544814482038065313008363282316751913583032291192965444927933443497277656799310087155339454003319406229635649681946941282908441768638351149689654772493337382311515822098881935751390807912457998688681130301428176602596807910588608270800979670896300045287742374801917505080359635873988536523614194598699170797483685304236221296552739813656762226238473349295044465132619821175778990217550438874833949806323815098345206695912568346240751213976201085263415022590031584504100652449515741466559016434560293533400590341035608450415512854588043732786322560817783617502392928447578503939923706415895078150959175098503413841620522169397913851460540080438434847817004580305866977494721770723948309098934998391383799995100038049258519241838736696444553889007752542986628799666294271594323480119130142811905657704580536333844064705370994811941887661942021865645440067673482126555972855618140935371563584725221935580417142395324054169477606425419808741943589635609566065011840786469773108818462426563402243806280688007816802553007541437561072223133332312638870548447341667028701956090952038712987229742526947846361582415775584545796786547741243538539917554673165923719201095606167106865650422895575851545348161180439869559067543450257402084613223994485792930653701844051268765220462428083838446097495827236508219666584464528588160264541805975594654599930609719684038572621972538425104594202926686573150210506465231672290695132365052077108747741700899824368423305251384200422622045229464381645022858209623653406650879115946578260653582106007542713864787528050931468125303421438238504100863638480564739371275554805267478611177190466489843154685323594011746555633432702565130969535102858068879997075888033500015067199475855906196208070090020662065566998088837475903149606598276628791414151593107415328011790577970404778890880422452156524473925126383170399584579501373498377267508346649478997679984170070598778380856737038515250029867126866226029026325323962700925596075091862223830083329601962874852765359239789145948469052447543942239227239338424963276831729997245277576635008381896870522543273758390806717438891378889568618470104358997582791124095396552548934640206164478329862438635726872667021538949740615445633379274592252559749174865552108265603859143122748319001836509230592268724423212489791723492169372436327037558887774560437801323650487637705971730456162119689281877877087878887075665452055676310724303397584827432644952265223824574178173328130112099999999994991601225219372277393321645030396487115008442807487098522698362399185677258698371805868471719335776838627743415457068895139647759399172939286143496816535216421325187363046885361425772909502231218314437622205930116079297234806627210590217190600996553729143901162562581526621534715086055386213403722171966572167941373807751745003300864621423581428649211471188453869806941140221723112492926739317268445594071265412095987431797270160735945991595165719330107119185281038386587589235057335380940005305693001382608667438803331294871746532631942765649987364807608073283062624357530021849218590642065711037865682141672669354849851791496897063126949603013467264073188883576845527267440287689723188483169943656279220740631078863122122848807728666715806765276137724700730081249994819924328243541666148245400968975846655637729029148061506542592604399222854110732781542370402410205393799770466011365077399427326183232238265030685889279727658938535761785132571276748397638477935037785591264437749875180322256012323784015525604623362096027221464940257283064631540803900300206829890788392390769246502987498583884366757395670906295197448156304193074667013849190537476866082660533871486087905033157186320272974969845529599556451129598514187359685627637446331662670129764298993501000311279054119551795293436077541806432874413466425279225063608468943800996401943757380346521486548236195531740294211488887484747134686945363444367213049217878453660392154283544186751396258154512323118386967652721436408567472452527756993971200559754852597863920008857514212732409177874851597442288818837293554568853805195153691613325750810300585126982063298450310108226571245355801559056941843652396973301352601593155284091292740866549566043921462231493541832798235704528526544571442111119340460174192670996737170522672044496340913168485452207793358350233254119832104800326581380356050265032251032583839368957385716185808989673751999010358645218475784409915307826880584350233021674043072363958462907535238921727737631843362131946446141984858433639685917882538688838455279299045165689088549176965047266147592004928222938280364143281780835667493268283662648947181175663382197730113581951086056976483858969045393044417697346422032942577633765309014213395194927015343742294781043560212256273243309210810716569809706301214533154733404016100418073529100312046963636034590804017050567825790653522898357191706413177756125343416124397399370507867589562528843228068316390479370510851892303499422073776953238504121391931730762288240664013569866350866142106604819742055188356660330055365791434602484732529335545051589352981907788978988990058604020653742020143974368603784198960431131083519382459457408699921193339760634764429396351189234420370288092083429824112366653374881787679545239641552020752120631153730288687107589489120292707186039573592496953996467058100802926320813863991506924956350818555888540996525414748635919832481014061543411899028591355141336710272866541510563545104416207274694774459589776604260396239058370727607349959892805801971059398882844048475144121939895317383936982428706222260824394901932280263573724276353034949545982161526781940144058431729104223959741439456030412058108349089069676217865847696700534979767662164601668811222183982382030893772206399146560758010262654470829182241726963136617745833564854806677266405794940547670254817160231448436415471652215588253282403077494518483979059604469779641259560901785968791059931429223279496161551795049201472582434452956186433007479496688558274059028370960033933982400313564500896108628003186341630250848045877794016078752452682093219965302431201174802460703466949303240338995481386851059348764090725288837013013020011608921825602947584532865947811317643619077326501020663870402563748999202407020433976878196711929493290863773484448608531340169788463969657749061632838221690568410771383593321101134155889643568684994429271588631203707525266160883417131491041471364882422434813088562556089045939993163903528013429218746699758740378492796618110754002770431344488385172399961108195697586578602524887434063218473131399231809850966445274176895376565342801594721183021913241034376765818450045277610296427092909017909490640397231665226655143897873234908479334131724937559293171575071691012991576244466231832358524634166032791301205882308743880508681273044461805376219638399712578583182311288011758141436699004413724899746160081943748014286302164836045926083206041509764298723420154117688346277834439283531997762111037738839718093958280696932332350858147525625008573229204237340394372247648083960109569137593366540739775930840895925072858277695051375234288253312217091018573250416529884608205662426956753329591207982492965987366229082213448124955154198938345191885616600278841489022263636658633093655344408969390989862154149518903671130817413245944686140233224662345818646024351348604373050446768109612455402674390070502386449660692134151894572702981033534329557913465419468013694631931249615970873349155446265463400213081814561358394769318267534167849212083052855832908113584849135879954303777127723870759742323643887732387793413315218595535875800995893373148611257300301755763038093604492546099766828737006134391587178415653169636617191406043687134391871182439283601626063617458675678909288711271101815667373525075658367964412146168599556138576487540761529894205681033399089363571537423187423511481066702046780478664301144511930691602163263183399066990012252975334340234898068957851182672283394727230641160734684284692364127320952802603126352555079909496663924107778180660849680591067001634116078141264730803483109790729372834607102328360051875687031249482966502859719548812630772867174075930109406498030729934120405470316295274791612633445482801702834623580934155701805161957811460349886660009201587283718078756274616763501932609719696288152398349916834595385860875165332907902462330247994503883308590334969327770759051110868169503729243639448057907420194864053286218064066674023488219123457447455194664288635018247644777667919301889894201203300344364491875183739355892740401813520560005797702923345332597348637496551282091136208988892760563113014731677431041707319983119531268712316792952562980263598248581825183877481449279066967542760109116485522596447413221676087447972531500809098998858459084702152820680852688282061276454721277737190455602522458872784230132104859574029441949062452148040871519931227359401497624891843906242119772766540153895784062251159638228604035085243052701635874454891703894294311728652326694467801765506657820835766530737470370254548700565433530756995298894854043707849724257143022903665202897742227204686313931135479826137377432423080908666946197656517348406938601609451315462235258839004763801472953148795323547572320516502953974869593397668441787105415349874240549311995115495498461179384223283631978436475792675347459641182597388880449172569552526188223953156353757922031886162351012961210847813222630501396656338011677754584062724643356597785676357228833285503099605862121196136328379413187716467418886700771232802759612885488139130480156140074005485484304810134961865728780733026193833398372094576150614655912114620264183316643096982424605967898438078529256444121082228228766131257762559222616213034389935103044426258497810003632786866201246093207073275859631681170694542136184874317662571172652535580506732913658882392409278321227568868901230227900792234352337852986851489351281025106081442544272544098632181355319722641042108673398656875014677220106303088883652834979656994904254627222827104056097121601932001971273626056030517128185362691164749767722522283492759156190702472313410684076559351062064746636242089553053297437002643155637732788366791140772268114708586490524732661954842072856466757875811844926897827152440952897083637475752191144290608988992466910012970422557636821490396249371643964330003960181534318276483504146278093405987880592485272849777423148588413759991433232634704622075258790038545052829240996875848413877153614755585223269198090015771856230734980491320093475665349487050837365020266698713114353548130001845674918256574183287715359804825493962560747426577743860287647309496629477138162845066847329226878758487043712750166186245703576075188860274157978846950691719304399363321329420728671122167904300057328458567020380453225362372617806381077804137596799271041971961272231174494791679756900771409391131226715317462490246069128620358127353184451348595773864580815870349053286339864463358905768413784259035576125315256240178076026971530689959744910739950786689837889476172739466870039227150961129016969666462770275476924794551072042548234909313839620140812939468184187965548379392288358193289988448457554735801675927500146974256855864432054553145854359757914443335918470135170889477485773505012818841272677273309882206772481568035665206308363560689013734815758472710983787459946530257287567030313601745766506134684320238763325030037471319681377179420133873193301848745490007768819989756044247357777264926282735836802538908020634833932216762664431328524589710584795855566009967841877056457590154745346371655764287300180299796598763977775968744560158833219371703283311800460017363248190675904789497774218560408922972380306395997317643535130619378438127190993058684797286485627451707617240789499785652412437113149520192059690882635837750279458111519363079633583198919545643436719890989695915826653340518092258887670208942889849992997044121090416957980709582007696006333237676625196219031409838832162224856395977347172680914547940952323162223450040699046199920532542083701388895630978554198159950178660768779299304675572257061793116378758731761107654605239717698013352724526591037557772690566583689081445785209305187695784209233856766329049786578463966770647120193604436835146352794690080818665151744545595386122833204307086066268143549186895224667821134890734401370453903500399440400766359343091174532004464909549829477648148580215874171643808613512879278190807848760667715929315221734019924862580731574971035745020090626377183378882701119050944059841706803934607677444238643075841050360795380372129773997864872225947844501082865547693753986136194255573615473419051274684308762331934544645615439056138942619208893893750446017866324209435980527055479088392489733796101000342911287007216596310399134811359335871129055534958298620100935385464323229384659724999213802804199418944442429372369020508228147507134823710894032013536437719846119299604872244544219079828151601529143459979013795431354666643982981180291408674577847741602256129700085614754208981310841165581534990465664087700338240891416371309673279982900130530817214528522059755054848159837511896894265635548999820297907903074246816968017411141878357604939994715581270062155421206461905359879837475614250841338552134901198825718262704379648853014658309084509515506333381331873751262575708914148909255526385378431220552056864880162864008367297975331745505540670687391778629744741965090758250988863495634826611281557869613705924644982457137797209738979451269367167920418933203362134205355181021143956929089056495073426790347194562473383804886317257165524851624564903906837860139831771249781105973287196905643409837972258350146483660859914986134742796810487256444634438813260363911552243669569378786450102857267502528772028320254146312332965576296036220958465050943391775530825971694310984603607182457767692076668819461443823491428951154776840819107246337513432225648283859393251743207751731963371891003763666198535309728603724707012535205086767102232402313743871269761051275829870005099332250217110860321375311300622882295119080388010640096437233387606674588405347903163829959350560662553965566363859963368062582041604347773182017678099839329640039734335610460179805746583078467529650128865905295696364217014508549489285749040255833687644001324723184972177205346134586983387702034750612570564319306754258635168160684017076885624758884130895065711392020602640117140069602541242580843862293715891762814150712934724905792295429819023675328060143102820373091268529089229005533720944080518071365302191771440313744001022924437326432431736289429807748213466122928853746158977659335419923604120148670271728906688204485793787853475769244840495120693161545323104618638623414030515322191141797107259946770485794398943662643641424426514186215910682338306267604419401910307144300920059387970442703545845390973061700798395448629224596178819509421424187561041919759681813447112680094851930323457439592199645260936205710779170653437529157833525437012819259315726178049093915155917738117239601900664473389523560435482030822925064639856487243918075833921878094934620849758150143842738409940431042851440638846020525813402018767868017050782530793028397342058821085098640893955725614617941066293083742912620008091278112146163956918881881324116273397270143678992786285772329779006485284805901167133366723848628246516285875488966503198261002830706231180997661740779663568550876829250630742940035305204300562267735377650840011041819778225762716756555949222591229967983634549171107863323655977901525560094247519250137144122637075890684590423594665940473190564924483086830616099277256739536679925559895400780842243055033583120991373479977396754348508559478412770073073354353878345655286979405754948003984559307739818236343565395809476940032030076620115088549498180338376325393661037198391846168974363367835693436709808178700824895186773601367965212552117374594109408052773376824225725720283339515120481934186266210458072045233925989510670156551937523635531737145626860685179349121013992787718004398051575801973488332001115062703421212581551887844729397806277792333187830305901156064565782373128491833735387945603377479883561666488154531872028608000422787457321942816281613426781986152876250544438406237728740397900959538339542933015711949907809467262122165360912772524746437827777324761973643670491039695584297385950059345974933399609142416937750532415887440423309744837310769127280486522483282126644794778799980667770610660500236757499113120530747047192159542344084324011828922181794389050595575068782452446979103717186377470749964802800822883706134767737658200972784118042925276786057259596454618721629630872997690224950134646716136437654440495124577601447358323450198845417550811930926224539817780308136000588523555310724629999007116089657055141963606545629038776996966861737916250364921505694137925442525867116818000554366502956952514455465284713539619061143639050080085692168749225337329751255882807789666415808959976645322414138946958928829395917536355898003254591655503545966102957865228465770025182020800740710882140439588322988387196525483288533692192164348077515289951420085897969333563831186200000822465175757357171762073335707089690775774818348807301475457652087097101392891743327372457567180606375019685340867889196781819301666179204791546380603009510851879628560634565916067895771377474172341933556464386287689110633490264009401961318970737122325531714389140352765849158922550865078626816173004823245316865070259765881779464815926138423899766895300452441059940099196224580706076019095107019583919511283120870728930262490167324871686464125204560865181067178803379629499764530296813091303356145732621911572354356674189130993820280991878945444215211552203172983586207283592085346000252353662174006637171549341341493176418908749249897533465460086103099707325161384170451138263440118389829846856621454197384847845650843545331325096323369275774389981126565930915519700801047099204479558355054915775187787778577379256328624753064036368179548669736270146353825221619995209031819532871495182825461765787038851082756407910770008102970690290901899501530150387551935537474742367496184215489824054474167497278817442093415123319363000153268737251637395632052742803660831915626622152423541119399731670474161457039043066536522670336369940392891730209243145600995062262813562861347283130305587280295982437461131567843636925082052602395754812854225587514476808232605214301511395066919330841656045423722026728681909663940553821126239368667993444711423892766645377903286909427072247712093003438029301638249347148809231121766067517917756032991971850642720272461173234638000347453054798535561446205434216432853899660664276439085757959921882073146447529273082055742813072223290477131464326461995327379748514095930714867478572654886345982419365632589000556628153631642370547264760605461615335183102384771254252494240961519615417031898140019849491274081214167566294978208885521787801152572684730118120333794518696014470845125862668051505607019072596082006874881465793362889594397090036238609771528878776085764542826189120365831085824267666728453527423969798338719696834171046469772201318759009479872864936933881620638186003161789608079912861841989187269656071397690818282521407174869618435894339817546581234278684051306705446117057977006994632436831283271510600074702584891684976434532104707738014502405509145757307026318247308647042976038404590079058383483479517100250852796703807755259021866250030563893870116658838254009247188657135132662882570553957650331770090890482971488423500189306766709057723107195041887842702549778946245280148421710278931759801263991082590606675809724578312889715303077973816377544053377909985735322240754697155390879216952093126200203583856779171788493080689963843373943271871168932173374693518843389575892568894863983302571437576248114831700206495067672854000948701024933922275524804806688417750775568092784536676866213367390825371770311213154673428069245441914189283902344488091244411072583255359156356859039032288201017678651144055694524397803071078941508003190302319043641982461300148847886336276779888999456845639764958986070705978778614628584932020467359208159729640182059004102189530843566502240246913550938511749232408164969579269629140419790690811408081582820489679413370552382245264041600727435877769933947853994653230562690067764274590198430449186099800590953160427530003887811450930838567922071707592329804148376531988133589571607921634095508681561676453468901145110486381877314811034814847222407782230568406533336305374095441452608079046432096820862452376301800795215535644892459013189272853373425217165648373909607606914556307805679366801311491072369384835772001044663890333225369352676349984092935540783057490352984832316724819430641351707221430208211313542040977733081853607500192567620944960818151582643914316109066528187761370375595364400619734214616834739422107963932459206621410674903984951595393562898865844166162905269829223613452714050063509171289313056000267750990687906184708118367020763688323964509363748830650598460936816198113586934183478639735977235808344249489872975968631692859140096787319668863530612081002911885889937596633027253030463015718282014944318994239064017699608171971241400861012977879511920390482880683088625404494538730448565288480875722249214340966586068934954256482594153724250146096455332576678465291449143715810573361565073009319931520765391847389840529791194076898089626012019659585995326222377262220562471817838295998397088970060150208017218694463358836240045019544446799655133083948495167485951567477729614013417888308952985743006379419406176298535888237460154764215974311643729582784707062844589006155499949849846933846135485346445407757702879506371949079858235666074584792089405783020803961026697509603163071159877490745320612635000962888731758643200014108846068151334191286960673055905561644550565411674360509164327986770407889896350453243877472659990627695914187546565785450893304584214495341288363071114776538198761374691244703277611058523965326432523595458805950338647655382518498072143938160426095830010185859090778839262822898331148403389960870107416914020097761577398674971333363411023822106576828338870094223468559594972504924431239082055793997012972454973177297064973497098367130228504693074563873829964139615491511284377809991370792647124038168926098007759430659809496539825057513406707585379319983019428564385661829193926262017781711022829630139518373669787968570577706865060410017106840725458463492669744020925213982318633517073628536368010852034750454541493375916548200555528732624783142390204149513161639147583162331663361315906622859053906989763726337588763993476555644127131073570711899058790899497367088619479551477244096499338690373209496971967725454855331174310139779865994870497053818897656568455330497123673953201623423615772116997332796591685605607893134971751628822567931005923364927555133322934808286329653960702049827661638441456427048004286135293578591886914909803234255925803049015274619409918887194479737250380457200962737576192807815340308559068877218830386604910230190737116350514349329416767399347519339581092434209197101467094144997114996135985905038265234652594966045527566086074286211668469280829845503881141428026227448520126178300943541738080429157402779621980003219486403933054979690848969203686185489313731901955135230862341590015457211946543294866610208130888631585976357654991780266178798794894065704757913123893116421428623206559898628807092712656457264285722675302988949890737912538147528962006072573703022491887091543706024998936582910686784249724115450295066587869574040406311285775916948930936482780220301922804283654507091134617076266066195177625500427810092114441608661127879929421833079426752994463285456518260710552203249428031268008491524329151155986681678142307754575854861467516648468424815638148467929500612209305349762881212978268481649582559920147566331830203745689348940664900619798212437896213767965669787079661491568316961337901734895261495156038558415109377685144461373842170677293881987758916064041054277540999829336591803263863916463235833108464417043914210857852460832883779746346875060682138101087783858843879257478244014332541087882046123780115219280312621675890399586596671355493561706131213572012549735095709501186324220115861487496763095737386195100889806453915747001997197579089635977341111283382327011701993900375488424075640245817260871379542712901561418538656636312934400748402900658345625333616705095879630724753472606453978935305708924316642808825733516537238347578111861976394790440061911740256278043658294109205954433139326664064903293450966175844715214094082297103410268869331457994373780730539150207502600210729920592573911437047859448932321586614857430068717399461317885701992728803852886153125566985331739109320580014579409518774304996121234000163679616303338474217393836458731873739944551284396097467745504333304660369454262836807164957542082160367243707888090535910811053076584865659628419528830151317441362503025307004371937462898285183288698514560145947129637936880354681009727066346268681430726959127879312385427112203028421513032451554640065592095185323688139472567321093669278832495937891102717365693630490505888106314680859073910609518973438103561138411628042533301451669154527901121878921504020823493012018434869969031008360256264541326541282542863365237220659774131064386823130341375562643102847052722772921703664448693563134719369272832222761958722257579554383411397297261011995994045469739118274477108630440440430034024060529613095303512079284379537934489584643985257188190413457933152203163191937563573633126889394073761646132432357884904491518939780183865662995344796741433974763245072693032414540559911181176727887336520208362761574798929051523240487800379020354886845868274752704859861987071812122159532409793417217462790636740964403145870245976566063406605088755072904055396290536940520624627792151897923624193629511104927457313735957986686490697375196651590898372477481314111430474947665509551958931281567721687437151091991762422745181863570791919832747068604713984654271854717796731519528205119116753591345836619077504064876027670039859698832103603153973878995543014152898725386353893905072961220521529318825253501158073689217845588262984060721131197997320980306340966373373917535226498191277195135136886575894094440400096442540279508941342093892890873614482634725755650225427104316929330211981475112943372650508288857193146270022768335115986469557957612989594908863484855429173492922099779341277250909568860388754308434608323572321932525829053749717518971559392424305543000771252570324936304245796093264312330252152665565422453988263652289291198040962472937502142539851253275488364752430367684586984889104244404852306419556306282459764120630056752939916406116588367427092629878752274314559846485532536521758636704121770762460599990456292995840183257029341721695890639415465618598368601210002558659248709763658709363901696005337336856446948611362349487508662468328964801764216303476258800948875941295144733436723809322429049684944003412006740918718438444099431701117725095105432922291930492321661815791613778423593014161842746818516606118442691377707931218608588037180720660834373568902351147703462927233655148845958497205574859048266715009592066886052182370199125104629588273470644914535686244044848985281398872370961863752054010974301657141445326506737483179204147591610800659869057988022176559731043828288406658533419498774595066222560316914312556093055044996694444543149514358356157047280846430542382695802989667062734659833419606435635469213878854111209423327656835512725840509028742394770121487546552604387036283819634167197243588605897681832051278172549169849282582341350761065269087138201579376780010275198137177800133130877432958600819330923833540488934131056271179209783871297997162491281889009212868896209360250698948246653231995752573152593428869665412075902604537594004253684817488052071334825400979442830174316187010453790779435442715795088080140961055925184895102020113807938946326352937812046313203695368268424491461622963407945770377399340451965785439626297082090563393959809348287403242743557958436577114066267276195224991836513028085929022251170301401237984526061911432820737258304290198122019006970489222086245715643837868369201933232495012174456340763797040889246946741045130790970646269539337197173644549953095531499506276476948083081789642213486004611006994511133111660213634357061100937831121072783518206404787228327201234123890468574788110053498654698221738566015089893375135288477162052068720311132479994548351025516983063760114473530978246241485268349062523611816066999863177702848906869046183127268209714401702060274727809385503123664699129983284931870504908557053805724223804888441198011279837843849505324595913815121563004789352469703112205870573186197635530067988492416245258893892178605581861466514851123078205276668383794545268865291386036669598787186029882646805359568608953808759892326840012414201300395733164335942748876411347446374440283387477722935369994409195061457159848664682778062862514128292212686548550972114161580131219551294027798687843075548810746471502810497637162138432145566580920325215698653056265309767680845032132724554159929588540721804904709459020018785040878288463344544102516542911839629889538257994927639250113235712311747305199755088200966509301213336630735792696055859104871604136876597325476153229429028388606534999514727787056866543707632179670949389490525608377717836667025591784819874354643063438373198521288328781420467280428181463864538470589360043849072604470337437454801501283147675819308002027738958577517975491034949303377699952920358291610165768567740567978356074410351703677328166902923862023233197919768131543124074739468994946662547656519562718644160382795456033135175082268170865573834693590004684197108238776170873593183612924991201300134045923309092134219930029711879813786628154154076082496970300895725510496950297065606429460130867511795311569880911759283206231655734898021242958508846791926608649271238012046848807463452145145524540629568674371180568176504360963017015431749277949293396317976688216722938280173938924419296305551815469608660762079635769293211764371669224250940615805473476357850712260506636283919127991342967871258378570207502000023975207636318395340545489772104939314689719843908698846498428096291037103592386937398327343536649617283393541761406911014413311300544468640137982568932109199336118754072870063610611743418311646272329770062069045501332523537696835580223612849721838417508400262263773939714364679480638417882278345839804065820739990942451525039616498983928072825202292695277161080260165840503262939152755740689452037268647554752305330140991106973476035764844201956489912225033210038735236980330958660817486330751849757204759782947316995481993683099179869510096851706688196713087941293319881931792878309916897429082391253442735487836443276499521414310484299212015258716820984369808164980299317231675895566120417229707891983912313030436599083938826604501055645855210338180213000321723240000979992390148296151632252660711089222198449491402674240066741145681135303976173971437618868459083892733231187058925801037611622467611595626870911986465303574688805428876371812925687283054955612883916571520935189166104478714916038251611282072878086786997631842706045378236307514687319551238743862398436639489398491712487785555373333537472225890310531666594259608781809592257402554051494610430727683516844883090840642690451751292292016489065366815256159780878766578626869915420884829690930367763912026088186491309948519583077355201102841413869259631189746246955907514383232310780500834552698356066683107094282367947091638804881069080013878056063192285475605492314979081159414662685369957898706953665541860973526989584578250451659820035126315338949723159915475590954107123670995428358075269318669824176810684347869283578798491457227042494389813706374939315712352299179827272303887052125744889038946504277764561906702031369062935281197650688873313459486973806092979428386224000584822393299996986560104828818760758385981995867586886600382232504819370078680344674241717169681378516934397641884405919044221823915509568695105214974723365920083084099725300324546498330670104200464003165985880244323828652592296949994026574626754794194734935207459814880784981627555233983334079607425029446928152042170810306189510491211552154552132315007344633654000550944484672998323620625895491345248321838656512221724222086276305979128200483441775180920689490213071958767104334027512272854625466595692210051876910873324145081549488050165026889578346879228171375450336199632698153881546255115357502041655301566125512734592488222445087912439735269902472458805653908767576062143624424582424222584866909588864737855139320483034513471009546955235085164365334373977580000000001/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997996640490087748910957328658012158594846003377122994839409079344959674270903479348722347388687734310735451097366182827558055859103759669175714457398726614086568530074945218754144570309163800892" + }, + "global_coordinate_router": { + "rational": "33595099122510890426713419878414051539966228770051605909206550403257290965206512776526113122656892645489026338171724419441408962403308242855426012733859134314699250547812458554296908361991075126742249511176279535682811060773491157639131237596013785083424395349749673893513861139655778455146385111312133711328234504768993019986796541514305674285403154115246184520772235439113107550028293042730926217623714938351616050272810919357056216033619337122679571523258875846453649643059770658476239978777227994469565330244786674820513013869472228937400050540769567706867749502569879912603125637431737155848537271433309322580600592834012411747492201587946130943707244465692617890930238849241107246067320225374883117037475684547511508604769085333136772938895449101197079675000020720302687025833335407018396124096613377449083883407753973829629582403108583557068873830518390359178424800918135954539690402290695267071046939877256442881089364245856952859469714893006409446088259848857634942249000499278710975950704863937897581506551615891114140238970867741473836784398799172680436846430436923013988050005664462532970417316374819210207374783227701331944603237850092535669357864514055648379867371254718908100120617881601774195481605943250561257489450214673349319480942804025995998754883783521792818826255689832774268502346134298883099745566124224796014392224970478613914053807055217873038823154044450061011461252218546222531147803128486185358431382865823252994414967381950707526452129389114254365730110189888972024115197760980589608544319964569943149070363288500593610230844724650825781724584779219385233546696996758797659492071746806198759567093715018576793763772232625390412106794589593627378863634829036533801735824314151074025832668807057181885893821714231555522638159303229316013051317909311822014636347326058191168826566599066983520671580798693674478575798939870995869664642524170457135256764041304992003958565419126096862360338768692477662599067913303827710544166148369859044313089049472626551472214215432060566265441256328469845244646178882803819337243645803292139810935409631980287108246878543426872876657330026926865349404211275297346471209079545672195655772094064564123818427822329210614311868229689464938763943146419220291938625030820875825759150974907026763156757133720761174795141867381066383935598327705883598751812145455861636783931797728696837385908406571233174347288975498626335502410402517968529641749884627087726734438082517956592430786002311704892187045983514432273076950847037343945720534596535431573580721031779246573358679778536834261590061069882657819793642588072368844084044039765583917385031919424102525584863204158275475665922470162170365200315226640957460942282414595243062318518847631666280703550533386500472849281819041433791916991517475385078845251569642043518829171255841705630012184014131767596788294716744544033972300174596725776445836013898341005456320670075943753826352403885634579434653158908533833957745819582335170901220902161640893582958415043766517089570600160428776792115762404468623806099423512240418730464252070285175110956702420392270878945705102894587860201816071353892872239423766273083583104161034242175878351767566603643721295128536609213197860080929351341593324755111264070471876424911174403413756967958949382116683271033092147453529016665740580773290934376820237809318980731359074206254338113391137646986870387690021926064083761582120881434961756392856124835760274283106882015353792819803194109670262188175254267970082013245766903763886516159864264070398745741996415565487987254633478996607816488823935684990189271627120138790275195300790157186132202787038644018074452595762604943637098844651947947919953564312697588209661868536208754729425523690693995917344518389745004003190371918264092487213152282026836544906062205565874639320846144121369003753468647113237726356914465626715595463376441425725260022282913645475185169898935356466331474035834114540470310260747645749775643816240027344385887946283125013200965038486028813527556983988918274622046459310400155567217209653685589900450263747126107474403072760596134218903292418493738628793621115267912347035862492936726199818889558814291628363928362037438411073339093379424408507060366082663473100249762827313699713235948033695022135072670565901463335868834795176470765024477965274907822152778495121446401149685667270754847952967434253203982345100401015359672225007942854791340655816295667175833960942805106319383529246614888662242865872008951555849044641127624166877212270670596567409897499965707083183050638422511009407664159561723449626533837040896276636416299708566889219794499062846986751131635925706998333880461567177350292172986681635168070028136050535083671146207500179383204246619232457533598884634043910945453365467625378622364122436040551383401924385315476730347016221255439067101350616725415902594605582507798212927561550178389302439717990454201357231463392421709188075865862681768346138322127945221472275001536116506603378214938146399147672741754566420922726929863328603151667788576668367545660603456480182784891489104516961030705424449070448826346739125617856496796016426507405554970798792976947847625582029815600932685051975462433651286337387321453531234375825251462432515270242865593495745530165297284362845154915592737330505899697366528142351415325601775445694049836953880423177275866403642545713850307250305954075733191812878085342795421952277233591346947266403732039950988098662639060407724168595269310866421091077435357061262861230543490716188789587494589779680362013344303568887277356601277635731993463535687434941076786067560837082508661571590686559792497251875002068133988561121804749476908531303696279562374007877080263518378118734818900833549466218068793188661505676263377192779352168754158600453359963193650865127684974901532945992269561121214847390406600332661618456556499338668368390150679008021984466765638660122688916963795556527321985083025442207768370319220543786855127743733303906047123506170210179221342845459927009420889328322792440423195186798622542032499265042576429038392745917759976809188306618669610605450013794871635455164044428957747547941073290275833170720067521874925150732828189748078945607005672699264490074202883732129828959563534057909614210347113295650208109873996763604004566163661191388717276589246871754894181114889051238177589910164508863079471580561703882232203750191407836513920275090562394009500432624375031520908933839384416863750995361447085583859659027789193456502180433184422822753085390693222128792937973368716656933877050118518981805197738265876972018804420583825168601102971427908385339188409031091181254744275458080695450490270307676365332215209373930606372245593562194738151058964643980944794108187404818705809710717933988184100521626409326232851578338600503037802752019538018006155282463106865472086254096829298610161435269610444478203309721789895247104187374584968311872455350595948155156608747109477994413374647953288981663749101426573608857294571084666857987601576551515215454686482347249134130324453196915068788961548458047443478079375439703978058062780759460152537084877067895224666406511621695397541376351541518943266733427612070301576128406247685882974223515671087084935474968949763109535147862440259587822294966008759985468852535195015627171706896561473275317221831455260502729349715309389857677973068345364470430362886715089724524395079088396831062590648588052594042594875899575674229822909823605471274578721109435831565306405372499941291119574787644465388660081372020382981491108691583775611513592271992114905495775877931487258549235341000929109910866028963375237190110746357263693762595751741013455031641787786810251989427377449068846532835436910927541165654037901069352180631708574132968496752620292408691390236188411665450096991235422837564044030132359948118309769452714038415002513424142679984159273862726894065983414887626376048477630058908600890307405646344960034267069461181511698964839845819788683036012496606344491385540977659106923207639936912575077060078034719626097338602051796650539918933205147542585807479992617300326973703266849138560780698024149757010293689024558849410762013482091447348619732610683092484966051825148999335255017185695699244558903368084612197233122782402546714682317085315511328382799770686165731918478187098550509528774475688783449612802915832112154911075302020833280972396914362435475093138730150039015723485518567490587262194605616904541676736518603786854640542146564376926344862963857695498738975039287695892113877240161020357040196853240648442095309042132519843091396155483932121334148918898092300821795711829807060362744641519436748242127263248137806482430846567226840046206169781056793296289999412102972576542271781787416582560968342226656326119459316442090056905979948724634909290906760471172910073727857339174766545757243945060736966109156064850160213878970849731878745593016933975461262719044946699879850114721274491282319464507226792605018039968924720040975823010568890940294869056652789844367917460664271132949342274685901641157660816577735960128632491774169639381018614513376942850799278800813604944088896125021759364667122513186866752798159930547007237296380842008903125758364308110478774416010729425859477522486247491236027765260810854057490193169531036842000857390350251547401919231761236469456648998882167553922547681465667204321817426253120436041216336693386637927630964449319164228440600028011823515638332168077161671969215974667049293499215123874360644671351100574416090611309276341808236190707351106199837203815200317869831665194444417476085783207360199285356924882802781297710971752827534484965072955569381579041129207946589101893635849768909237733665243674216859162779249216863163064572934683800853686144132917411519225582252659414588821239676725339393021817618455508667182771655734927425803252419101328715460437062394518184385998402238396934562627635301871982140361800682089407405679136503313424765545948482887236768604957329136282739113063920300549677073700115857019919637494491266484469195523796223760633172784261569290223045427696635798556818478511480904008540511096208621995668537809224984055455222977705538106323794901262764950672261821417538243775444229523164424424998215928534703162256077891778083646430041064815595998628354851971133614758403460754562656515483777860166805519596258458142707082461361100003144788783202324222230282510523917967087409971460705156423871945854249120615522801580511021823123680687393593883426160083944818274581333424068075278834365301688609033590975481199657540983164074756635337673860038137343649198647036434334514761306880068399477876731141885911760979780607360649952412422937457804000718808368387703012732127930355432486569580240021137674919751378315174152378560480650097542996634645791460395204697126949182481404587941366763661961937974666474672504994949697164343404362977894458486275117791772540479348543966530808098673017977837317250432885481021032139636966996044546017460693554873768521545176301420070171448811161044082194922531328318324267186551463178579275915424172283643774019706292838611221750106464780454730971337900593501740384372648559440672915000875576106851212377426360648110966599414065356560340055461028812758050974221462244746958544353791025321722484854199588570929989884911886718983414750668137694815855116166139796226432897876696113222756061585571270168929231693324722154224706034284195380892636723571014649946271097406864562426993027168993072146512435984945335205858761085585101171949859179652931591070390745024514920955794896680519979602670999131556558714498754797508470819523678447957439614251066449573301646378608387344680162597757349784137734544560146527749671833582608907271929287600642681439841062657558159280777013667686129881399484536378817214543131941965802042857003838976665249423994701107260111291178615461652066449191860997549717742722772982965459327357263931692457500964463476419737154431917589439531439721589835029676624550825136432948743397148261100376830818280723905298687759427588718507634925883643083977865116223677927714538791232914238745023995908302250694270273054842280769007146135508284585015364089362658320305583519405318913084373247182056824848586096923020638019517227353818707581525445506343877938711235432811570960212918056822404225349425434302293943255136357270646774929582322392358771422796319762448118229185816618436107753196806418205483101615284721962314303249755832320961272746211549279620592278706170241631201418956255177156883317386249883368665898251948722962737095287803624339376329047531041592397342106441905758258071876708299741440574051024327696664312487620261516600967399424629046360238275828594237444615917896746391924928527931796869876827886410631764715659605436424177097541528235734827665028349519967634887551415344172324472474703534906410919425284028854856910680883974058860776395331466533104605487013934856498044133987206955988677175075276009353036881345725796492682997477028239858779182797750929058489396639955832720887096949132973776203109635080128065461803315568546705376088393897759623009922999451423509451696437261638305621336238107237740302067652677535602890973041853280297760418396876631027779865667516034506080090412982605965762086348919707706582584486617378852082376980207984061762769040727054625738416762092239871879693519539645802007278646494698425355851206432615324102546528657226253160767285196700419252905594528139149791530501623562367788906492703097097118866641939518072263254935158167711819064296041957319373792249905457873051417492557259282603515944028849127982407793696792106046671995539749186315149673792448621082408774888830667248678776395375741736870507486032665058448217586490080465753334047381872511885567998308850170712228734873546292872055388494997822246375049085038408396161846641828267937152200368762130951511338556348909901014248688890700952105425318035841217662810456199762616100266401563430332248997870336450238306761020650756923490878053910066871493420820884800077328917557357999052970003547517877011811231361830623662703952684311272822443797617699724870190212083585131254490117000140788796708465175460929049367196108863527828298892855770961614181525113481476508009239100199461413135454249382238019501689594210566706199204618329796752276295101840728878767455997645905778757101480003971535641371779432145573817483844892012132553048334998540313977223448298229896531532727997782533988172189942178138861145841523755425443799679657231325003098650680994976468768841334336764160093418710343444212164284682416329854576407986981633377985816135588168539086136919899271916797037156471438241646708046451213898066845865231231342607689938840194319656408122665744675255199996710139296970571312951706657171641236896900726604770794098169391651611594428433026690510169731277574499921258636528443212872722793335283180833814477587961956592481485757461736335728416914490103310632265774142454849243557466038943962392154724117051510697873142443438588936603364309796539685492735307980707018732539718960936472882140736295446304400932418798190235760239603215101677175695923619571921664321954867516517084278950039330700513254143499181756539275731284786481482000941878812747634786575417069512353710582573303243476024718876032484218223139153791187308065655170865631658615998990585351303973451313802634634027294324365003000409866138159655587601170699354463318195446946239526440680612573514183210460608617396625818674699614706522896902440075493736276337921196795811603182081766579780336899248848885690482974685500987743854527281805321054919414584699113520019163872721868514019268698152936851844595668974368356919967588117238836392401993879398449792257850101030530015263138040703782103330010884730231626339506722547999386925050993450417471789028785356672337493511390305835522401073318103354171843827733853909318654520238428433079163027417596019750948745748554610867478777650878816070250155473728625452299671789590416980748583097649942092767069579142793954419732322676633375818305111893085272361344237784715495042525328026221154304428933418488386852362291711009151627986247882793447002611404763075512935729928328975868032112597429118910155307061447998610187780805857754215178263134268584401357342894243656968160312471707414209882907671777028747711106838091474142694152018690481005943616277140530085709380454616070322537469643997773487385473430517810940957578153538659267590460914982990023036153921538331872407439920602034903675143329734820087164457912848795389709261079527518664821925215942116619496549327793977571923709615671972500474136826548441622411639855045560913884484895656941828695243518536675656702929333086185890304120806645121212663315814120911194724963962080508540252264473517447255987352841567680348552632043250921375714409236726869914371300521526256422640729813675062885263794773178215531768091972021470252674866913957599701189660433260094261871581169047941990377963416970771894727010765411828095846381639683766466066081931598996588813184768978963912534999877744424519533364646983963011245371459469348469717784169398672919636438068114046305999242772933163769107571219832448629189800884215018879406313158884272960794944035669637573296761101686748441138787688104734489823786488360057058711036981211378436483132191627495199185664572883312846027677240144626504226912515324271306501225924626441696429724420544066789714249695007540673199174019729308583996205195900264310897900780773246328996897727628861853292535146530436698512918755147381306287723018232343242864390622047635022355709666978563374572563843870847195929285395423777221902408787715684233967987238790723825432070154799404608454654892880444002172617440940164055717176084885541485660271918130563167361081439271763983591241876625733991039012345796245953003070367340121682921483438320837236754367673668718041282346517790471018943833597090256488920264208584021387077749239728942901639206278203255600797636187358289879984448754196276645728311713169630680783406493872047465641713568313463617965273753294186124395419558054472490740755860740611110368871077726373866654778503618234189567683814271612716550190494792796819137857420430163947242908586506299131337406504361569572341774768777282532794754035710522460656911995821344438667098522589294600063628257836867770038588060670733100722277434593171114279167154745831836089067672585569999229729516220156727393669424342735563733887248954518497618542397521063141532661042311568144270163173514357300384060193618425748404536623335348378920683105546189143799745963314842747775998928996037248375261167526531916945246704141962545004677397606156252735207545652263266085441056091056766623002040508096125473228563439612850721324545877551675988352456440249613467890987878147937126871940222724023043743929201567312115034396555948088481952318438068477267645498382021845078205738846076497111003142636133655724260182974069623385102999415614178669693286138834203425136757706553739707962720273916938432610440637880835223692407641495951921361656018695110490951117750112728646816006411644119759399167931125222146564655039819921822212801379467664206019330056193730089081543946328446764188057027974482322375294805856447050159380943136102753425081668861171748621643975378000200600612264615458058614218368969188481974512203680567057335701660831642376867916784155893209961587347715360490037018717549459996148445072965427199943564615727394663234852157307776377753421797738353302557963342688052918368440414598187024490109360037489216343249813736858196426781663142018634846547715540893847204954501235021186889555765904138694269905618164776198645409378469926007711424247358295616679959256563636884642948708406675406386440156519570332343919608953690405300114666546355904711573692686644519623106125761620109980302275043671776824011948110180107290811740106011606531479085981227701744504680143441538033954862488760034516829411503847324295607968962277360762013840699769946373169658482720067922285742457352683224294951928873155908681479441926505320848125717689172539758359931572637098166146029321023916299144070725465931705485854527956591860998181834026496333807197777885069500867430439183401947353443409667350673346554736373508563784372040945094649644944026093777423491475705717152403764836402010531645522081794091023614002645238507162012112129098180578675302759440880536020518011784724409373726178678011505304187193506305536911532010668813633257577568427460112993484709728275976306540289779466708260766854681384157191800689353446234174291807982855458825685632452340360787062976296787803938901522360324451222081050998478171196149049695228768738638765763724491124678453580359079237051534597942602682332930402609922641675630263163211594131623420011540015456056379846939061389620135817889735655702855153326122876680617984475434287895090205919495286796225833047678283370388881512079987122054384267780081236604123185255258042745072392179459076550633639938171152213826820533559167476445473656094569380032878935284804820423737180968347504427534314285507173760405484771629149374170942857109298788044200437048349847409884151975709705187910032451633825175900004253668357252863001103538198819733648521703838374754856896332204276254068879118792308782865381971635461531694935735219289497998288759631542233565355488480282312667682292988022146858173926957157791187002287874927966033902683395376053273287430768981696580554129933406126300737447406128281997551162778600948475148086926073401669760319409734672679185017242604237340397520807150248415144928137320851681354033726732154648393060418954019375845766339562489259422154504631317290824472048964335743835782889836000682653632786944544334147056667566142331824343156568590156668464881014612499757271447595648864564624482970087023942669835648471815504879539122878749513296438401653613314578025753175475145711949801059617161995254703119536554050012947617050455219596440774184337011992011209683641456090635554866470691953192024398498046303697439016730956514481829148393754325845373454748262397006388397366617498665533179616481477100986109574184084258777164302733428764697065933851046609687552552094420838239752353038974887825366823563176182267442693343740386826196135296621139143623670811586358924522674168022504877077843399169989599157080317629704354251808562204270713653540570279725130402154728457192029084784588455387497732058673043562717679941682361924902780015515063999345281534786646103130424654165072505040221794862415610129017982666781358522182948652771340169831671358531025168447637856356755787693660537361486321884679394730234549987898771982512250148406859266845205941759416211481448252478581275961091734614925274277092163488482750458291551187886313947870193781439737631619258705247442109730715625322884670016248435589130537225478037976447574741276563704357561924106247585755446353487829866794193323381888395512484313983916706027951926260520123875966558974941834693834869828546539051117360903475742452707478634497749427588611789108908313185342205225747461122522908671108952165110969681782466354410810955952016023818121043526902091565478238238279863903757881547618785951682862481848262041661424058971247238346168267391187347232249745705467492442423704953415470270568460382033924240879264537348018620813034264100947019709227870341837760355275293088450653919166548953700804283793907038048798483918580452616526900989180560552051712751511361870360826331130148837453036142387416519016093735746373579644979708383778414837852237917501488831392408305503225481955580290170745056168053254037210499213393636406510090074743554278100209337961792164274873729113250251395632032950309019272545716832320669011725581144061382912581128813073921887179523532985634616653523689983740495889319840561204671585587384104484017827943388405098454584424379708155117913882724698985995367705243128617646948063757115475208010716078774636134506504329859094007234891219459452453696423622238399614229838881964234631624428436505542069461096977399098291582732282679152074099548226509397966844571227414919908926659536054121768169548041620364546060578283306028311600882634890996361724558444982766261566705710712269896683785001129924113762430302777827996914989718700254783016815626942750678991389337738310184046945390842835207836150108249991429840594986898046540990278529261652060443583022380590774321774774870160943517479772988240334375533646530291629480484990902741760614057869853912965453183512916950157600038174828016639266971882633113216437442338137525606525595159989765363005160945365162544393215978650652574212205554550602049965350126684140792943134786094964796204496234819421066253104762710283801260223986351973036325126246223602273195529099619578268310832278030713352736833544886305627943352629012725933575526229234489168275125565647851277117356662505724390595409186148291065379404616166011177700563806933139961631732455791270519203499581481646906117420341857255023820604058874404510516152544991783956102793371434218693973050067283183409633556797360523768047911293761075824686846373365866322004901619735109758732342749775627779820013222221827401942566575371810876614277830469216788041331749061360666321574257458123144484583555162306689372657949096637963885030420919514049813789582451854864721463331211025645576409272671794887309803320602869670634596955738923651447193682492879958899207451288799467476490268165596722676304665838044263475774915283160864514808011350034872443963148524415162558997204207013387072016989707389626284521338351696389581849623982985260730047791714660698396082228679302735251958184836882258229136819647679436155776299260419591919544768244214694588248751814747185218526926302034153508146368216918490402638192136858241494811671637746424160762606850387029025768166253691543734930895219100032653947887656283910995318794395048061895752354268717050966782839207511923972118043111655017137424648526523192267070019951302174636944811836443012213035819476836117414921842651211305421800187617874001974894092207667672841431146055981555972021955467553359145462571755596248675515708865927174380851086691195063504438125700847559786005381207113045735939640426499458846091351791725118755470080021806595897932067744959542105876087015034058926603749905552735732000547289188604372523815267490927161142393191758901088762457987505341203480066860272517980365771784777103104780446235207954880648624601978701616344739513747980842590121187551176517707255209457879728046030335018964424431285577672554133940595507687178893326464821818924538834455853321604851255880469412778561725564184764960430692639950343194798417067342656229004494354610214502238866450089108258520022363219754171360605341268887748549943486831149253805796111543353679475121794823888805248627697804757014113988758009451351446271417733676318699137205387774938760929276619871469101783360281645837112780381162163919924859836486846146621823589933828352641480441846968020289442999547057150753010779200979647196133962795146653477056829215776563580513583452493610698095387082283886445573860001941088851772533825169471281316202442037897566489128653331897632860720502581427746246507205914846684874318130878287274144541846117642559824603709582118650250180793994867409296722767991889044165689928098035860202786489200188318566833559336925729037728086575702358593185290687332388304551907067208320927473827503701042124020213349809373921749125423358468818175867459299670927316537704661225639981263211567044895316505627265548300035194799463816306763631463120279881152480744853487383383695670012118796417097958012198811737574282159476529952818753720476352962867175073377060407915028165964612832293565402915047951812604770146191419417901837481725302515277727293982556147931938273002888202826414728093247133108246879304244302322814777792738121565356951681456922827152942513323102996237536778106094568597150957973454864323488034628128514966485719169991999904099169454726418637818040911580242741241120624365204614006287614835851585630452250406690625853401530866425832954372355942346754797822125439448069724271563202655524983708519745557553026326753414910680919751723817994669905849212657679105548601112646329966398950944904241142541282077446328470886616640783736717040036230193899841534004064287708699190829218891355678959336637986948243388977037242191850925409780990778679436035572106095856940623192174040351099867159845059052078676165356730054676992600971180960868210732018072025267603280521959612593173247213147648234826720472272828486760332410283670434986229058048654226894001914342758062803151938965132716062520767340078802731073296417735518331081168432064350747878253603664244693581995777416579158647279147998713107039996080030439406815393470989357155643111206202034389303039733035417275458784095304114249524526163664429067075251764296795849553510129553617492516352054138785701244778284494512748297250867780177548464333713916259243335582085140335846993554871708487652852009472629175818487054769941250721795045024550406253442042406033150048857778506665850111096438757873333622961564872761630970389783794021558277089265932620467636637429238192994830831934043738532738975360876484933685492520338316460681236278528944351895647254034760205921667690579195588634344522961475241015012176369942467070756877996661789206575733267571622870528211633444780475723679944487775747230858097578030740083675362341349258520168405172185337832556105892041661686998193360719859494738644201107360338097636183571505316018286567698922725320703292757262608522865684806034171091830022440745174500242737150590803280690910784451791497020443844213982888941752373191874523748258875209397244506746162052104775628082286455103997660710426800012053759580684724956966456072016529652453598471069980722519685278621303033131321274485932262409432462376323823112704337961725219579140101106536319667663601098798701814006677319583198143987336056479022704685389630812200023893701492980823221060259170160740476860073489779064066663681570299882212287391831316758775241958035153791381791470739970621465383997796222061308006705517496418034619006712645373951113103111654894776083487198066232899276317242039147712164931582663889950908581498133617231159792492356506703419673802047799339892441686612483087314498198655201469207384473814979538569991833378793735497949061630047110219648350241058920390110164777384364929695751425502301670303109660532361644541048579442718067861946115961812179059659342538662504089679999999997/20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.00167975495612554452133567099392070257699831143850258029546032752016286454826032563882630565613284463227445131690858622097207044812016541214277130063669295671573496252739062292771484541809955375633711247555881397678414055303867455788195656187980068925417121976748748369467569305698278892275731925556560668556641172523844965099933982707571528371427015770576230922603861177195565537750141465213654631088118574691758080251364054596785281080168096685613397857616294379232268248215298853292381199893886139972347826651223933374102565069347361144687000252703847838534338747512849399563015628187158685779242686357166546612903002964170062058737461007939730654718536222328463089454651194246205536230336601126874415585187378422737557543023845426665683864694477245505985398375000103601513435129166677035091980620483066887245419417038769869148147912015542917785344369152591951795892124004590679772698452011453476335355234699386282214405446821229284764297348574465032047230441299244288174711245002496393554879753524319689487907532758079455570701194854338707369183921993995863402184232152184615069940250028322312664852086581874096051036873916138506659723016189250462678346789322570278241899336856273594540500603089408008870977408029716252806287447251073366746597404714020129979993774418917608964094131278449163871342511730671494415498727830621123980071961124852393069570269035276089365194115770222250305057306261092731112655739015642430926792156914329116264972074836909753537632260646945571271828650550949444860120575988804902948042721599822849715745351816442502968051154223623254128908622923896096926167733484983793988297460358734030993797835468575092883968818861163126952060533972947968136894318174145182669008679121570755370129163344035285909429469108571157777613190796516146580065256589546559110073181736630290955844132832995334917603357903993468372392878994699354979348323212620852285676283820206524960019792827095630484311801693843462388312995339566519138552720830741849295221565445247363132757361071077160302831327206281642349226223230894414019096686218229016460699054677048159901435541234392717134364383286650134634326747021056376486732356045397728360978278860470322820619092139111646053071559341148447324693819715732096101459693125154104379128795754874535133815783785668603805873975709336905331919677991638529417993759060727279308183919658988643484186929542032856165871736444877493131677512052012589842648208749423135438633672190412589782962153930011558524460935229917572161365384754235186719728602672982677157867903605158896232866793398892684171307950305349413289098968212940361844220420220198827919586925159597120512627924316020791377378329612350810851826001576133204787304711412072976215311592594238158331403517752666932502364246409095207168959584957587376925394226257848210217594145856279208528150060920070658837983941473583722720169861500872983628882229180069491705027281603350379718769131762019428172897173265794542669169788729097911675854506104510808204467914792075218832585447853000802143883960578812022343119030497117561202093652321260351425875554783512101961354394728525514472939301009080356769464361197118831365417915520805171210879391758837833018218606475642683046065989300404646756707966623775556320352359382124555872017068784839794746910583416355165460737267645083328702903866454671884101189046594903656795371031271690566955688234934351938450109630320418807910604407174808781964280624178801371415534410076768964099015970548351310940876271339850410066228834518819432580799321320351993728709982077827439936273167394983039082444119678424950946358135600693951375976503950785930661013935193220090372262978813024718185494223259739739599767821563487941048309342681043773647127618453469979586722591948725020015951859591320462436065761410134182724530311027829373196604230720606845018767343235566188631784572328133577977316882207128626300111414568227375925849494676782331657370179170572702351551303738228748878219081200136721929439731415625066004825192430144067637784919944591373110232296552000777836086048268427949502251318735630537372015363802980671094516462092468693143968105576339561735179312464683630999094447794071458141819641810187192055366695466897122042535301830413317365501248814136568498566179740168475110675363352829507316679344173975882353825122389826374539110763892475607232005748428336353774239764837171266019911725502005076798361125039714273956703279081478335879169804714025531596917646233074443311214329360044757779245223205638120834386061353352982837049487499828535415915253192112555047038320797808617248132669185204481383182081498542834446098972495314234933755658179628534991669402307835886751460864933408175840350140680252675418355731037500896916021233096162287667994423170219554727266827338126893111820612180202756917009621926577383651735081106277195335506753083627079512973027912538991064637807750891946512198589952271006786157316962108545940379329313408841730691610639726107361375007680582533016891074690731995738363708772832104613634649316643015758338942883341837728303017282400913924457445522584805153527122245352244131733695628089282483980082132537027774853993964884739238127910149078004663425259877312168256431686936607267656171879126257312162576351214327967478727650826486421814225774577963686652529498486832640711757076628008877228470249184769402115886379332018212728569251536251529770378665959064390426713977109761386167956734736332018660199754940493313195302038620842976346554332105455387176785306314306152717453580943947937472948898401810066721517844436386783006388178659967317678437174705383930337804185412543307857953432798962486259375010340669942805609023747384542656518481397811870039385401317591890593674094504167747331090343965943307528381316885963896760843770793002266799815968254325638424874507664729961347805606074236952033001663308092282782496693341841950753395040109922333828193300613444584818977782636609925415127211038841851596102718934275638718666519530235617530851050896106714227299635047104446641613962202115975933993112710162496325212882145191963729588799884045941533093348053027250068974358177275820222144788737739705366451379165853600337609374625753664140948740394728035028363496322450371014418660649144797817670289548071051735566478251040549369983818020022830818305956943586382946234358774470905574445256190887949550822544315397357902808519411161018750957039182569601375452811970047502163121875157604544669196922084318754976807235427919298295138945967282510902165922114113765426953466110643964689866843583284669385250592594909025988691329384860094022102919125843005514857139541926695942045155455906273721377290403477252451351538381826661076046869653031861227967810973690755294823219904723970540937024093529048553589669940920502608132046631164257891693002515189013760097690090030776412315534327360431270484146493050807176348052222391016548608949476235520936872924841559362276752979740775783043735547389972066873239766444908318745507132868044286472855423334289938007882757576077273432411736245670651622265984575343944807742290237217390396877198519890290313903797300762685424385339476123332032558108476987706881757707594716333667138060351507880642031238429414871117578355435424677374844748815547675739312201297939111474830043799927344262675975078135858534482807366376586109157276302513646748576546949288389865341726822352151814433575448622621975395441984155312953242940262970212974379497878371149114549118027356372893605547179157826532026862499706455597873938222326943300406860101914907455543457918878057567961359960574527478879389657436292746176705004645549554330144816876185950553731786318468812978758705067275158208938934051259947136887245344232664177184554637705828270189505346760903158542870664842483763101462043456951180942058327250484956177114187820220150661799740591548847263570192075012567120713399920796369313634470329917074438131880242388150294543004451537028231724800171335347305907558494824199229098943415180062483031722456927704888295534616038199684562875385300390173598130486693010258983252699594666025737712929037399963086501634868516334245692803903490120748785051468445122794247053810067410457236743098663053415462424830259125744996676275085928478496222794516840423060986165613912012733573411585426577556641913998853430828659592390935492752547643872378443917248064014579160560774555376510104166404861984571812177375465693650750195078617427592837452936310973028084522708383682593018934273202710732821884631724314819288477493694875196438479460569386200805101785200984266203242210476545210662599215456980777419660606670744594490461504108978559149035301813723207597183741210636316240689032412154232836134200231030848905283966481449997060514862882711358908937082912804841711133281630597296582210450284529899743623174546454533802355864550368639286695873832728786219725303684830545780324250801069394854248659393727965084669877306313595224733499399250573606372456411597322536133963025090199844623600204879115052844454701474345283263949221839587303321355664746711373429508205788304082888679800643162458870848196905093072566884714253996394004068024720444480625108796823335612565934333763990799652735036186481904210044515628791821540552393872080053647129297387612431237456180138826304054270287450965847655184210004286951751257737009596158806182347283244994410837769612738407328336021609087131265602180206081683466933189638154822246595821142203000140059117578191660840385808359846079873335246467496075619371803223356755502872080453056546381709041180953536755530999186019076001589349158325972222087380428916036800996426784624414013906488554858764137672424825364777846907895205646039732945509468179248844546188668326218371084295813896246084315815322864673419004268430720664587057596127911263297072944106198383626696965109088092277543335913858278674637129016262095506643577302185311972590921929992011191984672813138176509359910701809003410447037028395682516567123827729742414436183843024786645681413695565319601502748385368500579285099598187472456332422345977618981118803165863921307846451115227138483178992784092392557404520042702555481043109978342689046124920277276114888527690531618974506313824753361309107087691218877221147615822122124991079642673515811280389458890418232150205324077979993141774259855668073792017303772813282577418889300834027597981292290713535412306805500015723943916011621111151412552619589835437049857303525782119359729271245603077614007902555109115618403436967969417130800419724091372906667120340376394171826508443045167954877405998287704915820373783176688369300190686718245993235182171672573806534400341997389383655709429558804898903036803249762062114687289020003594041841938515063660639651777162432847901200105688374598756891575870761892802403250487714983173228957301976023485634745912407022939706833818309809689873332373362524974748485821717021814889472292431375588958862702396742719832654040493365089889186586252164427405105160698184834980222730087303467774368842607725881507100350857244055805220410974612656641591621335932757315892896379577120861418218870098531464193056108750532323902273654856689502967508701921863242797203364575004377880534256061887131803240554832997070326782801700277305144063790254871107311223734792721768955126608612424270997942854649949424559433594917073753340688474079275580830698981132164489383480566113780307927856350844646158466623610771123530171420976904463183617855073249731355487034322812134965135844965360732562179924726676029293805427925505859749295898264657955351953725122574604778974483402599898013354995657782793572493773987542354097618392239787198071255332247866508231893041936723400812988786748920688672722800732638748359167913044536359646438003213407199205313287790796403885068338430649406997422681894086072715659709829010214285019194883326247119973505536300556455893077308260332245959304987748588713613864914827296636786319658462287504822317382098685772159587947197657198607949175148383122754125682164743716985741305501884154091403619526493438797137943592538174629418215419889325581118389638572693956164571193725119979541511253471351365274211403845035730677541422925076820446813291601527917597026594565421866235910284124242930484615103190097586136769093537907627227531719389693556177164057854801064590284112021126747127171511469716275681786353233874647911611961793857113981598812240591145929083092180538765984032091027415508076423609811571516248779161604806363731057746398102961393530851208156007094781275885784416586931249416843329491259743614813685476439018121696881645237655207961986710532209528791290359383541498707202870255121638483321562438101307583004836997123145231801191379142971187223079589483731959624642639658984349384139432053158823578298027182120885487707641178674138325141747599838174437757076720861622362373517674532054597126420144274284553404419870294303881976657332665523027435069674282490220669936034779943385875376380046765184406728628982463414987385141199293895913988754645292446983199779163604435484745664868881015548175400640327309016577842733526880441969488798115049614997257117547258482186308191528106681190536188701510338263387678014454865209266401488802091984383155138899328337580172530400452064913029828810431744598538532912922433086894260411884901039920308813845203635273128692083810461199359398467597698229010036393232473492126779256032163076620512732643286131265803836425983502096264527972640695748957652508117811838944532463515485485594333209697590361316274675790838559095321480209786596868961249527289365257087462786296413017579720144245639912038968483960530233359977698745931575748368962243105412043874444153336243393881976878708684352537430163325292241087932450402328766670236909362559427839991544250853561143674367731464360276942474989111231875245425192041980809233209141339685761001843810654757556692781744549505071243444453504760527126590179206088314052280998813080501332007817151661244989351682251191533805103253784617454390269550334357467104104424000386644587786789995264850017737589385059056156809153118313519763421556364112218988088498624350951060417925656272450585000703943983542325877304645246835980544317639141494464278854808070907625567407382540046195500997307065677271246911190097508447971052833530996023091648983761381475509203644393837279988229528893785507400019857678206858897160727869087419224460060662765241674992701569886117241491149482657663639988912669940860949710890694305729207618777127218998398286156625015493253404974882343844206671683820800467093551717221060821423412081649272882039934908166889929080677940842695430684599496359583985185782357191208233540232256069490334229326156156713038449694200971598282040613328723376275999983550696484852856564758533285858206184484503633023853970490846958258057972142165133452550848656387872499606293182642216064363613966676415904169072387939809782962407428787308681678642084572450516553161328870712274246217787330194719811960773620585257553489365712217192944683016821548982698427463676539903535093662698594804682364410703681477231522004662093990951178801198016075508385878479618097859608321609774337582585421394750196653502566270717495908782696378656423932407410004709394063738173932877085347561768552912866516217380123594380162421091115695768955936540328275854328158293079994952926756519867256569013173170136471621825015002049330690798277938005853496772316590977234731197632203403062867570916052303043086983129093373498073532614484512200377468681381689605983979058015910408832898901684496244244428452414873427504938719272636409026605274597072923495567600095819363609342570096343490764684259222978344871841784599837940586194181962009969396992248961289250505152650076315690203518910516650054423651158131697533612739996934625254967252087358945143926783361687467556951529177612005366590516770859219138669269546593272601192142165395815137087980098754743728742773054337393888254394080351250777368643127261498358947952084903742915488249710463835347895713969772098661613383166879091525559465426361806721188923577475212626640131105771522144667092441934261811458555045758139931239413967235013057023815377564678649641644879340160562987145594550776535307239993050938904029288771075891315671342922006786714471218284840801562358537071049414538358885143738555534190457370713470760093452405029718081385702650428546902273080351612687348219988867436927367152589054704787890767693296337952304574914950115180769607691659362037199603010174518375716648674100435822289564243976948546305397637593324109626079710583097482746638969887859618548078359862502370684132742208112058199275227804569422424478284709143476217592683378283514646665430929451520604033225606063316579070604555973624819810402542701261322367587236279936764207838401742763160216254606878572046183634349571856502607631282113203649068375314426318973865891077658840459860107351263374334569787998505948302166300471309357905845239709951889817084853859473635053827059140479231908198418832330330409657994982944065923844894819562674999388722122597666823234919815056226857297346742348588920846993364598182190340570231529996213864665818845537856099162243145949004421075094397031565794421364803974720178348187866483805508433742205693938440523672449118932441800285293555184906056892182415660958137475995928322864416564230138386200723132521134562576621356532506129623132208482148622102720333948571248475037703365995870098646542919981025979501321554489503903866231644984488638144309266462675732652183492564593775736906531438615091161716214321953110238175111778548334892816872862819219354235979646426977118886109512043938578421169839936193953619127160350773997023042273274464402220010863087204700820278585880424427707428301359590652815836805407196358819917956209383128669955195061728981229765015351836700608414607417191604186183771838368343590206411732588952355094719167985451282444601321042920106935388746198644714508196031391016278003988180936791449399922243770981383228641558565848153403917032469360237328208567841567318089826368766470930621977097790272362453703779303703055551844355388631869333273892518091170947838419071358063582750952473963984095689287102150819736214542932531495656687032521807847861708873843886412663973770178552612303284559979106722193335492612946473000318141289184338850192940303353665503611387172965855571395835773729159180445338362927849996148647581100783636968347121713677818669436244772592488092711987605315707663305211557840721350815867571786501920300968092128742022683116676741894603415527730945718998729816574213738879994644980186241876305837632659584726233520709812725023386988030781263676037728261316330427205280455283833115010202540480627366142817198064253606622729387758379941762282201248067339454939390739685634359701113620115218719646007836560575171982779740442409761592190342386338227491910109225391028694230382485555015713180668278621300914870348116925514997078070893348466430694171017125683788532768698539813601369584692163052203189404176118462038207479759606808280093475552454755588750563643234080032058220598796995839655626110732823275199099609111064006897338321030096650280968650445407719731642233820940285139872411611876474029282235250796904715680513767125408344305858743108219876890001003003061323077290293071091844845942409872561018402835286678508304158211884339583920779466049807936738576802450185093587747299980742225364827135999717823078636973316174260786538881888767108988691766512789816713440264591842202072990935122450546800187446081716249068684290982133908315710093174232738577704469236024772506175105934447778829520693471349528090823880993227046892349630038557121236791478083399796282818184423214743542033377031932200782597851661719598044768452026500573332731779523557868463433222598115530628808100549901511375218358884120059740550900536454058700530058032657395429906138508722523400717207690169774312443800172584147057519236621478039844811386803810069203498849731865848292413600339611428712286763416121474759644365779543407397209632526604240628588445862698791799657863185490830730146605119581495720353627329658527429272639782959304990909170132481669035988889425347504337152195917009736767217048336753366732773681867542818921860204725473248224720130468887117457378528585762018824182010052658227610408970455118070013226192535810060560645490902893376513797204402680102590058923622046868630893390057526520935967531527684557660053344068166287887842137300564967423548641379881532701448897333541303834273406920785959003446767231170871459039914277294128428162261701803935314881483939019694507611801622256110405254992390855980745248476143843693193828818622455623392267901795396185257672989713013411664652013049613208378151315816057970658117100057700077280281899234695306948100679089448678278514275766630614383403089922377171439475451029597476433981129165238391416851944407560399935610271921338900406183020615926276290213725361960897295382753168199690855761069134102667795837382227368280472846900164394676424024102118685904841737522137671571427535868802027423858145746870854714285546493940221002185241749237049420759878548525939550162258169125879500021268341786264315005517690994098668242608519191873774284481661021381270344395593961543914326909858177307658474678676096447489991443798157711167826777442401411563338411464940110734290869634785788955935011439374639830169513416976880266366437153844908482902770649667030631503687237030641409987755813893004742375740434630367008348801597048673363395925086213021186701987604035751242075724640686604258406770168633660773241965302094770096879228831697812446297110772523156586454122360244821678719178914449180003413268163934722721670735283337830711659121715782842950783342324405073062498786357237978244322823122414850435119713349178242359077524397695614393747566482192008268066572890128765877375728559749005298085809976273515597682770250064738085252276097982203870921685059960056048418207280453177774332353459765960121992490231518487195083654782572409145741968771629226867273741311985031941986833087493327665898082407385504930547870920421293885821513667143823485329669255233048437762760472104191198761765194874439126834117815880911337213466718701934130980676483105695718118354057931794622613370840112524385389216995849947995785401588148521771259042811021353568267702851398625652010773642285960145423922942276937488660293365217813588399708411809624513900077575319996726407673933230515652123270825362525201108974312078050645089913333906792610914743263856700849158356792655125842238189281783778938468302686807431609423396973651172749939493859912561250742034296334226029708797081057407241262392906379805458673074626371385460817442413752291457755939431569739350968907198688158096293526237210548653578126614423350081242177945652686127390189882237873706382818521787809620531237928777231767439149333970966616909441977562421569919583530139759631302600619379832794874709173469174349142732695255586804517378712263537393172488747137943058945544541565926711026128737305612614543355544760825554848408912331772054054779760080119090605217634510457827391191191399319518789407738093929758414312409241310208307120294856236191730841336955936736161248728527337462212118524767077351352842301910169621204396322686740093104065171320504735098546139351709188801776376465442253269595832744768504021418969535190243992419592902263082634504945902802760258563757556809351804131655650744187265180711937082595080468678731867898224898541918892074189261189587507444156962041527516127409777901450853725280840266270186052496066968182032550450373717771390501046689808960821374368645566251256978160164751545096362728584161603345058627905720306914562905644065369609435897617664928173083267618449918702479446599202806023357927936920522420089139716942025492272922121898540775589569413623494929976838526215643088234740318785577376040053580393873180672532521649295470036174456097297262268482118111191998071149194409821173158122142182527710347305484886995491457913661413395760370497741132546989834222856137074599544633297680270608840847740208101822730302891416530141558004413174454981808622792224913831307833528553561349483418925005649620568812151513889139984574948593501273915084078134713753394956946688691550920234726954214176039180750541249957149202974934490232704951392646308260302217915111902953871608873874350804717587398864941201671877668232651458147402424954513708803070289349269564827265917564584750788000190874140083196334859413165566082187211690687628032627975799948826815025804726825812721966079893253262871061027772753010249826750633420703964715673930474823981022481174097105331265523813551419006301119931759865181625631231118011365977645498097891341554161390153566763684167724431528139716763145063629667877631146172445841375627828239256385586783312528621952977045930741455326897023080830055888502819034665699808158662278956352596017497907408234530587101709286275119103020294372022552580762724958919780513966857171093469865250336415917048167783986802618840239556468805379123434231866829331610024508098675548793661713748878138899100066111109137009712832876859054383071389152346083940206658745306803331607871287290615722422917775811533446863289745483189819425152104597570249068947912259274323607316656055128227882046363358974436549016603014348353172984778694618257235968412464399794496037256443997337382451340827983613381523329190221317378874576415804322574040056750174362219815742622075812794986021035066935360084948536948131422606691758481947909248119914926303650238958573303491980411143396513676259790924184411291145684098238397180778881496302097959597723841221073472941243759073735926092634631510170767540731841084592452013190960684291207474058358188732120803813034251935145128840831268457718674654476095500163269739438281419554976593971975240309478761771343585254833914196037559619860590215558275085687123242632615961335350099756510873184724059182215061065179097384180587074609213256056527109000938089370009874470461038338364207155730279907779860109777337766795727312858777981243377578544329635871904255433455975317522190628504237798930026906035565228679698202132497294230456758958625593777350400109032979489660338724797710529380435075170294633018749527763678660002736445943021862619076337454635805711965958794505443812289937526706017400334301362589901828858923885515523902231176039774403243123009893508081723697568739904212950605937755882588536276047289398640230151675094822122156427888362770669702977538435894466632324109094622694172279266608024256279402347063892808627820923824802153463199751715973992085336713281145022471773051072511194332250445541292600111816098770856803026706344438742749717434155746269028980557716768397375608974119444026243138489023785070569943790047256757231357088668381593495686026938874693804646383099357345508916801408229185563901905810819599624299182434230733109117949669141763207402209234840101447214997735285753765053896004898235980669813975733267385284146078882817902567917262468053490476935411419432227869300009705444258862669125847356406581012210189487832445643266659488164303602512907138731232536029574233424371590654391436370722709230588212799123018547910593251250903969974337046483613839959445220828449640490179301013932446000941592834167796684628645188640432878511792965926453436661941522759535336041604637369137518505210620101066749046869608745627116792344090879337296498354636582688523306128199906316057835224476582528136327741500175973997319081533818157315601399405762403724267436916918478350060593982085489790060994058687871410797382649764093768602381764814335875366885302039575140829823064161467827014575239759063023850730957097089509187408626512576388636469912780739659691365014441014132073640466235665541234396521221511614073888963690607826784758407284614135764712566615514981187683890530472842985754789867274321617440173140642574832428595849959999520495847273632093189090204557901213706205603121826023070031438074179257928152261252033453129267007654332129164771861779711733773989110627197240348621357816013277624918542598727787765131633767074553404598758619089973349529246063288395527743005563231649831994754724521205712706410387231642354433083203918683585200181150969499207670020321438543495954146094456778394796683189934741216944885186210959254627048904953893397180177860530479284703115960870201755499335799225295260393380826783650273384963004855904804341053660090360126338016402609798062965866236065738241174133602361364142433801662051418352174931145290243271134470009571713790314015759694825663580312603836700394013655366482088677591655405842160321753739391268018321223467909978887082895793236395739993565535199980400152197034076967354946785778215556031010171946515198665177086377293920476520571247622630818322145335376258821483979247767550647768087462581760270693928506223891422472563741486254338900887742321668569581296216677910425701679234967774358542438264260047363145879092435273849706253608975225122752031267210212030165750244288892533329250555482193789366668114807824363808154851948918970107791385446329663102338183187146190964974154159670218692663694876804382424668427462601691582303406181392644721759478236270173801029608338452895977943171722614807376205075060881849712335353784389983308946032878666337858114352641058167223902378618399722438878736154290487890153700418376811706746292600842025860926689162780529460208308434990966803599297473693221005536801690488180917857526580091432838494613626603516463786313042614328424030170855459150112203725872501213685752954016403454553922258957485102219221069914444708761865959372618741294376046986222533730810260523878140411432275519988303552134000060268797903423624784832280360082648262267992355349903612598426393106515165656606372429661312047162311881619115563521689808626097895700505532681598338318005493993509070033386597915990719936680282395113523426948154061000119468507464904116105301295850803702384300367448895320333318407851499411061436959156583793876209790175768956908957353699853107326919988981110306540033527587482090173095033563226869755565515558274473880417435990331164496381586210195738560824657913319449754542907490668086155798962461782533517098369010238996699462208433062415436572490993276007346036922369074897692849959166893968677489745308150235551098241751205294601950550823886921824648478757127511508351515548302661808222705242897213590339309730579809060895298296712693312520448399999999985" + }, + "fused_gaussian": { + "rational": "41993873903138613033391774848017564424957785962564507386508188004071613706508140970657641403321115806861282922714655524301761203004135303569282515917323917893374063184765573192871135452488843908427811888970349419603513825966863947048914046995017231354280494187187092366892326424569723068932981389140167139160293130961241274983495676892882092856753942644057730650965294298891384437535366303413657772029643672939520062841013649196320270042024171403349464404073594808067062053824713323095299973471534993086956662805983343525641267336840286171750063175961959633584686878212349890753907046789671444810671589291636653225750741042515514684365251984932663679634055582115772363662798561551384057584150281718603896296844605684389385755961356666420966173619311376496349593750025900378358782291669258772995155120766721811354854259692467287036978003885729446336092288147987948973031001147669943174613002863369083838808674846570553601361705307321191074337143616258011807610324811072043677811250624098388719938381079922371976883189519863892675298713584676842295980498498965850546058038046153767485062507080578166213021645468524012759218479034626664930754047312615669586697330642569560474834214068398635125150772352002217744352007429063201571861812768341686649351178505032494998443604729402241023532819612290967835627932667873603874681957655280995017990281213098267392567258819022341298528942555562576264326565273182778163934753910607731698039228582279066243018709227438384408065161736392817957162637737361215030143997201225737010680399955712428936337954110625742012788555905813532227155730974024231541933371245948497074365089683507748449458867143773220992204715290781738015133493236992034223579543536295667252169780392688842532290836008821477357367277142789444403297699129036645016314147386639777518295434157572738961033208248833729400839475998367093098219748674838744837080803155213071419070955051631240004948206773907621077950423460865597078248834891629784638180207685462323805391361311840783189340267769290075707831801570410587306555807723603504774171554557254115174763669262039975358885308598179283591095821662533658581686755264094121683089011349432090244569715117580705154773034777911513267889835287111831173454928933024025364923281288526094782198938718633783453945946417150951468493927334226332979919497909632354498439765181819827045979914747160871046732385508214041467934111219373282919378013003147460662052187355783859658418047603147445740538482502889631115233807479393040341346188558796679932150668245669289466975901289724058216698349723171042826987576337353322274742053235090461055105055049706979896731289899280128156981079005197844344582403087702712956500394033301196826177853018244053827898148559539582850879438166733125591061602273801792239896239396844231348556564462052554398536464069802132037515230017664709495985368395930680042465375218245907220557295017372926256820400837594929692282940504857043224293316448635667292447182274477918963626526127702051116978698018804708146361963250200535970990144703005585779757624279390300523413080315087856468888695878025490338598682131378618234825252270089192366090299279707841354478880201292802719847939709458254554651618910670761516497325101161689176991655943889080088089845531138968004267196209948686727645854088791365184316911270832175725966613667971025297261648725914198842757817922641738922058733587984612527407580104701977651101793702195491070156044700342853883602519192241024753992637087827735219067834962602516557208629704858145199830330087998432177495519456859984068291848745759770611029919606237736589533900173487843994125987696482665253483798305022593065744703256179546373555814934934899941955390871985262077335670260943411781904613367494896680647987181255003987964897830115609016440352533545681132577756957343299151057680151711254691835808891547157946143082033394494329220551782156575027853642056843981462373669195582914342544792643175587887825934557187219554770300034180482359932853906266501206298107536016909446229986147843277558074138000194459021512067106987375562829683907634343003840950745167773629115523117173285992026394084890433794828116170907749773611948517864535454910452546798013841673866724280510633825457603329341375312203534142124641544935042118777668840838207376829169836043493970588456280597456593634777690973118901808001437107084088443559941209292816504977931375501269199590281259928568489175819770369583969792451178506382899229411558268610827803582340011189444811305801409530208596515338338245709262371874957133853978813298028138761759580199452154312033167296301120345795520374635708611524743123828558733438914544907133747917350576958971687865216233352043960087535170063168854588932759375224229005308274040571916998605792554888681816706834531723277955153045050689229252405481644345912933770276569298833876688270906769878243256978134747766159451937722986628049647488067751696539329240527136485094832328352210432672902659931526840343751920145633254222768672682998934590927193208026153408662329160753939584735720835459432075754320600228481114361380646201288381780561338061032933423907022320620995020533134256943713498491221184809531977537269501165856314969328042064107921734151816914042969781564328040644087803581991869681912706621605453556443644490921663132374621708160177939269157002219307117562296192350528971594833004553182142312884062882442594666489766097606678494277440346541989183684083004665049938735123328298825509655210744086638583026363846794196326578576538179363395235986984368237224600452516680379461109096695751597044664991829419609293676345982584451046353135826964488358199740621564843752585167485701402255936846135664129620349452967509846350329397972648418523626041936832772585991485826882095329221490974190210942698250566699953992063581409606218626916182490336951401518559238008250415827023070695624173335460487688348760027480583457048325153361146204744445659152481353781802759710462899025679733568909679666629882558904382712762724026678556824908761776111660403490550528993983498278177540624081303220536297990932397199971011485383273337013256812517243589544318955055536197184434926341612844791463400084402343656438416035237185098682008757090874080612592753604665162286199454417572387017762933891619562760137342495954505005707704576489235896595736558589693617726393611314047721987387705636078849339475702129852790254687739259795642400343863202992511875540780468789401136167299230521079688744201808856979824573784736491820627725541480528528441356738366527660991172466710895821167346312648148727256497172832346215023505525729781460751378714284885481673985511288863976568430344322600869313112837884595456665269011717413257965306991952743422688823705804976180992635234256023382262138397417485230125652033011657791064472923250628797253440024422522507694103078883581840107817621036623262701794087013055597754137152237369058880234218231210389840569188244935193945760933886847493016718309941611227079686376783217011071618213855833572484501970689394019318358102934061417662905566496143835986201935572559304347599219299629972572578475949325190671356096334869030833008139527119246926720439426898679083416784515087876970160507809607353717779394588858856169343711187203886918934828050324484777868707510949981836065668993769533964633620701841594146527289319075628411687144136737322097466335431705588037953608393862155655493848860496038828238310735065742553243594874469592787278637279506839093223401386794789456633006715624926613899468484555581735825101715025478726863885864479719514391990339990143631869719847414359073186544176251161387388582536204219046487638432946579617203244689676266818789552234733512814986784221811336058166044296138659426457067547376336690225789635717666210620940775365510864237795235514581812621239044278546955055037665449935147887211815892548018753141780178349980199092328408617582479268609532970060597037573635751112884257057931200042833836826476889623706049807274735853795015620757930614231926222073883654009549921140718846325097543399532621673252564745813174898666506434428232259349990771625408717129083561423200975872530187196262867111280698561763452516852614309185774665763353865606207564781436249169068771482119624055698629210105765246541403478003183393352896356644389160478499713357707164898097733873188136910968094610979312016003644790140193638844127526041601215496142953044343866423412687548769654356898209363234077743257021130677095920648254733568300677683205471157931078704822119373423718799109619865142346550201275446300246066550810552619136302665649803864245194354915151667686148622615376027244639787258825453430801899295935302659079060172258103038558209033550057757712226320991620362499265128715720677839727234270728201210427783320407649324145552612571132474935905793636613633450588966137592159821673968458182196554931325921207636445081062700267348713562164848431991271167469326578398806183374849812643401593114102899330634033490756272549961155900051219778763211113675368586320815987305459896825830338916186677843357377051447076020722169950160790614717712049226273268141721178563499098501017006180111120156277199205833903141483583440997699913183759046620476052511128907197955385138098468020013411782324346903107809364045034706576013567571862741461913796052501071737937814434252399039701545586820811248602709442403184601832084005402271782816400545051520420866733297409538705561648955285550750035014779394547915210096452089961519968333811616874018904842950805839188875718020113264136595427260295238384188882749796504769000397337289581493055521845107229009200249106696156103503476622138714691034418106206341194461726973801411509933236377367044812211136547167081554592771073953474061521078953830716168354751067107680166146764399031977815824268236026549595906674241277272023069385833978464569668659282254065523876660894325546327993147730482498002797996168203284544127339977675452250852611759257098920629141780956932435603609045960756196661420353423891329900375687096342125144821274899546868114083105586494404745279700791465980326961612778806784620794748196023098139351130010675638870260777494585672261531230069319028722131922632904743626578456188340327276771922804719305286903955530531247769910668378952820097364722604558037551331019494998285443564963917018448004325943203320644354722325208506899495323072678383853076701375003930985979002905277787853138154897458859262464325881445529839932317811400769403501975638777278904600859241992354282700104931022843226666780085094098542956627110761291988719351499571926228955093445794172092325047671679561498308795542918143451633600085499347345913927357389701224725759200812440515528671822255000898510460484628765915159912944290608211975300026422093649689222893967690473200600812621928745793307239325494005871408686478101755734926708454577452422468333093340631243687121455429255453722368073107843897239715675599185679958163510123341272472296646563041106851276290174546208745055682521825866943592210651931470376775087714311013951305102743653164160397905333983189328973224094894280215354554717524632866048264027187633080975568413714172375741877175480465810699300841143751094470133564015471782950810138708249267581695700425069326286015947563717776827805933698180442238781652153106067749485713662487356139858398729268438335172118519818895207674745283041122345870141528445076981964087711161539616655902692780882542855244226115795904463768312432838871758580703033741283961241340183140544981181669007323451356981376464937323974566164488837988431280643651194743620850649974503338748914445698393123443496885588524404598059946799517813833061966627057973260484180850203247196687230172168180700183159687089791978261134089911609500803351799801328321947699100971267084607662351749355670473521518178914927457252553571254798720831561779993376384075139113973269327065083061489826246937147178403466228706824159196579914615571876205579345524671443039896986799414299651987293787095780688531420541185929246435326375471038522850904881623359699284485898134543657354553854972331395279597409643173489041142798431279994885377813367837841318552850961258932669385355731269205111703322900381979399256648641355466558977571031060732621153775797524396534192273384476906806882929847423389044291014463700266147571028005281686781792877867429068920446588308468661977902990448464278495399703060147786482270773045134691496008022756853877019105902452892879062194790401201590932764436599525740348382712802039001773695318971446104146732812354210832372814935903703421369109754530424220411309413801990496677633052382197822589845885374676800717563780409620830390609525326895751209249280786307950297844785742796805769897370932989906160659914746087346034858013289705894574506795530221371926910294668534581285436899959543609439269180215405590593379418633013649281605036068571138351104967573575970494164333166380756858767418570622555167484008694985846468844095011691296101682157245615853746846285299823473978497188661323111745799944790901108871186416217220253887043850160081827254144460683381720110492372199528762403749314279386814620546577047882026670297634047175377584565846919503613716302316600372200522996095788784724832084395043132600113016228257457202607936149634633228230608271723565102971225259980077203461300908818282173020952615299839849616899424557252509098308118373031694814008040769155128183160821532816450959106495875524066131993160173937239413127029452959736133115878871371398583302424397590329068668947709639773830370052446649217240312381822341314271865696574103254394930036061409978009742120990132558339994424686482893937092240560776353010968611038334060848470494219677171088134357540831323060271983112600582191667559227340639856959997886062713390285918591932866090069235618747277807968811356298010495202308302285334921440250460952663689389173195436137376267810861113376190131781647544801522078513070249703270125333001954287915311247337920562797883451275813446154363597567387583589366776026106000096661146946697498816212504434397346264764039202288279578379940855389091028054747022124656087737765104481414068112646250175985995885581469326161311708995136079409785373616069713702017726906391851845635011548875249326766419317811727797524377111992763208382749005772912245940345368877300911098459319997057382223446376850004964419551714724290181967271854806115015165691310418748175392471529310372787370664415909997228167485215237427722673576432301904694281804749599571539156253873313351243720585961051667920955200116773387929305265205355853020412318220509983727041722482270169485210673857671149874089895996296445589297802058385058064017372583557331539039178259612423550242899570510153332180844068999995887674121213214141189633321464551546121125908255963492622711739564514493035541283363137712164096968124901573295660554016090903491669103976042268096984952445740601857196827170419660521143112629138290332217678068561554446832548679952990193405146314388372341428054298236170754205387245674606865919134975883773415674648701170591102675920369307880501165523497737794700299504018877096469619904524464902080402443584395646355348687549163375641567679373977195674094664105983101852501177348515934543483219271336890442138228216629054345030898595040605272778923942238984135082068963582039573269998738231689129966814142253293292534117905456253750512332672699569484501463374193079147744308682799408050850765716892729013075760771745782273343374518383153621128050094367170345422401495994764503977602208224725421124061061107113103718356876234679818159102256651318649268230873891900023954840902335642524085872691171064805744586217960446149959485146548545490502492349248062240322312626288162519078922550879727629162513605912789532924383403184999233656313741813021839736285981695840421866889237882294403001341647629192714804784667317386648318150298035541348953784271995024688685932185693263584348472063598520087812694342160781815374589736988021225935728872062427615958836973928492443024665403345791719772881389866356590451680297230894368803156660032776442880536166773110483565452864638761439534982809853491808753264255953844391169662410411219835040140746786398637694133826809998262734726007322192768972828917835730501696678617804571210200390589634267762353634589721285934638883547614342678367690023363101257429520346425662607136725568270087903171837054997216859231841788147263676196972691923324084488076143728737528795192401922914840509299900752543629593929162168525108955572391060994237136576349409398331027406519927645774370686659742471964904637019589965625592671033185552028014549818806951142355606119571177285869054398170844570878661666357732362880151008306401515829144767651138993406204952600635675315330591896809069984191051959600435690790054063651719643011545908587392964125651907820528300912267093828606579743466472769414710114965026837815843583642446999626487075541575117827339476461309927487972454271213464868408763456764785119807977049604708082582602414498745736016480961223704890668749847180530649416705808729953764056714324336685587147230211748341149545547585142557882499053466166454711384464024790560786487251105268773599257891448605341200993680044587046966620951377108435551423484610130918112279733110450071323388796226514223045603915239534368998982080716104141057534596550180783130283640644155339133126532405783052120537155525680083487142812118759425841498967524661635729995256494875330388622375975966557911246122159536077316615668933163045873141148443934226632859653772790429053580488277559543777944637083723204218215704804838558994911606744279721527378010984644605292459984048488404781790087693499255760568318616100555002715771801175205069646470106106926857075339897663203959201351799089704979489052345782167488798765432245307441253837959175152103651854297901046545942959592085897551602933147238088773679791996362820611150330260730026733847186549661178627049007847754069500997045234197862349980560942745345807160389641462038350979258117340059332052141960391829522456592191617732655494274447568090613425944825925763887961088847157967333318473129522792736959604767839515895687738118490996023922321775537704934053635733132873914171758130451961965427218460971603165993442544638153075821139994776680548333873153236618250079535322296084712548235075838416375902846793241463892848958943432289795111334590731962499037161895275195909242086780428419454667359061193148122023177996901328926915826302889460180337703966892946625480075242023032185505670779169185473650853881932736429749682454143553434719998661245046560469076459408164896181558380177453181255846747007695315919009432065329082606801320113820958278752550635120156841535704299516063401655682346939594985440570550312016834863734847684921408589925278405028804679911501959140143792995694935110602440398047585596584556872977527306347757173557595621388753928295167069655325228717587029231378749269517723337116607673542754281420947133192174634953400342396173040763050797351044029615509551869939901702070023368888113688897187640910808520008014555149699248959913906527683205818799774902277766001724334580257524162570242162611351929932910558455235071284968102902969118507320558812699226178920128441781352086076464685777054969222500250750765330769322573267772961211485602468140254600708821669627076039552971084895980194866512451984184644200612546273396936824995185556341206783999929455769659243329043565196634720472191777247172941628197454178360066147960550518247733780612636700046861520429062267171072745533477078927523293558184644426117309006193126543776483611944707380173367837382022705970248306761723087407509639280309197869520849949070704546105803685885508344257983050195649462915429899511192113006625143333182944880889467115858305649528882657202025137475377843804589721030014935137725134113514675132514508164348857476534627180630850179301922542443578110950043146036764379809155369509961202846700952517300874712432966462073103400084902857178071690854030368689911091444885851849302408131651060157147111465674697949914465796372707682536651279895373930088406832414631857318159945739826247727292533120417258997222356336876084288048979252434191804262084188341683193420466885704730465051181368312056180032617221779364344632146440504706045502513164556902602242613779517503306548133952515140161372725723344128449301100670025647514730905511717157723347514381630233991882881921139415013336017041571971960534325141241855887160344970383175362224333385325958568351730196489750861691807792717864759978569323532107040565425450983828720370984754923626902950405564027601313748097713995186312119035960923298457204655613905848066975448849046314418247428253352916163003262403302094537828954014492664529275014425019320070474808673826737025169772362169569628568941657653595850772480594292859868862757399369108495282291309597854212986101890099983902567980334725101545755153981569072553431340490224323845688292049922713940267283525666948959345556842070118211725041098669106006025529671476210434380534417892856883967200506855964536436717713678571386623485055250546310437309262355189969637131484887540564542281469875005317085446566078751379422748524667060652129797968443571120415255345317586098898490385978581727464544326914618669669024111872497860949539427791956694360600352890834602866235027683572717408696447238983752859843659957542378354244220066591609288461227120725692662416757657875921809257660352496938953473251185593935108657591752087200399262168340848981271553255296675496901008937810518931160171651064601692542158415193310491325523692524219807207924453111574277693130789146613530590061205419679794728612295000853317040983680680417683820834457677914780428945710737695835581101268265624696589309494561080705780603712608779928337294560589769381099423903598436891620548002067016643222532191469343932139937251324521452494068378899420692562516184521313069024495550967730421264990014012104551820113294443583088364941490030498122557879621798770913695643102286435492192907306716818435327996257985496708271873331916474520601846376232636967730105323471455378416785955871332417313808262109440690118026047799690441298718609781708529453970227834303366679675483532745169120776423929529588514482948655653342710028131096347304248962486998946350397037130442814760702755338392066925712849656413002693410571490036355980735569234372165073341304453397099927102952406128475019393829999181601918483307628913030817706340631300277243578019512661272478333476698152728685815964175212289589198163781460559547320445944734617075671701857902355849243412793187484873464978140312685508574083556507427199270264351810315598226594951364668268656592846365204360603438072864438984857892434837742226799672039524073381559302637163394531653605837520310544486413171531847547470559468426595704630446952405132809482194307941859787333492741654227360494390605392479895882534939907825650154844958198718677293367293587285683173813896701129344678065884348293122186784485764736386135391481677756532184326403153635838886190206388712102228082943013513694940020029772651304408627614456847797797849829879697351934523482439603578102310327552076780073714059047932710334238984184040312182131834365553029631191769337838210575477542405301099080671685023276016292830126183774636534837927297200444094116360563317398958186192126005354742383797560998104898225565770658626236475700690064640939389202337951032913912686046816295177984270648770117169682966974556224635479723018547315297396876861039240510381879031852444475362713431320210066567546513124016742045508137612593429442847625261672452240205343592161391562814244540041187886274090682146040400836264656976430076728640726411016342402358974404416232043270816904612479675619861649800701505839481984230130605022284929235506373068230530474635193897392353405873732494209631553910772058685079696394344010013395098468295168133130412323867509043614024324315567120529527797999517787298602455293289530535545631927586826371221748872864478415353348940092624435283136747458555714034268649886158324420067652210211935052025455682575722854132535389501103293613745452155698056228457826958382138390337370854731251412405142203037878472284996143737148375318478771019533678438348739236672172887730058681738553544009795187635312489287300743733622558176237848161577065075554478777975738467902218468587701179396849716235300417969417058162864536850606238628427200767572337317391206816479391146187697000047718535020799083714853291391520546802922671907008156993949987206703756451181706453180491519973313315717765256943188252562456687658355175991178918482618705995255620293524276332816380953387854751575279982939966295406407807779502841494411374524472835388540347538391690921041931107882034929190786265907416969407786543111460343906957059814096396695828132155488244261482685363831724255770207513972125704758666424952039665569739088149004374476852058632646775427321568779775755073593005638145190681239729945128491714292773367466312584103979262041945996700654710059889117201344780858557966707332902506127024668887198415428437219534724775016527777284252428208219214763595767847288086520985051664686326700832901967821822653930605729443952883361715822436370797454856288026149392562267236978064818580901829164013782056970511590839743609137254150753587088293246194673654564308992103116099948624009314110999334345612835206995903345380832297555329344718644103951080643510014187543590554953935655518953198746505258766733840021237134237032855651672939620486977312029978731575912559739643325872995102785849128419064947731046102822786421024559599295194720374075524489899430960305268368235310939768433981523158657877542691885182960271148113003297740171072801868514589547183030200953258562983786282210207817114429668663619023875040817434859570354888744148492993810077369690442835896313708478549009389904965147553889568771421780810658153990333837524939127718296181014795553765266294774346045146768652303314014131777250234522342502468617615259584591051788932569976944965027444334441698931828214694495310844394636082408967976063858363993829380547657126059449732506726508891307169924550533124323557614189739656398444337600027258244872415084681199427632345108768792573658254687381940919665000684111485755465654769084363658951427991489698626360953072484381676504350083575340647475457214730971378880975557794009943600810780752473377020430924392184976053237651484438970647134069011822349660057537918773705530539106972090692667425744384608973616658081027273655673543069816652006064069850586765973202156955230956200538365799937928993498021334178320286255617943262768127798583062611385323150027954024692714200756676586109685687429358538936567257245139429192099343902243529861006560784622255946267642485947511814189307839272167095398373921506734718673451161595774839336377229200352057296390975476452704899906074795608557683277279487417285440801850552308710025361803749433821438441263474001224558995167453493933316846321036519720704475641979315617013372619233852854858056967325002426361064715667281461839101645253052547371958111410816664872041075900628226784682808134007393558356092897663597859092680677307647053199780754636977648312812725992493584261620903459989861305207112410122544825253483111500235398208541949171157161297160108219627948241481613359165485380689883834010401159342284379626302655025266687261717402186406779198086022719834324124588659145672130826532049976579014458806119145632034081935375043993499329770383454539328900349851440600931066859229229619587515148495521372447515248514671967852699345662441023442150595441203583968841721325509893785207455766040366956753643809939765755962682739274272377296852156628144097159117478195184914922841253610253533018410116558916385308599130305377903518472240922651956696189601821153533941178141653878745296920972632618210746438697466818580404360043285160643708107148962489999880123961818408023297272551139475303426551400780456505767507859518544814482038065313008363282316751913583032291192965444927933443497277656799310087155339454003319406229635649681946941282908441768638351149689654772493337382311515822098881935751390807912457998688681130301428176602596807910588608270800979670896300045287742374801917505080359635873988536523614194598699170797483685304236221296552739813656762226238473349295044465132619821175778990217550438874833949806323815098345206695912568346240751213976201085263415022590031584504100652449515741466559016434560293533400590341035608450415512854588043732786322560817783617502392928447578503939923706415895078150959175098503413841620522169397913851460540080438434847817004580305866977494721770723948309098934998391383799995100038049258519241838736696444553889007752542986628799666294271594323480119130142811905657704580536333844064705370994811941887661942021865645440067673482126555972855618140935371563584725221935580417142395324054169477606425419808741943589635609566065011840786469773108818462426563402243806280688007816802553007541437561072223133332312638870548447341667028701956090952038712987229742526947846361582415775584545796786547741243538539917554673165923719201095606167106865650422895575851545348161180439869559067543450257402084613223994485792930653701844051268765220462428083838446097495827236508219666584464528588160264541805975594654599930609719684038572621972538425104594202926686573150210506465231672290695132365052077108747741700899824368423305251384200422622045229464381645022858209623653406650879115946578260653582106007542713864787528050931468125303421438238504100863638480564739371275554805267478611177190466489843154685323594011746555633432702565130969535102858068879997075888033500015067199475855906196208070090020662065566998088837475903149606598276628791414151593107415328011790577970404778890880422452156524473925126383170399584579501373498377267508346649478997679984170070598778380856737038515250029867126866226029026325323962700925596075091862223830083329601962874852765359239789145948469052447543942239227239338424963276831729997245277576635008381896870522543273758390806717438891378889568618470104358997582791124095396552548934640206164478329862438635726872667021538949740615445633379274592252559749174865552108265603859143122748319001836509230592268724423212489791723492169372436327037558887774560437801323650487637705971730456162119689281877877087878887075665452055676310724303397584827432644952265223824574178173328130112099999999999974803675658116832179964935091189461345025328422461295568095087197557031776095115417605415158007330515883230246371206685418943278197518817858430490449605649263975562089140656084277318728506693654943312866617790348237891704419881631770651571802989661187431703487687744579864604145258166158640211166515899716503824121423255235009902593864270744285947634413565361609420823420665169337478780217951805336782213796236287962295391810482207837974785497157990321357555843115159762767705172006142820015917079004147826002316409993884615239597895828296949962094422824219849187873072590065547655771926197133113597046425018008064549555374490691189380848809040401792219566650730536581802320863069169565449509830968837662221893236589366368546423186000147420295828413174102190243749984459772984730624998444736202906927539966913187087444184519627777813197668562332198344627111207230616181399311398034095232198281978549696714795092057667839182976815607285355397713830245192915433805113356773793313249625540966768036971352046576813870086288081664394820771849193894622411700900620489672365177172307739508962495751653100272187012718885592344468912579224001041547571612430598247981601614458263715099471558960818924909536588798669353388795542562079056882912338994988010389292896980503000933837162358655385880308232625419298623240399275837675190825406831402989205831272141039564459644708586595220882634466662454241404060836090333101639147653635360981176462850632560254188774463536969355160902958164309225702417357583270981913601679264557793591760026572542638197227533624554792326866456511880663706561415585461074839977252430901755380946189895350930324679713736067404677170825530957190919904057804779465852273878222599648698131764386694480625498394707113585579633714326333358021380522578012990211511568016133489022739505456356623380075050699762359496314400979744141068150795096753097751518106872157148557426969021255997031075935655427353229745923480641753050699065022129217091875388722605716765183212895530086395839338425954575300919057753647616066515365837897135497067265647530895141798442776014784668814841092429845342507002479804850987946841543526990146593190340745853258170929451576907136179133253092039266098827732901295927042640185584781046031226884343130680636768819729927632432149709429118903643599464200212048301254220587300936140890908103772412051151703477371960568695071575119239533268376030248373192198111523602768687586529684204949171438111532555676910498266221330859715512364175795192286864721992040709599052598426319814459226165565069980990166097374303807454197588006635154768058945723366936966970175812061961226060431923105811352596881293393250558147378372226099763580019281904293288189053567703261110864276250289472337099960124645363038635718924656062256361893461190866061322768467360878121558118720777490861989401174302408778962441591974520774869052455667665622989576244245907759497443042184630235697085774065424010130818599624531690635313248621824084323378769329812781188717175112182822049879678417405913178196648532145425432365819685952151810947286118666782473184705796840790721172829059104848637946484580345820432175295187312671879224318368091236174325047267209028653597543090101604939302986493805006433666551947146092681316619197439682274030787963412487546725180889409853237500694564420031799217384821643010764451480694345309246414956646764759847209232483555451937178813409338923778682705357906373179794287669838488484655385147604417747303358868559299022438490065674822177085112880101801947200940693502688325884009559024890752544137633382048236257358046279659895907293603524407382110400847909721016986444160553178046292272175866511039039060034826765476808842753598597843433952930857231979503061991611207691246997607221061301930634590135788479872591320453345825594020509365391908973247184898514665071705232314150779963303402467668930706054983287814765893611122575798482650251394473124414094647267304439265687668267137819979491710584040287656240099276221135478389854332262008311294033465155517199883324587092759735807574662302189655419394197695429552899335822530686129696028404784163549065739723103130297455350135832830889281278727053728471921191694995679965431693619704725438002395174812677879514725215073038974728733398695497075573902498098373903617646926231641526043819133385416128658915199137735749546933864035274424310097013241174699238480245831244042858906494508137778249618124529292896170260462353065038833503317850595993286333113216519154281874842090796997052574442576875025719687612712021183116742944251880328707412780099622219327792522687775218574833085154125702864759936651273055719751249589653824616987280870259988773623947478897962098687246640344374865462596815035575656849800836524467066790909975899280966033226908172969586462448556711013392452239737834058420699673987037455938073054045813119151340304328837366208023170211507159348982076402455683718108943100602988673740396258404041083895793748847912620047466338796390200639245443684075184307954802602503547636249158567498724340754547407639862911331383171612279226970931663197163380239945655786607627402987680119445833771900905267289114280813477638299300486211018403174761535246959508909851574218131061403175613547317850804878190852376027036727866133813305447002120575226975103893236438505798668415729462622284589682617043100197268090714612269562270534443200106140341435992903433535792074806489789550197200970036758926003020704694206873553548016850184181691923482204052854077092381962858407809379057665239728489991772323334541982549041773201004902348234423794192410449329372188118503821306985080155627061093748448899508579158646437892318601522227790328219494092189802361216410948885824374837900336448405108503870742802467105415485873434381049659980027604761851154236268823850290505797829159088864457195049750503786157582625495998723707386990743983511649925771004907983312277153332604508511187730918344173722260584592159858654192200022070464657370372342365583992865905054742934333003757905669682603609901033093475625551218067678221205440561680017393108770035997792045912489653846273408626966678281689339044195032293125121959949358593806136950378857688940790794745745475551632444347837200902628280327349456567789342239665028262343917594502427296996575377254106458462042558064846183829364163833211571366807567376618352690396314578722088325847187356444122614559793682078204492874675531718726359318299620461687352186753478914685812105255729158104907623364675111682882935185956980083403405296519973462507299592212411110763646101696300592270985896684562131123549172771429068710995608693226681614058941793406439478412132297269242726000838592969552045220815804828353946386705776517014291404418859446385970642716961549508861924608780193005325361316246049622721647935985346486495383538152669850895935309427378026042378923547792166641347517708657578564671859469061273766095658487053038883632543439667891504189969014035033263752188173930069793357029071686499856509298817586363588408985138239563149402256660102313698408278838656464417391440468420222016456452914430404885597186342199078581500195116283728451843967736343860792549949929290947273817903695314235587769332363246684686298393773287677667848639103169805309133278775493430010898360598603738279621219827578895043512083626408554622952987713517957606741520198740976647177227834963682706606703690683702376703057013558960554468053843075318244327632817632295896544065959167923126326020195970625044031660318909266650958504938970984712763881668481312168291364805796005913820878168091551384556088073494249303167566850478277468572107416940232052229678053186194239908726268659159892311007929466913198365100373422316804344125759471574197985864526218569400273627435534780693481457322858691250912427256573432871826966977400730038911267672910464471188748114931892990011880544602954829450512438834280217963641777455818549332269445765241279974299697904113866225776370115635158487722990627545241631460844266755669807594270047315568692204941473960280426996048461152512095060800096139343060644390005537024754769722549863146079414476481887682242279733231580862941928489888431414488535200541987680636275461131138250498558737110728225566580822473936540852075157913198089963988262186013366503712900171985375701061141359676087117853419143233412412790397813125915883816693523484375039270702314228173393680145952387470738207385861074382059553354045787321593742447611047159859019593390076717305241352777106728375945768720534228080914592069879234732219852360069513668428518218400610117681452883387050908999388310826430774383653216127644704727941518860422438818404552563896645138176865074579869965345372664207405027782500440922770567593296163659437563079273743330007755410405512668432457320515038456523818031819929646620317444704106995618925090682067041204447275418132951362379839590771862701090940805237299518404052960716289975090112413959044131538260401619579905546236470023306459969268132742073331794778848207510407616724061904501796650287993293985573769131754387566698029903525631169372770464236039114967292861900540899389796291933327906233680476499658115109849935401380052089744572027714368493322655681226768917140919187991952930605391858135314381572979176054391859456882355122851722368499356957237311339448560576179072647907513250838374334558089238900749596758636930310159672969087747479960021554276776663010626828669549978991132363271250873942128746023088018999713029875588657094229516496486674569187932041518042743643822856969486670350122097138599761597626251104166686892935662594479850535982306337897914026716771185379349136276195283322963815719153094040058173579773112673318071699751067244337355627915563087352627701570298987149359735391900311941360580813310505439058384070242455995455233636786158368499612921258198804430647560685674003463404672203204111361710501198321202299078029273523596013394728649488432944445740647622514931425840538637834572423546282003147787945665202059774587742194724913107235060271879131550136648103357152832179525120411803823032332715929227523151082386141116389321993594616677843533503248596643081261958408582766720846420257153824052926286995803633936846317168416827857626681681251338053598972628307941581166437265177469201388303001028733861021649788931197404434078007613387166604874895860302806156392969688153979174997641408412598256833327288117107061524684442521404471132682096040609313159538357898814616733632657239484454804587430379937041386294063999931948943540874226023733543224806768389100256844262626943932523496744604971396992263101014722674249113929019839948700391592451643585566179265164544479512535690682796906646999460893723709222740450904052233425635072814819984146743810186466263619385716079639512426842752524015656404703596477154788113138946559043974927253528546519000143995621253787727126742446727766579156135293661656170594640488592025101893925995236516622012062175335889234225895272274752966590486904479833844673608841117773934947371413391629216938353808101503761256799610086402616065543063431870787267169485220280371041583687420151414658951771496574554873694711720513580419495313749343317919861590716930229513916775050439450982579744958404228390431461769333903316439781091734656731008708136359350308571802507586316084960762438936998896728888108662875395152830175326592477915082932953810821547373303076230006458384331470474286853464330522457321739012540296676944851578179755229623255195890115673011290998595605929185811174121037605615260301306697206941231613809283153827489610015297996750651332580964125933901868646885357241164031920289311700162820023765216043709491489878051681987661896699091579890104187746124813043319546053034299517988920119203006831380539417239749235402588950386597715887089092651043525648467857247120767501062932003974169554916531616038403760950163106104251837711692957920262775905504482052051230656874276652392685197134176061807920351420208807623727742531586881147675288442452138804174717376886289457071025984180429308461119273805587267687016601162832241554214095906575314320941232003068773311979297295208868289423244640398368786561238476932978006259770812360446010815186720064613457381363560427307734521485362079484635969313855915870242091545966573425391321779840311457383196830987930924273279542558647732047014918802813258205730921432902760178163911328110637536172919185102395186345887673788536458528264272562683125759279045440341338040284555790970372318776598935782808617132337511960312587473500576311038457777947178534147281745467753214351718805701993420168570681306446092468775193919569461731754227501765634284803862549274450431528215229821293128554321916538061577440206056303604051152347592379085192026176463255295922681867176843853823198879251228737860024273834336438491870756645643972348820191810431036978358857316989337019455854417703501400100171545884739548857626466899509594783008492118693542992985222338990705652630487751892228820105915612901686803206132952520033125459334677288150269667847667773689903950903647513323589970967933704576680282742557750411432367911227672053771270783997821419571694773449260491848297831770218610039776679686202342526729165100749362974120439932190263045525678435238310219220063061635036965860938217264844011953677923219454709030696187428430820096090229860345265648494541015128976180983111595175538506923090103507080310129424536102474685560320804103895637656352123782328224158320130472677177160850018545361445802558798631374216135701777968532010469655812570906595211436880582055538047363041978363154013194154727405920464996003345188110263637744655663534188193418833376999563490917703468193697347119385475501206163836810132439650684999464463595616085824001268362371965828448844840280345958458628751633315218713186221193702878615018628799047135849723428401786366496082738317574239313483331974285920931011473119086752892157850178037924800198827427250813251597247662321269929234511932307381841459567449846379934384336399942003311831981500710272497339361592241141576478627032252972035486766545383167151786725206347357340937311151559132412249894408402468651118404303212974602918352354128775830358171778789363856164888892618993070674850403940148409312963321485373732804342074970350596536252652435792778673619453340924408001765570665932173889997021348268971165425890819636887116330990900585213748751094764517082413776327577601350454001663099508870857543366395854140618857183430917150240257076506247676011989253767648423368999247426879929935967242416840876786488187752609067694009763774966510637898308873595685397310075546062402222132646421318764968965161589576449865601076576493044232545869854260257693908000691493558600002467395527272071515286220007121269072327324455046421904426372956261291304178675229982117372701541819125059056022603667590345457904998537614374639141809028532555638885681903697748203687314132422517025800669393158863067331900470792028205883956912211366976595143167421058297547476767652595235880448519014469735950595210779297645338394447778415271699300685901357323179820297588673742118228057285321058751758533849362612186790787470501974615059392375613682595543201536410138888499293590890439273910068437197865734717063070022567392981460842975636836332645634656609518950758621850776256038000757060986522019911514648024024479529256726247749692600396380258309299121975484152511353414790320355169489540569864362592154543536952530635993975288970107827323169943379697792746559102403141297613438675065164747325563363335732137768985874259192109104538646009208810439061475664859985627095458598614485548476385297361116553248269223732310024308912070872705698504590451162655806612424227102488552646469472163422502491836452326280245369958089000459806211754912186896158228410982495746879866457270623358199195011422484371117129199609568011009109821178675190627729436802985186788440688584041849390916761840887947312383394703530910775246157807187264438562676762543430424697815642904534185200757992524968136271166080186045728991821661463378718106003980334134271678299936133709860728281216743136279010314087904914748041446427693365298202553753268098975915551928160817383519703914001042359164395606684338616302649298561698981992829317257273879765646219439342587819246167228439216669871431394392979385985982139245542287792144602435717964659037947258096897767001669884460894927111641794281816384846005549307154313762757482722884558846251095694420059548473822243642502698884934626656565363403457718054190354361001383556088043412535377588004154516821057217788246020624644397380088668783191270108715829314586636328257293628478567361097493257472803000185360582271909395016159090502513139409316603956277028439618594810801644861914558009485368824239738585525967561808968214193072454847564221524608855307683019452639743702836052153920116338351173931020983897310493849814531800224107754675054929303596314123214043507216527437271921078954741925941128928115213770237175150450438551300752558390111423265777065598750091691681610349976514762027741565971405397988647711661872950995310272671448914465270500567920300127173169321585125663528107649336838735840445265130836795279403791973247771820027429173734938669145909233921449132632160133729957205966722264091466172637650856279378600610751570337515365479242069891530121829815613506796520124080556530168727677706684591949907714312728744344495100619485203018562002846103074801766826574414420065253252326704278353610030598640102172476115310933639464020284207736325742567851707033464273733233217749766077469070577117096864603053035953432167083573193409213236824524009570906957130925947383900446543659008830339666998370536919294876958212117936335843885754796061402077624479188920546177012306568592530699506720740740652815535247697224494908737808887421259372072434224244748461469038240111657146735792124802182307633309801843561983959691688070203292823770595291347558299401772859481282590011663434352792515703766215122776989412445129595964400768714823764902286526044685029360406703435331459145631944433104444541667223346691705219600008916122286324357824237139296290462587357128905402385646606934677377039567818560120275651496945121728822820743668923417038100403934473217108154507316003133991670999676108058029049952278806622349172471058954496950174458291924055121664290624633940626122933199245560822500577702862834882454454747931742948327199584563284111126786093201859202643850504218266323891797377619864232024711954854786180688696597532498488715809487670840358142150190527513867939168000803252972063718554124355101062291064971893528091246491951795382810448594340760802550435919207931707425032748469618927905895078577420290361959006590591836243008735657669812789899081759091389047154846044832956982717192053098824515913724202583038933638535761171448642049265876213483616191345695865442627166747643022899758206804862769447782461172750438289365997730035395874347431147431720084695219027959794562296175542169521589373582230694268878036058978757985978667131786661687415453514887995191266910180450624051656083390076508720135058633340398965399251845485502457854702433188842040253664926858957229019138258218528895607664712380464292647922934931188748354121188533767018466499849549540801538406456039336223273108638519115847239574706998223754376268217349062411883080092528809489213479632472235961837905002888666195275929600042326538204454002573860882019167716684933651696235023081527492983960311223669689051359731632417979971883087742562639697356352679913752643486023865089213344329614596284124073734109832833175571895979297570786376417851015942966147555494216431814481278287490030557577272336517788468694993445210169882610322250742060293284732196024914000090233071466319730485016610282670405678784917514773293717246167381991038917364919531891194920491295101390685514079223691621489892418846474533853133429974112377941372114506778294023278291979428489619475172540220122756137959949058285693156985487581778786053345133068488890418555121009363905711733120595181230051320522176375390478009232062775641946955900551220885609104032556104251363624480127749644601666586197874349427170612448539484917442749486994990083947719868577161720969291179012766291980429666932381393220712135697176372698492101265858438654431732289498016071119628490915903176364565993522930419339597984611491161456692969705365991491371021859604870270847316350991998389775056816823679404915254886467703793017770094782665399968804424858988961882106149482984915324369281144012858405880735775660744729409702767777409147045823858229756661583439211751141371602888212728578423446020925677206631656491159814730690572211349051543047988250302198042558018743277302627591304401282434991344988407957715114795703957784898136582698258222858635005407842489536511643424284078682345560378534902830625214241287472208338865940009658459211799164939072546907611058556467941195705865405692587024770046371635839629884599830624392665894757929072964975340798536396384682197114273739371679349264285869619679695886421278137969371792857168025908966849672213737614442586886018217721109067475661274631118074996809748732060352749172346350885199763608722121218933857327750846792809448340660905768412850963521273403851228798198585532876501283430276343324825983383639788265499238280258983389856369554782131656609748284093804025474572987453467960045034426923263727564584402549945405274446914445403788501836627916049288643638934805444948747679760442698995490611237068046821994701859394637313688641303897009361238984474704950884013705204685784485468115675245328133055433384121526512031881645963276748192123162832622999488009775409791591749389707499325393251131742632573557382498651339239040625182046414303263351576531637772434732042997623263646138371340345657840937865027671198759790014066480685118393640716037649205287128503558972660347584462490289287212158585302669419361747241005991592737268907932023333850146981035105981701126465272226920737451782614138628138704684255615969908938803202245208701975036876000850115287638892174260417819361936805917126772949928426477200549611715042734335585929184371320185735220768834130974882327617863299417979992194709880352898527534145642282246891310230806607994373983121342191617450622507800632189761777721734311143578346796964759844572290206152198383953657105978186411558658459376700955995217327961740043738228556322914988363702000491038848910015422652181509376195621219833653853188292403236512999913981108362788510421494872626246481101731123664271607732433159229754596978885258586490453952324087509075921013115812388694855549866095543680437841388913810641064043029181199038806044292180877383637937156281336609085264539097354663920196776285555971064418417701963281007836497487813673308152097080891471517664318944042577221731828556920314310683415234884127599904355007463583703365636764512062470479036055304609907093025080768793623979623847628590095711661979322393193160469391024126687929308541158168318765110993346080689404158107818496668285876166772738663150234191891783035987982136409217354823431325891321321290102072181588839285910536237853138613803468753931955771564571240373799456609489575812690720899380668182221284938397297073654713474556819340551596988986034390224301924289735218079097243621679733543530183662009560625088284724396787154569721463401137061064660537604824258114579585961215436366478597229380251652388371910222893209437610737929698190219815266265218712166188871610821561873883376455693770872580888533314782371941207873960059472092125589954772695117432443942334291424842996528655876793844703165062311453275975287268235545590712375759498241205814141953962815564153390194558584615357350260774037509857232512194628083010119579096496310809461921636986629042458696176159061681715218883661564587956475760503474221067653536764788952182163393593991962940919022899120121752605679494573831585405410659727682283321200289327620838526824026281678672620843447904177266950676281312950787990635944425338830117951524866571579438810068305005347959408673872838968784726590454566287520478766299338023831752728706581166262925303824970716965797577487161249152556914678177272916629002313757710974808912737388279792936990756457996696267361964790956867873594122887418812506427619553759826465094257291103053760954667312733214556919258668918847379292361890170258819749218349765102281277889636256822943679539456597609565275910112365312287381799971368878987520549771088025165087671918246396855795105803630007675977746129290976128091705088016012010569340845834087048462525987404986894405292648910428776402846627823885434200310171427967287149054832010236020222756155315332298295103353175285316298766875791476964985447374841335270779042485528240455549818355328074133123793655825764111542161982503120706707053443110388781700965446537875491616724577144800145028776200658156547110597375313888764820411934743607058732134546955844196617112885591256162032922904971424335979520212449537612442774832401979607173964066529679193131484865219975600258496323785198667680950742937668279165134990083333629448543075068471141842539291627148087408969001188203979500258819306906407641636562333628269982970506538177521527086227184310364462639657813161108851458902501591730765817693045496153834517647509547847747024052283195807261414604738130340030825594411533400399392632298875802457992771500621466802393168813537629351613893991487473845667027638606688628080752096844739959695987257719457780286608996236227707813612782012761054452464156214004476202938328490522948561031361372338306328147385264240422883167775554685306060341423816838979058813436138939611086104805273474384868890223837311132198021355897356318878891246271690181879428044862209728230673875309731342198801828585674975509539084257787066753510904203713953578185734298462211774912870594366057020911467666258737146931513605107605799697485036523369022291391122667740840223135392372911938808618011591520933649859286594498518829430844249245368926640458013833020983533399334980640903071183302813493363218350554619214361684981603702371671405724364330160495964094665215698045269680125405865431486156206160933397439983645053076550949191280343420592934738724455805047187570835448200999589533108546720607138549381804629143205106180824183428156509370994097389949854795611514725671161417172671414665323594033839513531548515973787741445364689014368057409109336617611719558592906590203965477248735776681676535816745584399544553369234615830005151383635806595874158110008796361558089647940416078705826861426279676980520037242603901187199493007828246629234042339123320850162433168806109983227585184371479545994048334188587542384876638059645652916342484740393658653882083396063529226646432239414508431492911486415296436699742760975647095959168795929303042535096398173662479788765622165414714128377060056355122634865390033632307549628735518889668614773984782917750339707136935241915599265264602899527903640009892207378088167577314614812410629791976428459688287085165819604998544183361170599631122896539012848168471576825133153510001076775354459623063929190315119595563864986344261401841284544391593615411768080131547217813411012312364404503849443027457924006083216875732553926473104847910133099858761074874830497305703221703935068223231055111031984500708771586069699593759304394629372224218406984839987642969558688155932481148386368099405525246804512596721504080770014052591324716328512620779550838774973603900402137769927276402659790089135639441359884462462228247490910902687176531490850891196819288380392602535385934709642735277849618694967204694063728875526540375779825947813714036140546422390356435436573621888706023113541704529513082889051046295247833847880188953930064650168814840521816773257888916655446408825982286238907307879635293115007672752821847416420429073552136781519908851757383974028903613775135710622506000071925622908955186021636469316314817944069159531726096539495284288873111310777160812194982030609948851850180625284220733043239933901633405920413947706796327598008356262218610190831835230254934938816989310186207136503997570613090506740670838549165515252525200786791321819143094038441915253646835037519412197462219972827354575118849496951784218475606878085831483240780497521509788817458267222068356111805942664256915990422973320920428107294532605869469736675099630116205710940992875982452458992255549271614279348841950986445981049297539608530290555120064590139263823879959645795378634929750692287247173760328206463509329829498564242931452897636045776150462953109424494940897951695027686698361251689123675951736939091309797251816479813503166937565631014540639000965169720002939977170444888454896757982133267666595348474208022720200223437043405911928521914312856605377251678199693561176777403112834867402834786880612735959395910724066416286629115438777061849164866838651749714562805567498313436144748114754833846218634260360992895528118136134708922544061958653716231587195309918468195475137463356666120000612416677670931594999782778826345428776772207662154483831292183050550534649272521928071355253876876049467196100445768479342636299735880609746262654489072791103291736078264559473929845558749232065603308524241607778893569238740867722543149696932341502503658095068200049321282847103841274916414643207240041634168189576856426816476944937243478243988056109873696120860996625582920580968753734751354979460105378946016849169479746426772862321371012986285074225807956009472530432053043607850736395474371681127483169441119124817947137056897539481816911661156377234667116839512833293685720106094107188805843592952066619940378460921418278938285158672001754467179899990959680314486456282275157945987602760659801146697514458110236041034022725151509044135550803192925653217757132665471746528706085315644924170097760249252299175900973639494992010312601392009497957640732971485957776890849982079723880264382584204805622379444642354944882665701950002238822275088340784456126512430918568531473634656463656396945022033900962001652833454018994970861877686474035744965515969536665172666258828917937384601450325325542762068470639215876301313002082536818563876399787076630155630732619972435244648464150495080668735040637684514126351008598898094461644638765346072506124965904698376538203777464667335263737319205809707417376416961726302728186430873273747272667754600728766594213565417961449103540413028640865705255493096003121932740000000003/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999999989921470263246732871985974036475784538010131368984518227238034879022812710438046167042166063202932206353292098548482674167577311279007527143372196179842259705590224835656262433710927491402677" + }, + "group_bit_router": { + "rational": "167975495612554452133567099392070257699831143850258029546032752016286454826032563882630565613284463227445131690858622097207044812016541214277130063669295671573496252739062292771484541809955375633711247555881397678414055303867455788195656187980068925417121976748748369467569305698278892275731925556560668556641172523844965099933982707571528371427015770576230922603861177195565537750141465213654631088118574691758080251364054596785281080168096685613397857616294379232268248215298853292381199893886139972347826651223933374102565069347361144687000252703847838534338747512849399563015628187158685779242686357166546612903002964170062058737461007939730654718536222328463089454651194246205536230336601126874415585187378422737557543023845426665683864694477245505985398375000103601513435129166677035091980620483066887245419417038769869148147912015542917785344369152591951795892124004590679772698452011453476335355234699386282214405446821229284764297348574465032047230441299244288174711245002496393554879753524319689487907532758079455570701194854338707369183921993995863402184232152184615069940250028322312664852086581874096051036873916138506659723016189250462678346789322570278241899336856273594540500603089408008870977408029716252806287447251073366746597404714020129979993774418917608964094131278449163871342511730671494415498727830621123980071961124852393069570269035276089365194115770222250305057306261092731112655739015642430926792156914329116264972074836909753537632260646945571271828650550949444860120575988804902948042721599822849715745351816442502968051154223623254128908622923896096926167733484983793988297460358734030993797835468575092883968818861163126952060533972947968136894318174145182669008679121570755370129163344035285909429469108571157777613190796516146580065256589546559110073181736630290955844132832995334917603357903993468372392878994699354979348323212620852285676283820206524960019792827095630484311801693843462388312995339566519138552720830741849295221565445247363132757361071077160302831327206281642349226223230894414019096686218229016460699054677048159901435541234392717134364383286650134634326747021056376486732356045397728360978278860470322820619092139111646053071559341148447324693819715732096101459693125154104379128795754874535133815783785668603805873975709336905331919677991638529417993759060727279308183919658988643484186929542032856165871736444877493131677512052012589842648208749423135438633672190412589782962153930011558524460935229917572161365384754235186719728602672982677157867903605158896232866793398892684171307950305349413289098968212940361844220420220198827919586925159597120512627924316020791377378329612350810851826001576133204787304711412072976215311592594238158331403517752666932502364246409095207168959584957587376925394226257848210217594145856279208528150060920070658837983941473583722720169861500872983628882229180069491705027281603350379718769131762019428172897173265794542669169788729097911675854506104510808204467914792075218832585447853000802143883960578812022343119030497117561202093652321260351425875554783512101961354394728525514472939301009080356769464361197118831365417915520805171210879391758837833018218606475642683046065989300404646756707966623775556320352359382124555872017068784839794746910583416355165460737267645083328702903866454671884101189046594903656795371031271690566955688234934351938450109630320418807910604407174808781964280624178801371415534410076768964099015970548351310940876271339850410066228834518819432580799321320351993728709982077827439936273167394983039082444119678424950946358135600693951375976503950785930661013935193220090372262978813024718185494223259739739599767821563487941048309342681043773647127618453469979586722591948725020015951859591320462436065761410134182724530311027829373196604230720606845018767343235566188631784572328133577977316882207128626300111414568227375925849494676782331657370179170572702351551303738228748878219081200136721929439731415625066004825192430144067637784919944591373110232296552000777836086048268427949502251318735630537372015363802980671094516462092468693143968105576339561735179312464683630999094447794071458141819641810187192055366695466897122042535301830413317365501248814136568498566179740168475110675363352829507316679344173975882353825122389826374539110763892475607232005748428336353774239764837171266019911725502005076798361125039714273956703279081478335879169804714025531596917646233074443311214329360044757779245223205638120834386061353352982837049487499828535415915253192112555047038320797808617248132669185204481383182081498542834446098972495314234933755658179628534991669402307835886751460864933408175840350140680252675418355731037500896916021233096162287667994423170219554727266827338126893111820612180202756917009621926577383651735081106277195335506753083627079512973027912538991064637807750891946512198589952271006786157316962108545940379329313408841730691610639726107361375007680582533016891074690731995738363708772832104613634649316643015758338942883341837728303017282400913924457445522584805153527122245352244131733695628089282483980082132537027774853993964884739238127910149078004663425259877312168256431686936607267656171879126257312162576351214327967478727650826486421814225774577963686652529498486832640711757076628008877228470249184769402115886379332018212728569251536251529770378665959064390426713977109761386167956734736332018660199754940493313195302038620842976346554332105455387176785306314306152717453580943947937472948898401810066721517844436386783006388178659967317678437174705383930337804185412543307857953432798962486259375010340669942805609023747384542656518481397811870039385401317591890593674094504167747331090343965943307528381316885963896760843770793002266799815968254325638424874507664729961347805606074236952033001663308092282782496693341841950753395040109922333828193300613444584818977782636609925415127211038841851596102718934275638718666519530235617530851050896106714227299635047104446641613962202115975933993112710162496325212882145191963729588799884045941533093348053027250068974358177275820222144788737739705366451379165853600337609374625753664140948740394728035028363496322450371014418660649144797817670289548071051735566478251040549369983818020022830818305956943586382946234358774470905574445256190887949550822544315397357902808519411161018750957039182569601375452811970047502163121875157604544669196922084318754976807235427919298295138945967282510902165922114113765426953466110643964689866843583284669385250592594909025988691329384860094022102919125843005514857139541926695942045155455906273721377290403477252451351538381826661076046869653031861227967810973690755294823219904723970540937024093529048553589669940920502608132046631164257891693002515189013760097690090030776412315534327360431270484146493050807176348052222391016548608949476235520936872924841559362276752979740775783043735547389972066873239766444908318745507132868044286472855423334289938007882757576077273432411736245670651622265984575343944807742290237217390396877198519890290313903797300762685424385339476123332032558108476987706881757707594716333667138060351507880642031238429414871117578355435424677374844748815547675739312201297939111474830043799927344262675975078135858534482807366376586109157276302513646748576546949288389865341726822352151814433575448622621975395441984155312953242940262970212974379497878371149114549118027356372893605547179157826532026862499706455597873938222326943300406860101914907455543457918878057567961359960574527478879389657436292746176705004645549554330144816876185950553731786318468812978758705067275158208938934051259947136887245344232664177184554637705828270189505346760903158542870664842483763101462043456951180942058327250484956177114187820220150661799740591548847263570192075012567120713399920796369313634470329917074438131880242388150294543004451537028231724800171335347305907558494824199229098943415180062483031722456927704888295534616038199684562875385300390173598130486693010258983252699594666025737712929037399963086501634868516334245692803903490120748785051468445122794247053810067410457236743098663053415462424830259125744996676275085928478496222794516840423060986165613912012733573411585426577556641913998853430828659592390935492752547643872378443917248064014579160560774555376510104166404861984571812177375465693650750195078617427592837452936310973028084522708383682593018934273202710732821884631724314819288477493694875196438479460569386200805101785200984266203242210476545210662599215456980777419660606670744594490461504108978559149035301813723207597183741210636316240689032412154232836134200231030848905283966481449997060514862882711358908937082912804841711133281630597296582210450284529899743623174546454533802355864550368639286695873832728786219725303684830545780324250801069394854248659393727965084669877306313595224733499399250573606372456411597322536133963025090199844623600204879115052844454701474345283263949221839587303321355664746711373429508205788304082888679800643162458870848196905093072566884714253996394004068024720444480625108796823335612565934333763990799652735036186481904210044515628791821540552393872080053647129297387612431237456180138826304054270287450965847655184210004286951751257737009596158806182347283244994410837769612738407328336021609087131265602180206081683466933189638154822246595821142203000140059117578191660840385808359846079873335246467496075619371803223356755502872080453056546381709041180953536755530999186019076001589349158325972222087380428916036800996426784624414013906488554858764137672424825364777846907895205646039732945509468179248844546188668326218371084295813896246084315815322864673419004268430720664587057596127911263297072944106198383626696965109088092277543335913858278674637129016262095506643577302185311972590921929992011191984672813138176509359910701809003410447037028395682516567123827729742414436183843024786645681413695565319601502748385368500579285099598187472456332422345977618981118803165863921307846451115227138483178992784092392557404520042702555481043109978342689046124920277276114888527690531618974506313824753361309107087691218877221147615822122124991079642673515811280389458890418232150205324077979993141774259855668073792017303772813282577418889300834027597981292290713535412306805500015723943916011621111151412552619589835437049857303525782119359729271245603077614007902555109115618403436967969417130800419724091372906667120340376394171826508443045167954877405998287704915820373783176688369300190686718245993235182171672573806534400341997389383655709429558804898903036803249762062114687289020003594041841938515063660639651777162432847901200105688374598756891575870761892802403250487714983173228957301976023485634745912407022939706833818309809689873332373362524974748485821717021814889472292431375588958862702396742719832654040493365089889186586252164427405105160698184834980222730087303467774368842607725881507100350857244055805220410974612656641591621335932757315892896379577120861418218870098531464193056108750532323902273654856689502967508701921863242797203364575004377880534256061887131803240554832997070326782801700277305144063790254871107311223734792721768955126608612424270997942854649949424559433594917073753340688474079275580830698981132164489383480566113780307927856350844646158466623610771123530171420976904463183617855073249731355487034322812134965135844965360732562179924726676029293805427925505859749295898264657955351953725122574604778974483402599898013354995657782793572493773987542354097618392239787198071255332247866508231893041936723400812988786748920688672722800732638748359167913044536359646438003213407199205313287790796403885068338430649406997422681894086072715659709829010214285019194883326247119973505536300556455893077308260332245959304987748588713613864914827296636786319658462287504822317382098685772159587947197657198607949175148383122754125682164743716985741305501884154091403619526493438797137943592538174629418215419889325581118389638572693956164571193725119979541511253471351365274211403845035730677541422925076820446813291601527917597026594565421866235910284124242930484615103190097586136769093537907627227531719389693556177164057854801064590284112021126747127171511469716275681786353233874647911611961793857113981598812240591145929083092180538765984032091027415508076423609811571516248779161604806363731057746398102961393530851208156007094781275885784416586931249416843329491259743614813685476439018121696881645237655207961986710532209528791290359383541498707202870255121638483321562438101307583004836997123145231801191379142971187223079589483731959624642639658984349384139432053158823578298027182120885487707641178674138325141747599838174437757076720861622362373517674532054597126420144274284553404419870294303881976657332665523027435069674282490220669936034779943385875376380046765184406728628982463414987385141199293895913988754645292446983199779163604435484745664868881015548175400640327309016577842733526880441969488798115049614997257117547258482186308191528106681190536188701510338263387678014454865209266401488802091984383155138899328337580172530400452064913029828810431744598538532912922433086894260411884901039920308813845203635273128692083810461199359398467597698229010036393232473492126779256032163076620512732643286131265803836425983502096264527972640695748957652508117811838944532463515485485594333209697590361316274675790838559095321480209786596868961249527289365257087462786296413017579720144245639912038968483960530233359977698745931575748368962243105412043874444153336243393881976878708684352537430163325292241087932450402328766670236909362559427839991544250853561143674367731464360276942474989111231875245425192041980809233209141339685761001843810654757556692781744549505071243444453504760527126590179206088314052280998813080501332007817151661244989351682251191533805103253784617454390269550334357467104104424000386644587786789995264850017737589385059056156809153118313519763421556364112218988088498624350951060417925656272450585000703943983542325877304645246835980544317639141494464278854808070907625567407382540046195500997307065677271246911190097508447971052833530996023091648983761381475509203644393837279988229528893785507400019857678206858897160727869087419224460060662765241674992701569886117241491149482657663639988912669940860949710890694305729207618777127218998398286156625015493253404974882343844206671683820800467093551717221060821423412081649272882039934908166889929080677940842695430684599496359583985185782357191208233540232256069490334229326156156713038449694200971598282040613328723376275999983550696484852856564758533285858206184484503633023853970490846958258057972142165133452550848656387872499606293182642216064363613966676415904169072387939809782962407428787308681678642084572450516553161328870712274246217787330194719811960773620585257553489365712217192944683016821548982698427463676539903535093662698594804682364410703681477231522004662093990951178801198016075508385878479618097859608321609774337582585421394750196653502566270717495908782696378656423932407410004709394063738173932877085347561768552912866516217380123594380162421091115695768955936540328275854328158293079994952926756519867256569013173170136471621825015002049330690798277938005853496772316590977234731197632203403062867570916052303043086983129093373498073532614484512200377468681381689605983979058015910408832898901684496244244428452414873427504938719272636409026605274597072923495567600095819363609342570096343490764684259222978344871841784599837940586194181962009969396992248961289250505152650076315690203518910516650054423651158131697533612739996934625254967252087358945143926783361687467556951529177612005366590516770859219138669269546593272601192142165395815137087980098754743728742773054337393888254394080351250777368643127261498358947952084903742915488249710463835347895713969772098661613383166879091525559465426361806721188923577475212626640131105771522144667092441934261811458555045758139931239413967235013057023815377564678649641644879340160562987145594550776535307239993050938904029288771075891315671342922006786714471218284840801562358537071049414538358885143738555534190457370713470760093452405029718081385702650428546902273080351612687348219988867436927367152589054704787890767693296337952304574914950115180769607691659362037199603010174518375716648674100435822289564243976948546305397637593324109626079710583097482746638969887859618548078359862502370684132742208112058199275227804569422424478284709143476217592683378283514646665430929451520604033225606063316579070604555973624819810402542701261322367587236279936764207838401742763160216254606878572046183634349571856502607631282113203649068375314426318973865891077658840459860107351263374334569787998505948302166300471309357905845239709951889817084853859473635053827059140479231908198418832330330409657994982944065923844894819562674999388722122597666823234919815056226857297346742348588920846993364598182190340570231529996213864665818845537856099162243145949004421075094397031565794421364803974720178348187866483805508433742205693938440523672449118932441800285293555184906056892182415660958137475995928322864416564230138386200723132521134562576621356532506129623132208482148622102720333948571248475037703365995870098646542919981025979501321554489503903866231644984488638144309266462675732652183492564593775736906531438615091161716214321953110238175111778548334892816872862819219354235979646426977118886109512043938578421169839936193953619127160350773997023042273274464402220010863087204700820278585880424427707428301359590652815836805407196358819917956209383128669955195061728981229765015351836700608414607417191604186183771838368343590206411732588952355094719167985451282444601321042920106935388746198644714508196031391016278003988180936791449399922243770981383228641558565848153403917032469360237328208567841567318089826368766470930621977097790272362453703779303703055551844355388631869333273892518091170947838419071358063582750952473963984095689287102150819736214542932531495656687032521807847861708873843886412663973770178552612303284559979106722193335492612946473000318141289184338850192940303353665503611387172965855571395835773729159180445338362927849996148647581100783636968347121713677818669436244772592488092711987605315707663305211557840721350815867571786501920300968092128742022683116676741894603415527730945718998729816574213738879994644980186241876305837632659584726233520709812725023386988030781263676037728261316330427205280455283833115010202540480627366142817198064253606622729387758379941762282201248067339454939390739685634359701113620115218719646007836560575171982779740442409761592190342386338227491910109225391028694230382485555015713180668278621300914870348116925514997078070893348466430694171017125683788532768698539813601369584692163052203189404176118462038207479759606808280093475552454755588750563643234080032058220598796995839655626110732823275199099609111064006897338321030096650280968650445407719731642233820940285139872411611876474029282235250796904715680513767125408344305858743108219876890001003003061323077290293071091844845942409872561018402835286678508304158211884339583920779466049807936738576802450185093587747299980742225364827135999717823078636973316174260786538881888767108988691766512789816713440264591842202072990935122450546800187446081716249068684290982133908315710093174232738577704469236024772506175105934447778829520693471349528090823880993227046892349630038557121236791478083399796282818184423214743542033377031932200782597851661719598044768452026500573332731779523557868463433222598115530628808100549901511375218358884120059740550900536454058700530058032657395429906138508722523400717207690169774312443800172584147057519236621478039844811386803810069203498849731865848292413600339611428712286763416121474759644365779543407397209632526604240628588445862698791799657863185490830730146605119581495720353627329658527429272639782959304990909170132481669035988889425347504337152195917009736767217048336753366732773681867542818921860204725473248224720130468887117457378528585762018824182010052658227610408970455118070013226192535810060560645490902893376513797204402680102590058923622046868630893390057526520935967531527684557660053344068166287887842137300564967423548641379881532701448897333541303834273406920785959003446767231170871459039914277294128428162261701803935314881483939019694507611801622256110405254992390855980745248476143843693193828818622455623392267901795396185257672989713013411664652013049613208378151315816057970658117100057700077280281899234695306948100679089448678278514275766630614383403089922377171439475451029597476433981129165238391416851944407560399935610271921338900406183020615926276290213725361960897295382753168199690855761069134102667795837382227368280472846900164394676424024102118685904841737522137671571427535868802027423858145746870854714285546493940221002185241749237049420759878548525939550162258169125879500021268341786264315005517690994098668242608519191873774284481661021381270344395593961543914326909858177307658474678676096447489991443798157711167826777442401411563338411464940110734290869634785788955935011439374639830169513416976880266366437153844908482902770649667030631503687237030641409987755813893004742375740434630367008348801597048673363395925086213021186701987604035751242075724640686604258406770168633660773241965302094770096879228831697812446297110772523156586454122360244821678719178914449180003413268163934722721670735283337830711659121715782842950783342324405073062498786357237978244322823122414850435119713349178242359077524397695614393747566482192008268066572890128765877375728559749005298085809976273515597682770250064738085252276097982203870921685059960056048418207280453177774332353459765960121992490231518487195083654782572409145741968771629226867273741311985031941986833087493327665898082407385504930547870920421293885821513667143823485329669255233048437762760472104191198761765194874439126834117815880911337213466718701934130980676483105695718118354057931794622613370840112524385389216995849947995785401588148521771259042811021353568267702851398625652010773642285960145423922942276937488660293365217813588399708411809624513900077575319996726407673933230515652123270825362525201108974312078050645089913333906792610914743263856700849158356792655125842238189281783778938468302686807431609423396973651172749939493859912561250742034296334226029708797081057407241262392906379805458673074626371385460817442413752291457755939431569739350968907198688158096293526237210548653578126614423350081242177945652686127390189882237873706382818521787809620531237928777231767439149333970966616909441977562421569919583530139759631302600619379832794874709173469174349142732695255586804517378712263537393172488747137943058945544541565926711026128737305612614543355544760825554848408912331772054054779760080119090605217634510457827391191191399319518789407738093929758414312409241310208307120294856236191730841336955936736161248728527337462212118524767077351352842301910169621204396322686740093104065171320504735098546139351709188801776376465442253269595832744768504021418969535190243992419592902263082634504945902802760258563757556809351804131655650744187265180711937082595080468678731867898224898541918892074189261189587507444156962041527516127409777901450853725280840266270186052496066968182032550450373717771390501046689808960821374368645566251256978160164751545096362728584161603345058627905720306914562905644065369609435897617664928173083267618449918702479446599202806023357927936920522420089139716942025492272922121898540775589569413623494929976838526215643088234740318785577376040053580393873180672532521649295470036174456097297262268482118111191998071149194409821173158122142182527710347305484886995491457913661413395760370497741132546989834222856137074599544633297680270608840847740208101822730302891416530141558004413174454981808622792224913831307833528553561349483418925005649620568812151513889139984574948593501273915084078134713753394956946688691550920234726954214176039180750541249957149202974934490232704951392646308260302217915111902953871608873874350804717587398864941201671877668232651458147402424954513708803070289349269564827265917564584750788000190874140083196334859413165566082187211690687628032627975799948826815025804726825812721966079893253262871061027772753010249826750633420703964715673930474823981022481174097105331265523813551419006301119931759865181625631231118011365977645498097891341554161390153566763684167724431528139716763145063629667877631146172445841375627828239256385586783312528621952977045930741455326897023080830055888502819034665699808158662278956352596017497907408234530587101709286275119103020294372022552580762724958919780513966857171093469865250336415917048167783986802618840239556468805379123434231866829331610024508098675548793661713748878138899100066111109137009712832876859054383071389152346083940206658745306803331607871287290615722422917775811533446863289745483189819425152104597570249068947912259274323607316656055128227882046363358974436549016603014348353172984778694618257235968412464399794496037256443997337382451340827983613381523329190221317378874576415804322574040056750174362219815742622075812794986021035066935360084948536948131422606691758481947909248119914926303650238958573303491980411143396513676259790924184411291145684098238397180778881496302097959597723841221073472941243759073735926092634631510170767540731841084592452013190960684291207474058358188732120803813034251935145128840831268457718674654476095500163269739438281419554976593971975240309478761771343585254833914196037559619860590215558275085687123242632615961335350099756510873184724059182215061065179097384180587074609213256056527109000938089370009874470461038338364207155730279907779860109777337766795727312858777981243377578544329635871904255433455975317522190628504237798930026906035565228679698202132497294230456758958625593777350400109032979489660338724797710529380435075170294633018749527763678660002736445943021862619076337454635805711965958794505443812289937526706017400334301362589901828858923885515523902231176039774403243123009893508081723697568739904212950605937755882588536276047289398640230151675094822122156427888362770669702977538435894466632324109094622694172279266608024256279402347063892808627820923824802153463199751715973992085336713281145022471773051072511194332250445541292600111816098770856803026706344438742749717434155746269028980557716768397375608974119444026243138489023785070569943790047256757231357088668381593495686026938874693804646383099357345508916801408229185563901905810819599624299182434230733109117949669141763207402209234840101447214997735285753765053896004898235980669813975733267385284146078882817902567917262468053490476935411419432227869300009705444258862669125847356406581012210189487832445643266659488164303602512907138731232536029574233424371590654391436370722709230588212799123018547910593251250903969974337046483613839959445220828449640490179301013932446000941592834167796684628645188640432878511792965926453436661941522759535336041604637369137518505210620101066749046869608745627116792344090879337296498354636582688523306128199906316057835224476582528136327741500175973997319081533818157315601399405762403724267436916918478350060593982085489790060994058687871410797382649764093768602381764814335875366885302039575140829823064161467827014575239759063023850730957097089509187408626512576388636469912780739659691365014441014132073640466235665541234396521221511614073888963690607826784758407284614135764712566615514981187683890530472842985754789867274321617440173140642574832428595849959999520495847273632093189090204557901213706205603121826023070031438074179257928152261252033453129267007654332129164771861779711733773989110627197240348621357816013277624918542598727787765131633767074553404598758619089973349529246063288395527743005563231649831994754724521205712706410387231642354433083203918683585200181150969499207670020321438543495954146094456778394796683189934741216944885186210959254627048904953893397180177860530479284703115960870201755499335799225295260393380826783650273384963004855904804341053660090360126338016402609798062965866236065738241174133602361364142433801662051418352174931145290243271134470009571713790314015759694825663580312603836700394013655366482088677591655405842160321753739391268018321223467909978887082895793236395739993565535199980400152197034076967354946785778215556031010171946515198665177086377293920476520571247622630818322145335376258821483979247767550647768087462581760270693928506223891422472563741486254338900887742321668569581296216677910425701679234967774358542438264260047363145879092435273849706253608975225122752031267210212030165750244288892533329250555482193789366668114807824363808154851948918970107791385446329663102338183187146190964974154159670218692663694876804382424668427462601691582303406181392644721759478236270173801029608338452895977943171722614807376205075060881849712335353784389983308946032878666337858114352641058167223902378618399722438878736154290487890153700418376811706746292600842025860926689162780529460208308434990966803599297473693221005536801690488180917857526580091432838494613626603516463786313042614328424030170855459150112203725872501213685752954016403454553922258957485102219221069914444708761865959372618741294376046986222533730810260523878140411432275519988303552134000060268797903423624784832280360082648262267992355349903612598426393106515165656606372429661312047162311881619115563521689808626097895700505532681598338318005493993509070033386597915990719936680282395113523426948154061000119468507464904116105301295850803702384300367448895320333318407851499411061436959156583793876209790175768956908957353699853107326919988981110306540033527587482090173095033563226869755565515558274473880417435990331164496381586210195738560824657913319449754542907490668086155798962461782533517098369010238996699462208433062415436572490993276007346036922369074897692849959166893968677489745308150235551098241751205294601950550823886921824648478757127511508351515548302661808222705242897213590339309730579809060895298296712693312520448400000000004899214702632467328719859740364757845380101313689845182272380348790228127104380461670421660632029322063532920985484826741675773112790075271433721961798422597055902248356562624337109274914026774619773251466471161392951566817679526527082606287211958644749726813950750978319458416581032664634560844666063598866015296485693020940039610375457082977143790537654261446437683293682660677349915120871807221347128855184945151849181567241928831351899141988631961285430223372460639051070820688024571280063668316016591304009265639975538460958391583313187799848377691296879396751492290360262190623087704788532454388185700072032258198221497962764757523395236161607168878266602922146327209283452276678261798039323875350648887572946357465474185692744000589681183313652696408760974999937839091938922499993778944811627710159867652748349776738078511111252790674249328793378508444828922464725597245592136380928793127914198786859180368230671356731907262429141421590855320980771661735220453427095173252998502163867072147885408186307255480345152326657579283087396775578489646803602481958689460708689230958035849983006612401088748050875542369377875650316896004166190286449722392991926406457833054860397886235843275699638146355194677413555182170248316227531649355979952041557171587922012003735348649434621543521232930501677194492961597103350700763301627325611956823325088564158257838578834346380883530537866649816965616243344361332406556590614541443924705851402530241016755097854147877420643611832657236902809669430333083927654406717058231174367040106290170552788910134498219169307465826047522654826245662341844299359909009723607021523784759581403721298718854944269618708683302123828763679616231219117863409095512890398594792527057546777922501993578828454342318534857305333432085522090312051960846046272064533956090958021825426493520300202799049437985257603918976564272603180387012391006072427488628594229707876085023988124303742621709412918983693922567012202796260088516868367501554890422867060732851582120345583357353703818301203676231014590464266061463351588541988269062590123580567193771104059138675259364369719381370028009919219403951787366174107960586372761362983413032683717806307628544716533012368157064395310931605183708170560742339124184124907537372522722547075278919710529728598837716475614574397856800848193205016882349203744563563632415089648204606813909487842274780286300476958133073504120993492768792446094411074750346118736819796685752446130222707641993064885323438862049456703180769147458887968162838396210393705279257836904662260279923960664389497215229816790352026540619072235782893467747867880703248247844904241727692423245410387525173573002232589513488904399054320077127617173152756214270813044443457105001157889348399840498581452154542875698624249025447573844763464245291073869443512486232474883109963447957604697209635115849766367898083099476209822670662491958304976983631037989772168738520942788343096261696040523274398498126762541252994487296337293515077319251124754868700448731288199518713669623652712786594128581701729463278743808607243789144474667129892738823187363162884691316236419394551785938321383281728701180749250687516897273472364944697300189068836114614390172360406419757211945975220025734666207788584370725266476789758729096123151853649950186900723557639412950002778257680127196869539286572043057805922777381236985659826587059039388836929934221807748715253637355695114730821431625492719177150679353953938621540590417670989213435474237196089753960262699288708340451520407207788803762774010753303536038236099563010176550533528192945029432185118639583629174414097629528441603391638884067945776642212712185169088703466044156156240139307061907235371014394391373735811723428927918012247966444830764987990428884245207722538360543153919490365281813383302376082037461567635892988739594058660286820929256603119853213609870675722824219933151259063574444490303193930601005577892497656378589069217757062750673068551279917966842336161150624960397104884541913559417329048033245176133860622068799533298348371038943230298649208758621677576790781718211597343290122744518784113619136654196262958892412521189821400543331323557125114908214913887684766779982719861726774478818901752009580699250711518058900860292155898914933594781988302295609992393495614470587704926566104175276533541664514635660796550942998187735456141097697240388052964698796953920983324976171435625978032551112998472498117171584681041849412260155334013271402383973145332452866076617127499368363187988210297770307500102878750450848084732466971777007521314829651120398488877311170090751100874299332340616502811459039746605092222879004998358615298467949123481039955094495789915591848394748986561377499461850387260142302627399203346097868267163639903597123864132907632691878345849794226844053569808958951336233682798695948149823752292216183252476605361217315349464832092680846028637395928305609822734872435772402411954694961585033616164335583174995391650480189865355185560802556981774736300737231819210410014190544996634269994897363018189630559451645325532686449116907883726652788653520959782623146430509611950720477783335087603621069156457123253910553197201944844073612699046140987838035639406296872524245612702454189271403219512763409504108146911464535253221788008482300907900415572945754023194673662917850489138358730468172400789072362858449078249082137772800424561365743971613734143168299225959158200788803880147035704012082818776827494214192067400736726767693928816211416308369527851433631237516230660958913959967089293338167930196167092804019609392937695176769641797317488752474015285227940320622508244374993795598034316634585751569274406088911161312877976368759209444865643795543297499351601345793620434015482971209868421661943493737524198639920110419047404616945075295401162023191316636355457828780199002015144630330501983994894829547962975934046599703084019631933249108613330418034044750923673376694889042338368639434616768800088281858629481489369462335971463620218971737332015031622678730414439604132373902502204872270712884821762246720069572435080143991168183649958615385093634507866713126757356176780129172500487839797434375224547801515430755763163178982981902206529777391348803610513121309397826271157368958660113049375670378009709187986301509016425833848170232259384735317456655332846285467230269506473410761585258314888353303388749425776490458239174728312817971498702126874905437273198481846749408747013915658743248421022916632419630493458700446731531740743827920333613621186079893850029198368849644443054584406785202369083943586738248524494196691085716274843982434772906726456235767173625757913648529189076970904003354371878208180883263219313415785546823106068057165617675437785543882570867846198035447698435120772021301445264984198490886591743941385945981534152610679403583741237709512104169515694191168666565390070834630314258687437876245095064382633948212155534530173758671566016759876056140133055008752695720279173428116286745999426037195270345454353635940552958252597609026640409254793633115354625857669565761873680888065825811657721619542388745368796314326000780465134913807375870945375443170199799717163789095271614781256942351077329452986738745193575093150710671394556412679221236533115101973720043593442394414953118484879310315580174048334505634218491811950854071830426966080794963906588708911339854730826426814762734809506812228054235842217872215372301272977310531270529183586176263836671692505304080783882500176126641275637066603834019755883938851055526673925248673165459223184023655283512672366205538224352293976997212670267401913109874288429667760928208918712212744776959634905074636639569244031717867652793460401493689267217376503037886296791943458104874277601094509742139122773925829291434765003649709026293731487307867909602920155645070691641857884754992459727571960047522178411819317802049755337120871854567109823274197329077783060965119897198791616455464903105480462540633950891962510180966525843377067022679230377080189262274768819765895841121707984193844610048380243200384557372242577560022148099019078890199452584317657905927550728969118932926323451767713959553725657954140802167950722545101844524553001994234948442912902266323289895746163408300631652792359855953048744053466014851600687941502804244565438704348471413676572933649651161591252503663535266774093937500157082809256912693574720583809549882952829543444297528238213416183149286374969790444188639436078373560306869220965411108426913503783074882136912323658368279516938928879409440278054673714072873602440470725811533548203635997553243305723097534612864510578818911766075441689755273618210255586580552707460298319479861381490656829620111130001763691082270373184654637750252317094973320031021641622050673729829282060153826095272127279718586481269778816427982475700362728268164817789101672531805449519358363087450804363763220949198073616211842865159900360449655836176526153041606478319622184945880093225839877072530968293327179115392830041630466896247618007186601151973175942295076527017550266792119614102524677491081856944156459869171447602163597559185167733311624934721905998632460439399741605520208358978288110857473973290622724907075668563676751967811722421567432541257526291916704217567437827529420491406889473997427828949245357794242304716290591630053003353497338232356955602998387034547721240638691876350989919840086217107106652042507314678199915964529453085003495768514984092352075998852119502354628376918065985946698276751728166072170974575291427877946681400488388554399046390505004416666747571742650377919402143929225351591656106867084741517396545104781133291855262876612376160232694319092450693272286799004268977349422511662252349410510806281195948597438941567601247765442323253242021756233536280969823981820934547144633473998451685032795217722590242742696013853618688812816445446842004793284809196312117094094384053578914597953731777782962590490059725703362154551338289694185128012591151782660808239098350968778899652428940241087516526200546592413428611328718100481647215292129330863716910092604329544564465557287974378466711374134012994386572325047833634331066883385681028615296211705147983214535747385268673667311430506726725005352214395890513231766324665749060709876805553212004114935444086599155724789617736312030453548666419499583441211224625571878752615916699990565633650393027333309152468428246098737770085617884530728384162437252638153431595258466934530628957937819218349721519748165545176255999727795774163496904094934172899227073556401027377050507775730093986978419885587969052404058890696996455716079359794801566369806574342264717060658177918050142762731187626587997843574894836890961803616208933702540291259279936586975240745865054477542864318558049707371010096062625618814385908619152452555786236175899709014114186076000575982485015150908506969786911066316624541174646624682378561954368100407575703980946066488048248701343556936903581089099011866361947617919335378694435364471095739789485653566516867753415232406015045027198440345610464262172253727483149068677940881121484166334749680605658635807085986298219494778846882054321677981254997373271679446362867720918055667100201757803930318979833616913561725847077335613265759124366938626924034832545437401234287210030345264339843049755747995586915552434651501580611320701306369911660331731815243286189493212304920025833537325881897147413857322089829286956050161186707779406312719020918493020783560462692045163994382423716743244696484150422461041205226788827764926455237132615309958440061191987002605330323856503735607474587541428964656127681157246800651280095060864174837965959512206727950647586796366319560416750984499252173278184212137198071955680476812027325522157668958996941610355801546390863548356370604174102593871428988483070004251728015896678219666126464153615043800652424417007350846771831681051103622017928208204922627497106609570740788536704247231681405680835230494910970126347524590701153769808555216698869507545157828284103936721717233844477095222349070748066404651328966216856383626301257283764928012275093247917189180835473157692978561593475146244953907731912025039083249441784043260746880258453829525454241709230938085941448317938543877255423663480968366183866293701565287119361245829532787323951723697093118170234590928188059675211253032822923685731611040712655645312442550144691676740409580745383550695154145834113057090250732503037116181761365352161138223163881489275106395743131234468529350047841250349894002305244153831111788714136589126981871012857406875222807973680674282725225784369875100775678277846927016910007062537139215450197097801726112860919285172514217287666152246309760824225214416204609390369516340768104705853021183690727468707375415292795517004914951440097095337345753967483026582575889395280767241724147913435429267957348077823417670814005600400686183538958195430505867598038379132033968474774171971940889355962822610521951007568915280423662451606747212824531810080132501837338709152601078671390671094759615803614590053294359883871734818306721130970231001645729471644910688215085083135991285678286779093797041967393191327080874440159106718744809370106916660402997451896481759728761052182102713740953240876880252246540147863443752869059376047814711692877818836122784749713723280384360919441381062593978164060515904723932446380702154027692360414028321240517698144409898742241283216415582550625408495129312896633280521890708708643400074181445783210235194525496864542807111874128041878623250283626380845747522328222152189452167913452616052776618909623681859984013380752441054550978622654136752773675333507998253963670813872774789388477541902004824655347240529758602739997857854382464343296005073449487863313795379361121383833834515006533260874852744884774811514460074515196188543398893713607145465984330953270296957253933327897143683724045892476347011568631400712151699200795309709003253006388990649285079716938047729229527365838269799385519737537345599768013247327926002841089989357446368964566305914508129011888141947066181532668607146900825389429363749244606236529648999577633609874604473617212851898411673409416515103321432687115157455424659555570475972282699401615760593637251853285941494931217368299881402386145010609743171114694477813363697632007062282663728695559988085393075884661703563278547548465323963602340854995004379058068329655105310310405401816006652398035483430173465583416562475428733723668600961028306024990704047957015070593693475996989707519719743868969667363507145952751010436270776039055099866042551593235494382741589240302184249608888530585685275059875860646358305799462404306305972176930183479417041030775632002765974234400009869582109088286061144880028485076289309297820185687617705491825045165216714700919928469490806167276500236224090414670361381831619994150457498556567236114130222555542727614790992814749256529690068103202677572635452269327601883168112823535827648845467906380572669684233190189907070610380943521794076057878943802380843117190581353577791113661086797202743605429292719281190354694968472912229141284235007034135397450448747163149882007898460237569502454730382172806145640555553997174363561757095640273748791462938868252280090269571925843371902547345330582538626438075803034487403105024152003028243946088079646058592096097918117026904990998770401585521033237196487901936610045413659161281420677958162279457450368618174147810122543975901155880431309292679773518791170986236409612565190453754700260658989302253453342928551075943497036768436418154584036835241756245902659439942508381834394457942193905541189444466212993076894929240097235648283490822794018361804650623226449696908409954210585877888653690009967345809305120981479832356001839224847019648747584632913643929982987519465829082493432796780045689937484468516798438272044036439284714700762510917747211940747153762754336167397563667047363551789249533578814123643100984631228749057754250707050173721698791262571618136740803031970099872545084664320744182915967286645853514872424015921336537086713199744534839442913124866972545116041256351619658992165785710773461192810215013072395903662207712643269534078815656004169436657582426737354465210597194246795927971317269029095519062584877757370351276984668913756866679485725577571917543943928556982169151168578409742871858636151789032387591068006679537843579708446567177127265539384022197228617255051029930891538235385004382777680238193895288974570010795539738506626261453613830872216761417444005534224352173650141510352016618067284228871152984082498577589520354675132765080434863317258346545313029174513914269444389973029891212000741442329087637580064636362010052557637266415825108113758474379243206579447658232037941475296958954342103870247235872856772289819390256886098435421230732077810558974811344208615680465353404695724083935589241975399258127200896431018700219717214385256492856174028866109749087684315818967703764515712460855080948700601801754205203010233560445693063108262395000366766726441399906059048110966263885621591954590846647491803981241090685795657861082002271681200508692677286340502654112430597347354943361781060523347181117615167892991087280109716694939754676583636935685796530528640534919828823866889056365864690550603425117514402443006281350061461916968279566120487319262454027186080496322226120674910710826738367799630857250914977377980402477940812074248011384412299207067306297657680261013009306817113414440122394560408689904461243734557856081136830945302970271406828133857094932932870999064309876282308468387458412212143813728668334292773636852947298096038283627828523703789535601786174636035321358667993482147677179507832848471745343375543019184245608310497916755682184708049226274370122798026882962962611262140990788897979634951235549685037488289736896978993845876152960446628586943168499208729230533239207374247935838766752280813171295082381165390233197607091437925130360046653737411170062815064860491107957649780518383857603074859295059609146104178740117441626813741325836582527777732417778166668893386766820878400035664489145297431296948557185161850349428515621609542586427738709508158271274240481102605987780486915291282974675693668152401615737892868432618029264012535966683998704432232116199809115226489396689884235817987800697833167696220486657162498535762504491732796982243290002310811451339529817818991726971793308798338253136444507144372807436810575402016873065295567189510479456928098847819419144722754786390129993954863237950683361432568600762110055471756672003213011888254874216497420404249164259887574112364985967807181531241794377363043210201743676831726829700130993878475711623580314309681161447836026362367344972034942630679251159596327036365556188619384179331827930868768212395298063654896810332155734554143044685794568197063504853934464765382783461770508666990572091599032827219451077791129844691001753157463990920141583497389724589726880338780876111839178249184702168678086357494328922777075512144235915031943914668527146646749661814059551980765067640721802496206624333560306034880540234533361595861597007381942009831418809732755368161014659707435828916076553032874115582430658849521857170591691739724754993416484754135068073865999398198163206153625824157344893092434554076463388958298827992895017505072869396249647532320370115237956853918529888943847351620011554664781103718400169306152817816010295443528076670866739734606784940092326109971935841244894678756205438926529671919887532350970250558789425410719655010573944095460356853377318458385136496294936439331332702287583917190283145505671404063771864590221976865727257925113149960122230309089346071153874779973780840679530441289002968241173138928784099656000360932285865278921940066441130681622715139670059093174868984669527964155669459678127564779681965180405562742056316894766485959569675385898135412533719896449511765488458027113176093113167917713958477900690160880491024551839796233142772627941950327115144213380532273955561674220484037455622846932482380724920205282088705501561912036928251102567787823602204883542436416130224417005454497920510998578406666344791497397708682449794157939669770997947979960335790879474308646883877164716051065167921718667729525572882848542788705490793968405063433754617726929157992064284478513963663612705458263974091721677358391938445964645826771878821463965965484087438419481083389265403967993559100227267294717619661019545870815172071080379130661599875217699435955847528424597931939661297477124576051433623522943102642978917638811071109636588183295432919026646333756847004565486411552850914313693784083702708826526625964639258922762288845396206172191953001208792170232074973109210510365217605129739965379953631830860459182815831139592546330793032891434540021631369958146046573697136314729382241514139611322500856965149888833355463760038633836847196659756290187630444234225871764782823461622770348099080185486543358519538399322497570663579031716291859901363194145585538728788457094957486717397057143478478718783545685112551877487171428672103635867398688854950457770347544072870884436269902645098524472299987238994928241410996689385403540799054434888484875735429311003387171237793362643623073651403854085093615404915192794342131506005133721105373299303933534559153061996953121035933559425478219128526626438993136375216101898291949813871840180137707693054910258337610199781621097787657781615154007346511664197154574555739221779794990719041770795981962444948272187287978807437578549254754565215588037444955937898819803536054820818743137941872462700981312532221733536486106048127526583853106992768492651330491997952039101639166366997558829997301573004526970530294229529994605356956162500728185657213053406306126551089738928171990493054584553485361382631363751460110684795039160056265922740473574562864150596821148514014235890641390337849961157148848634341210677677446988964023966370949075631728093335400587924140423926804505861088907682949807130456554512554818737022463879635755212808980834807900147504003400461150555568697041671277447747223668507091799713705908802198446860170937342343716737485280742940883075336523899529310471453197671919968778839521411594110136582569128987565240923226431977495932485368766469802490031202528759047110886937244574313387187859039378289160824608793535814628423912745646234633837506803823980869311846960174952914225291659953454808001964155395640061690608726037504782484879334615412753169612946051999655924433451154041685979490504985924406924494657086430929732636919018387915541034345961815809296350036303684052463249554779422199464382174721751365555655242564256172116724796155224177168723509534551748625125346436341058156389418655680787105142223884257673670807853124031345989951254693232608388323565886070657275776170308886927314227681257242733660939536510399617420029854334813462547058048249881916144221218439628372100323075174495918495390514360382846647917289572772641877564096506751717234164632673275060443973384322757616632431273986673143504667090954652600936767567132143951928545636869419293725303565285285160408288726355357143642144951412554455213875015727823086258284961495197826437958303250762883597522672728885139753589188294618853898227277362206387955944137560897207697158940872316388974486718934174120734648038242500353138897587148618278885853604548244258642150419297032458318343844861745465914388917521006609553487640891572837750442951718792760879261065060874848664755486443286247495533505822775083490323554133259129487764831495840237888368502359819090780469729775769337165699371986114623507175378812660249245813103901149072942182362849503037992964823256567815851262256613560778234338461429401043096150039428930048778512332040478316385985243237847686547946516169834784704636246726860875534646258351825903042013896884270614147059155808728653574375967851763676091596480487010422717978295326341621642638910729133284801157310483354107296105126714690483373791616709067802705125251803151962543777701355320471806099466286317755240273220021391837634695491355875138906361818265150081915065197352095327010914826324665051701215299882867863190309948644996610227658712709091666516009255030843899235650949553119171747963025831986785069447859163827471494376491549675250025710478215039305860377029164412215043818669250932858227677034675675389517169447560681035278996873399060409125111558545027291774718157826390438261103640449461249149527199885475515950082199084352100660350687672985587423180423214520030703910984517163904512366820352064048042277363383336348193850103949619947577621170595641715105611386511295541736801240685711869148596219328040944080891024621261329193180413412701141265195067503165907859941789499365341083116169942112961822199273421312296532495174623303056446168647930012482826828213772441555126803861786151501966466898308579200580115104802632626188442389501255555059281647738974428234928538187823376786468451542365024648131691619885697343918080849798150449771099329607918428695856266118716772525939460879902401033985295140794670723802971750673116660539960333334517794172300273884567370157166508592349635876004752815918001035277227625630566546249334513079931882026152710086108344908737241457850558631252644435405835610006366923063270772181984615338070590038191390988096209132783229045658418952521360123302377646133601597570529195503209831971086002485867209572675254150517406455575965949895382668110554426754512323008387378959838783949030877831121146435984944910831254451128051044217809856624856017904811753313962091794244125445489353225312589541056961691532671102218741224241365695267355916235253744555758444344419221093897539475560895349244528792085423589425275515564985086760727517712179448838912922695501238925368795207314342699902038156337031148267014043616814855814312742937193848847099651482377464228083645870665034948587726054420430423198789940146093476089165564490670963360892541569491647755234472046366083734599437146377994075317723376996981475706561832055332083934133597339922563612284733211253973452873402218476857446739926414809486685622897457320641983856378660862792181078720501623461725944624824643733589759934580212306203796765121373682371738954897823220188750283341792803998358132434186882428554197527218516572820424723296733712626037483976389559799419182446058902684645668690685658661294376135358054126194063895150965781458756057472229636437346470446878234371626360815861908994943106726706143266982337598178213476938463320020605534543226383496632440035185446232358591761664314823307445705118707922080148970415604748797972031312986516936169356493283400649732675224439932910340737485918183976193336754350169539506552238582611665369938961574634615528333584254116906585728957658033725971645945661185746798971043902588383836675183717212170140385592694649919155062488661658856513508240225420490539461560134529230198514942075558674459095939131671001358828547740967662397061058411598111614560039568829512352670309258459249642519167905713838753148340663278419994176733444682398524491586156051392673886307300532614040004307101417838492255716761260478382255459945377045607365138177566374461647072320526188871253644049249457618015397772109831696024332867502930215705892419391640532399435044299499321989222812886815740272892924220444127938002835086344278798375037217578517488896873627939359950571878234752623729924593545472397622100987218050386886016323080056210365298865314050483118203355099894415601608551079709105610639160356542557765439537849848912989963643610748706125963403564787277153521570410141543738838570941111398474779868818776254915502106161503119303791254856144562185689561425741746294487554824092454166818118052331556204185180991335391520755815720258600675259362087267093031555666621785635303929144955629231518541172460030691011287389665681716294208547126079635407029535896115614455100542842490024000287702491635820744086545877265259271776276638126904386157981137155492445243108643248779928122439795407400722501136882932172959735606533623681655790827185310392033425048874440763327340921019739755267957240744828546015990282452362026962683354196662061010100803147165287276572376153767661014587340150077648789848879891309418300475397987807136873902427512343325932963121990086039155269833068888273424447223770657027663961691893283681712429178130423477878946700398520464822843763971503929809835969022197086457117395367803945783924197190158434121162220480258360557055295519838583181514539719002769148988695041312825854037319317994256971725811590544183104601851812437697979763591806780110746793445006756494703806947756365239189007265919254012667750262524058162556003860678880011759908681779553819587031928533070666381393896832090880800893748173623647714087657251426421509006712798774244707109612451339469611339147522450943837583642896265665146516461755108247396659467354606998858251222269993253744578992459019335384874537041443971582112472544538835690176247834614864926348781239673872781900549853426664480002449666710683726379999131115305381715107088830648617935325168732202202138597090087712285421015507504197868784401783073917370545198943522438985050617956291164413166944313058237895719382234996928262413234096966431115574276954963470890172598787729366010014632380272800197285131388415365099665658572828960166536672758307425707265907779748973912975952224439494784483443986502331682323875014939005419917840421515784067396677918985707091449285484051945140296903231824037890121728212174431402945581897486724509932677764476499271788548227590157927267646644625508938668467358051333174742880424376428755223374371808266479761513843685673115753140634688007017868719599963838721257945825129100631783950411042639204586790057832440944164136090900606036176542203212771702612871028530661886986114824341262579696680391040997009196703603894557979968041250405568037991830562931885943831107563399928318895521057530336819222489517778569419779530662807800008955289100353363137824506049723674274125894538625854625587780088135603848006611333816075979883447510745896142979862063878146660690665035315671749538405801301302171048273882556863505205252008330147274255505599148306520622522930479889740978593856601980322674940162550738056505404034395592377846578555061384290024499863618793506152815109858669341054949276823238829669505667846905210912745723493094989090671018402915066376854261671845796414161652114563462821021972384012487730960000000009/100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044840000000000489921470263246732871985974036475784538010131368984518227238034879022812710438046167042166063202932206353292098548482674167577311279007527143372196179842259705590224835656262433710927491402677" + }, + "group_scans": { + "rational": "2499999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999/2500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999996" + }, + "boundary_algebraic_matrix": { + "rational": "41993873903138613033391774848017564424957785962564507386508188004071613706508140970657641403321115806861282922714655524301761203004135303569282515917323917893374063184765573192871135452488843908427811888970349419603513825966863947048914046995017231354280494187187092366892326424569723068932981389140167139160293130961241274983495676892882092856753942644057730650965294298891384437535366303413657772029643672939520062841013649196320270042024171403349464404073594808067062053824713323095299973471534993086956662805983343525641267336840286171750063175961959633584686878212349890753907046789671444810671589291636653225750741042515514684365251984932663679634055582115772363662798561551384057584150281718603896296844605684389385755961356666420966173619311376496349593750025900378358782291669258772995155120766721811354854259692467287036978003885729446336092288147987948973031001147669943174613002863369083838808674846570553601361705307321191074337143616258011807610324811072043677811250624098388719938381079922371976883189519863892675298713584676842295980498498965850546058038046153767485062507080578166213021645468524012759218479034626664930754047312615669586697330642569560474834214068398635125150772352002217744352007429063201571861812768341686649351178505032494998443604729402241023532819612290967835627932667873603874681957655280995017990281213098267392567258819022341298528942555562576264326565273182778163934753910607731698039228582279066243018709227438384408065161736392817957162637737361215030143997201225737010680399955712428936337954110625742012788555905813532227155730974024231541933371245948497074365089683507748449458867143773220992204715290781738015133493236992034223579543536295667252169780392688842532290836008821477357367277142789444403297699129036645016314147386639777518295434157572738961033208248833729400839475998367093098219748674838744837080803155213071419070955051631240004948206773907621077950423460865597078248834891629784638180207685462323805391361311840783189340267769290075707831801570410587306555807723603504774171554557254115174763669262039975358885308598179283591095821662533658581686755264094121683089011349432090244569715117580705154773034777911513267889835287111831173454928933024025364923281288526094782198938718633783453945946417150951468493927334226332979919497909632354498439765181819827045979914747160871046732385508214041467934111219373282919378013003147460662052187355783859658418047603147445740538482502889631115233807479393040341346188558796679932150668245669289466975901289724058216698349723171042826987576337353322274742053235090461055105055049706979896731289899280128156981079005197844344582403087702712956500394033301196826177853018244053827898148559539582850879438166733125591061602273801792239896239396844231348556564462052554398536464069802132037515230017664709495985368395930680042465375218245907220557295017372926256820400837594929692282940504857043224293316448635667292447182274477918963626526127702051116978698018804708146361963250200535970990144703005585779757624279390300523413080315087856468888695878025490338598682131378618234825252270089192366090299279707841354478880201292802719847939709458254554651618910670761516497325101161689176991655943889080088089845531138968004267196209948686727645854088791365184316911270832175725966613667971025297261648725914198842757817922641738922058733587984612527407580104701977651101793702195491070156044700342853883602519192241024753992637087827735219067834962602516557208629704858145199830330087998432177495519456859984068291848745759770611029919606237736589533900173487843994125987696482665253483798305022593065744703256179546373555814934934899941955390871985262077335670260943411781904613367494896680647987181255003987964897830115609016440352533545681132577756957343299151057680151711254691835808891547157946143082033394494329220551782156575027853642056843981462373669195582914342544792643175587887825934557187219554770300034180482359932853906266501206298107536016909446229986147843277558074138000194459021512067106987375562829683907634343003840950745167773629115523117173285992026394084890433794828116170907749773611948517864535454910452546798013841673866724280510633825457603329341375312203534142124641544935042118777668840838207376829169836043493970588456280597456593634777690973118901808001437107084088443559941209292816504977931375501269199590281259928568489175819770369583969792451178506382899229411558268610827803582340011189444811305801409530208596515338338245709262371874957133853978813298028138761759580199452154312033167296301120345795520374635708611524743123828558733438914544907133747917350576958971687865216233352043960087535170063168854588932759375224229005308274040571916998605792554888681816706834531723277955153045050689229252405481644345912933770276569298833876688270906769878243256978134747766159451937722986628049647488067751696539329240527136485094832328352210432672902659931526840343751920145633254222768672682998934590927193208026153408662329160753939584735720835459432075754320600228481114361380646201288381780561338061032933423907022320620995020533134256943713498491221184809531977537269501165856314969328042064107921734151816914042969781564328040644087803581991869681912706621605453556443644490921663132374621708160177939269157002219307117562296192350528971594833004553182142312884062882442594666489766097606678494277440346541989183684083004665049938735123328298825509655210744086638583026363846794196326578576538179363395235986984368237224600452516680379461109096695751597044664991829419609293676345982584451046353135826964488358199740621564843752585167485701402255936846135664129620349452967509846350329397972648418523626041936832772585991485826882095329221490974190210942698250566699953992063581409606218626916182490336951401518559238008250415827023070695624173335460487688348760027480583457048325153361146204744445659152481353781802759710462899025679733568909679666629882558904382712762724026678556824908761776111660403490550528993983498278177540624081303220536297990932397199971011485383273337013256812517243589544318955055536197184434926341612844791463400084402343656438416035237185098682008757090874080612592753604665162286199454417572387017762933891619562760137342495954505005707704576489235896595736558589693617726393611314047721987387705636078849339475702129852790254687739259795642400343863202992511875540780468789401136167299230521079688744201808856979824573784736491820627725541480528528441356738366527660991172466710895821167346312648148727256497172832346215023505525729781460751378714284885481673985511288863976568430344322600869313112837884595456665269011717413257965306991952743422688823705804976180992635234256023382262138397417485230125652033011657791064472923250628797253440024422522507694103078883581840107817621036623262701794087013055597754137152237369058880234218231210389840569188244935193945760933886847493016718309941611227079686376783217011071618213855833572484501970689394019318358102934061417662905566496143835986201935572559304347599219299629972572578475949325190671356096334869030833008139527119246926720439426898679083416784515087876970160507809607353717779394588858856169343711187203886918934828050324484777868707510949981836065668993769533964633620701841594146527289319075628411687144136737322097466335431705588037953608393862155655493848860496038828238310735065742553243594874469592787278637279506839093223401386794789456633006715624926613899468484555581735825101715025478726863885864479719514391990339990143631869719847414359073186544176251161387388582536204219046487638432946579617203244689676266818789552234733512814986784221811336058166044296138659426457067547376336690225789635717666210620940775365510864237795235514581812621239044278546955055037665449935147887211815892548018753141780178349980199092328408617582479268609532970060597037573635751112884257057931200042833836826476889623706049807274735853795015620757930614231926222073883654009549921140718846325097543399532621673252564745813174898666506434428232259349990771625408717129083561423200975872530187196262867111280698561763452516852614309185774665763353865606207564781436249169068771482119624055698629210105765246541403478003183393352896356644389160478499713357707164898097733873188136910968094610979312016003644790140193638844127526041601215496142953044343866423412687548769654356898209363234077743257021130677095920648254733568300677683205471157931078704822119373423718799109619865142346550201275446300246066550810552619136302665649803864245194354915151667686148622615376027244639787258825453430801899295935302659079060172258103038558209033550057757712226320991620362499265128715720677839727234270728201210427783320407649324145552612571132474935905793636613633450588966137592159821673968458182196554931325921207636445081062700267348713562164848431991271167469326578398806183374849812643401593114102899330634033490756272549961155900051219778763211113675368586320815987305459896825830338916186677843357377051447076020722169950160790614717712049226273268141721178563499098501017006180111120156277199205833903141483583440997699913183759046620476052511128907197955385138098468020013411782324346903107809364045034706576013567571862741461913796052501071737937814434252399039701545586820811248602709442403184601832084005402271782816400545051520420866733297409538705561648955285550750035014779394547915210096452089961519968333811616874018904842950805839188875718020113264136595427260295238384188882749796504769000397337289581493055521845107229009200249106696156103503476622138714691034418106206341194461726973801411509933236377367044812211136547167081554592771073953474061521078953830716168354751067107680166146764399031977815824268236026549595906674241277272023069385833978464569668659282254065523876660894325546327993147730482498002797996168203284544127339977675452250852611759257098920629141780956932435603609045960756196661420353423891329900375687096342125144821274899546868114083105586494404745279700791465980326961612778806784620794748196023098139351130010675638870260777494585672261531230069319028722131922632904743626578456188340327276771922804719305286903955530531247769910668378952820097364722604558037551331019494998285443564963917018448004325943203320644354722325208506899495323072678383853076701375003930985979002905277787853138154897458859262464325881445529839932317811400769403501975638777278904600859241992354282700104931022843226666780085094098542956627110761291988719351499571926228955093445794172092325047671679561498308795542918143451633600085499347345913927357389701224725759200812440515528671822255000898510460484628765915159912944290608211975300026422093649689222893967690473200600812621928745793307239325494005871408686478101755734926708454577452422468333093340631243687121455429255453722368073107843897239715675599185679958163510123341272472296646563041106851276290174546208745055682521825866943592210651931470376775087714311013951305102743653164160397905333983189328973224094894280215354554717524632866048264027187633080975568413714172375741877175480465810699300841143751094470133564015471782950810138708249267581695700425069326286015947563717776827805933698180442238781652153106067749485713662487356139858398729268438335172118519818895207674745283041122345870141528445076981964087711161539616655902692780882542855244226115795904463768312432838871758580703033741283961241340183140544981181669007323451356981376464937323974566164488837988431280643651194743620850649974503338748914445698393123443496885588524404598059946799517813833061966627057973260484180850203247196687230172168180700183159687089791978261134089911609500803351799801328321947699100971267084607662351749355670473521518178914927457252553571254798720831561779993376384075139113973269327065083061489826246937147178403466228706824159196579914615571876205579345524671443039896986799414299651987293787095780688531420541185929246435326375471038522850904881623359699284485898134543657354553854972331395279597409643173489041142798431279994885377813367837841318552850961258932669385355731269205111703322900381979399256648641355466558977571031060732621153775797524396534192273384476906806882929847423389044291014463700266147571028005281686781792877867429068920446588308468661977902990448464278495399703060147786482270773045134691496008022756853877019105902452892879062194790401201590932764436599525740348382712802039001773695318971446104146732812354210832372814935903703421369109754530424220411309413801990496677633052382197822589845885374676800717563780409620830390609525326895751209249280786307950297844785742796805769897370932989906160659914746087346034858013289705894574506795530221371926910294668534581285436899959543609439269180215405590593379418633013649281605036068571138351104967573575970494164333166380756858767418570622555167484008694985846468844095011691296101682157245615853746846285299823473978497188661323111745799944790901108871186416217220253887043850160081827254144460683381720110492372199528762403749314279386814620546577047882026670297634047175377584565846919503613716302316600372200522996095788784724832084395043132600113016228257457202607936149634633228230608271723565102971225259980077203461300908818282173020952615299839849616899424557252509098308118373031694814008040769155128183160821532816450959106495875524066131993160173937239413127029452959736133115878871371398583302424397590329068668947709639773830370052446649217240312381822341314271865696574103254394930036061409978009742120990132558339994424686482893937092240560776353010968611038334060848470494219677171088134357540831323060271983112600582191667559227340639856959997886062713390285918591932866090069235618747277807968811356298010495202308302285334921440250460952663689389173195436137376267810861113376190131781647544801522078513070249703270125333001954287915311247337920562797883451275813446154363597567387583589366776026106000096661146946697498816212504434397346264764039202288279578379940855389091028054747022124656087737765104481414068112646250175985995885581469326161311708995136079409785373616069713702017726906391851845635011548875249326766419317811727797524377111992763208382749005772912245940345368877300911098459319997057382223446376850004964419551714724290181967271854806115015165691310418748175392471529310372787370664415909997228167485215237427722673576432301904694281804749599571539156253873313351243720585961051667920955200116773387929305265205355853020412318220509983727041722482270169485210673857671149874089895996296445589297802058385058064017372583557331539039178259612423550242899570510153332180844068999995887674121213214141189633321464551546121125908255963492622711739564514493035541283363137712164096968124901573295660554016090903491669103976042268096984952445740601857196827170419660521143112629138290332217678068561554446832548679952990193405146314388372341428054298236170754205387245674606865919134975883773415674648701170591102675920369307880501165523497737794700299504018877096469619904524464902080402443584395646355348687549163375641567679373977195674094664105983101852501177348515934543483219271336890442138228216629054345030898595040605272778923942238984135082068963582039573269998738231689129966814142253293292534117905456253750512332672699569484501463374193079147744308682799408050850765716892729013075760771745782273343374518383153621128050094367170345422401495994764503977602208224725421124061061107113103718356876234679818159102256651318649268230873891900023954840902335642524085872691171064805744586217960446149959485146548545490502492349248062240322312626288162519078922550879727629162513605912789532924383403184999233656313741813021839736285981695840421866889237882294403001341647629192714804784667317386648318150298035541348953784271995024688685932185693263584348472063598520087812694342160781815374589736988021225935728872062427615958836973928492443024665403345791719772881389866356590451680297230894368803156660032776442880536166773110483565452864638761439534982809853491808753264255953844391169662410411219835040140746786398637694133826809998262734726007322192768972828917835730501696678617804571210200390589634267762353634589721285934638883547614342678367690023363101257429520346425662607136725568270087903171837054997216859231841788147263676196972691923324084488076143728737528795192401922914840509299900752543629593929162168525108955572391060994237136576349409398331027406519927645774370686659742471964904637019589965625592671033185552028014549818806951142355606119571177285869054398170844570878661666357732362880151008306401515829144767651138993406204952600635675315330591896809069984191051959600435690790054063651719643011545908587392964125651907820528300912267093828606579743466472769414710114965026837815843583642446999626487075541575117827339476461309927487972454271213464868408763456764785119807977049604708082582602414498745736016480961223704890668749847180530649416705808729953764056714324336685587147230211748341149545547585142557882499053466166454711384464024790560786487251105268773599257891448605341200993680044587046966620951377108435551423484610130918112279733110450071323388796226514223045603915239534368998982080716104141057534596550180783130283640644155339133126532405783052120537155525680083487142812118759425841498967524661635729995256494875330388622375975966557911246122159536077316615668933163045873141148443934226632859653772790429053580488277559543777944637083723204218215704804838558994911606744279721527378010984644605292459984048488404781790087693499255760568318616100555002715771801175205069646470106106926857075339897663203959201351799089704979489052345782167488798765432245307441253837959175152103651854297901046545942959592085897551602933147238088773679791996362820611150330260730026733847186549661178627049007847754069500997045234197862349980560942745345807160389641462038350979258117340059332052141960391829522456592191617732655494274447568090613425944825925763887961088847157967333318473129522792736959604767839515895687738118490996023922321775537704934053635733132873914171758130451961965427218460971603165993442544638153075821139994776680548333873153236618250079535322296084712548235075838416375902846793241463892848958943432289795111334590731962499037161895275195909242086780428419454667359061193148122023177996901328926915826302889460180337703966892946625480075242023032185505670779169185473650853881932736429749682454143553434719998661245046560469076459408164896181558380177453181255846747007695315919009432065329082606801320113820958278752550635120156841535704299516063401655682346939594985440570550312016834863734847684921408589925278405028804679911501959140143792995694935110602440398047585596584556872977527306347757173557595621388753928295167069655325228717587029231378749269517723337116607673542754281420947133192174634953400342396173040763050797351044029615509551869939901702070023368888113688897187640910808520008014555149699248959913906527683205818799774902277766001724334580257524162570242162611351929932910558455235071284968102902969118507320558812699226178920128441781352086076464685777054969222500250750765330769322573267772961211485602468140254600708821669627076039552971084895980194866512451984184644200612546273396936824995185556341206783999929455769659243329043565196634720472191777247172941628197454178360066147960550518247733780612636700046861520429062267171072745533477078927523293558184644426117309006193126543776483611944707380173367837382022705970248306761723087407509639280309197869520849949070704546105803685885508344257983050195649462915429899511192113006625143333182944880889467115858305649528882657202025137475377843804589721030014935137725134113514675132514508164348857476534627180630850179301922542443578110950043146036764379809155369509961202846700952517300874712432966462073103400084902857178071690854030368689911091444885851849302408131651060157147111465674697949914465796372707682536651279895373930088406832414631857318159945739826247727292533120417258997222356336876084288048979252434191804262084188341683193420466885704730465051181368312056180032617221779364344632146440504706045502513164556902602242613779517503306548133952515140161372725723344128449301100670025647514730905511717157723347514381630233991882881921139415013336017041571971960534325141241855887160344970383175362224333385325958568351730196489750861691807792717864759978569323532107040565425450983828720370984754923626902950405564027601313748097713995186312119035960923298457204655613905848066975448849046314418247428253352916163003262403302094537828954014492664529275014425019320070474808673826737025169772362169569628568941657653595850772480594292859868862757399369108495282291309597854212986101890099983902567980334725101545755153981569072553431340490224323845688292049922713940267283525666948959345556842070118211725041098669106006025529671476210434380534417892856883967200506855964536436717713678571386623485055250546310437309262355189969637131484887540564542281469875005317085446566078751379422748524667060652129797968443571120415255345317586098898490385978581727464544326914618669669024111872497860949539427791956694360600352890834602866235027683572717408696447238983752859843659957542378354244220066591609288461227120725692662416757657875921809257660352496938953473251185593935108657591752087200399262168340848981271553255296675496901008937810518931160171651064601692542158415193310491325523692524219807207924453111574277693130789146613530590061205419679794728612295000853317040983680680417683820834457677914780428945710737695835581101268265624696589309494561080705780603712608779928337294560589769381099423903598436891620548002067016643222532191469343932139937251324521452494068378899420692562516184521313069024495550967730421264990014012104551820113294443583088364941490030498122557879621798770913695643102286435492192907306716818435327996257985496708271873331916474520601846376232636967730105323471455378416785955871332417313808262109440690118026047799690441298718609781708529453970227834303366679675483532745169120776423929529588514482948655653342710028131096347304248962486998946350397037130442814760702755338392066925712849656413002693410571490036355980735569234372165073341304453397099927102952406128475019393829999181601918483307628913030817706340631300277243578019512661272478333476698152728685815964175212289589198163781460559547320445944734617075671701857902355849243412793187484873464978140312685508574083556507427199270264351810315598226594951364668268656592846365204360603438072864438984857892434837742226799672039524073381559302637163394531653605837520310544486413171531847547470559468426595704630446952405132809482194307941859787333492741654227360494390605392479895882534939907825650154844958198718677293367293587285683173813896701129344678065884348293122186784485764736386135391481677756532184326403153635838886190206388712102228082943013513694940020029772651304408627614456847797797849829879697351934523482439603578102310327552076780073714059047932710334238984184040312182131834365553029631191769337838210575477542405301099080671685023276016292830126183774636534837927297200444094116360563317398958186192126005354742383797560998104898225565770658626236475700690064640939389202337951032913912686046816295177984270648770117169682966974556224635479723018547315297396876861039240510381879031852444475362713431320210066567546513124016742045508137612593429442847625261672452240205343592161391562814244540041187886274090682146040400836264656976430076728640726411016342402358974404416232043270816904612479675619861649800701505839481984230130605022284929235506373068230530474635193897392353405873732494209631553910772058685079696394344010013395098468295168133130412323867509043614024324315567120529527797999517787298602455293289530535545631927586826371221748872864478415353348940092624435283136747458555714034268649886158324420067652210211935052025455682575722854132535389501103293613745452155698056228457826958382138390337370854731251412405142203037878472284996143737148375318478771019533678438348739236672172887730058681738553544009795187635312489287300743733622558176237848161577065075554478777975738467902218468587701179396849716235300417969417058162864536850606238628427200767572337317391206816479391146187697000047718535020799083714853291391520546802922671907008156993949987206703756451181706453180491519973313315717765256943188252562456687658355175991178918482618705995255620293524276332816380953387854751575279982939966295406407807779502841494411374524472835388540347538391690921041931107882034929190786265907416969407786543111460343906957059814096396695828132155488244261482685363831724255770207513972125704758666424952039665569739088149004374476852058632646775427321568779775755073593005638145190681239729945128491714292773367466312584103979262041945996700654710059889117201344780858557966707332902506127024668887198415428437219534724775016527777284252428208219214763595767847288086520985051664686326700832901967821822653930605729443952883361715822436370797454856288026149392562267236978064818580901829164013782056970511590839743609137254150753587088293246194673654564308992103116099948624009314110999334345612835206995903345380832297555329344718644103951080643510014187543590554953935655518953198746505258766733840021237134237032855651672939620486977312029978731575912559739643325872995102785849128419064947731046102822786421024559599295194720374075524489899430960305268368235310939768433981523158657877542691885182960271148113003297740171072801868514589547183030200953258562983786282210207817114429668663619023875040817434859570354888744148492993810077369690442835896313708478549009389904965147553889568771421780810658153990333837524939127718296181014795553765266294774346045146768652303314014131777250234522342502468617615259584591051788932569976944965027444334441698931828214694495310844394636082408967976063858363993829380547657126059449732506726508891307169924550533124323557614189739656398444337600027258244872415084681199427632345108768792573658254687381940919665000684111485755465654769084363658951427991489698626360953072484381676504350083575340647475457214730971378880975557794009943600810780752473377020430924392184976053237651484438970647134069011822349660057537918773705530539106972090692667425744384608973616658081027273655673543069816652006064069850586765973202156955230956200538365799937928993498021334178320286255617943262768127798583062611385323150027954024692714200756676586109685687429358538936567257245139429192099343902243529861006560784622255946267642485947511814189307839272167095398373921506734718673451161595774839336377229200352057296390975476452704899906074795608557683277279487417285440801850552308710025361803749433821438441263474001224558995167453493933316846321036519720704475641979315617013372619233852854858056967325002426361064715667281461839101645253052547371958111410816664872041075900628226784682808134007393558356092897663597859092680677307647053199780754636977648312812725992493584261620903459989861305207112410122544825253483111500235398208541949171157161297160108219627948241481613359165485380689883834010401159342284379626302655025266687261717402186406779198086022719834324124588659145672130826532049976579014458806119145632034081935375043993499329770383454539328900349851440600931066859229229619587515148495521372447515248514671967852699345662441023442150595441203583968841721325509893785207455766040366956753643809939765755962682739274272377296852156628144097159117478195184914922841253610253533018410116558916385308599130305377903518472240922651956696189601821153533941178141653878745296920972632618210746438697466818580404360043285160643708107148962489999880123961818408023297272551139475303426551400780456505767507859518544814482038065313008363282316751913583032291192965444927933443497277656799310087155339454003319406229635649681946941282908441768638351149689654772493337382311515822098881935751390807912457998688681130301428176602596807910588608270800979670896300045287742374801917505080359635873988536523614194598699170797483685304236221296552739813656762226238473349295044465132619821175778990217550438874833949806323815098345206695912568346240751213976201085263415022590031584504100652449515741466559016434560293533400590341035608450415512854588043732786322560817783617502392928447578503939923706415895078150959175098503413841620522169397913851460540080438434847817004580305866977494721770723948309098934998391383799995100038049258519241838736696444553889007752542986628799666294271594323480119130142811905657704580536333844064705370994811941887661942021865645440067673482126555972855618140935371563584725221935580417142395324054169477606425419808741943589635609566065011840786469773108818462426563402243806280688007816802553007541437561072223133332312638870548447341667028701956090952038712987229742526947846361582415775584545796786547741243538539917554673165923719201095606167106865650422895575851545348161180439869559067543450257402084613223994485792930653701844051268765220462428083838446097495827236508219666584464528588160264541805975594654599930609719684038572621972538425104594202926686573150210506465231672290695132365052077108747741700899824368423305251384200422622045229464381645022858209623653406650879115946578260653582106007542713864787528050931468125303421438238504100863638480564739371275554805267478611177190466489843154685323594011746555633432702565130969535102858068879997075888033500015067199475855906196208070090020662065566998088837475903149606598276628791414151593107415328011790577970404778890880422452156524473925126383170399584579501373498377267508346649478997679984170070598778380856737038515250029867126866226029026325323962700925596075091862223830083329601962874852765359239789145948469052447543942239227239338424963276831729997245277576635008381896870522543273758390806717438891378889568618470104358997582791124095396552548934640206164478329862438635726872667021538949740615445633379274592252559749174865552108265603859143122748319001836509230592268724423212489791723492169372436327037558887774560437801323650487637705971730456162119689281877877087878887075665452055676310724303397584827432644952265223824574178173328130112099999999997491601225219372277393321645030396487115008442807487098522698362399185677258698371805868471719335776838627743415457068895139647759399172939286143496816535216421325187363046885361425772909502231218314437622205930116079297234806627210590217190600996553729143901162562581526621534715086055386213403722171966572167941373807751745003300864621423581428649211471188453869806941140221723112492926739317268445594071265412095987431797270160735945991595165719330107119185281038386587589235057335380940005305693001382608667438803331294871746532631942765649987364807608073283062624357530021849218590642065711037865682141672669354849851791496897063126949603013467264073188883576845527267440287689723188483169943656279220740631078863122122848807728666715806765276137724700730081249994819924328243541666148245400968975846655637729029148061506542592604399222854110732781542370402410205393799770466011365077399427326183232238265030685889279727658938535761785132571276748397638477935037785591264437749875180322256012323784015525604623362096027221464940257283064631540803900300206829890788392390769246502987498583884366757395670906295197448156304193074667013849190537476866082660533871486087905033157186320272974969845529599556451129598514187359685627637446331662670129764298993501000311279054119551795293436077541806432874413466425279225063608468943800996401943757380346521486548236195531740294211488887484747134686945363444367213049217878453660392154283544186751396258154512323118386967652721436408567472452527756993971200559754852597863920008857514212732409177874851597442288818837293554568853805195153691613325750810300585126982063298450310108226571245355801559056941843652396973301352601593155284091292740866549566043921462231493541832798235704528526544571442111119340460174192670996737170522672044496340913168485452207793358350233254119832104800326581380356050265032251032583839368957385716185808989673751999010358645218475784409915307826880584350233021674043072363958462907535238921727737631843362131946446141984858433639685917882538688838455279299045165689088549176965047266147592004928222938280364143281780835667493268283662648947181175663382197730113581951086056976483858969045393044417697346422032942577633765309014213395194927015343742294781043560212256273243309210810716569809706301214533154733404016100418073529100312046963636034590804017050567825790653522898357191706413177756125343416124397399370507867589562528843228068316390479370510851892303499422073776953238504121391931730762288240664013569866350866142106604819742055188356660330055365791434602484732529335545051589352981907788978988990058604020653742020143974368603784198960431131083519382459457408699921193339760634764429396351189234420370288092083429824112366653374881787679545239641552020752120631153730288687107589489120292707186039573592496953996467058100802926320813863991506924956350818555888540996525414748635919832481014061543411899028591355141336710272866541510563545104416207274694774459589776604260396239058370727607349959892805801971059398882844048475144121939895317383936982428706222260824394901932280263573724276353034949545982161526781940144058431729104223959741439456030412058108349089069676217865847696700534979767662164601668811222183982382030893772206399146560758010262654470829182241726963136617745833564854806677266405794940547670254817160231448436415471652215588253282403077494518483979059604469779641259560901785968791059931429223279496161551795049201472582434452956186433007479496688558274059028370960033933982400313564500896108628003186341630250848045877794016078752452682093219965302431201174802460703466949303240338995481386851059348764090725288837013013020011608921825602947584532865947811317643619077326501020663870402563748999202407020433976878196711929493290863773484448608531340169788463969657749061632838221690568410771383593321101134155889643568684994429271588631203707525266160883417131491041471364882422434813088562556089045939993163903528013429218746699758740378492796618110754002770431344488385172399961108195697586578602524887434063218473131399231809850966445274176895376565342801594721183021913241034376765818450045277610296427092909017909490640397231665226655143897873234908479334131724937559293171575071691012991576244466231832358524634166032791301205882308743880508681273044461805376219638399712578583182311288011758141436699004413724899746160081943748014286302164836045926083206041509764298723420154117688346277834439283531997762111037738839718093958280696932332350858147525625008573229204237340394372247648083960109569137593366540739775930840895925072858277695051375234288253312217091018573250416529884608205662426956753329591207982492965987366229082213448124955154198938345191885616600278841489022263636658633093655344408969390989862154149518903671130817413245944686140233224662345818646024351348604373050446768109612455402674390070502386449660692134151894572702981033534329557913465419468013694631931249615970873349155446265463400213081814561358394769318267534167849212083052855832908113584849135879954303777127723870759742323643887732387793413315218595535875800995893373148611257300301755763038093604492546099766828737006134391587178415653169636617191406043687134391871182439283601626063617458675678909288711271101815667373525075658367964412146168599556138576487540761529894205681033399089363571537423187423511481066702046780478664301144511930691602163263183399066990012252975334340234898068957851182672283394727230641160734684284692364127320952802603126352555079909496663924107778180660849680591067001634116078141264730803483109790729372834607102328360051875687031249482966502859719548812630772867174075930109406498030729934120405470316295274791612633445482801702834623580934155701805161957811460349886660009201587283718078756274616763501932609719696288152398349916834595385860875165332907902462330247994503883308590334969327770759051110868169503729243639448057907420194864053286218064066674023488219123457447455194664288635018247644777667919301889894201203300344364491875183739355892740401813520560005797702923345332597348637496551282091136208988892760563113014731677431041707319983119531268712316792952562980263598248581825183877481449279066967542760109116485522596447413221676087447972531500809098998858459084702152820680852688282061276454721277737190455602522458872784230132104859574029441949062452148040871519931227359401497624891843906242119772766540153895784062251159638228604035085243052701635874454891703894294311728652326694467801765506657820835766530737470370254548700565433530756995298894854043707849724257143022903665202897742227204686313931135479826137377432423080908666946197656517348406938601609451315462235258839004763801472953148795323547572320516502953974869593397668441787105415349874240549311995115495498461179384223283631978436475792675347459641182597388880449172569552526188223953156353757922031886162351012961210847813222630501396656338011677754584062724643356597785676357228833285503099605862121196136328379413187716467418886700771232802759612885488139130480156140074005485484304810134961865728780733026193833398372094576150614655912114620264183316643096982424605967898438078529256444121082228228766131257762559222616213034389935103044426258497810003632786866201246093207073275859631681170694542136184874317662571172652535580506732913658882392409278321227568868901230227900792234352337852986851489351281025106081442544272544098632181355319722641042108673398656875014677220106303088883652834979656994904254627222827104056097121601932001971273626056030517128185362691164749767722522283492759156190702472313410684076559351062064746636242089553053297437002643155637732788366791140772268114708586490524732661954842072856466757875811844926897827152440952897083637475752191144290608988992466910012970422557636821490396249371643964330003960181534318276483504146278093405987880592485272849777423148588413759991433232634704622075258790038545052829240996875848413877153614755585223269198090015771856230734980491320093475665349487050837365020266698713114353548130001845674918256574183287715359804825493962560747426577743860287647309496629477138162845066847329226878758487043712750166186245703576075188860274157978846950691719304399363321329420728671122167904300057328458567020380453225362372617806381077804137596799271041971961272231174494791679756900771409391131226715317462490246069128620358127353184451348595773864580815870349053286339864463358905768413784259035576125315256240178076026971530689959744910739950786689837889476172739466870039227150961129016969666462770275476924794551072042548234909313839620140812939468184187965548379392288358193289988448457554735801675927500146974256855864432054553145854359757914443335918470135170889477485773505012818841272677273309882206772481568035665206308363560689013734815758472710983787459946530257287567030313601745766506134684320238763325030037471319681377179420133873193301848745490007768819989756044247357777264926282735836802538908020634833932216762664431328524589710584795855566009967841877056457590154745346371655764287300180299796598763977775968744560158833219371703283311800460017363248190675904789497774218560408922972380306395997317643535130619378438127190993058684797286485627451707617240789499785652412437113149520192059690882635837750279458111519363079633583198919545643436719890989695915826653340518092258887670208942889849992997044121090416957980709582007696006333237676625196219031409838832162224856395977347172680914547940952323162223450040699046199920532542083701388895630978554198159950178660768779299304675572257061793116378758731761107654605239717698013352724526591037557772690566583689081445785209305187695784209233856766329049786578463966770647120193604436835146352794690080818665151744545595386122833204307086066268143549186895224667821134890734401370453903500399440400766359343091174532004464909549829477648148580215874171643808613512879278190807848760667715929315221734019924862580731574971035745020090626377183378882701119050944059841706803934607677444238643075841050360795380372129773997864872225947844501082865547693753986136194255573615473419051274684308762331934544645615439056138942619208893893750446017866324209435980527055479088392489733796101000342911287007216596310399134811359335871129055534958298620100935385464323229384659724999213802804199418944442429372369020508228147507134823710894032013536437719846119299604872244544219079828151601529143459979013795431354666643982981180291408674577847741602256129700085614754208981310841165581534990465664087700338240891416371309673279982900130530817214528522059755054848159837511896894265635548999820297907903074246816968017411141878357604939994715581270062155421206461905359879837475614250841338552134901198825718262704379648853014658309084509515506333381331873751262575708914148909255526385378431220552056864880162864008367297975331745505540670687391778629744741965090758250988863495634826611281557869613705924644982457137797209738979451269367167920418933203362134205355181021143956929089056495073426790347194562473383804886317257165524851624564903906837860139831771249781105973287196905643409837972258350146483660859914986134742796810487256444634438813260363911552243669569378786450102857267502528772028320254146312332965576296036220958465050943391775530825971694310984603607182457767692076668819461443823491428951154776840819107246337513432225648283859393251743207751731963371891003763666198535309728603724707012535205086767102232402313743871269761051275829870005099332250217110860321375311300622882295119080388010640096437233387606674588405347903163829959350560662553965566363859963368062582041604347773182017678099839329640039734335610460179805746583078467529650128865905295696364217014508549489285749040255833687644001324723184972177205346134586983387702034750612570564319306754258635168160684017076885624758884130895065711392020602640117140069602541242580843862293715891762814150712934724905792295429819023675328060143102820373091268529089229005533720944080518071365302191771440313744001022924437326432431736289429807748213466122928853746158977659335419923604120148670271728906688204485793787853475769244840495120693161545323104618638623414030515322191141797107259946770485794398943662643641424426514186215910682338306267604419401910307144300920059387970442703545845390973061700798395448629224596178819509421424187561041919759681813447112680094851930323457439592199645260936205710779170653437529157833525437012819259315726178049093915155917738117239601900664473389523560435482030822925064639856487243918075833921878094934620849758150143842738409940431042851440638846020525813402018767868017050782530793028397342058821085098640893955725614617941066293083742912620008091278112146163956918881881324116273397270143678992786285772329779006485284805901167133366723848628246516285875488966503198261002830706231180997661740779663568550876829250630742940035305204300562267735377650840011041819778225762716756555949222591229967983634549171107863323655977901525560094247519250137144122637075890684590423594665940473190564924483086830616099277256739536679925559895400780842243055033583120991373479977396754348508559478412770073073354353878345655286979405754948003984559307739818236343565395809476940032030076620115088549498180338376325393661037198391846168974363367835693436709808178700824895186773601367965212552117374594109408052773376824225725720283339515120481934186266210458072045233925989510670156551937523635531737145626860685179349121013992787718004398051575801973488332001115062703421212581551887844729397806277792333187830305901156064565782373128491833735387945603377479883561666488154531872028608000422787457321942816281613426781986152876250544438406237728740397900959538339542933015711949907809467262122165360912772524746437827777324761973643670491039695584297385950059345974933399609142416937750532415887440423309744837310769127280486522483282126644794778799980667770610660500236757499113120530747047192159542344084324011828922181794389050595575068782452446979103717186377470749964802800822883706134767737658200972784118042925276786057259596454618721629630872997690224950134646716136437654440495124577601447358323450198845417550811930926224539817780308136000588523555310724629999007116089657055141963606545629038776996966861737916250364921505694137925442525867116818000554366502956952514455465284713539619061143639050080085692168749225337329751255882807789666415808959976645322414138946958928829395917536355898003254591655503545966102957865228465770025182020800740710882140439588322988387196525483288533692192164348077515289951420085897969333563831186200000822465175757357171762073335707089690775774818348807301475457652087097101392891743327372457567180606375019685340867889196781819301666179204791546380603009510851879628560634565916067895771377474172341933556464386287689110633490264009401961318970737122325531714389140352765849158922550865078626816173004823245316865070259765881779464815926138423899766895300452441059940099196224580706076019095107019583919511283120870728930262490167324871686464125204560865181067178803379629499764530296813091303356145732621911572354356674189130993820280991878945444215211552203172983586207283592085346000252353662174006637171549341341493176418908749249897533465460086103099707325161384170451138263440118389829846856621454197384847845650843545331325096323369275774389981126565930915519700801047099204479558355054915775187787778577379256328624753064036368179548669736270146353825221619995209031819532871495182825461765787038851082756407910770008102970690290901899501530150387551935537474742367496184215489824054474167497278817442093415123319363000153268737251637395632052742803660831915626622152423541119399731670474161457039043066536522670336369940392891730209243145600995062262813562861347283130305587280295982437461131567843636925082052602395754812854225587514476808232605214301511395066919330841656045423722026728681909663940553821126239368667993444711423892766645377903286909427072247712093003438029301638249347148809231121766067517917756032991971850642720272461173234638000347453054798535561446205434216432853899660664276439085757959921882073146447529273082055742813072223290477131464326461995327379748514095930714867478572654886345982419365632589000556628153631642370547264760605461615335183102384771254252494240961519615417031898140019849491274081214167566294978208885521787801152572684730118120333794518696014470845125862668051505607019072596082006874881465793362889594397090036238609771528878776085764542826189120365831085824267666728453527423969798338719696834171046469772201318759009479872864936933881620638186003161789608079912861841989187269656071397690818282521407174869618435894339817546581234278684051306705446117057977006994632436831283271510600074702584891684976434532104707738014502405509145757307026318247308647042976038404590079058383483479517100250852796703807755259021866250030563893870116658838254009247188657135132662882570553957650331770090890482971488423500189306766709057723107195041887842702549778946245280148421710278931759801263991082590606675809724578312889715303077973816377544053377909985735322240754697155390879216952093126200203583856779171788493080689963843373943271871168932173374693518843389575892568894863983302571437576248114831700206495067672854000948701024933922275524804806688417750775568092784536676866213367390825371770311213154673428069245441914189283902344488091244411072583255359156356859039032288201017678651144055694524397803071078941508003190302319043641982461300148847886336276779888999456845639764958986070705978778614628584932020467359208159729640182059004102189530843566502240246913550938511749232408164969579269629140419790690811408081582820489679413370552382245264041600727435877769933947853994653230562690067764274590198430449186099800590953160427530003887811450930838567922071707592329804148376531988133589571607921634095508681561676453468901145110486381877314811034814847222407782230568406533336305374095441452608079046432096820862452376301800795215535644892459013189272853373425217165648373909607606914556307805679366801311491072369384835772001044663890333225369352676349984092935540783057490352984832316724819430641351707221430208211313542040977733081853607500192567620944960818151582643914316109066528187761370375595364400619734214616834739422107963932459206621410674903984951595393562898865844166162905269829223613452714050063509171289313056000267750990687906184708118367020763688323964509363748830650598460936816198113586934183478639735977235808344249489872975968631692859140096787319668863530612081002911885889937596633027253030463015718282014944318994239064017699608171971241400861012977879511920390482880683088625404494538730448565288480875722249214340966586068934954256482594153724250146096455332576678465291449143715810573361565073009319931520765391847389840529791194076898089626012019659585995326222377262220562471817838295998397088970060150208017218694463358836240045019544446799655133083948495167485951567477729614013417888308952985743006379419406176298535888237460154764215974311643729582784707062844589006155499949849846933846135485346445407757702879506371949079858235666074584792089405783020803961026697509603163071159877490745320612635000962888731758643200014108846068151334191286960673055905561644550565411674360509164327986770407889896350453243877472659990627695914187546565785450893304584214495341288363071114776538198761374691244703277611058523965326432523595458805950338647655382518498072143938160426095830010185859090778839262822898331148403389960870107416914020097761577398674971333363411023822106576828338870094223468559594972504924431239082055793997012972454973177297064973497098367130228504693074563873829964139615491511284377809991370792647124038168926098007759430659809496539825057513406707585379319983019428564385661829193926262017781711022829630139518373669787968570577706865060410017106840725458463492669744020925213982318633517073628536368010852034750454541493375916548200555528732624783142390204149513161639147583162331663361315906622859053906989763726337588763993476555644127131073570711899058790899497367088619479551477244096499338690373209496971967725454855331174310139779865994870497053818897656568455330497123673953201623423615772116997332796591685605607893134971751628822567931005923364927555133322934808286329653960702049827661638441456427048004286135293578591886914909803234255925803049015274619409918887194479737250380457200962737576192807815340308559068877218830386604910230190737116350514349329416767399347519339581092434209197101467094144997114996135985905038265234652594966045527566086074286211668469280829845503881141428026227448520126178300943541738080429157402779621980003219486403933054979690848969203686185489313731901955135230862341590015457211946543294866610208130888631585976357654991780266178798794894065704757913123893116421428623206559898628807092712656457264285722675302988949890737912538147528962006072573703022491887091543706024998936582910686784249724115450295066587869574040406311285775916948930936482780220301922804283654507091134617076266066195177625500427810092114441608661127879929421833079426752994463285456518260710552203249428031268008491524329151155986681678142307754575854861467516648468424815638148467929500612209305349762881212978268481649582559920147566331830203745689348940664900619798212437896213767965669787079661491568316961337901734895261495156038558415109377685144461373842170677293881987758916064041054277540999829336591803263863916463235833108464417043914210857852460832883779746346875060682138101087783858843879257478244014332541087882046123780115219280312621675890399586596671355493561706131213572012549735095709501186324220115861487496763095737386195100889806453915747001997197579089635977341111283382327011701993900375488424075640245817260871379542712901561418538656636312934400748402900658345625333616705095879630724753472606453978935305708924316642808825733516537238347578111861976394790440061911740256278043658294109205954433139326664064903293450966175844715214094082297103410268869331457994373780730539150207502600210729920592573911437047859448932321586614857430068717399461317885701992728803852886153125566985331739109320580014579409518774304996121234000163679616303338474217393836458731873739944551284396097467745504333304660369454262836807164957542082160367243707888090535910811053076584865659628419528830151317441362503025307004371937462898285183288698514560145947129637936880354681009727066346268681430726959127879312385427112203028421513032451554640065592095185323688139472567321093669278832495937891102717365693630490505888106314680859073910609518973438103561138411628042533301451669154527901121878921504020823493012018434869969031008360256264541326541282542863365237220659774131064386823130341375562643102847052722772921703664448693563134719369272832222761958722257579554383411397297261011995994045469739118274477108630440440430034024060529613095303512079284379537934489584643985257188190413457933152203163191937563573633126889394073761646132432357884904491518939780183865662995344796741433974763245072693032414540559911181176727887336520208362761574798929051523240487800379020354886845868274752704859861987071812122159532409793417217462790636740964403145870245976566063406605088755072904055396290536940520624627792151897923624193629511104927457313735957986686490697375196651590898372477481314111430474947665509551958931281567721687437151091991762422745181863570791919832747068604713984654271854717796731519528205119116753591345836619077504064876027670039859698832103603153973878995543014152898725386353893905072961220521529318825253501158073689217845588262984060721131197997320980306340966373373917535226498191277195135136886575894094440400096442540279508941342093892890873614482634725755650225427104316929330211981475112943372650508288857193146270022768335115986469557957612989594908863484855429173492922099779341277250909568860388754308434608323572321932525829053749717518971559392424305543000771252570324936304245796093264312330252152665565422453988263652289291198040962472937502142539851253275488364752430367684586984889104244404852306419556306282459764120630056752939916406116588367427092629878752274314559846485532536521758636704121770762460599990456292995840183257029341721695890639415465618598368601210002558659248709763658709363901696005337336856446948611362349487508662468328964801764216303476258800948875941295144733436723809322429049684944003412006740918718438444099431701117725095105432922291930492321661815791613778423593014161842746818516606118442691377707931218608588037180720660834373568902351147703462927233655148845958497205574859048266715009592066886052182370199125104629588273470644914535686244044848985281398872370961863752054010974301657141445326506737483179204147591610800659869057988022176559731043828288406658533419498774595066222560316914312556093055044996694444543149514358356157047280846430542382695802989667062734659833419606435635469213878854111209423327656835512725840509028742394770121487546552604387036283819634167197243588605897681832051278172549169849282582341350761065269087138201579376780010275198137177800133130877432958600819330923833540488934131056271179209783871297997162491281889009212868896209360250698948246653231995752573152593428869665412075902604537594004253684817488052071334825400979442830174316187010453790779435442715795088080140961055925184895102020113807938946326352937812046313203695368268424491461622963407945770377399340451965785439626297082090563393959809348287403242743557958436577114066267276195224991836513028085929022251170301401237984526061911432820737258304290198122019006970489222086245715643837868369201933232495012174456340763797040889246946741045130790970646269539337197173644549953095531499506276476948083081789642213486004611006994511133111660213634357061100937831121072783518206404787228327201234123890468574788110053498654698221738566015089893375135288477162052068720311132479994548351025516983063760114473530978246241485268349062523611816066999863177702848906869046183127268209714401702060274727809385503123664699129983284931870504908557053805724223804888441198011279837843849505324595913815121563004789352469703112205870573186197635530067988492416245258893892178605581861466514851123078205276668383794545268865291386036669598787186029882646805359568608953808759892326840012414201300395733164335942748876411347446374440283387477722935369994409195061457159848664682778062862514128292212686548550972114161580131219551294027798687843075548810746471502810497637162138432145566580920325215698653056265309767680845032132724554159929588540721804904709459020018785040878288463344544102516542911839629889538257994927639250113235712311747305199755088200966509301213336630735792696055859104871604136876597325476153229429028388606534999514727787056866543707632179670949389490525608377717836667025591784819874354643063438373198521288328781420467280428181463864538470589360043849072604470337437454801501283147675819308002027738958577517975491034949303377699952920358291610165768567740567978356074410351703677328166902923862023233197919768131543124074739468994946662547656519562718644160382795456033135175082268170865573834693590004684197108238776170873593183612924991201300134045923309092134219930029711879813786628154154076082496970300895725510496950297065606429460130867511795311569880911759283206231655734898021242958508846791926608649271238012046848807463452145145524540629568674371180568176504360963017015431749277949293396317976688216722938280173938924419296305551815469608660762079635769293211764371669224250940615805473476357850712260506636283919127991342967871258378570207502000023975207636318395340545489772104939314689719843908698846498428096291037103592386937398327343536649617283393541761406911014413311300544468640137982568932109199336118754072870063610611743418311646272329770062069045501332523537696835580223612849721838417508400262263773939714364679480638417882278345839804065820739990942451525039616498983928072825202292695277161080260165840503262939152755740689452037268647554752305330140991106973476035764844201956489912225033210038735236980330958660817486330751849757204759782947316995481993683099179869510096851706688196713087941293319881931792878309916897429082391253442735487836443276499521414310484299212015258716820984369808164980299317231675895566120417229707891983912313030436599083938826604501055645855210338180213000321723240000979992390148296151632252660711089222198449491402674240066741145681135303976173971437618868459083892733231187058925801037611622467611595626870911986465303574688805428876371812925687283054955612883916571520935189166104478714916038251611282072878086786997631842706045378236307514687319551238743862398436639489398491712487785555373333537472225890310531666594259608781809592257402554051494610430727683516844883090840642690451751292292016489065366815256159780878766578626869915420884829690930367763912026088186491309948519583077355201102841413869259631189746246955907514383232310780500834552698356066683107094282367947091638804881069080013878056063192285475605492314979081159414662685369957898706953665541860973526989584578250451659820035126315338949723159915475590954107123670995428358075269318669824176810684347869283578798491457227042494389813706374939315712352299179827272303887052125744889038946504277764561906702031369062935281197650688873313459486973806092979428386224000584822393299996986560104828818760758385981995867586886600382232504819370078680344674241717169681378516934397641884405919044221823915509568695105214974723365920083084099725300324546498330670104200464003165985880244323828652592296949994026574626754794194734935207459814880784981627555233983334079607425029446928152042170810306189510491211552154552132315007344633654000550944484672998323620625895491345248321838656512221724222086276305979128200483441775180920689490213071958767104334027512272854625466595692210051876910873324145081549488050165026889578346879228171375450336199632698153881546255115357502041655301566125512734592488222445087912439735269902472458805653908767576062143624424582424222584866909588864737855139320483034513471009546955235085164365334373977580000000001/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999998996640490087748910957328658012158594846003377122994839409079344959674270903479348722347388687734310735451097366182827558055859103759669175714457398726614086568530074945218754144570309163800892" + }, + "sparse_union_movement": { + "rational": "10198243873903138613033391774848017564424957785962564507386508188004071613706508140970657641403321115806861282922714655524301761203004135303569282515917323917893374063184765573192871135452488843908427811888970349419603513825966863947048914046995017231354280494187187092366892326424569723068932981389140167139160293130961241274983495676892882092856753942644057730650965294298891384437535366303413657772029643672939520062841013649196320270042024171403349464404073594808067062053824713323095299973471534993086956662805983343525641267336840286171750063175961959633584686878212349890753907046789671444810671589291636653225750741042515514684365251984932663679634055582115772363662798561551384057584150281718603896296844605684389385755961356666420966173619311376496349593750025900378358782291669258772995155120766721811354854259692467287036978003885729446336092288147987948973031001147669943174613002863369083838808674846570553601361705307321191074337143616258011807610324811072043677811250624098388719938381079922371976883189519863892675298713584676842295980498498965850546058038046153767485062507080578166213021645468524012759218479034626664930754047312615669586697330642569560474834214068398635125150772352002217744352007429063201571861812768341686649351178505032494998443604729402241023532819612290967835627932667873603874681957655280995017990281213098267392567258819022341298528942555562576264326565273182778163934753910607731698039228582279066243018709227438384408065161736392817957162637737361215030143997201225737010680399955712428936337954110625742012788555905813532227155730974024231541933371245948497074365089683507748449458867143773220992204715290781738015133493236992034223579543536295667252169780392688842532290836008821477357367277142789444403297699129036645016314147386639777518295434157572738961033208248833729400839475998367093098219748674838744837080803155213071419070955051631240004948206773907621077950423460865597078248834891629784638180207685462323805391361311840783189340267769290075707831801570410587306555807723603504774171554557254115174763669262039975358885308598179283591095821662533658581686755264094121683089011349432090244569715117580705154773034777911513267889835287111831173454928933024025364923281288526094782198938718633783453945946417150951468493927334226332979919497909632354498439765181819827045979914747160871046732385508214041467934111219373282919378013003147460662052187355783859658418047603147445740538482502889631115233807479393040341346188558796679932150668245669289466975901289724058216698349723171042826987576337353322274742053235090461055105055049706979896731289899280128156981079005197844344582403087702712956500394033301196826177853018244053827898148559539582850879438166733125591061602273801792239896239396844231348556564462052554398536464069802132037515230017664709495985368395930680042465375218245907220557295017372926256820400837594929692282940504857043224293316448635667292447182274477918963626526127702051116978698018804708146361963250200535970990144703005585779757624279390300523413080315087856468888695878025490338598682131378618234825252270089192366090299279707841354478880201292802719847939709458254554651618910670761516497325101161689176991655943889080088089845531138968004267196209948686727645854088791365184316911270832175725966613667971025297261648725914198842757817922641738922058733587984612527407580104701977651101793702195491070156044700342853883602519192241024753992637087827735219067834962602516557208629704858145199830330087998432177495519456859984068291848745759770611029919606237736589533900173487843994125987696482665253483798305022593065744703256179546373555814934934899941955390871985262077335670260943411781904613367494896680647987181255003987964897830115609016440352533545681132577756957343299151057680151711254691835808891547157946143082033394494329220551782156575027853642056843981462373669195582914342544792643175587887825934557187219554770300034180482359932853906266501206298107536016909446229986147843277558074138000194459021512067106987375562829683907634343003840950745167773629115523117173285992026394084890433794828116170907749773611948517864535454910452546798013841673866724280510633825457603329341375312203534142124641544935042118777668840838207376829169836043493970588456280597456593634777690973118901808001437107084088443559941209292816504977931375501269199590281259928568489175819770369583969792451178506382899229411558268610827803582340011189444811305801409530208596515338338245709262371874957133853978813298028138761759580199452154312033167296301120345795520374635708611524743123828558733438914544907133747917350576958971687865216233352043960087535170063168854588932759375224229005308274040571916998605792554888681816706834531723277955153045050689229252405481644345912933770276569298833876688270906769878243256978134747766159451937722986628049647488067751696539329240527136485094832328352210432672902659931526840343751920145633254222768672682998934590927193208026153408662329160753939584735720835459432075754320600228481114361380646201288381780561338061032933423907022320620995020533134256943713498491221184809531977537269501165856314969328042064107921734151816914042969781564328040644087803581991869681912706621605453556443644490921663132374621708160177939269157002219307117562296192350528971594833004553182142312884062882442594666489766097606678494277440346541989183684083004665049938735123328298825509655210744086638583026363846794196326578576538179363395235986984368237224600452516680379461109096695751597044664991829419609293676345982584451046353135826964488358199740621564843752585167485701402255936846135664129620349452967509846350329397972648418523626041936832772585991485826882095329221490974190210942698250566699953992063581409606218626916182490336951401518559238008250415827023070695624173335460487688348760027480583457048325153361146204744445659152481353781802759710462899025679733568909679666629882558904382712762724026678556824908761776111660403490550528993983498278177540624081303220536297990932397199971011485383273337013256812517243589544318955055536197184434926341612844791463400084402343656438416035237185098682008757090874080612592753604665162286199454417572387017762933891619562760137342495954505005707704576489235896595736558589693617726393611314047721987387705636078849339475702129852790254687739259795642400343863202992511875540780468789401136167299230521079688744201808856979824573784736491820627725541480528528441356738366527660991172466710895821167346312648148727256497172832346215023505525729781460751378714284885481673985511288863976568430344322600869313112837884595456665269011717413257965306991952743422688823705804976180992635234256023382262138397417485230125652033011657791064472923250628797253440024422522507694103078883581840107817621036623262701794087013055597754137152237369058880234218231210389840569188244935193945760933886847493016718309941611227079686376783217011071618213855833572484501970689394019318358102934061417662905566496143835986201935572559304347599219299629972572578475949325190671356096334869030833008139527119246926720439426898679083416784515087876970160507809607353717779394588858856169343711187203886918934828050324484777868707510949981836065668993769533964633620701841594146527289319075628411687144136737322097466335431705588037953608393862155655493848860496038828238310735065742553243594874469592787278637279506839093223401386794789456633006715624926613899468484555581735825101715025478726863885864479719514391990339990143631869719847414359073186544176251161387388582536204219046487638432946579617203244689676266818789552234733512814986784221811336058166044296138659426457067547376336690225789635717666210620940775365510864237795235514581812621239044278546955055037665449935147887211815892548018753141780178349980199092328408617582479268609532970060597037573635751112884257057931200042833836826476889623706049807274735853795015620757930614231926222073883654009549921140718846325097543399532621673252564745813174898666506434428232259349990771625408717129083561423200975872530187196262867111280698561763452516852614309185774665763353865606207564781436249169068771482119624055698629210105765246541403478003183393352896356644389160478499713357707164898097733873188136910968094610979312016003644790140193638844127526041601215496142953044343866423412687548769654356898209363234077743257021130677095920648254733568300677683205471157931078704822119373423718799109619865142346550201275446300246066550810552619136302665649803864245194354915151667686148622615376027244639787258825453430801899295935302659079060172258103038558209033550057757712226320991620362499265128715720677839727234270728201210427783320407649324145552612571132474935905793636613633450588966137592159821673968458182196554931325921207636445081062700267348713562164848431991271167469326578398806183374849812643401593114102899330634033490756272549961155900051219778763211113675368586320815987305459896825830338916186677843357377051447076020722169950160790614717712049226273268141721178563499098501017006180111120156277199205833903141483583440997699913183759046620476052511128907197955385138098468020013411782324346903107809364045034706576013567571862741461913796052501071737937814434252399039701545586820811248602709442403184601832084005402271782816400545051520420866733297409538705561648955285550750035014779394547915210096452089961519968333811616874018904842950805839188875718020113264136595427260295238384188882749796504769000397337289581493055521845107229009200249106696156103503476622138714691034418106206341194461726973801411509933236377367044812211136547167081554592771073953474061521078953830716168354751067107680166146764399031977815824268236026549595906674241277272023069385833978464569668659282254065523876660894325546327993147730482498002797996168203284544127339977675452250852611759257098920629141780956932435603609045960756196661420353423891329900375687096342125144821274899546868114083105586494404745279700791465980326961612778806784620794748196023098139351130010675638870260777494585672261531230069319028722131922632904743626578456188340327276771922804719305286903955530531247769910668378952820097364722604558037551331019494998285443564963917018448004325943203320644354722325208506899495323072678383853076701375003930985979002905277787853138154897458859262464325881445529839932317811400769403501975638777278904600859241992354282700104931022843226666780085094098542956627110761291988719351499571926228955093445794172092325047671679561498308795542918143451633600085499347345913927357389701224725759200812440515528671822255000898510460484628765915159912944290608211975300026422093649689222893967690473200600812621928745793307239325494005871408686478101755734926708454577452422468333093340631243687121455429255453722368073107843897239715675599185679958163510123341272472296646563041106851276290174546208745055682521825866943592210651931470376775087714311013951305102743653164160397905333983189328973224094894280215354554717524632866048264027187633080975568413714172375741877175480465810699300841143751094470133564015471782950810138708249267581695700425069326286015947563717776827805933698180442238781652153106067749485713662487356139858398729268438335172118519818895207674745283041122345870141528445076981964087711161539616655902692780882542855244226115795904463768312432838871758580703033741283961241340183140544981181669007323451356981376464937323974566164488837988431280643651194743620850649974503338748914445698393123443496885588524404598059946799517813833061966627057973260484180850203247196687230172168180700183159687089791978261134089911609500803351799801328321947699100971267084607662351749355670473521518178914927457252553571254798720831561779993376384075139113973269327065083061489826246937147178403466228706824159196579914615571876205579345524671443039896986799414299651987293787095780688531420541185929246435326375471038522850904881623359699284485898134543657354553854972331395279597409643173489041142798431279994885377813367837841318552850961258932669385355731269205111703322900381979399256648641355466558977571031060732621153775797524396534192273384476906806882929847423389044291014463700266147571028005281686781792877867429068920446588308468661977902990448464278495399703060147786482270773045134691496008022756853877019105902452892879062194790401201590932764436599525740348382712802039001773695318971446104146732812354210832372814935903703421369109754530424220411309413801990496677633052382197822589845885374676800717563780409620830390609525326895751209249280786307950297844785742796805769897370932989906160659914746087346034858013289705894574506795530221371926910294668534581285436899959543609439269180215405590593379418633013649281605036068571138351104967573575970494164333166380756858767418570622555167484008694985846468844095011691296101682157245615853746846285299823473978497188661323111745799944790901108871186416217220253887043850160081827254144460683381720110492372199528762403749314279386814620546577047882026670297634047175377584565846919503613716302316600372200522996095788784724832084395043132600113016228257457202607936149634633228230608271723565102971225259980077203461300908818282173020952615299839849616899424557252509098308118373031694814008040769155128183160821532816450959106495875524066131993160173937239413127029452959736133115878871371398583302424397590329068668947709639773830370052446649217240312381822341314271865696574103254394930036061409978009742120990132558339994424686482893937092240560776353010968611038334060848470494219677171088134357540831323060271983112600582191667559227340639856959997886062713390285918591932866090069235618747277807968811356298010495202308302285334921440250460952663689389173195436137376267810861113376190131781647544801522078513070249703270125333001954287915311247337920562797883451275813446154363597567387583589366776026106000096661146946697498816212504434397346264764039202288279578379940855389091028054747022124656087737765104481414068112646250175985995885581469326161311708995136079409785373616069713702017726906391851845635011548875249326766419317811727797524377111992763208382749005772912245940345368877300911098459319997057382223446376850004964419551714724290181967271854806115015165691310418748175392471529310372787370664415909997228167485215237427722673576432301904694281804749599571539156253873313351243720585961051667920955200116773387929305265205355853020412318220509983727041722482270169485210673857671149874089895996296445589297802058385058064017372583557331539039178259612423550242899570510153332180844068999995887674121213214141189633321464551546121125908255963492622711739564514493035541283363137712164096968124901573295660554016090903491669103976042268096984952445740601857196827170419660521143112629138290332217678068561554446832548679952990193405146314388372341428054298236170754205387245674606865919134975883773415674648701170591102675920369307880501165523497737794700299504018877096469619904524464902080402443584395646355348687549163375641567679373977195674094664105983101852501177348515934543483219271336890442138228216629054345030898595040605272778923942238984135082068963582039573269998738231689129966814142253293292534117905456253750512332672699569484501463374193079147744308682799408050850765716892729013075760771745782273343374518383153621128050094367170345422401495994764503977602208224725421124061061107113103718356876234679818159102256651318649268230873891900023954840902335642524085872691171064805744586217960446149959485146548545490502492349248062240322312626288162519078922550879727629162513605912789532924383403184999233656313741813021839736285981695840421866889237882294403001341647629192714804784667317386648318150298035541348953784271995024688685932185693263584348472063598520087812694342160781815374589736988021225935728872062427615958836973928492443024665403345791719772881389866356590451680297230894368803156660032776442880536166773110483565452864638761439534982809853491808753264255953844391169662410411219835040140746786398637694133826809998262734726007322192768972828917835730501696678617804571210200390589634267762353634589721285934638883547614342678367690023363101257429520346425662607136725568270087903171837054997216859231841788147263676196972691923324084488076143728737528795192401922914840509299900752543629593929162168525108955572391060994237136576349409398331027406519927645774370686659742471964904637019589965625592671033185552028014549818806951142355606119571177285869054398170844570878661666357732362880151008306401515829144767651138993406204952600635675315330591896809069984191051959600435690790054063651719643011545908587392964125651907820528300912267093828606579743466472769414710114965026837815843583642446999626487075541575117827339476461309927487972454271213464868408763456764785119807977049604708082582602414498745736016480961223704890668749847180530649416705808729953764056714324336685587147230211748341149545547585142557882499053466166454711384464024790560786487251105268773599257891448605341200993680044587046966620951377108435551423484610130918112279733110450071323388796226514223045603915239534368998982080716104141057534596550180783130283640644155339133126532405783052120537155525680083487142812118759425841498967524661635729995256494875330388622375975966557911246122159536077316615668933163045873141148443934226632859653772790429053580488277559543777944637083723204218215704804838558994911606744279721527378010984644605292459984048488404781790087693499255760568318616100555002715771801175205069646470106106926857075339897663203959201351799089704979489052345782167488798765432245307441253837959175152103651854297901046545942959592085897551602933147238088773679791996362820611150330260730026733847186549661178627049007847754069500997045234197862349980560942745345807160389641462038350979258117340059332052141960391829522456592191617732655494274447568090613425944825925763887961088847157967333318473129522792736959604767839515895687738118490996023922321775537704934053635733132873914171758130451961965427218460971603165993442544638153075821139994776680548333873153236618250079535322296084712548235075838416375902846793241463892848958943432289795111334590731962499037161895275195909242086780428419454667359061193148122023177996901328926915826302889460180337703966892946625480075242023032185505670779169185473650853881932736429749682454143553434719998661245046560469076459408164896181558380177453181255846747007695315919009432065329082606801320113820958278752550635120156841535704299516063401655682346939594985440570550312016834863734847684921408589925278405028804679911501959140143792995694935110602440398047585596584556872977527306347757173557595621388753928295167069655325228717587029231378749269517723337116607673542754281420947133192174634953400342396173040763050797351044029615509551869939901702070023368888113688897187640910808520008014555149699248959913906527683205818799774902277766001724334580257524162570242162611351929932910558455235071284968102902969118507320558812699226178920128441781352086076464685777054969222500250750765330769322573267772961211485602468140254600708821669627076039552971084895980194866512451984184644200612546273396936824995185556341206783999929455769659243329043565196634720472191777247172941628197454178360066147960550518247733780612636700046861520429062267171072745533477078927523293558184644426117309006193126543776483611944707380173367837382022705970248306761723087407509639280309197869520849949070704546105803685885508344257983050195649462915429899511192113006625143333182944880889467115858305649528882657202025137475377843804589721030014935137725134113514675132514508164348857476534627180630850179301922542443578110950043146036764379809155369509961202846700952517300874712432966462073103400084902857178071690854030368689911091444885851849302408131651060157147111465674697949914465796372707682536651279895373930088406832414631857318159945739826247727292533120417258997222356336876084288048979252434191804262084188341683193420466885704730465051181368312056180032617221779364344632146440504706045502513164556902602242613779517503306548133952515140161372725723344128449301100670025647514730905511717157723347514381630233991882881921139415013336017041571971960534325141241855887160344970383175362224333385325958568351730196489750861691807792717864759978569323532107040565425450983828720370984754923626902950405564027601313748097713995186312119035960923298457204655613905848066975448849046314418247428253352916163003262403302094537828954014492664529275014425019320070474808673826737025169772362169569628568941657653595850772480594292859868862757399369108495282291309597854212986101890099983902567980334725101545755153981569072553431340490224323845688292049922713940267283525666948959345556842070118211725041098669106006025529671476210434380534417892856883967200506855964536436717713678571386623485055250546310437309262355189969637131484887540564542281469875005317085446566078751379422748524667060652129797968443571120415255345317586098898490385978581727464544326914618669669024111872497860949539427791956694360600352890834602866235027683572717408696447238983752859843659957542378354244220066591609288461227120725692662416757657875921809257660352496938953473251185593935108657591752087200399262168340848981271553255296675496901008937810518931160171651064601692542158415193310491325523692524219807207924453111574277693130789146613530590061205419679794728612295000853317040983680680417683820834457677914780428945710737695835581101268265624696589309494561080705780603712608779928337294560589769381099423903598436891620548002067016643222532191469343932139937251324521452494068378899420692562516184521313069024495550967730421264990014012104551820113294443583088364941490030498122557879621798770913695643102286435492192907306716818435327996257985496708271873331916474520601846376232636967730105323471455378416785955871332417313808262109440690118026047799690441298718609781708529453970227834303366679675483532745169120776423929529588514482948655653342710028131096347304248962486998946350397037130442814760702755338392066925712849656413002693410571490036355980735569234372165073341304453397099927102952406128475019393829999181601918483307628913030817706340631300277243578019512661272478333476698152728685815964175212289589198163781460559547320445944734617075671701857902355849243412793187484873464978140312685508574083556507427199270264351810315598226594951364668268656592846365204360603438072864438984857892434837742226799672039524073381559302637163394531653605837520310544486413171531847547470559468426595704630446952405132809482194307941859787333492741654227360494390605392479895882534939907825650154844958198718677293367293587285683173813896701129344678065884348293122186784485764736386135391481677756532184326403153635838886190206388712102228082943013513694940020029772651304408627614456847797797849829879697351934523482439603578102310327552076780073714059047932710334238984184040312182131834365553029631191769337838210575477542405301099080671685023276016292830126183774636534837927297200444094116360563317398958186192126005354742383797560998104898225565770658626236475700690064640939389202337951032913912686046816295177984270648770117169682966974556224635479723018547315297396876861039240510381879031852444475362713431320210066567546513124016742045508137612593429442847625261672452240205343592161391562814244540041187886274090682146040400836264656976430076728640726411016342402358974404416232043270816904612479675619861649800701505839481984230130605022284929235506373068230530474635193897392353405873732494209631553910772058685079696394344010013395098468295168133130412323867509043614024324315567120529527797999517787298602455293289530535545631927586826371221748872864478415353348940092624435283136747458555714034268649886158324420067652210211935052025455682575722854132535389501103293613745452155698056228457826958382138390337370854731251412405142203037878472284996143737148375318478771019533678438348739236672172887730058681738553544009795187635312489287300743733622558176237848161577065075554478777975738467902218468587701179396849716235300417969417058162864536850606238628427200767572337317391206816479391146187697000047718535020799083714853291391520546802922671907008156993949987206703756451181706453180491519973313315717765256943188252562456687658355175991178918482618705995255620293524276332816380953387854751575279982939966295406407807779502841494411374524472835388540347538391690921041931107882034929190786265907416969407786543111460343906957059814096396695828132155488244261482685363831724255770207513972125704758666424952039665569739088149004374476852058632646775427321568779775755073593005638145190681239729945128491714292773367466312584103979262041945996700654710059889117201344780858557966707332902506127024668887198415428437219534724775016527777284252428208219214763595767847288086520985051664686326700832901967821822653930605729443952883361715822436370797454856288026149392562267236978064818580901829164013782056970511590839743609137254150753587088293246194673654564308992103116099948624009314110999334345612835206995903345380832297555329344718644103951080643510014187543590554953935655518953198746505258766733840021237134237032855651672939620486977312029978731575912559739643325872995102785849128419064947731046102822786421024559599295194720374075524489899430960305268368235310939768433981523158657877542691885182960271148113003297740171072801868514589547183030200953258562983786282210207817114429668663619023875040817434859570354888744148492993810077369690442835896313708478549009389904965147553889568771421780810658153990333837524939127718296181014795553765266294774346045146768652303314014131777250234522342502468617615259584591051788932569976944965027444334441698931828214694495310844394636082408967976063858363993829380547657126059449732506726508891307169924550533124323557614189739656398444337600027258244872415084681199427632345108768792573658254687381940919665000684111485755465654769084363658951427991489698626360953072484381676504350083575340647475457214730971378880975557794009943600810780752473377020430924392184976053237651484438970647134069011822349660057537918773705530539106972090692667425744384608973616658081027273655673543069816652006064069850586765973202156955230956200538365799937928993498021334178320286255617943262768127798583062611385323150027954024692714200756676586109685687429358538936567257245139429192099343902243529861006560784622255946267642485947511814189307839272167095398373921506734718673451161595774839336377229200352057296390975476452704899906074795608557683277279487417285440801850552308710025361803749433821438441263474001224558995167453493933316846321036519720704475641979315617013372619233852854858056967325002426361064715667281461839101645253052547371958111410816664872041075900628226784682808134007393558356092897663597859092680677307647053199780754636977648312812725992493584261620903459989861305207112410122544825253483111500235398208541949171157161297160108219627948241481613359165485380689883834010401159342284379626302655025266687261717402186406779198086022719834324124588659145672130826532049976579014458806119145632034081935375043993499329770383454539328900349851440600931066859229229619587515148495521372447515248514671967852699345662441023442150595441203583968841721325509893785207455766040366956753643809939765755962682739274272377296852156628144097159117478195184914922841253610253533018410116558916385308599130305377903518472240922651956696189601821153533941178141653878745296920972632618210746438697466818580404360043285160643708107148962489999880123961818408023297272551139475303426551400780456505767507859518544814482038065313008363282316751913583032291192965444927933443497277656799310087155339454003319406229635649681946941282908441768638351149689654772493337382311515822098881935751390807912457998688681130301428176602596807910588608270800979670896300045287742374801917505080359635873988536523614194598699170797483685304236221296552739813656762226238473349295044465132619821175778990217550438874833949806323815098345206695912568346240751213976201085263415022590031584504100652449515741466559016434560293533400590341035608450415512854588043732786322560817783617502392928447578503939923706415895078150959175098503413841620522169397913851460540080438434847817004580305866977494721770723948309098934998391383799995100038049258519241838736696444553889007752542986628799666294271594323480119130142811905657704580536333844064705370994811941887661942021865645440067673482126555972855618140935371563584725221935580417142395324054169477606425419808741943589635609566065011840786469773108818462426563402243806280688007816802553007541437561072223133332312638870548447341667028701956090952038712987229742526947846361582415775584545796786547741243538539917554673165923719201095606167106865650422895575851545348161180439869559067543450257402084613223994485792930653701844051268765220462428083838446097495827236508219666584464528588160264541805975594654599930609719684038572621972538425104594202926686573150210506465231672290695132365052077108747741700899824368423305251384200422622045229464381645022858209623653406650879115946578260653582106007542713864787528050931468125303421438238504100863638480564739371275554805267478611177190466489843154685323594011746555633432702565130969535102858068879997075888033500015067199475855906196208070090020662065566998088837475903149606598276628791414151593107415328011790577970404778890880422452156524473925126383170399584579501373498377267508346649478997679984170070598778380856737038515250029867126866226029026325323962700925596075091862223830083329601962874852765359239789145948469052447543942239227239338424963276831729997245277576635008381896870522543273758390806717438891378889568618470104358997582791124095396552548934640206164478329862438635726872667021538949740615445633379274592252559749174865552108265603859143122748319001836509230592268724423212489791723492169372436327037558887774560437801323650487637705971730456162119689281877877087878887075665452055676310724303397584827432644952265223824574178173328130112099999999997491601225219372277393321645030396487115008442807487098522698362399185677258698371805868471719335776838627743415457068895139647759399172939286143496816535216421325187363046885361425772909502231218314437622205930116079297234806627210590217190600996553729143901162562581526621534715086055386213403722171966572167941373807751745003300864621423581428649211471188453869806941140221723112492926739317268445594071265412095987431797270160735945991595165719330107119185281038386587589235057335380940005305693001382608667438803331294871746532631942765649987364807608073283062624357530021849218590642065711037865682141672669354849851791496897063126949603013467264073188883576845527267440287689723188483169943656279220740631078863122122848807728666715806765276137724700730081249994819924328243541666148245400968975846655637729029148061506542592604399222854110732781542370402410205393799770466011365077399427326183232238265030685889279727658938535761785132571276748397638477935037785591264437749875180322256012323784015525604623362096027221464940257283064631540803900300206829890788392390769246502987498583884366757395670906295197448156304193074667013849190537476866082660533871486087905033157186320272974969845529599556451129598514187359685627637446331662670129764298993501000311279054119551795293436077541806432874413466425279225063608468943800996401943757380346521486548236195531740294211488887484747134686945363444367213049217878453660392154283544186751396258154512323118386967652721436408567472452527756993971200559754852597863920008857514212732409177874851597442288818837293554568853805195153691613325750810300585126982063298450310108226571245355801559056941843652396973301352601593155284091292740866549566043921462231493541832798235704528526544571442111119340460174192670996737170522672044496340913168485452207793358350233254119832104800326581380356050265032251032583839368957385716185808989673751999010358645218475784409915307826880584350233021674043072363958462907535238921727737631843362131946446141984858433639685917882538688838455279299045165689088549176965047266147592004928222938280364143281780835667493268283662648947181175663382197730113581951086056976483858969045393044417697346422032942577633765309014213395194927015343742294781043560212256273243309210810716569809706301214533154733404016100418073529100312046963636034590804017050567825790653522898357191706413177756125343416124397399370507867589562528843228068316390479370510851892303499422073776953238504121391931730762288240664013569866350866142106604819742055188356660330055365791434602484732529335545051589352981907788978988990058604020653742020143974368603784198960431131083519382459457408699921193339760634764429396351189234420370288092083429824112366653374881787679545239641552020752120631153730288687107589489120292707186039573592496953996467058100802926320813863991506924956350818555888540996525414748635919832481014061543411899028591355141336710272866541510563545104416207274694774459589776604260396239058370727607349959892805801971059398882844048475144121939895317383936982428706222260824394901932280263573724276353034949545982161526781940144058431729104223959741439456030412058108349089069676217865847696700534979767662164601668811222183982382030893772206399146560758010262654470829182241726963136617745833564854806677266405794940547670254817160231448436415471652215588253282403077494518483979059604469779641259560901785968791059931429223279496161551795049201472582434452956186433007479496688558274059028370960033933982400313564500896108628003186341630250848045877794016078752452682093219965302431201174802460703466949303240338995481386851059348764090725288837013013020011608921825602947584532865947811317643619077326501020663870402563748999202407020433976878196711929493290863773484448608531340169788463969657749061632838221690568410771383593321101134155889643568684994429271588631203707525266160883417131491041471364882422434813088562556089045939993163903528013429218746699758740378492796618110754002770431344488385172399961108195697586578602524887434063218473131399231809850966445274176895376565342801594721183021913241034376765818450045277610296427092909017909490640397231665226655143897873234908479334131724937559293171575071691012991576244466231832358524634166032791301205882308743880508681273044461805376219638399712578583182311288011758141436699004413724899746160081943748014286302164836045926083206041509764298723420154117688346277834439283531997762111037738839718093958280696932332350858147525625008573229204237340394372247648083960109569137593366540739775930840895925072858277695051375234288253312217091018573250416529884608205662426956753329591207982492965987366229082213448124955154198938345191885616600278841489022263636658633093655344408969390989862154149518903671130817413245944686140233224662345818646024351348604373050446768109612455402674390070502386449660692134151894572702981033534329557913465419468013694631931249615970873349155446265463400213081814561358394769318267534167849212083052855832908113584849135879954303777127723870759742323643887732387793413315218595535875800995893373148611257300301755763038093604492546099766828737006134391587178415653169636617191406043687134391871182439283601626063617458675678909288711271101815667373525075658367964412146168599556138576487540761529894205681033399089363571537423187423511481066702046780478664301144511930691602163263183399066990012252975334340234898068957851182672283394727230641160734684284692364127320952802603126352555079909496663924107778180660849680591067001634116078141264730803483109790729372834607102328360051875687031249482966502859719548812630772867174075930109406498030729934120405470316295274791612633445482801702834623580934155701805161957811460349886660009201587283718078756274616763501932609719696288152398349916834595385860875165332907902462330247994503883308590334969327770759051110868169503729243639448057907420194864053286218064066674023488219123457447455194664288635018247644777667919301889894201203300344364491875183739355892740401813520560005797702923345332597348637496551282091136208988892760563113014731677431041707319983119531268712316792952562980263598248581825183877481449279066967542760109116485522596447413221676087447972531500809098998858459084702152820680852688282061276454721277737190455602522458872784230132104859574029441949062452148040871519931227359401497624891843906242119772766540153895784062251159638228604035085243052701635874454891703894294311728652326694467801765506657820835766530737470370254548700565433530756995298894854043707849724257143022903665202897742227204686313931135479826137377432423080908666946197656517348406938601609451315462235258839004763801472953148795323547572320516502953974869593397668441787105415349874240549311995115495498461179384223283631978436475792675347459641182597388880449172569552526188223953156353757922031886162351012961210847813222630501396656338011677754584062724643356597785676357228833285503099605862121196136328379413187716467418886700771232802759612885488139130480156140074005485484304810134961865728780733026193833398372094576150614655912114620264183316643096982424605967898438078529256444121082228228766131257762559222616213034389935103044426258497810003632786866201246093207073275859631681170694542136184874317662571172652535580506732913658882392409278321227568868901230227900792234352337852986851489351281025106081442544272544098632181355319722641042108673398656875014677220106303088883652834979656994904254627222827104056097121601932001971273626056030517128185362691164749767722522283492759156190702472313410684076559351062064746636242089553053297437002643155637732788366791140772268114708586490524732661954842072856466757875811844926897827152440952897083637475752191144290608988992466910012970422557636821490396249371643964330003960181534318276483504146278093405987880592485272849777423148588413759991433232634704622075258790038545052829240996875848413877153614755585223269198090015771856230734980491320093475665349487050837365020266698713114353548130001845674918256574183287715359804825493962560747426577743860287647309496629477138162845066847329226878758487043712750166186245703576075188860274157978846950691719304399363321329420728671122167904300057328458567020380453225362372617806381077804137596799271041971961272231174494791679756900771409391131226715317462490246069128620358127353184451348595773864580815870349053286339864463358905768413784259035576125315256240178076026971530689959744910739950786689837889476172739466870039227150961129016969666462770275476924794551072042548234909313839620140812939468184187965548379392288358193289988448457554735801675927500146974256855864432054553145854359757914443335918470135170889477485773505012818841272677273309882206772481568035665206308363560689013734815758472710983787459946530257287567030313601745766506134684320238763325030037471319681377179420133873193301848745490007768819989756044247357777264926282735836802538908020634833932216762664431328524589710584795855566009967841877056457590154745346371655764287300180299796598763977775968744560158833219371703283311800460017363248190675904789497774218560408922972380306395997317643535130619378438127190993058684797286485627451707617240789499785652412437113149520192059690882635837750279458111519363079633583198919545643436719890989695915826653340518092258887670208942889849992997044121090416957980709582007696006333237676625196219031409838832162224856395977347172680914547940952323162223450040699046199920532542083701388895630978554198159950178660768779299304675572257061793116378758731761107654605239717698013352724526591037557772690566583689081445785209305187695784209233856766329049786578463966770647120193604436835146352794690080818665151744545595386122833204307086066268143549186895224667821134890734401370453903500399440400766359343091174532004464909549829477648148580215874171643808613512879278190807848760667715929315221734019924862580731574971035745020090626377183378882701119050944059841706803934607677444238643075841050360795380372129773997864872225947844501082865547693753986136194255573615473419051274684308762331934544645615439056138942619208893893750446017866324209435980527055479088392489733796101000342911287007216596310399134811359335871129055534958298620100935385464323229384659724999213802804199418944442429372369020508228147507134823710894032013536437719846119299604872244544219079828151601529143459979013795431354666643982981180291408674577847741602256129700085614754208981310841165581534990465664087700338240891416371309673279982900130530817214528522059755054848159837511896894265635548999820297907903074246816968017411141878357604939994715581270062155421206461905359879837475614250841338552134901198825718262704379648853014658309084509515506333381331873751262575708914148909255526385378431220552056864880162864008367297975331745505540670687391778629744741965090758250988863495634826611281557869613705924644982457137797209738979451269367167920418933203362134205355181021143956929089056495073426790347194562473383804886317257165524851624564903906837860139831771249781105973287196905643409837972258350146483660859914986134742796810487256444634438813260363911552243669569378786450102857267502528772028320254146312332965576296036220958465050943391775530825971694310984603607182457767692076668819461443823491428951154776840819107246337513432225648283859393251743207751731963371891003763666198535309728603724707012535205086767102232402313743871269761051275829870005099332250217110860321375311300622882295119080388010640096437233387606674588405347903163829959350560662553965566363859963368062582041604347773182017678099839329640039734335610460179805746583078467529650128865905295696364217014508549489285749040255833687644001324723184972177205346134586983387702034750612570564319306754258635168160684017076885624758884130895065711392020602640117140069602541242580843862293715891762814150712934724905792295429819023675328060143102820373091268529089229005533720944080518071365302191771440313744001022924437326432431736289429807748213466122928853746158977659335419923604120148670271728906688204485793787853475769244840495120693161545323104618638623414030515322191141797107259946770485794398943662643641424426514186215910682338306267604419401910307144300920059387970442703545845390973061700798395448629224596178819509421424187561041919759681813447112680094851930323457439592199645260936205710779170653437529157833525437012819259315726178049093915155917738117239601900664473389523560435482030822925064639856487243918075833921878094934620849758150143842738409940431042851440638846020525813402018767868017050782530793028397342058821085098640893955725614617941066293083742912620008091278112146163956918881881324116273397270143678992786285772329779006485284805901167133366723848628246516285875488966503198261002830706231180997661740779663568550876829250630742940035305204300562267735377650840011041819778225762716756555949222591229967983634549171107863323655977901525560094247519250137144122637075890684590423594665940473190564924483086830616099277256739536679925559895400780842243055033583120991373479977396754348508559478412770073073354353878345655286979405754948003984559307739818236343565395809476940032030076620115088549498180338376325393661037198391846168974363367835693436709808178700824895186773601367965212552117374594109408052773376824225725720283339515120481934186266210458072045233925989510670156551937523635531737145626860685179349121013992787718004398051575801973488332001115062703421212581551887844729397806277792333187830305901156064565782373128491833735387945603377479883561666488154531872028608000422787457321942816281613426781986152876250544438406237728740397900959538339542933015711949907809467262122165360912772524746437827777324761973643670491039695584297385950059345974933399609142416937750532415887440423309744837310769127280486522483282126644794778799980667770610660500236757499113120530747047192159542344084324011828922181794389050595575068782452446979103717186377470749964802800822883706134767737658200972784118042925276786057259596454618721629630872997690224950134646716136437654440495124577601447358323450198845417550811930926224539817780308136000588523555310724629999007116089657055141963606545629038776996966861737916250364921505694137925442525867116818000554366502956952514455465284713539619061143639050080085692168749225337329751255882807789666415808959976645322414138946958928829395917536355898003254591655503545966102957865228465770025182020800740710882140439588322988387196525483288533692192164348077515289951420085897969333563831186200000822465175757357171762073335707089690775774818348807301475457652087097101392891743327372457567180606375019685340867889196781819301666179204791546380603009510851879628560634565916067895771377474172341933556464386287689110633490264009401961318970737122325531714389140352765849158922550865078626816173004823245316865070259765881779464815926138423899766895300452441059940099196224580706076019095107019583919511283120870728930262490167324871686464125204560865181067178803379629499764530296813091303356145732621911572354356674189130993820280991878945444215211552203172983586207283592085346000252353662174006637171549341341493176418908749249897533465460086103099707325161384170451138263440118389829846856621454197384847845650843545331325096323369275774389981126565930915519700801047099204479558355054915775187787778577379256328624753064036368179548669736270146353825221619995209031819532871495182825461765787038851082756407910770008102970690290901899501530150387551935537474742367496184215489824054474167497278817442093415123319363000153268737251637395632052742803660831915626622152423541119399731670474161457039043066536522670336369940392891730209243145600995062262813562861347283130305587280295982437461131567843636925082052602395754812854225587514476808232605214301511395066919330841656045423722026728681909663940553821126239368667993444711423892766645377903286909427072247712093003438029301638249347148809231121766067517917756032991971850642720272461173234638000347453054798535561446205434216432853899660664276439085757959921882073146447529273082055742813072223290477131464326461995327379748514095930714867478572654886345982419365632589000556628153631642370547264760605461615335183102384771254252494240961519615417031898140019849491274081214167566294978208885521787801152572684730118120333794518696014470845125862668051505607019072596082006874881465793362889594397090036238609771528878776085764542826189120365831085824267666728453527423969798338719696834171046469772201318759009479872864936933881620638186003161789608079912861841989187269656071397690818282521407174869618435894339817546581234278684051306705446117057977006994632436831283271510600074702584891684976434532104707738014502405509145757307026318247308647042976038404590079058383483479517100250852796703807755259021866250030563893870116658838254009247188657135132662882570553957650331770090890482971488423500189306766709057723107195041887842702549778946245280148421710278931759801263991082590606675809724578312889715303077973816377544053377909985735322240754697155390879216952093126200203583856779171788493080689963843373943271871168932173374693518843389575892568894863983302571437576248114831700206495067672854000948701024933922275524804806688417750775568092784536676866213367390825371770311213154673428069245441914189283902344488091244411072583255359156356859039032288201017678651144055694524397803071078941508003190302319043641982461300148847886336276779888999456845639764958986070705978778614628584932020467359208159729640182059004102189530843566502240246913550938511749232408164969579269629140419790690811408081582820489679413370552382245264041600727435877769933947853994653230562690067764274590198430449186099800590953160427530003887811450930838567922071707592329804148376531988133589571607921634095508681561676453468901145110486381877314811034814847222407782230568406533336305374095441452608079046432096820862452376301800795215535644892459013189272853373425217165648373909607606914556307805679366801311491072369384835772001044663890333225369352676349984092935540783057490352984832316724819430641351707221430208211313542040977733081853607500192567620944960818151582643914316109066528187761370375595364400619734214616834739422107963932459206621410674903984951595393562898865844166162905269829223613452714050063509171289313056000267750990687906184708118367020763688323964509363748830650598460936816198113586934183478639735977235808344249489872975968631692859140096787319668863530612081002911885889937596633027253030463015718282014944318994239064017699608171971241400861012977879511920390482880683088625404494538730448565288480875722249214340966586068934954256482594153724250146096455332576678465291449143715810573361565073009319931520765391847389840529791194076898089626012019659585995326222377262220562471817838295998397088970060150208017218694463358836240045019544446799655133083948495167485951567477729614013417888308952985743006379419406176298535888237460154764215974311643729582784707062844589006155499949849846933846135485346445407757702879506371949079858235666074584792089405783020803961026697509603163071159877490745320612635000962888731758643200014108846068151334191286960673055905561644550565411674360509164327986770407889896350453243877472659990627695914187546565785450893304584214495341288363071114776538198761374691244703277611058523965326432523595458805950338647655382518498072143938160426095830010185859090778839262822898331148403389960870107416914020097761577398674971333363411023822106576828338870094223468559594972504924431239082055793997012972454973177297064973497098367130228504693074563873829964139615491511284377809991370792647124038168926098007759430659809496539825057513406707585379319983019428564385661829193926262017781711022829630139518373669787968570577706865060410017106840725458463492669744020925213982318633517073628536368010852034750454541493375916548200555528732624783142390204149513161639147583162331663361315906622859053906989763726337588763993476555644127131073570711899058790899497367088619479551477244096499338690373209496971967725454855331174310139779865994870497053818897656568455330497123673953201623423615772116997332796591685605607893134971751628822567931005923364927555133322934808286329653960702049827661638441456427048004286135293578591886914909803234255925803049015274619409918887194479737250380457200962737576192807815340308559068877218830386604910230190737116350514349329416767399347519339581092434209197101467094144997114996135985905038265234652594966045527566086074286211668469280829845503881141428026227448520126178300943541738080429157402779621980003219486403933054979690848969203686185489313731901955135230862341590015457211946543294866610208130888631585976357654991780266178798794894065704757913123893116421428623206559898628807092712656457264285722675302988949890737912538147528962006072573703022491887091543706024998936582910686784249724115450295066587869574040406311285775916948930936482780220301922804283654507091134617076266066195177625500427810092114441608661127879929421833079426752994463285456518260710552203249428031268008491524329151155986681678142307754575854861467516648468424815638148467929500612209305349762881212978268481649582559920147566331830203745689348940664900619798212437896213767965669787079661491568316961337901734895261495156038558415109377685144461373842170677293881987758916064041054277540999829336591803263863916463235833108464417043914210857852460832883779746346875060682138101087783858843879257478244014332541087882046123780115219280312621675890399586596671355493561706131213572012549735095709501186324220115861487496763095737386195100889806453915747001997197579089635977341111283382327011701993900375488424075640245817260871379542712901561418538656636312934400748402900658345625333616705095879630724753472606453978935305708924316642808825733516537238347578111861976394790440061911740256278043658294109205954433139326664064903293450966175844715214094082297103410268869331457994373780730539150207502600210729920592573911437047859448932321586614857430068717399461317885701992728803852886153125566985331739109320580014579409518774304996121234000163679616303338474217393836458731873739944551284396097467745504333304660369454262836807164957542082160367243707888090535910811053076584865659628419528830151317441362503025307004371937462898285183288698514560145947129637936880354681009727066346268681430726959127879312385427112203028421513032451554640065592095185323688139472567321093669278832495937891102717365693630490505888106314680859073910609518973438103561138411628042533301451669154527901121878921504020823493012018434869969031008360256264541326541282542863365237220659774131064386823130341375562643102847052722772921703664448693563134719369272832222761958722257579554383411397297261011995994045469739118274477108630440440430034024060529613095303512079284379537934489584643985257188190413457933152203163191937563573633126889394073761646132432357884904491518939780183865662995344796741433974763245072693032414540559911181176727887336520208362761574798929051523240487800379020354886845868274752704859861987071812122159532409793417217462790636740964403145870245976566063406605088755072904055396290536940520624627792151897923624193629511104927457313735957986686490697375196651590898372477481314111430474947665509551958931281567721687437151091991762422745181863570791919832747068604713984654271854717796731519528205119116753591345836619077504064876027670039859698832103603153973878995543014152898725386353893905072961220521529318825253501158073689217845588262984060721131197997320980306340966373373917535226498191277195135136886575894094440400096442540279508941342093892890873614482634725755650225427104316929330211981475112943372650508288857193146270022768335115986469557957612989594908863484855429173492922099779341277250909568860388754308434608323572321932525829053749717518971559392424305543000771252570324936304245796093264312330252152665565422453988263652289291198040962472937502142539851253275488364752430367684586984889104244404852306419556306282459764120630056752939916406116588367427092629878752274314559846485532536521758636704121770762460599990456292995840183257029341721695890639415465618598368601210002558659248709763658709363901696005337336856446948611362349487508662468328964801764216303476258800948875941295144733436723809322429049684944003412006740918718438444099431701117725095105432922291930492321661815791613778423593014161842746818516606118442691377707931218608588037180720660834373568902351147703462927233655148845958497205574859048266715009592066886052182370199125104629588273470644914535686244044848985281398872370961863752054010974301657141445326506737483179204147591610800659869057988022176559731043828288406658533419498774595066222560316914312556093055044996694444543149514358356157047280846430542382695802989667062734659833419606435635469213878854111209423327656835512725840509028742394770121487546552604387036283819634167197243588605897681832051278172549169849282582341350761065269087138201579376780010275198137177800133130877432958600819330923833540488934131056271179209783871297997162491281889009212868896209360250698948246653231995752573152593428869665412075902604537594004253684817488052071334825400979442830174316187010453790779435442715795088080140961055925184895102020113807938946326352937812046313203695368268424491461622963407945770377399340451965785439626297082090563393959809348287403242743557958436577114066267276195224991836513028085929022251170301401237984526061911432820737258304290198122019006970489222086245715643837868369201933232495012174456340763797040889246946741045130790970646269539337197173644549953095531499506276476948083081789642213486004611006994511133111660213634357061100937831121072783518206404787228327201234123890468574788110053498654698221738566015089893375135288477162052068720311132479994548351025516983063760114473530978246241485268349062523611816066999863177702848906869046183127268209714401702060274727809385503123664699129983284931870504908557053805724223804888441198011279837843849505324595913815121563004789352469703112205870573186197635530067988492416245258893892178605581861466514851123078205276668383794545268865291386036669598787186029882646805359568608953808759892326840012414201300395733164335942748876411347446374440283387477722935369994409195061457159848664682778062862514128292212686548550972114161580131219551294027798687843075548810746471502810497637162138432145566580920325215698653056265309767680845032132724554159929588540721804904709459020018785040878288463344544102516542911839629889538257994927639250113235712311747305199755088200966509301213336630735792696055859104871604136876597325476153229429028388606534999514727787056866543707632179670949389490525608377717836667025591784819874354643063438373198521288328781420467280428181463864538470589360043849072604470337437454801501283147675819308002027738958577517975491034949303377699952920358291610165768567740567978356074410351703677328166902923862023233197919768131543124074739468994946662547656519562718644160382795456033135175082268170865573834693590004684197108238776170873593183612924991201300134045923309092134219930029711879813786628154154076082496970300895725510496950297065606429460130867511795311569880911759283206231655734898021242958508846791926608649271238012046848807463452145145524540629568674371180568176504360963017015431749277949293396317976688216722938280173938924419296305551815469608660762079635769293211764371669224250940615805473476357850712260506636283919127991342967871258378570207502000023975207636318395340545489772104939314689719843908698846498428096291037103592386937398327343536649617283393541761406911014413311300544468640137982568932109199336118754072870063610611743418311646272329770062069045501332523537696835580223612849721838417508400262263773939714364679480638417882278345839804065820739990942451525039616498983928072825202292695277161080260165840503262939152755740689452037268647554752305330140991106973476035764844201956489912225033210038735236980330958660817486330751849757204759782947316995481993683099179869510096851706688196713087941293319881931792878309916897429082391253442735487836443276499521414310484299212015258716820984369808164980299317231675895566120417229707891983912313030436599083938826604501055645855210338180213000321723240000979992390148296151632252660711089222198449491402674240066741145681135303976173971437618868459083892733231187058925801037611622467611595626870911986465303574688805428876371812925687283054955612883916571520935189166104478714916038251611282072878086786997631842706045378236307514687319551238743862398436639489398491712487785555373333537472225890310531666594259608781809592257402554051494610430727683516844883090840642690451751292292016489065366815256159780878766578626869915420884829690930367763912026088186491309948519583077355201102841413869259631189746246955907514383232310780500834552698356066683107094282367947091638804881069080013878056063192285475605492314979081159414662685369957898706953665541860973526989584578250451659820035126315338949723159915475590954107123670995428358075269318669824176810684347869283578798491457227042494389813706374939315712352299179827272303887052125744889038946504277764561906702031369062935281197650688873313459486973806092979428386224000584822393299996986560104828818760758385981995867586886600382232504819370078680344674241717169681378516934397641884405919044221823915509568695105214974723365920083084099725300324546498330670104200464003165985880244323828652592296949994026574626754794194734935207459814880784981627555233983334079607425029446928152042170810306189510491211552154552132315007344633654000550944484672998323620625895491345248321838656512221724222086276305979128200483441775180920689490213071958767104334027512272854625466595692210051876910873324145081549488050165026889578346879228171375450336199632698153881546255115357502041655301566125512734592488222445087912439735269902472458805653908767576062143624424582424222584866909588864737855139320483034513471009546955235085164365334373977580000000001/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.40792975495612554452133567099392070257699831143850258029546032752016286454826032563882630565613284463227445131690858622097207044812016541214277130063669295671573496252739062292771484541809955375633711247555881397678414055303867455788195656187980068925417121976748748369467569305698278892275731925556560668556641172523844965099933982707571528371427015770576230922603861177195565537750141465213654631088118574691758080251364054596785281080168096685613397857616294379232268248215298853292381199893886139972347826651223933374102565069347361144687000252703847838534338747512849399563015628187158685779242686357166546612903002964170062058737461007939730654718536222328463089454651194246205536230336601126874415585187378422737557543023845426665683864694477245505985398375000103601513435129166677035091980620483066887245419417038769869148147912015542917785344369152591951795892124004590679772698452011453476335355234699386282214405446821229284764297348574465032047230441299244288174711245002496393554879753524319689487907532758079455570701194854338707369183921993995863402184232152184615069940250028322312664852086581874096051036873916138506659723016189250462678346789322570278241899336856273594540500603089408008870977408029716252806287447251073366746597404714020129979993774418917608964094131278449163871342511730671494415498727830621123980071961124852393069570269035276089365194115770222250305057306261092731112655739015642430926792156914329116264972074836909753537632260646945571271828650550949444860120575988804902948042721599822849715745351816442502968051154223623254128908622923896096926167733484983793988297460358734030993797835468575092883968818861163126952060533972947968136894318174145182669008679121570755370129163344035285909429469108571157777613190796516146580065256589546559110073181736630290955844132832995334917603357903993468372392878994699354979348323212620852285676283820206524960019792827095630484311801693843462388312995339566519138552720830741849295221565445247363132757361071077160302831327206281642349226223230894414019096686218229016460699054677048159901435541234392717134364383286650134634326747021056376486732356045397728360978278860470322820619092139111646053071559341148447324693819715732096101459693125154104379128795754874535133815783785668603805873975709336905331919677991638529417993759060727279308183919658988643484186929542032856165871736444877493131677512052012589842648208749423135438633672190412589782962153930011558524460935229917572161365384754235186719728602672982677157867903605158896232866793398892684171307950305349413289098968212940361844220420220198827919586925159597120512627924316020791377378329612350810851826001576133204787304711412072976215311592594238158331403517752666932502364246409095207168959584957587376925394226257848210217594145856279208528150060920070658837983941473583722720169861500872983628882229180069491705027281603350379718769131762019428172897173265794542669169788729097911675854506104510808204467914792075218832585447853000802143883960578812022343119030497117561202093652321260351425875554783512101961354394728525514472939301009080356769464361197118831365417915520805171210879391758837833018218606475642683046065989300404646756707966623775556320352359382124555872017068784839794746910583416355165460737267645083328702903866454671884101189046594903656795371031271690566955688234934351938450109630320418807910604407174808781964280624178801371415534410076768964099015970548351310940876271339850410066228834518819432580799321320351993728709982077827439936273167394983039082444119678424950946358135600693951375976503950785930661013935193220090372262978813024718185494223259739739599767821563487941048309342681043773647127618453469979586722591948725020015951859591320462436065761410134182724530311027829373196604230720606845018767343235566188631784572328133577977316882207128626300111414568227375925849494676782331657370179170572702351551303738228748878219081200136721929439731415625066004825192430144067637784919944591373110232296552000777836086048268427949502251318735630537372015363802980671094516462092468693143968105576339561735179312464683630999094447794071458141819641810187192055366695466897122042535301830413317365501248814136568498566179740168475110675363352829507316679344173975882353825122389826374539110763892475607232005748428336353774239764837171266019911725502005076798361125039714273956703279081478335879169804714025531596917646233074443311214329360044757779245223205638120834386061353352982837049487499828535415915253192112555047038320797808617248132669185204481383182081498542834446098972495314234933755658179628534991669402307835886751460864933408175840350140680252675418355731037500896916021233096162287667994423170219554727266827338126893111820612180202756917009621926577383651735081106277195335506753083627079512973027912538991064637807750891946512198589952271006786157316962108545940379329313408841730691610639726107361375007680582533016891074690731995738363708772832104613634649316643015758338942883341837728303017282400913924457445522584805153527122245352244131733695628089282483980082132537027774853993964884739238127910149078004663425259877312168256431686936607267656171879126257312162576351214327967478727650826486421814225774577963686652529498486832640711757076628008877228470249184769402115886379332018212728569251536251529770378665959064390426713977109761386167956734736332018660199754940493313195302038620842976346554332105455387176785306314306152717453580943947937472948898401810066721517844436386783006388178659967317678437174705383930337804185412543307857953432798962486259375010340669942805609023747384542656518481397811870039385401317591890593674094504167747331090343965943307528381316885963896760843770793002266799815968254325638424874507664729961347805606074236952033001663308092282782496693341841950753395040109922333828193300613444584818977782636609925415127211038841851596102718934275638718666519530235617530851050896106714227299635047104446641613962202115975933993112710162496325212882145191963729588799884045941533093348053027250068974358177275820222144788737739705366451379165853600337609374625753664140948740394728035028363496322450371014418660649144797817670289548071051735566478251040549369983818020022830818305956943586382946234358774470905574445256190887949550822544315397357902808519411161018750957039182569601375452811970047502163121875157604544669196922084318754976807235427919298295138945967282510902165922114113765426953466110643964689866843583284669385250592594909025988691329384860094022102919125843005514857139541926695942045155455906273721377290403477252451351538381826661076046869653031861227967810973690755294823219904723970540937024093529048553589669940920502608132046631164257891693002515189013760097690090030776412315534327360431270484146493050807176348052222391016548608949476235520936872924841559362276752979740775783043735547389972066873239766444908318745507132868044286472855423334289938007882757576077273432411736245670651622265984575343944807742290237217390396877198519890290313903797300762685424385339476123332032558108476987706881757707594716333667138060351507880642031238429414871117578355435424677374844748815547675739312201297939111474830043799927344262675975078135858534482807366376586109157276302513646748576546949288389865341726822352151814433575448622621975395441984155312953242940262970212974379497878371149114549118027356372893605547179157826532026862499706455597873938222326943300406860101914907455543457918878057567961359960574527478879389657436292746176705004645549554330144816876185950553731786318468812978758705067275158208938934051259947136887245344232664177184554637705828270189505346760903158542870664842483763101462043456951180942058327250484956177114187820220150661799740591548847263570192075012567120713399920796369313634470329917074438131880242388150294543004451537028231724800171335347305907558494824199229098943415180062483031722456927704888295534616038199684562875385300390173598130486693010258983252699594666025737712929037399963086501634868516334245692803903490120748785051468445122794247053810067410457236743098663053415462424830259125744996676275085928478496222794516840423060986165613912012733573411585426577556641913998853430828659592390935492752547643872378443917248064014579160560774555376510104166404861984571812177375465693650750195078617427592837452936310973028084522708383682593018934273202710732821884631724314819288477493694875196438479460569386200805101785200984266203242210476545210662599215456980777419660606670744594490461504108978559149035301813723207597183741210636316240689032412154232836134200231030848905283966481449997060514862882711358908937082912804841711133281630597296582210450284529899743623174546454533802355864550368639286695873832728786219725303684830545780324250801069394854248659393727965084669877306313595224733499399250573606372456411597322536133963025090199844623600204879115052844454701474345283263949221839587303321355664746711373429508205788304082888679800643162458870848196905093072566884714253996394004068024720444480625108796823335612565934333763990799652735036186481904210044515628791821540552393872080053647129297387612431237456180138826304054270287450965847655184210004286951751257737009596158806182347283244994410837769612738407328336021609087131265602180206081683466933189638154822246595821142203000140059117578191660840385808359846079873335246467496075619371803223356755502872080453056546381709041180953536755530999186019076001589349158325972222087380428916036800996426784624414013906488554858764137672424825364777846907895205646039732945509468179248844546188668326218371084295813896246084315815322864673419004268430720664587057596127911263297072944106198383626696965109088092277543335913858278674637129016262095506643577302185311972590921929992011191984672813138176509359910701809003410447037028395682516567123827729742414436183843024786645681413695565319601502748385368500579285099598187472456332422345977618981118803165863921307846451115227138483178992784092392557404520042702555481043109978342689046124920277276114888527690531618974506313824753361309107087691218877221147615822122124991079642673515811280389458890418232150205324077979993141774259855668073792017303772813282577418889300834027597981292290713535412306805500015723943916011621111151412552619589835437049857303525782119359729271245603077614007902555109115618403436967969417130800419724091372906667120340376394171826508443045167954877405998287704915820373783176688369300190686718245993235182171672573806534400341997389383655709429558804898903036803249762062114687289020003594041841938515063660639651777162432847901200105688374598756891575870761892802403250487714983173228957301976023485634745912407022939706833818309809689873332373362524974748485821717021814889472292431375588958862702396742719832654040493365089889186586252164427405105160698184834980222730087303467774368842607725881507100350857244055805220410974612656641591621335932757315892896379577120861418218870098531464193056108750532323902273654856689502967508701921863242797203364575004377880534256061887131803240554832997070326782801700277305144063790254871107311223734792721768955126608612424270997942854649949424559433594917073753340688474079275580830698981132164489383480566113780307927856350844646158466623610771123530171420976904463183617855073249731355487034322812134965135844965360732562179924726676029293805427925505859749295898264657955351953725122574604778974483402599898013354995657782793572493773987542354097618392239787198071255332247866508231893041936723400812988786748920688672722800732638748359167913044536359646438003213407199205313287790796403885068338430649406997422681894086072715659709829010214285019194883326247119973505536300556455893077308260332245959304987748588713613864914827296636786319658462287504822317382098685772159587947197657198607949175148383122754125682164743716985741305501884154091403619526493438797137943592538174629418215419889325581118389638572693956164571193725119979541511253471351365274211403845035730677541422925076820446813291601527917597026594565421866235910284124242930484615103190097586136769093537907627227531719389693556177164057854801064590284112021126747127171511469716275681786353233874647911611961793857113981598812240591145929083092180538765984032091027415508076423609811571516248779161604806363731057746398102961393530851208156007094781275885784416586931249416843329491259743614813685476439018121696881645237655207961986710532209528791290359383541498707202870255121638483321562438101307583004836997123145231801191379142971187223079589483731959624642639658984349384139432053158823578298027182120885487707641178674138325141747599838174437757076720861622362373517674532054597126420144274284553404419870294303881976657332665523027435069674282490220669936034779943385875376380046765184406728628982463414987385141199293895913988754645292446983199779163604435484745664868881015548175400640327309016577842733526880441969488798115049614997257117547258482186308191528106681190536188701510338263387678014454865209266401488802091984383155138899328337580172530400452064913029828810431744598538532912922433086894260411884901039920308813845203635273128692083810461199359398467597698229010036393232473492126779256032163076620512732643286131265803836425983502096264527972640695748957652508117811838944532463515485485594333209697590361316274675790838559095321480209786596868961249527289365257087462786296413017579720144245639912038968483960530233359977698745931575748368962243105412043874444153336243393881976878708684352537430163325292241087932450402328766670236909362559427839991544250853561143674367731464360276942474989111231875245425192041980809233209141339685761001843810654757556692781744549505071243444453504760527126590179206088314052280998813080501332007817151661244989351682251191533805103253784617454390269550334357467104104424000386644587786789995264850017737589385059056156809153118313519763421556364112218988088498624350951060417925656272450585000703943983542325877304645246835980544317639141494464278854808070907625567407382540046195500997307065677271246911190097508447971052833530996023091648983761381475509203644393837279988229528893785507400019857678206858897160727869087419224460060662765241674992701569886117241491149482657663639988912669940860949710890694305729207618777127218998398286156625015493253404974882343844206671683820800467093551717221060821423412081649272882039934908166889929080677940842695430684599496359583985185782357191208233540232256069490334229326156156713038449694200971598282040613328723376275999983550696484852856564758533285858206184484503633023853970490846958258057972142165133452550848656387872499606293182642216064363613966676415904169072387939809782962407428787308681678642084572450516553161328870712274246217787330194719811960773620585257553489365712217192944683016821548982698427463676539903535093662698594804682364410703681477231522004662093990951178801198016075508385878479618097859608321609774337582585421394750196653502566270717495908782696378656423932407410004709394063738173932877085347561768552912866516217380123594380162421091115695768955936540328275854328158293079994952926756519867256569013173170136471621825015002049330690798277938005853496772316590977234731197632203403062867570916052303043086983129093373498073532614484512200377468681381689605983979058015910408832898901684496244244428452414873427504938719272636409026605274597072923495567600095819363609342570096343490764684259222978344871841784599837940586194181962009969396992248961289250505152650076315690203518910516650054423651158131697533612739996934625254967252087358945143926783361687467556951529177612005366590516770859219138669269546593272601192142165395815137087980098754743728742773054337393888254394080351250777368643127261498358947952084903742915488249710463835347895713969772098661613383166879091525559465426361806721188923577475212626640131105771522144667092441934261811458555045758139931239413967235013057023815377564678649641644879340160562987145594550776535307239993050938904029288771075891315671342922006786714471218284840801562358537071049414538358885143738555534190457370713470760093452405029718081385702650428546902273080351612687348219988867436927367152589054704787890767693296337952304574914950115180769607691659362037199603010174518375716648674100435822289564243976948546305397637593324109626079710583097482746638969887859618548078359862502370684132742208112058199275227804569422424478284709143476217592683378283514646665430929451520604033225606063316579070604555973624819810402542701261322367587236279936764207838401742763160216254606878572046183634349571856502607631282113203649068375314426318973865891077658840459860107351263374334569787998505948302166300471309357905845239709951889817084853859473635053827059140479231908198418832330330409657994982944065923844894819562674999388722122597666823234919815056226857297346742348588920846993364598182190340570231529996213864665818845537856099162243145949004421075094397031565794421364803974720178348187866483805508433742205693938440523672449118932441800285293555184906056892182415660958137475995928322864416564230138386200723132521134562576621356532506129623132208482148622102720333948571248475037703365995870098646542919981025979501321554489503903866231644984488638144309266462675732652183492564593775736906531438615091161716214321953110238175111778548334892816872862819219354235979646426977118886109512043938578421169839936193953619127160350773997023042273274464402220010863087204700820278585880424427707428301359590652815836805407196358819917956209383128669955195061728981229765015351836700608414607417191604186183771838368343590206411732588952355094719167985451282444601321042920106935388746198644714508196031391016278003988180936791449399922243770981383228641558565848153403917032469360237328208567841567318089826368766470930621977097790272362453703779303703055551844355388631869333273892518091170947838419071358063582750952473963984095689287102150819736214542932531495656687032521807847861708873843886412663973770178552612303284559979106722193335492612946473000318141289184338850192940303353665503611387172965855571395835773729159180445338362927849996148647581100783636968347121713677818669436244772592488092711987605315707663305211557840721350815867571786501920300968092128742022683116676741894603415527730945718998729816574213738879994644980186241876305837632659584726233520709812725023386988030781263676037728261316330427205280455283833115010202540480627366142817198064253606622729387758379941762282201248067339454939390739685634359701113620115218719646007836560575171982779740442409761592190342386338227491910109225391028694230382485555015713180668278621300914870348116925514997078070893348466430694171017125683788532768698539813601369584692163052203189404176118462038207479759606808280093475552454755588750563643234080032058220598796995839655626110732823275199099609111064006897338321030096650280968650445407719731642233820940285139872411611876474029282235250796904715680513767125408344305858743108219876890001003003061323077290293071091844845942409872561018402835286678508304158211884339583920779466049807936738576802450185093587747299980742225364827135999717823078636973316174260786538881888767108988691766512789816713440264591842202072990935122450546800187446081716249068684290982133908315710093174232738577704469236024772506175105934447778829520693471349528090823880993227046892349630038557121236791478083399796282818184423214743542033377031932200782597851661719598044768452026500573332731779523557868463433222598115530628808100549901511375218358884120059740550900536454058700530058032657395429906138508722523400717207690169774312443800172584147057519236621478039844811386803810069203498849731865848292413600339611428712286763416121474759644365779543407397209632526604240628588445862698791799657863185490830730146605119581495720353627329658527429272639782959304990909170132481669035988889425347504337152195917009736767217048336753366732773681867542818921860204725473248224720130468887117457378528585762018824182010052658227610408970455118070013226192535810060560645490902893376513797204402680102590058923622046868630893390057526520935967531527684557660053344068166287887842137300564967423548641379881532701448897333541303834273406920785959003446767231170871459039914277294128428162261701803935314881483939019694507611801622256110405254992390855980745248476143843693193828818622455623392267901795396185257672989713013411664652013049613208378151315816057970658117100057700077280281899234695306948100679089448678278514275766630614383403089922377171439475451029597476433981129165238391416851944407560399935610271921338900406183020615926276290213725361960897295382753168199690855761069134102667795837382227368280472846900164394676424024102118685904841737522137671571427535868802027423858145746870854714285546493940221002185241749237049420759878548525939550162258169125879500021268341786264315005517690994098668242608519191873774284481661021381270344395593961543914326909858177307658474678676096447489991443798157711167826777442401411563338411464940110734290869634785788955935011439374639830169513416976880266366437153844908482902770649667030631503687237030641409987755813893004742375740434630367008348801597048673363395925086213021186701987604035751242075724640686604258406770168633660773241965302094770096879228831697812446297110772523156586454122360244821678719178914449180003413268163934722721670735283337830711659121715782842950783342324405073062498786357237978244322823122414850435119713349178242359077524397695614393747566482192008268066572890128765877375728559749005298085809976273515597682770250064738085252276097982203870921685059960056048418207280453177774332353459765960121992490231518487195083654782572409145741968771629226867273741311985031941986833087493327665898082407385504930547870920421293885821513667143823485329669255233048437762760472104191198761765194874439126834117815880911337213466718701934130980676483105695718118354057931794622613370840112524385389216995849947995785401588148521771259042811021353568267702851398625652010773642285960145423922942276937488660293365217813588399708411809624513900077575319996726407673933230515652123270825362525201108974312078050645089913333906792610914743263856700849158356792655125842238189281783778938468302686807431609423396973651172749939493859912561250742034296334226029708797081057407241262392906379805458673074626371385460817442413752291457755939431569739350968907198688158096293526237210548653578126614423350081242177945652686127390189882237873706382818521787809620531237928777231767439149333970966616909441977562421569919583530139759631302600619379832794874709173469174349142732695255586804517378712263537393172488747137943058945544541565926711026128737305612614543355544760825554848408912331772054054779760080119090605217634510457827391191191399319518789407738093929758414312409241310208307120294856236191730841336955936736161248728527337462212118524767077351352842301910169621204396322686740093104065171320504735098546139351709188801776376465442253269595832744768504021418969535190243992419592902263082634504945902802760258563757556809351804131655650744187265180711937082595080468678731867898224898541918892074189261189587507444156962041527516127409777901450853725280840266270186052496066968182032550450373717771390501046689808960821374368645566251256978160164751545096362728584161603345058627905720306914562905644065369609435897617664928173083267618449918702479446599202806023357927936920522420089139716942025492272922121898540775589569413623494929976838526215643088234740318785577376040053580393873180672532521649295470036174456097297262268482118111191998071149194409821173158122142182527710347305484886995491457913661413395760370497741132546989834222856137074599544633297680270608840847740208101822730302891416530141558004413174454981808622792224913831307833528553561349483418925005649620568812151513889139984574948593501273915084078134713753394956946688691550920234726954214176039180750541249957149202974934490232704951392646308260302217915111902953871608873874350804717587398864941201671877668232651458147402424954513708803070289349269564827265917564584750788000190874140083196334859413165566082187211690687628032627975799948826815025804726825812721966079893253262871061027772753010249826750633420703964715673930474823981022481174097105331265523813551419006301119931759865181625631231118011365977645498097891341554161390153566763684167724431528139716763145063629667877631146172445841375627828239256385586783312528621952977045930741455326897023080830055888502819034665699808158662278956352596017497907408234530587101709286275119103020294372022552580762724958919780513966857171093469865250336415917048167783986802618840239556468805379123434231866829331610024508098675548793661713748878138899100066111109137009712832876859054383071389152346083940206658745306803331607871287290615722422917775811533446863289745483189819425152104597570249068947912259274323607316656055128227882046363358974436549016603014348353172984778694618257235968412464399794496037256443997337382451340827983613381523329190221317378874576415804322574040056750174362219815742622075812794986021035066935360084948536948131422606691758481947909248119914926303650238958573303491980411143396513676259790924184411291145684098238397180778881496302097959597723841221073472941243759073735926092634631510170767540731841084592452013190960684291207474058358188732120803813034251935145128840831268457718674654476095500163269739438281419554976593971975240309478761771343585254833914196037559619860590215558275085687123242632615961335350099756510873184724059182215061065179097384180587074609213256056527109000938089370009874470461038338364207155730279907779860109777337766795727312858777981243377578544329635871904255433455975317522190628504237798930026906035565228679698202132497294230456758958625593777350400109032979489660338724797710529380435075170294633018749527763678660002736445943021862619076337454635805711965958794505443812289937526706017400334301362589901828858923885515523902231176039774403243123009893508081723697568739904212950605937755882588536276047289398640230151675094822122156427888362770669702977538435894466632324109094622694172279266608024256279402347063892808627820923824802153463199751715973992085336713281145022471773051072511194332250445541292600111816098770856803026706344438742749717434155746269028980557716768397375608974119444026243138489023785070569943790047256757231357088668381593495686026938874693804646383099357345508916801408229185563901905810819599624299182434230733109117949669141763207402209234840101447214997735285753765053896004898235980669813975733267385284146078882817902567917262468053490476935411419432227869300009705444258862669125847356406581012210189487832445643266659488164303602512907138731232536029574233424371590654391436370722709230588212799123018547910593251250903969974337046483613839959445220828449640490179301013932446000941592834167796684628645188640432878511792965926453436661941522759535336041604637369137518505210620101066749046869608745627116792344090879337296498354636582688523306128199906316057835224476582528136327741500175973997319081533818157315601399405762403724267436916918478350060593982085489790060994058687871410797382649764093768602381764814335875366885302039575140829823064161467827014575239759063023850730957097089509187408626512576388636469912780739659691365014441014132073640466235665541234396521221511614073888963690607826784758407284614135764712566615514981187683890530472842985754789867274321617440173140642574832428595849959999520495847273632093189090204557901213706205603121826023070031438074179257928152261252033453129267007654332129164771861779711733773989110627197240348621357816013277624918542598727787765131633767074553404598758619089973349529246063288395527743005563231649831994754724521205712706410387231642354433083203918683585200181150969499207670020321438543495954146094456778394796683189934741216944885186210959254627048904953893397180177860530479284703115960870201755499335799225295260393380826783650273384963004855904804341053660090360126338016402609798062965866236065738241174133602361364142433801662051418352174931145290243271134470009571713790314015759694825663580312603836700394013655366482088677591655405842160321753739391268018321223467909978887082895793236395739993565535199980400152197034076967354946785778215556031010171946515198665177086377293920476520571247622630818322145335376258821483979247767550647768087462581760270693928506223891422472563741486254338900887742321668569581296216677910425701679234967774358542438264260047363145879092435273849706253608975225122752031267210212030165750244288892533329250555482193789366668114807824363808154851948918970107791385446329663102338183187146190964974154159670218692663694876804382424668427462601691582303406181392644721759478236270173801029608338452895977943171722614807376205075060881849712335353784389983308946032878666337858114352641058167223902378618399722438878736154290487890153700418376811706746292600842025860926689162780529460208308434990966803599297473693221005536801690488180917857526580091432838494613626603516463786313042614328424030170855459150112203725872501213685752954016403454553922258957485102219221069914444708761865959372618741294376046986222533730810260523878140411432275519988303552134000060268797903423624784832280360082648262267992355349903612598426393106515165656606372429661312047162311881619115563521689808626097895700505532681598338318005493993509070033386597915990719936680282395113523426948154061000119468507464904116105301295850803702384300367448895320333318407851499411061436959156583793876209790175768956908957353699853107326919988981110306540033527587482090173095033563226869755565515558274473880417435990331164496381586210195738560824657913319449754542907490668086155798962461782533517098369010238996699462208433062415436572490993276007346036922369074897692849959166893968677489745308150235551098241751205294601950550823886921824648478757127511508351515548302661808222705242897213590339309730579809060895298296712693312520448399999999989966404900877489109573286580121585948460033771229948394090793449596742709034793487223473886877343107354510973661828275580558591037596691757144573987266140865685300749452187541445703091638009" + }, + "polynomial_products": { + "rational": "4999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999998" + }, + "microbox_face_corrections": { + "rational": "96250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001/1250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "77.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008" + } + }, + "strict_checks": { + "actual_bit_above_effective": { + "rational": "1073441669285994268266580121585948460033771229948394090793449596742709034793487223473886877343107354510973661828275580558591037596691757144573987266140865685300749452187541445703091638008924873257750488823720464317188939226508842360868762403986214916575604650250326106486138860344221544853614888687866288671765495231006980013203458485694325714596845884753815479227764560886892449971706957269073782376285061648383949727189080642943783966380662877320428476741124153546350356940229341523760021222772005530434669755213325179486986130527771062599949459230432293132250497430120087396874362568262844151462728566690677419399407165987588252507798412053869056292755534307382109069761150758892753932679774625116882962524315452488491395230914666863227061104550898802920324999979279697312974166664592981603875903386622550916116592246026170370417596891416442931126169481609640821575199081864045460309597709304732928953060122743557118910635754143047140530285106993590553911740151142365057750999500721289024049295136062102418493448384108885859761029132258526163215601200827319563153569563076986011949994335537467029582683625180789792625216772298668055396762149907464330642135485944351620132628745281091899879382118398225804518394056749438742510549785326650680519057195974004001245116216478207181173744310167225731497653865701116900254433875775203985607775029521386085946192944782126961176845955549938988538747781453777468852196871513814641568617134176747005585032618049292473547870610885745634269889810111027975884802239019410391455680035430056850929636711499406389769155275349174218275415220780614766453303003241202340507928253193801240432906284981423206236227767374609587893205410406372621136365170963466198264175685848925974167331192942818114106178285768444477361840696770683986948682090688177985363652673941808831173433400933016479328419201306325521424201060129004130335357475829542864743235958695007996041434580873903137639661231307522337400932086696172289455833851630140955686910950527373448527785784567939433734558743671530154755353821117196180662756354196707860189064590368019712891753121456573127123342669973073134650595788724702653528790920454327804344227905935435876181572177670789385688131770310535061236056853580779708061374969179124174240849025092973236843242866279238825204858132618933616064401672294116401248187854544138363216068202271303162614091593428766825652711024501373664497589597482031470358250115372912273265561917482043407569213997688295107812954016485567726923049152962656054279465403464568426419278968220753426641320221463165738409938930117342180206357411927631155915955960234416082614968080575897474415136795841724524334077529837829634799684773359042539057717585404756937681481152368333719296449466613499527150718180958566208083008482524614921154748430357956481170828744158294369987815985868232403211705283255455966027699825403274223554163986101658994543679329924056246173647596114365420565346841091466166042254180417664829098779097838359106417041584956233482910429399839571223207884237595531376193900576487759581269535747929714824889043297579607729121054294897105412139798183928646107127760576233726916416895838965757824121648232433396356278704871463390786802139919070648658406675244888735929528123575088825596586243032041050617883316728966907852546470983334259419226709065623179762190681019268640925793745661886608862353013129612309978073935916238417879118565038243607143875164239725716893117984646207180196805890329737811824745732029917986754233096236113483840135735929601254258003584434512012745366521003392183511176064315009810728372879861209724804699209842813867797212961355981925547404237395056362901155348052052080046435687302411790338131463791245270574476309306004082655481610254995996809628081735907512786847717973163455093937794434125360679153855878630996246531352886762273643085534373284404536623558574274739977717086354524814830101064643533668525964165885459529689739252354250224356183759972655614112053716874986799034961513971186472443016011081725377953540689599844432782790346314410099549736252873892525596927239403865781096707581506261371206378884732087652964137507063273800181110441185708371636071637962561588926660906620575591492939633917336526899750237172686300286764051966304977864927329434098536664131165204823529234975522034725092177847221504878553598850314332729245152047032565746796017654899598984640327774992057145208659344183704332824166039057194893680616470753385111337757134127991048444150955358872375833122787729329403432590102500034292916816949361577488990592335840438276550373466162959103723363583700291433110780205500937153013248868364074293001666119538432822649707827013318364831929971863949464916328853792499820616795753380767542466401115365956089054546634532374621377635877563959448616598075614684523269652983778744560932898649383274584097405394417492201787072438449821610697560282009545798642768536607578290811924134137318231653861677872054778527724998463883493396621785061853600852327258245433579077273070136671396848332211423331632454339396543519817215108510895483038969294575550929551173653260874382143503203983573492594445029201207023052152374417970184399067314948024537566348713662612678546468765624174748537567484729757134406504254469834702715637154845084407262669494100302633471857648584674398224554305950163046119576822724133596357454286149692749694045924266808187121914657204578047722766408653052733596267960049011901337360939592275831404730689133578908922564642938737138769456509283811210412505410220319637986655696431112722643398722364268006536464312565058923213932439162917491338428409313440207502748124997931866011438878195250523091468696303720437625992122919736481621881265181099166450533781931206811338494323736622807220647831245841399546640036806349134872315025098467054007730438878785152609593399667338381543443500661331631609849320991978015533234361339877311083036204443472678014916974557792231629680779456213144872256266696093952876493829789820778657154540072990579110671677207559576804813201377457967500734957423570961607254082240023190811693381330389394549986205128364544835955571042252452058926709724166829279932478125074849267171810251921054392994327300735509925797116267870171040436465942090385789652886704349791890126003236395995433836338808611282723410753128245105818885110948761822410089835491136920528419438296117767796249808592163486079724909437605990499567375624968479091066160615583136249004638552914416140340972210806543497819566815577177246914609306777871207062026631283343066122949881481018194802261734123027981195579416174831398897028572091614660811590968908818745255724541919304549509729692323634667784790626069393627754406437805261848941035356019055205891812595181294190289282066011815899478373590673767148421661399496962197247980461981993844717536893134527913745903170701389838564730389555521796690278210104752895812625415031688127544649404051844843391252890522005586625352046711018336250898573426391142705428915333142012398423448484784545313517652750865869675546803084931211038451541952556521920624560296021941937219240539847462915122932104775333593488378304602458623648458481056733266572387929698423871593752314117025776484328912915064525031050236890464852137559740412177705033991240014531147464804984372828293103438526724682778168544739497270650284690610142322026931654635529569637113284910275475604920911603168937409351411947405957405124100424325770177090176394528725421278890564168434693594627500058708880425212355534611339918627979617018508891308416224388486407728007885094504224122068512741450764658999070890089133971036624762809889253642736306237404248258986544968358212213189748010572622550931153467164563089072458834345962098930647819368291425867031503247379707591308609763811588334549903008764577162435955969867640051881690230547285961584997486575857320015840726137273105934016585112373623951522369941091399109692594353655039965732930538818488301035160154180211316963987503393655508614459022340893076792360063087424922939921965280373902661397948203349460081066794852457414192520007382699673026296733150861439219301975850242989706310975441150589237986517908552651380267389316907515033948174851000664744982814304300755441096631915387802766877217597453285317682914684488671617200229313834268081521812901449490471225524311216550387197084167887845088924697979166719027603085637564524906861269849960984276514481432509412737805394383095458323263481396213145359457853435623073655137036142304501261024960712304107886122759838979642959803146759351557904690957867480156908603844516067878665851081101907699178204288170192939637255358480563251757872736751862193517569153432773159953793830218943206703710000587897027423457728218212583417439031657773343673880540683557909943094020051275365090709093239528827089926272142660825233454242756054939263033890843935149839786121029150268121254406983066024538737280955053300120149885278725508717680535492773207394981960031075279959024176989431109059705130943347210155632082539335728867050657725314098358842339183422264039871367508225830360618981385486623057149200721199186395055911103874978240635332877486813133247201840069452992762703619157991096874241635691889521225583989270574140522477513752508763972234739189145942509806830468963157999142609649748452598080768238763530543351001117832446077452318534332795678182573746879563958783663306613362072369035550680835771559399971988176484361667831922838328030784025332950706500784876125639355328648899425583909388690723658191763809292648893800162796184799682130168334805555582523914216792639800714643075117197218702289028247172465515034927044430618420958870792053410898106364150231090762266334756325783140837220750783136836935427065316199146313855867082588480774417747340585411178760323274660606978182381544491332817228344265072574196747580898671284539562937605481815614001597761603065437372364698128017859638199317910592594320863496686575234454051517112763231395042670863717260886936079699450322926299884142980080362505508733515530804476203776239366827215738430709776954572303364201443181521488519095991459488903791378004331462190775015944544777022294461893676205098737235049327738178582461756224555770476835575575001784071465296837743922108221916353569958935184404001371645148028866385241596539245437343484516222139833194480403741541857292917538638899996855211216797675777769717489476082032912590028539294843576128054145750879384477198419488978176876319312606406116573839916055181725418666575931924721165634698311390966409024518800342459016835925243364662326139961862656350801352963565665485238693119931600522123268858114088239020219392639350047587577062542195999281191631612296987267872069644567513430419759978862325080248621684825847621439519349902457003365354208539604795302873050817518595412058633236338038062025333525327495005050302835656595637022105541513724882208227459520651456033469191901326982022162682749567114518978967860363033003955453982539306445126231478454823698579929828551188838955917805077468671681675732813448536821420724084575827716356225980293707161388778249893535219545269028662099406498259615627351440559327084999124423893148787622573639351889033400585934643439659944538971187241949025778537755253041455646208974678277515145800411429070010115088113281016585249331862305184144883833860203773567102123303886777243938414428729831070768306675277845775293965715804619107363276428985350053728902593135437573006972831006927853487564015054664794141238914414898828050140820347068408929609254975485079044205103319480020397329000868443441285501245202491529180476321552042560385748933550426698353621391612655319837402242650215862265455439853472250328166417391092728070712399357318560158937342441840719222986332313870118600515463621182785456868058034197957142996161023334750576005298892739888708821384538347933550808139002450282257277227017034540672642736068307542499035536523580262845568082410560468560278410164970323375449174863567051256602851738899623169181719276094701312240572411281492365074116356916022134883776322072285461208767085761254976004091697749305729726945157719230992853864491715414984635910637341679694416480594681086915626752817943175151413903076979361980482772646181292418474554493656122061288764567188429039787081943177595774650574565697706056744863642729353225070417677607641228577203680237551881770814183381563892246803193581794516898384715278037685696750244167679038727253788450720379407721293829758368798581043744822843116682613750116631334101748051277037262904712196375660623670952468958407602657893558094241741928123291700258559425948975672303335687512379738483399032600575370953639761724171405762555384082103253608075071472068203130123172113589368235284340394563575822902458471764265172334971650480032365112448584655827675527525296465093589080574715971145143089319116025941139223604668533466895394512986065143501955866012793044011322824924723990646963118654274203507317002522971760141220817202249070941510603360044167279112903050867026223796890364919871934538196684431453294623911606102240376990077000548576490548303562738361694378663761892762259697932347322464397109026958146719702239581603123368972220134332483965493919909587017394034237913651080292293417415513382621147917623019792015938237230959272945374261583237907760128120306480460354197992721353505301574644148793567384675897453471342773746839232714803299580747094405471860850208469498376437632211093507296902902881133358060481927736745064841832288180935703958042680626207750094542126948582507442740717396484055971150872017592206303207893953328004460250813684850326207551378917591225111169332751321223604624258263129492513967334941551782413509919534246665952618127488114432001691149829287771265126453707127944611505002177753624950914961591603838153358171732062847799631237869048488661443651090098985751311109299047894574681964158782337189543800237383899733598436569667751002129663549761693238979349243076509121946089933128506579179115199922671082442642000947029996452482122988188768638169376337296047315688727177556202382300275129809787916414868745509882999859211203291534824539070950632803891136472171701107144229038385818474886518523491990760899800538586864545750617761980498310405789433293800795381670203247723704898159271121232544002354094221242898519996028464358628220567854426182516155107987867446951665001459686022776551701770103468467272002217466011827810057821861138854158476244574556200320342768674996901349319005023531231158665663235839906581289656555787835715317583670145423592013018366622014183864411831460913863080100728083202962843528561758353291953548786101933154134768768657392310061159805680343591877334255324744800003289860703029428687048293342828358763103099273395229205901830608348388405571566973309489830268722425500078741363471556787127277206664716819166185522412038043407518514242538263664271583085509896689367734225857545150756442533961056037607845275882948489302126857556561411063396635690203460314507264692019292981267460281039063527117859263704553695599067581201809764239760396784898322824304076380428078335678045132483482915721049960669299486745856500818243460724268715213518517999058121187252365213424582930487646289417426696756523975281123967515781776860846208812691934344829134368341384001009414648696026548686197365365972705675634996999590133861840344412398829300645536681804553053760473559319387426485816789539391382603374181325300385293477103097559924506263723662078803204188396817918233420219663100751151114309517025314499012256145472718194678945080585415300886479980836127278131485980731301847063148155404331025631643080032411882761163607598006120601550207742149898969469984736861959296217896669989115269768373660493277452000613074949006549582528210971214643327662506488609694164477598926681896645828156172266146090681345479761571566920836972582403980249051254251445389132521222349121183929749844526271374547700328210409583019251416902350057907232930420857206045580267677323366624181694888106914727638655762215284504957474671973778845695571066581511613147637708288990848372013752117206552997388595236924487064270071671024131967887402570881089844692938552001389812219194142245784821736865731415598642657105756343031839687528292585790117092328222971252288893161908525857305847981309518994056383722859469914290619545383929677462530356002226512614526569482189059042421846461340732409539085017009976963846078461668127592560079397965096324856670265179912835542087151204610290738920472481335178074784057883380503450672206022428076290384328027499525863173451558377588360144954439086115515104343058171304756481463324343297070666913814109695879193354878787336684185879088805275036037919491459747735526482552744012647158432319651447367956749078624285590763273130085628699478473743577359270186324937114736205226821784468231908027978529747325133086042400298810339566739905738128418830952058009622036583029228105272989234588171904153618360316233533933918068401003411186815231021036087465000122255575480466635353016036988754628540530651530282215830601327080363561931885953694000757227066836230892428780167551370810199115784981120593686841115727039205055964330362426703238898313251558861212311895265510176213511639942941288963018788621563516867808372504800814335427116687153972322759855373495773087484675728693498774075373558303570275579455933210285750304992459326800825980270691416003794804099735689102099219226753671003102272371138146707464853469563301487081244852618693712276981767656757135609377952364977644290333021436625427436156129152804070714604576222778097591212284315766032012761209276174567929845200595391545345107119555997827382559059835944282823915114458514339728081869436832638918560728236016408758123374266008960987654203754046996929632659878317078516561679162763245632326331281958717653482209528981056166402909743511079735791415978612922250760271057098360793721796744399202363812641710120015551245803723354271688286830369319216593506127952534358286431686536382034726246705813875604580441945527509259244139259388889631128922273626133345221496381765810432316185728387283449809505207203180862142579569836052757091413493700868662593495638430427658225231222717467205245964289477539343088004178655561332901477410705399936371742163132229961411939329266899277722565406828885720832845254168163910932327414430000770270483779843272606330575657264436266112751045481502381457602478936858467338957688431855729836826485642699615939806381574251595463376664651621079316894453810856200254036685157252224001071003962751624738832473468083054753295858037454995322602393843747264792454347736733914558943908943233376997959491903874526771436560387149278675454122448324011647543559750386532109012121852062873128059777275976956256070798432687884965603444051911518047681561931522732354501617978154921794261153923502888996857363866344275739817025930376614897000584385821330306713861165796574863242293446260292037279726083061567389559362119164776307592358504048078638343981304889509048882249887271353183993588355880240600832068874777853435344960180078177787198620532335793980669943806269910918456053671553235811942972025517677624705194143552949840619056863897246574918331138828251378356024621999799399387735384541941385781631030811518025487796319432942664298339168357623132083215844106790038412652284639509962981282450540003851554927034572800056435384272605336765147842692223622246578202261646697442036657311947081631559585401812975509890639962510783656750186263141803573218336857981365153452284459106152795045498764978813110444234095861305730094381835223801354590621530073992288575752641704383320040743436363115357051291593324593613559843480429667656080391046309594699885333453644095288426307313355480376893874238379890019697724956328223175988051889819892709188259893988393468520914018772298255495319856558461966045137511239965483170588496152675704392031037722639237986159300230053626830341517279932077714257542647316775705048071126844091318520558073494679151874282310827460241640068427362901833853970678976083700855929274534068294514145472043408139001818165973503666192802222114930499132569560816598052646556590332649326653445263626491436215627959054905350355055973906222576508524294282847596235163597989468354477918205908976385997354761492837987887870901819421324697240559119463979481988215275590626273821321988494695812806493694463088467989331186366742422431572539887006515290271724023693459710220533291739233145318615842808199310646553765825708192017144541174314367547659639212937023703212196061098477639675548777918949001521828803850950304771231261361234236275508875321546419640920762948465402057397317667069597390077358324369736836788405868376579988459984543943620153060938610379864182110264344297144846673877123319382015524565712104909794080504713203774166952321716629611118487920012877945615732219918763395876814744741957254927607820540923449366360061828847786173179466440832523554526343905430619967121064715195179576262819031652495572465685714492826239594515228370850625829057142890701211955799562951650152590115848024290294812089967548366174824099995746331642747136998896461801180266351478296161625245143103667795723745931120881207691217134618028364538468305064264780710502001711240368457766434644511519717687332317707011977853141826073042842208812997712125072033966097316604623946726712569231018303419445870066593873699262552593871718002448837221399051524851913073926598330239680590265327320814982757395762659602479192849751584855071862679148318645966273267845351606939581045980624154233660437510740577845495368682709175527951035664256164217110163999317346367213055455665852943332433857668175656843431409843331535118985387500242728552404351135435375517029912976057330164351528184495120460877121250486703561598346386685421974246824524854288050198940382838004745296880463445949987052382949544780403559225815662988007988790316358543909364445133529308046807975601501953696302560983269043485518170851606245674154626545251737602993611602633382501334466820383518522899013890425815915741222835697266571235302934066148953390312447447905579161760247646961025112174633176436823817732557306656259613173803864703378860856376329188413641075477325831977495122922156600830010400842919682370295645748191437795729286346459429720274869597845271542807970915215411544612502267941326956437282320058317638075097219984484936000654718465213353896869575345834927494959778205137584389870982017333218641477817051347228659830168328641468974831552362143643244212306339462638513678115320605269765450012101228017487749851593140733154794058240583788518551747521418724038908265385074725722907836511517249541708448812113686052129806218560262368380741294752557890269284374677115329983751564410869462774521962023552425258723436295642438075893752414244553646512170133205806676618111604487515686016083293972048073739479876124033441025058165306165130171453460948882639096524257547292521365502250572411388210891091686814657794774252538877477091328891047834889030318217533645589189044047983976181878956473097908434521761761720136096242118452381214048317137518151737958338575941028752761653831732608812652767750254294532507557576295046584529729431539617966075759120735462651981379186965735899052980290772129658162239644724706911549346080833451046299195716206092961951201516081419547383473099010819439447948287248488638129639173668869851162546963857612583480983906264253626420355020291616221585162147762082498511168607591694496774518044419709829254943831946745962789500786606363593489909925256445721899790662038207835725126270886749748604367967049690980727454283167679330988274418855938617087418871186926078112820476467014365383346476310016259504110680159438795328414412615895515982172056611594901545415575620291844882086117275301014004632294756871382353051936242884524791989283921225363865493495670140905992765108780540547546303576377761600385770161118035765368375571563494457930538903022600901708417267717320847925900451773490602033155428772585080091073340463945878231830451958379635453939421716693971688399117365109003638275441555017233738433294289287730103316214998870075886237569697222172003085010281299745216983184373057249321008610662261689815953054609157164792163849891750008570159405013101953459009721470738347939556416977619409225678225225129839056482520227011759665624466353469708370519515009097258239385942130146087034546816487083049842399961825171983360733028117366886783562557661862474393474404840010234636994839054634837455606784021349347425787794445449397950034649873315859207056865213905035203795503765180578933746895237289716198739776013648026963674873753776397726804470900380421731689167721969286647263166455113694372056647370987274066424473770765510831724874434352148722882643337494275609404590813851708934620595383833988822299436193066860038368267544208729480796500418518353093882579658142744976179395941125595489483847455008216043897206628565781306026949932716816590366443202639476231952088706238924175313153626634133677995098380264890241267657250224372220179986777778172598057433424628189123385722169530783211958668250938639333678425742541876855515416444837693310627342050903362036114969579080485950186210417548145135278536668788974354423590727328205112690196679397130329365403044261076348552806317507120041100792548711200532523509731834403277323695334161955736524225084716839135485191988649965127556036851475584837441002795792986612927983010292610373715478661648303610418150376017014739269952208285339301603917771320697264748041815163117741770863180352320563844223700739580408080455231755785305411751248185252814781473073697965846491853631783081509597361807863141758505188328362253575839237393149612970974231833746308456265069104780899967346052112343716089004681205604951938104247645731282949033217160792488076027881956888344982862575351473476807732929980048697825363055188163556987786964180523163882585078157348788694578199812382125998025105907792332327158568853944018444027978044532446640854537428244403751324484291134072825619148913308804936495561874299152440213994618792886954264060359573500541153908648208274881244529919978193404102067932255040457894123912984965941073396250094447264267999452710811395627476184732509072838857606808241098911237542012494658796519933139727482019634228215222896895219553764792045119351375398021298383655260486252019157409878812448823482292744790542120271953969664981035575568714422327445866059404492312821106673535178181075461165544146678395148744119530587221438274435815235039569307360049656805201582932657343770995505645389785497761133549910891741479977636780245828639394658731112251450056513168850746194203888456646320524878205176111194751372302195242985886011241990548648553728582266323681300862794612225061239070723380128530898216639718354162887219618837836080075140163513153853378176410066171647358519558153031979710557000452942849246989220799020352803866037204853346522943170784223436419486416547506389301904612917716113554426139998058911148227466174830528718683797557962102433510871346668102367139279497418572253753492794085153315125681869121712725855458153882357440175396290417881349749819206005132590703277232008110955834310071901964139797213510799811681433166440663074270962271913424297641406814709312667611695448092932791679072526172496298957875979786650190626078250874576641531181824132540700329072683462295338774360018736788432955104683494372734451699964805200536183693236368536879720118847519255146512616616304329987881203582902041987801188262425717840523470047181246279523647037132824926622939592084971834035387167706434597084952048187395229853808580582098162518274697484722272706017443852068061726997111797173585271906752866891753120695755697677185222207261878434643048318543077172847057486676897003762463221893905431402849042026545135676511965371871485033514280830008000095900830545273581362181959088419757258758879375634795385993712385164148414369547749593309374146598469133574167045627644057653245202177874560551930275728436797344475016291480254442446973673246585089319080248276182005330094150787342320894451398887353670033601049055095758857458717922553671529113383359216263282959963769806100158465995935712291300809170781108644321040663362013051756611022962757808149074590219009221320563964427893904143059376807825959648900132840154940947921323834643269945323007399028819039131789267981927974732396719478040387406826752786852351765173279527727171513239667589716329565013770941951345773105998085657241937196848061034867283937479232659921197268926703582264481668918831567935649252121746396335755306418004222583420841352720852001286892960003919969560593184606529010642844356888793797965610696960266964582724541215904695885750475473836335570932924748235703204150446489870446382507483647945861214298755221715505487251702749132219822451535666286083740756664417914859664153006445128291512347147990527370824181512945230058749278204954975449593746557957593966849951142221493334149888903561242126666377038435127238369029610216205978441722910734067379532363362570761807005169168065956261467261024639123515066314507479661683539318763721471055648104352745965239794078332309420804411365655477038524758984987823630057532929243122003338210793424266732428377129471788366555219524276320055512224252769141902421969259916324637658650741479831594827814662167443894107958338313001806639280140505261355798892639661902363816428494683981713432301077274679296707242737391477134315193965828908169977559254825499757262849409196719309089215548208502979556155786017111058247626808125476251741124790602755493253837947895224371917713544896002339289573199987946240419315275043033543927983470347546401528930019277480314721378696966868678725514067737590567537623676176887295662038274780420859898893463680332336398901201298185993322680416801856012663943520977295314610369187799976106298507019176778939740829839259523139926510220935933336318429700117787712608168683241224758041964846208618208529260029378534616002203777938691993294482503581965380993287354626048886896888345105223916512801933767100723682757960852287835068417336110049091418501866382768840207507643493296580326197952200660107558313387516912685501801344798530792615526185020461430008166621206264502050938369952889780351649758941079609889835222615635070304248574497698329696890339467638355458951420557281932138053884038187820940340657461337495910320000000003/20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.00005367208346429971341332900607929742300168856149741970453967247983713545173967436117369434386715536772554868309141377902792955187983458785722869936330704328426503747260937707228515458190044624366288752444118602321585944696132544211804343812019931074582878023251251630532430694301721107724268074443439331443358827476155034900066017292428471628572984229423769077396138822804434462249858534786345368911881425308241919748635945403214718919831903314386602142383705620767731751784701146707618800106113860027652173348776066625897434930652638855312999747296152161465661252487150600436984371812841314220757313642833453387096997035829937941262538992060269345281463777671536910545348805753794463769663398873125584414812621577262442456976154573334316135305522754494014601624999896398486564870833322964908019379516933112754580582961230130851852087984457082214655630847408048204107875995409320227301547988546523664644765300613717785594553178770715235702651425534967952769558700755711825288754997503606445120246475680310512092467241920544429298805145661292630816078006004136597815767847815384930059749971677687335147913418125903948963126083861493340276983810749537321653210677429721758100663143726405459499396910591991129022591970283747193712552748926633253402595285979870020006225581082391035905868721550836128657488269328505584501272169378876019928038875147606930429730964723910634805884229777749694942693738907268887344260984357569073207843085670883735027925163090246462367739353054428728171349449050555139879424011195097051957278400177150284254648183557497031948845776376745871091377076103903073832266515016206011702539641265969006202164531424907116031181138836873047939466027052031863105681825854817330991320878429244629870836655964714090570530891428842222386809203483853419934743410453440889926818263369709044155867167004665082396642096006531627607121005300645020651676787379147714323716179793475039980207172904369515688198306156537611687004660433480861447279169258150704778434554752636867242638928922839697168672793718357650773776769105585980903313781770983539300945322951840098564458765607282865635616713349865365673252978943623513267643954602271639021721139529677179380907860888353946928440658851552675306180284267903898540306874845895620871204245125464866184216214331396194126024290663094668080322008361470582006240939272720691816080341011356515813070457967143834128263555122506868322487947987410157351791250576864561366327809587410217037846069988441475539064770082427838634615245764813280271397327017322842132096394841103767133206601107315828692049694650586710901031787059638155779579779801172080413074840402879487372075683979208622621670387649189148173998423866795212695288587927023784688407405761841668596482247333067497635753590904792831040415042412623074605773742151789782405854143720791471849939079929341162016058526416277279830138499127016371117770819930508294972718396649620281230868237980571827102826734205457330830211270902088324145493895489191795532085207924781167414552146999197856116039421187977656880969502882438797906347678739648574124445216487898038645605271474485527060698990919643230535638802881168634582084479194828789120608241162166981781393524357316953934010699595353243292033376224443679647640617875444127982931215160205253089416583644834539262732354916671297096133545328115898810953405096343204628968728309433044311765065648061549890369679581192089395592825191218035719375821198628584465589923231035900984029451648689059123728660149589933771165481180567419200678679648006271290017922172560063726832605016960917555880321575049053641864399306048624023496049214069338986064806779909627737021186975281814505776740260260400232178436512058951690657318956226352872381546530020413277408051274979984048140408679537563934238589865817275469688972170626803395769279393154981232656764433811368215427671866422022683117792871373699888585431772624074150505323217668342629820829427297648448696261771251121780918799863278070560268584374933995174807569855932362215080055408626889767703447999222163913951731572050497748681264369462627984636197019328905483537907531306856031894423660438264820687535316369000905552205928541858180358189812807944633304533102877957464698169586682634498751185863431501433820259831524889324636647170492683320655826024117646174877610173625460889236107524392767994251571663646225760235162828733980088274497994923201638874960285726043296720918521664120830195285974468403082353766925556688785670639955242220754776794361879165613938646647017162950512500171464584084746807887444952961679202191382751867330814795518616817918501457165553901027504685765066244341820371465008330597692164113248539135066591824159649859319747324581644268962499103083978766903837712332005576829780445272733172661873106888179387819797243082990378073422616348264918893722804664493246916372920487026972087461008935362192249108053487801410047728993213842683037891454059620670686591158269308389360273892638624992319417466983108925309268004261636291227167895386365350683356984241661057116658162271696982717599086075542554477415194846472877754647755868266304371910717516019917867462972225146006035115260761872089850921995336574740122687831743568313063392732343828120873742687837423648785672032521272349173513578185774225422036313347470501513167359288242923371991122771529750815230597884113620667981787271430748463748470229621334040935609573286022890238613832043265263667981339800245059506686804697961379157023653445667894544612823214693685693847282546419056052062527051101598189933278482155563613216993611821340032682321562825294616069662195814587456692142046567201037513740624989659330057194390976252615457343481518602188129960614598682408109406325905495832252668909656034056692471618683114036103239156229206997733200184031745674361575125492335270038652194393925763047966998336691907717217503306658158049246604959890077666171806699386555415181022217363390074584872788961158148403897281065724361281333480469764382469148949103893285772700364952895553358386037797884024066006887289837503674787117854808036270411200115954058466906651946972749931025641822724179777855211262260294633548620834146399662390625374246335859051259605271964971636503677549628985581339350855202182329710451928948264433521748959450630016181979977169181694043056413617053765641225529094425554743809112050449177455684602642097191480588838981249042960817430398624547188029952497836878124842395455330803077915681245023192764572080701704861054032717489097834077885886234573046533889356035310133156416715330614749407405090974011308670615139905977897080874156994485142860458073304057954844544093726278622709596522747548648461618173338923953130346968138772032189026309244705176780095276029459062975906470951446410330059079497391867953368835742108306997484810986239902309909969223587684465672639568729515853506949192823651947777608983451391050523764479063127075158440637723247020259224216956264452610027933126760233555091681254492867131955713527144576665710061992117242423922726567588263754329348377734015424656055192257709762782609603122801480109709686096202699237314575614660523876667967441891523012293118242292405283666332861939648492119357968761570585128882421644564575322625155251184452324260687798702060888525169956200072655737324024921864141465517192633623413890842723697486353251423453050711610134658273177647848185566424551377378024604558015844687046757059737029787025620502121628850885450881972643627106394452820842173467973137500293544402126061777673056699593139898085092544456542081121942432038640039425472521120610342563707253823294995354450445669855183123814049446268213681531187021241294932724841791061065948740052863112754655767335822815445362294171729810494653239096841457129335157516236898537956543048819057941672749515043822885812179779849338200259408451152736429807924987432879286600079203630686365529670082925561868119757611849705456995548462971768275199828664652694092441505175800770901056584819937516968277543072295111704465383961800315437124614699609826401869513306989741016747300405333974262287070962600036913498365131483665754307196096509879251214948531554877205752946189932589542763256901336946584537575169740874255003323724914071521503777205483159576939013834386087987266426588414573422443358086001146569171340407609064507247452356127621556082751935985420839439225444623489895833595138015428187822624534306349249804921382572407162547063689026971915477291616317406981065726797289267178115368275685180711522506305124803561520539430613799194898214799015733796757789523454789337400784543019222580339393329255405509538495891021440850964698186276792402816258789363683759310967587845767163865799768969151094716033518550002939485137117288641091062917087195158288866718369402703417789549715470100256376825453545466197644135449631360713304126167271213780274696315169454219675749198930605145751340606272034915330122693686404775266500600749426393627543588402677463866036974909800155376399795120884947155545298525654716736050778160412696678644335253288626570491794211695917111320199356837541129151803094906927433115285746003605995931975279555519374891203176664387434065666236009200347264963813518095789955484371208178459447606127919946352870702612387568762543819861173695945729712549034152344815789995713048248742262990403841193817652716755005589162230387261592671663978390912868734397819793918316533066810361845177753404178857796999859940882421808339159614191640153920126664753532503924380628196776643244497127919546943453618290958819046463244469000813980923998410650841674027777912619571083963199003573215375585986093511445141235862327575174635222153092104794353960267054490531820751155453811331673781628915704186103753915684184677135326580995731569279335412942403872088736702927055893801616373303034890911907722456664086141721325362870983737904493356422697814688027409078070007988808015327186861823490640089298190996589552962971604317483432876172270257585563816156975213354318586304434680398497251614631499420714900401812527543667577654022381018881196834136078692153548884772861516821007215907607442595479957297444518956890021657310953875079722723885111472309468381025493686175246638690892912308781122778852384177877875008920357326484188719610541109581767849794675922020006858225740144331926207982696227186717422581110699165972402018707709286464587693194499984276056083988378888848587447380410164562950142696474217880640270728754396922385992097444890884381596563032030582869199580275908627093332879659623605828173491556954832045122594001712295084179626216823311630699809313281754006764817828327426193465599658002610616344290570441195101096963196750237937885312710979996405958158061484936339360348222837567152098799894311625401243108424129238107197596749512285016826771042698023976514365254087592977060293166181690190310126667626637475025251514178282978185110527707568624411041137297603257280167345959506634910110813413747835572594894839301815165019777269912696532225631157392274118492899649142755944194779589025387343358408378664067242684107103620422879138581781129901468535806943891249467676097726345143310497032491298078136757202796635424995622119465743938112868196759445167002929673217198299722694855936209745128892688776265207278231044873391387575729002057145350050575440566405082926246659311525920724419169301018867835510616519433886219692072143649155353841533376389228876469828579023095536816382144926750268644512965677187865034864155034639267437820075273323970706194572074494140250704101735342044648046274877425395221025516597400101986645004342217206427506226012457645902381607760212801928744667752133491768106958063276599187011213251079311327277199267361251640832086955463640353561996786592800794686712209203596114931661569350593002577318105913927284340290170989785714980805116673752880026494463699443544106922691739667754040695012251411286386135085172703363213680341537712495177682617901314227840412052802342801392050824851616877245874317835256283014258694498115845908596380473506561202862056407461825370581784580110674418881610361427306043835428806274880020458488746528648634725788596154964269322458577074923179553186708398472082402973405434578133764089715875757069515384896809902413863230906462092372772468280610306443822835942145198935409715887978873252872828488530283724318213646766125352088388038206142886018401187759408854070916907819461234015967908972584491923576390188428483751220838395193636268942253601897038606469148791843992905218724114215583413068750583156670508740256385186314523560981878303118354762344792038013289467790471208709640616458501292797129744878361516678437561898692416995163002876854768198808620857028812776920410516268040375357360341015650615860567946841176421701972817879114512292358821325861674858252400161825562242923279138377637626482325467945402873579855725715446595580129705696118023342667334476972564930325717509779330063965220056614124623619953234815593271371017536585012614858800706104086011245354707553016800220836395564515254335131118984451824599359672690983422157266473119558030511201884950385002742882452741517813691808471893318809463811298489661736612321985545134790733598511197908015616844861100671662419827469599547935086970171189568255401461467087077566913105739588115098960079691186154796364726871307916189538800640601532402301770989963606767526507873220743967836923379487267356713868734196163574016497903735472027359304251042347491882188161055467536484514514405666790302409638683725324209161440904678519790213403131038750472710634742912537213703586982420279855754360087961031516039469766640022301254068424251631037756894587956125555846663756606118023121291315647462569836674707758912067549597671233329763090637440572160008455749146438856325632268535639723057525010888768124754574807958019190766790858660314238998156189345242443307218255450494928756555546495239472873409820793911685947719001186919498667992182848338755010648317748808466194896746215382545609730449665642532895895575999613355412213210004735149982262410614940943843190846881686480236578443635887781011911501375649048939582074343727549414999296056016457674122695354753164019455682360858505535721145191929092374432592617459953804499002692934322728753088809902491552028947166469003976908351016238618524490796355606162720011770471106214492599980142321793141102839272130912580775539939337234758325007298430113882758508850517342336360011087330059139050289109305694270792381222872781001601713843374984506746595025117656155793328316179199532906448282778939178576587918350727117960065091833110070919322059157304569315400503640416014814217642808791766459767743930509665770673843843286961550305799028401717959386671276623724000016449303515147143435241466714141793815515496366976146029509153041741942027857834866547449151343612127500393706817357783935636386033323584095830927612060190217037592571212691318321357915427549483446838671129287725753782212669805280188039226379414742446510634287782807055316983178451017301572536323460096464906337301405195317635589296318522768477995337906009048821198801983924491614121520381902140391678390225662417414578605249803346497433729282504091217303621343576067592589995290605936261826067122914652438231447087133483782619876405619837578908884304231044063459671724145671841706920005047073243480132743430986826829863528378174984997950669309201722061994146503227683409022765268802367796596937132429083947696956913016870906626501926467385515487799622531318618310394016020941984089591167101098315503755755571547585126572495061280727363590973394725402927076504432399904180636390657429903656509235315740777021655128158215400162059413805818037990030603007751038710749494847349923684309796481089483349945576348841868302466387260003065374745032747912641054856073216638312532443048470822387994633409483229140780861330730453406727398807857834604184862912019901245256271257226945662606111745605919648749222631356872738501641052047915096257084511750289536164652104286030227901338386616833120908474440534573638193278811076422524787373359868894228477855332907558065738188541444954241860068760586032764986942976184622435321350358355120659839437012854405449223464692760006949061095970711228924108684328657077993213285528781715159198437641462928950585461641114856261444465809542629286529239906547594970281918614297349571453097726919648387312651780011132563072632847410945295212109232306703662047695425085049884819230392308340637962800396989825481624283351325899564177710435756023051453694602362406675890373920289416902517253361030112140381451921640137497629315867257791887941800724772195430577575521715290856523782407316621716485353334569070548479395966774393936683420929395444026375180189597457298738677632412763720063235792161598257236839783745393121427953816365650428143497392368717886796350931624685573681026134108922341159540139892648736625665430212001494051697833699528690642094154760290048110182915146140526364946172940859520768091801581167669669590342005017055934076155105180437325000611277877402333176765080184943773142702653257651411079153006635401817809659429768470003786135334181154462143900837756854050995578924905602968434205578635196025279821651812133516194491566257794306061559476327550881067558199714706444815093943107817584339041862524004071677135583435769861613799276867478865437423378643467493870376867791517851377897279666051428751524962296634004129901353457080018974020498678445510496096133768355015511361855690733537324267347816507435406224263093468561384908838283785678046889761824888221451665107183127137180780645764020353573022881113890487956061421578830160063806046380872839649226002976957726725535597779989136912795299179721414119575572292571698640409347184163194592803641180082043790616871330044804938271018770234984648163299391585392582808395813816228161631656409793588267411047644905280832014548717555398678957079893064611253801355285491803968608983721996011819063208550600077756229018616771358441434151846596082967530639762671791432158432681910173631233529069378022902209727637546296220696296944448155644611368130666726107481908829052161580928641936417249047526036015904310712897849180263785457067468504343312967478192152138291126156113587336026229821447387696715440020893277806664507387053526999681858710815661149807059696646334496388612827034144428604164226270840819554661637072150003851352418899216363031652878286322181330563755227407511907288012394684292336694788442159278649184132428213498079699031907871257977316883323258105396584472269054281001270183425786261120005355019813758123694162367340415273766479290187274976613011969218736323962271738683669572794719544716166884989797459519372633857182801935746393377270612241620058237717798751932660545060609260314365640298886379884781280353992163439424828017220259557590238407809657613661772508089890774608971305769617514444984286819331721378699085129651883074485002921929106651533569305828982874316211467231301460186398630415307836947796810595823881537961792520240393191719906524447545244411249436356765919967941779401203004160344373889267176724800900390888935993102661678969903349719031349554592280268357766179059714860127588388123525970717764749203095284319486232874591655694141256891780123109998996996938676922709706928908155154057590127438981597164713321491695841788115660416079220533950192063261423197549814906412252700019257774635172864000282176921363026683825739213461118111232891011308233487210183286559735408157797927009064877549453199812553918283750931315709017866091684289906825767261422295530763975227493824894065552221170479306528650471909176119006772953107650369961442878763208521916600203717181815576785256457966622968067799217402148338280401955231547973499426667268220476442131536566777401884469371191899450098488624781641115879940259449099463545941299469941967342604570093861491277476599282792309830225687556199827415852942480763378521960155188613196189930796501150268134151707586399660388571287713236583878525240355634220456592602790367473395759371411554137301208200342136814509169269853394880418504279646372670341472570727360217040695009090829867518330964011110574652495662847804082990263232782951663246633267226318132457181078139795274526751775279869531112882542621471414237981175817989947341772389591029544881929986773807464189939439354509097106623486202795597319897409941076377953131369106609942473479064032468472315442339946655931833712112157862699435032576451358620118467298551102666458696165726593079214040996553232768829128540960085722705871571837738298196064685118516060980305492388198377743889594745007609144019254751523856156306806171181377544376607732098204603814742327010286986588335347986950386791621848684183942029341882899942299922719718100765304693051899320910551321721485724233369385616596910077622828560524548970402523566018870834761608583148055592439600064389728078661099593816979384073723709786274638039102704617246831800309144238930865897332204162617772631719527153099835605323575975897881314095158262477862328428572464131197972576141854253129145285714453506059778997814758250762950579240121451474060449837741830874120499978731658213735684994482309005901331757391480808126225715518338978618729655604406038456085673090141822692341525321323903552510008556201842288832173222557598588436661588535059889265709130365214211044064988560625360169830486583023119733633562846155091517097229350332969368496312762969358590012244186106995257624259565369632991651198402951326636604074913786978813298012395964248757924275359313395741593229831366339226758034697905229903120771168302187553702889227476843413545877639755178321280821085550819996586731836065277278329264716662169288340878284217157049216657675594926937501213642762021755677176877585149564880286650821757640922475602304385606252433517807991731933427109871234122624271440250994701914190023726484402317229749935261914747723902017796129078314940039943951581792719546822225667646540234039878007509768481512804916345217427590854258031228370773132726258688014968058013166912506672334101917592614495069452129079578706114178486332856176514670330744766951562237239527895808801238234805125560873165882184119088662786533281298065869019323516894304281881645942068205377386629159887475614610783004150052004214598411851478228740957188978646431732297148601374347989226357714039854576077057723062511339706634782186411600291588190375486099922424680003273592326066769484347876729174637474798891025687921949354910086666093207389085256736143299150841643207344874157761810718216221061531697313192568390576603026348827250060506140087438749257965703665773970291202918942592758737607093620194541326925373628614539182557586247708542244060568430260649031092801311841903706473762789451346421873385576649918757822054347313872609810117762126293617181478212190379468762071222768232560850666029033383090558022437578430080416469860240368697399380620167205125290826530825650857267304744413195482621287736462606827511252862056941054455458434073288973871262694387385456644455239174445151591087668227945945220239919880909394782365489542172608808808600680481210592261906070241585687590758689791692879705143763808269158663044063263838751271472662537787881475232922648647157698089830378795603677313259906895934828679495264901453860648290811198223623534557746730404167255231495978581030464809756007580407097736917365495054097197239741436242443190648195868344349255812734819288062917404919531321268132101775101458081107925810738810412492555843037958472483872590222098549146274719159733729813947503933031817967449549626282228609498953310191039178625631354433748743021839835248454903637271415838396654941372094279693085437094355934630390564102382335071826916732381550081297520553400797193976642072063079477579910860283057974507727077878101459224410430586376505070023161473784356911765259681214422623959946419606126819327467478350704529963825543902702737731517881888808001928850805590178826841877857817472289652694515113004508542086338586604239629502258867453010165777143862925400455366702319729391159152259791898177269697108583469858441995586825545018191377207775086168692166471446438650516581074994350379431187848486110860015425051406498726084915921865286246605043053311308449079765273045785823960819249458750042850797025065509767295048607353691739697782084888097046128391126125649195282412601135058798328122331767348541852597575045486291196929710650730435172734082435415249211999809125859916803665140586834433917812788309312371967372024200051173184974195273174187278033920106746737128938972227246989750173249366579296035284326069525176018977518825902894668734476186448580993698880068240134818374368768881988634022354501902108658445838609846433236315832275568471860283236854936370332122368853827554158624372171760743614413216687471378047022954069258544673102976919169944111497180965334300191841337721043647403982502092591765469412898290713724880896979705627977447419237275041080219486033142828906530134749663584082951832216013197381159760443531194620876565768133170668389975491901324451206338286251121861100899933888890862990287167123140945616928610847653916059793341254693196668392128712709384277577082224188466553136710254516810180574847895402429750931052087740725676392683343944871772117953636641025563450983396985651646827015221305381742764031587535600205503962743556002662617548659172016386618476670809778682621125423584195677425959943249825637780184257377924187205013978964933064639915051463051868577393308241518052090751880085073696349761041426696508019588856603486323740209075815588708854315901761602819221118503697902040402276158778926527058756240926264073907365368489829232459268158915407547986809039315708792525941641811267879196186965748064854871159168731542281325345523904499836730260561718580445023406028024759690521238228656414745166085803962440380139409784441724914312876757367384038664649900243489126815275940817784938934820902615819412925390786743943472890999061910629990125529538961661635792844269720092220139890222662233204272687141222018756622421455670364128095744566544024682477809371495762201069973093964434771320301797867502705769543241041374406222649599890967020510339661275202289470619564924829705366981250472236321339997263554056978137380923662545364194288034041205494556187710062473293982599665698637410098171141076114484476097768823960225596756876990106491918276302431260095787049394062244117411463723952710601359769848324905177877843572111637229330297022461564105533367675890905377305827720733391975743720597652936107191372179076175197846536800248284026007914663286718854977528226948927488805667749554458707399888183901229143196973293655561257250282565844253730971019442283231602624391025880555973756861510976214929430056209952743242768642911331618406504313973061125306195353616900642654491083198591770814436098094189180400375700817565769266890882050330858236792597790765159898552785002264714246234946103995101764019330186024266732614715853921117182097432082737531946509523064588580567772130699990294555741137330874152643593418987789810512167554356733340511835696397487092861268767463970425766575628409345608563629277290769411787200876981452089406748749096030025662953516386160040554779171550359509820698986067553999058407165832203315371354811359567121488207034073546563338058477240464663958395362630862481494789379898933250953130391254372883207655909120662703501645363417311476693871800093683942164775523417471863672258499824026002680918466181842684398600594237596275732563083081521649939406017914510209939005941312128589202617350235906231397618235185664124633114697960424859170176935838532172985424760240936976149269042902910490812591373487423611363530087219260340308634985558985867926359533764334458765603478778488385926111036309392173215241592715385864235287433384485018812316109469527157014245210132725678382559826859357425167571404150040000479504152726367906810909795442098786293794396878173976929968561925820742071847738747966546870732992345667870835228138220288266226010889372802759651378642183986722375081457401272212234868366232925446595401241380910026650470753936711604472256994436768350168005245275478794287293589612768357645566916796081316414799818849030500792329979678561456504045853905543221605203316810065258783055114813789040745372951095046106602819822139469520715296884039129798244500664200774704739606619173216349726615036995144095195658946339909639873661983597390201937034133763934261758825866397638635857566198337948581647825068854709756728865529990428286209685984240305174336419687396163299605986344633517911322408344594157839678246260608731981678776532090021112917104206763604260006434464800019599847802965923032645053214221784443968989828053484801334822913622706079523479428752377369181677854664623741178516020752232449352231912537418239729306071493776108577527436258513745661099112257678331430418703783322089574298320765032225641457561735739952636854120907564726150293746391024774877247968732789787969834249755711107466670749444517806210633331885192175636191845148051081029892208614553670336897661816812853809035025845840329781307336305123195617575331572537398308417696593818607355278240521763729826198970391661547104022056828277385192623794924939118150287664646215610016691053967121333662141885647358941832776097621381600277561121263845709512109846299581623188293253707399157974139073310837219470539791691565009033196400702526306778994463198309511819082142473419908567161505386373396483536213686957385671575969829144540849887796274127498786314247045983596545446077741042514897780778930085555291238134040627381258705623953013777466269189739476121859588567724480011696447865999939731202096576375215167719639917351737732007644650096387401573606893484834343393627570338687952837688118380884436478310191373902104299494467318401661681994506006490929966613402084009280063319717604886476573051845938999880531492535095883894698704149196297615699632551104679666681592148500588938563040843416206123790209824231043091042646300146892673080011018889693459966472412517909826904966436773130244434484441725526119582564009668835503618413789804261439175342086680550245457092509331913844201037538217466482901630989761003300537791566937584563427509006723992653963077630925102307150040833106031322510254691849764448901758248794705398049449176113078175351521242872488491648484451697338191777294757102786409660690269420190939104701703287306687479551600000000015" + }, + "complex_above_effective": { + "rational": "1/20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "5E-30011" + }, + "q_positive": { + "rational": "8398774780627722606678354969603512884991557192512901477301637600814322741301628194131528280664223161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999999/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999998" + }, + "complex_endpoint": { + "rational": "1/10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "1E-30010" + }, + "q_below_effective": { + "rational": "1/20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "5E-30011" + }, + "stop_positive": { + "rational": "1/10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "1E-30016" + }, + "stop_below_one": { + "rational": "9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999/10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999" + }, + "leaf_saving_above_effective": { + "rational": "4999999983202450438744554786643290060792974230016885614974197045396724798371354517396743611736943438671553677255486830914137790279295518798345878572286993633070432842650374726093770722851545819004462436628875244411860232158594469613254421180434381201993107458287802325125163053243069430172110772426807444343933144335882747615503490006601729242847162857298422942376907739613882280443446224985853478634536891188142530824191974863594540321471891983190331438660214238370562076773175178470114670761880010611386002765217334877606662589743493065263885531299974729615216146566125248715060043698437181284131422075731364283345338709699703582993794126253899206026934528146377767153691054534880575379446376966339887312558441481262157726244245697615457333431613530552275449401460162499989639848656487083332296490801937951693311275458058296123013085185208798445708221465563084740804820410787599540932022730154798854652366464476530061371778559455317877071523570265142553496795276955870075571182528875499750360644512024647568031051209246724192054442929880514566129263081607800600413659781576784781538493005974997167768733514791341812590394896312608386149334027698381074953732165321067742972175810066314372640545949939691059199112902259197028374719371255274892663325340259528597987002000622558108239103590586872155083612865748826932850558450127216937887601992803887514760693042973096472391063480588422977774969494269373890726888734426098435756907320784308567088373502792516309024646236773935305442872817134944905055513987942401119509705195727840017715028425464818355749703194884577637674587109137707610390307383226651501620601170253964126596900620216453142490711603118113883687304793946602705203186310568182585481733099132087842924462987083665596471409057053089142884222238680920348385341993474341045344088992681826336970904415586716700466508239664209600653162760712100530064502065167678737914771432371617979347503998020717290436951568819830615653761168700466043348086144727916925815070477843455475263686724263892892283969716867279371835765077377676910558598090331378177098353930094532295184009856445876560728286563561671334986536567325297894362351326764395460227163902172113952967717938090786088835394692844065885155267530618028426790389854030687484589562087120424512546486618421621433139619412602429066309466808032200836147058200624093927272069181608034101135651581307045796714383412826355512250686832248794798741015735179125057686456136632780958741021703784606998844147553906477008242783863461524576481328027139732701732284213209639484110376713320660110731582869204969465058671090103178705963815577957977980117208041307484040287948737207568397920862262167038764918914817399842386679521269528858792702378468840740576184166859648224733306749763575359090479283104041504241262307460577374215178978240585414372079147184993907992934116201605852641627727983013849912701637111777081993050829497271839664962028123086823798057182710282673420545733083021127090208832414549389548919179553208520792478116741455214699919785611603942118797765688096950288243879790634767873964857412444521648789803864560527147448552706069899091964323053563880288116863458208447919482878912060824116216698178139352435731695393401069959535324329203337622444367964764061787544412798293121516020525308941658364483453926273235491667129709613354532811589881095340509634320462896872830943304431176506564806154989036967958119208939559282519121803571937582119862858446558992323103590098402945164868905912372866014958993377116548118056741920067867964800627129001792217256006372683260501696091755588032157504905364186439930604862402349604921406933898606480677990962773702118697528181450577674026026040023217843651205895169065731895622635287238154653002041327740805127497998404814040867953756393423858986581727546968897217062680339576927939315498123265676443381136821542767186642202268311779287137369988858543177262407415050532321766834262982082942729764844869626177125112178091879986327807056026858437493399517480756985593236221508005540862688976770344799922216391395173157205049774868126436946262798463619701932890548353790753130685603189442366043826482068753531636900090555220592854185818035818981280794463330453310287795746469816958668263449875118586343150143382025983152488932463664717049268332065582602411764617487761017362546088923610752439276799425157166364622576023516282873398008827449799492320163887496028572604329672091852166412083019528597446840308235376692555668878567063995524222075477679436187916561393864664701716295051250017146458408474680788744495296167920219138275186733081479551861681791850145716555390102750468576506624434182037146500833059769216411324853913506659182415964985931974732458164426896249910308397876690383771233200557682978044527273317266187310688817938781979724308299037807342261634826491889372280466449324691637292048702697208746100893536219224910805348780141004772899321384268303789145405962067068659115826930838936027389263862499231941746698310892530926800426163629122716789538636535068335698424166105711665816227169698271759908607554255447741519484647287775464775586826630437191071751601991786746297222514600603511526076187208985092199533657474012268783174356831306339273234382812087374268783742364878567203252127234917351357818577422542203631334747050151316735928824292337199112277152975081523059788411362066798178727143074846374847022962133404093560957328602289023861383204326526366798133980024505950668680469796137915702365344566789454461282321469368569384728254641905605206252705110159818993327848215556361321699361182134003268232156282529461606966219581458745669214204656720103751374062498965933005719439097625261545734348151860218812996061459868240810940632590549583225266890965603405669247161868311403610323915622920699773320018403174567436157512549233527003865219439392576304796699833669190771721750330665815804924660495989007766617180669938655541518102221736339007458487278896115814840389728106572436128133348046976438246914894910389328577270036495289555335838603779788402406600688728983750367478711785480803627041120011595405846690665194697274993102564182272417977785521126226029463354862083414639966239062537424633585905125960527196497163650367754962898558133935085520218232971045192894826443352174895945063001618197997716918169404305641361705376564122552909442555474380911205044917745568460264209719148058883898124904296081743039862454718802995249783687812484239545533080307791568124502319276457208070170486105403271748909783407788588623457304653388935603531013315641671533061474940740509097401130867061513990597789708087415699448514286045807330405795484454409372627862270959652274754864846161817333892395313034696813877203218902630924470517678009527602945906297590647095144641033005907949739186795336883574210830699748481098623990230990996922358768446567263956872951585350694919282365194777760898345139105052376447906312707515844063772324702025922421695626445261002793312676023355509168125449286713195571352714457666571006199211724242392272656758826375432934837773401542465605519225770976278260960312280148010970968609620269923731457561466052387666796744189152301229311824229240528366633286193964849211935796876157058512888242164456457532262515525118445232426068779870206088852516995620007265573732402492186414146551719263362341389084272369748635325142345305071161013465827317764784818556642455137737802460455801584468704675705973702978702562050212162885088545088197264362710639445282084217346797313750029354440212606177767305669959313989808509254445654208112194243203864003942547252112061034256370725382329499535445044566985518312381404944626821368153118702124129493272484179106106594874005286311275465576733582281544536229417172981049465323909684145712933515751623689853795654304881905794167274951504382288581217977984933820025940845115273642980792498743287928660007920363068636552967008292556186811975761184970545699554846297176827519982866465269409244150517580077090105658481993751696827754307229511170446538396180031543712461469960982640186951330698974101674730040533397426228707096260003691349836513148366575430719609650987925121494853155487720575294618993258954276325690133694658453757516974087425500332372491407152150377720548315957693901383438608798726642658841457342244335808600114656917134040760906450724745235612762155608275193598542083943922544462348989583359513801542818782262453430634924980492138257240716254706368902697191547729161631740698106572679728926717811536827568518071152250630512480356152053943061379919489821479901573379675778952345478933740078454301922258033939332925540550953849589102144085096469818627679240281625878936368375931096758784576716386579976896915109471603351855000293948513711728864109106291708719515828886671836940270341778954971547010025637682545354546619764413544963136071330412616727121378027469631516945421967574919893060514575134060627203491533012269368640477526650060074942639362754358840267746386603697490980015537639979512088494715554529852565471673605077816041269667864433525328862657049179421169591711132019935683754112915180309490692743311528574600360599593197527955551937489120317666438743406566623600920034726496381351809578995548437120817845944760612791994635287070261238756876254381986117369594572971254903415234481578999571304824874226299040384119381765271675500558916223038726159267166397839091286873439781979391831653306681036184517775340417885779699985994088242180833915961419164015392012666475353250392438062819677664324449712791954694345361829095881904646324446900081398092399841065084167402777791261957108396319900357321537558598609351144514123586232757517463522215309210479435396026705449053182075115545381133167378162891570418610375391568418467713532658099573156927933541294240387208873670292705589380161637330303489091190772245666408614172132536287098373790449335642269781468802740907807000798880801532718686182349064008929819099658955296297160431748343287617227025758556381615697521335431858630443468039849725161463149942071490040181252754366757765402238101888119683413607869215354888477286151682100721590760744259547995729744451895689002165731095387507972272388511147230946838102549368617524663869089291230878112277885238417787787500892035732648418871961054110958176784979467592202000685822574014433192620798269622718671742258111069916597240201870770928646458769319449998427605608398837888884858744738041016456295014269647421788064027072875439692238599209744489088438159656303203058286919958027590862709333287965962360582817349155695483204512259400171229508417962621682331163069980931328175400676481782832742619346559965800261061634429057044119510109696319675023793788531271097999640595815806148493633936034822283756715209879989431162540124310842412923810719759674951228501682677104269802397651436525408759297706029316618169019031012666762663747502525151417828297818511052770756862441104113729760325728016734595950663491011081341374783557259489483930181516501977726991269653222563115739227411849289964914275594419477958902538734335840837866406724268410710362042287913858178112990146853580694389124946767609772634514331049703249129807813675720279663542499562211946574393811286819675944516700292967321719829972269485593620974512889268877626520727823104487339138757572900205714535005057544056640508292624665931152592072441916930101886783551061651943388621969207214364915535384153337638922887646982857902309553681638214492675026864451296567718786503486415503463926743782007527332397070619457207449414025070410173534204464804627487742539522102551659740010198664500434221720642750622601245764590238160776021280192874466775213349176810695806327659918701121325107931132727719926736125164083208695546364035356199678659280079468671220920359611493166156935059300257731810591392728434029017098978571498080511667375288002649446369944354410692269173966775404069501225141128638613508517270336321368034153771249517768261790131422784041205280234280139205082485161687724587431783525628301425869449811584590859638047350656120286205640746182537058178458011067441888161036142730604383542880627488002045848874652864863472578859615496426932245857707492317955318670839847208240297340543457813376408971587575706951538489680990241386323090646209237277246828061030644382283594214519893540971588797887325287282848853028372431821364676612535208838803820614288601840118775940885407091690781946123401596790897258449192357639018842848375122083839519363626894225360189703860646914879184399290521872411421558341306875058315667050874025638518631452356098187830311835476234479203801328946779047120870964061645850129279712974487836151667843756189869241699516300287685476819880862085702881277692041051626804037535736034101565061586056794684117642170197281787911451229235882132586167485825240016182556224292327913837763762648232546794540287357985572571544659558012970569611802334266733447697256493032571750977933006396522005661412462361995323481559327137101753658501261485880070610408601124535470755301680022083639556451525433513111898445182459935967269098342215726647311955803051120188495038500274288245274151781369180847189331880946381129848966173661232198554513479073359851119790801561684486110067166241982746959954793508697017118956825540146146708707756691310573958811509896007969118615479636472687130791618953880064060153240230177098996360676752650787322074396783692337948726735671386873419616357401649790373547202735930425104234749188218816105546753648451451440566679030240963868372532420916144090467851979021340313103875047271063474291253721370358698242027985575436008796103151603946976664002230125406842425163103775689458795612555584666375660611802312129131564746256983667470775891206754959767123332976309063744057216000845574914643885632563226853563972305752501088876812475457480795801919076679085866031423899815618934524244330721825545049492875655554649523947287340982079391168594771900118691949866799218284833875501064831774880846619489674621538254560973044966564253289589557599961335541221321000473514998226241061494094384319084688168648023657844363588778101191150137564904893958207434372754941499929605601645767412269535475316401945568236085850553572114519192909237443259261745995380449900269293432272875308880990249155202894716646900397690835101623861852449079635560616272001177047110621449259998014232179314110283927213091258077553993933723475832500729843011388275850885051734233636001108733005913905028910930569427079238122287278100160171384337498450674659502511765615579332831617919953290644828277893917857658791835072711796006509183311007091932205915730456931540050364041601481421764280879176645976774393050966577067384384328696155030579902840171795938667127662372400001644930351514714343524146671414179381551549636697614602950915304174194202785783486654744915134361212750039370681735778393563638603332358409583092761206019021703759257121269131832135791542754948344683867112928772575378221266980528018803922637941474244651063428778280705531698317845101730157253632346009646490633730140519531763558929631852276847799533790600904882119880198392449161412152038190214039167839022566241741457860524980334649743372928250409121730362134357606759258999529060593626182606712291465243823144708713348378261987640561983757890888430423104406345967172414567184170692000504707324348013274343098682682986352837817498499795066930920172206199414650322768340902276526880236779659693713242908394769695691301687090662650192646738551548779962253131861831039401602094198408959116710109831550375575557154758512657249506128072736359097339472540292707650443239990418063639065742990365650923531574077702165512815821540016205941380581803799003060300775103871074949484734992368430979648108948334994557634884186830246638726000306537474503274791264105485607321663831253244304847082238799463340948322914078086133073045340672739880785783460418486291201990124525627125722694566260611174560591964874922263135687273850164105204791509625708451175028953616465210428603022790133838661683312090847444053457363819327881107642252478737335986889422847785533290755806573818854144495424186006876058603276498694297618462243532135035835512065983943701285440544922346469276000694906109597071122892410868432865707799321328552878171515919843764146292895058546164111485626144446580954262928652923990654759497028191861429734957145309772691964838731265178001113256307263284741094529521210923230670366204769542508504988481923039230834063796280039698982548162428335132589956417771043575602305145369460236240667589037392028941690251725336103011214038145192164013749762931586725779188794180072477219543057757552171529085652378240731662171648535333456907054847939596677439393668342092939544402637518018959745729873867763241276372006323579216159825723683978374539312142795381636565042814349739236871788679635093162468557368102613410892234115954013989264873662566543021200149405169783369952869064209415476029004811018291514614052636494617294085952076809180158116766966959034200501705593407615510518043732500061127787740233317676508018494377314270265325765141107915300663540181780965942976847000378613533418115446214390083775685405099557892490560296843420557863519602527982165181213351619449156625779430606155947632755088106755819971470644481509394310781758433904186252400407167713558343576986161379927686747886543742337864346749387037686779151785137789727966605142875152496229663400412990135345708001897402049867844551049609613376835501551136185569073353732426734781650743540622426309346856138490883828378567804688976182488822145166510718312713718078064576402035357302288111389048795606142157883016006380604638087283964922600297695772672553559777998913691279529917972141411957557229257169864040934718416319459280364118008204379061687133004480493827101877023498464816329939158539258280839581381622816163165640979358826741104764490528083201454871755539867895707989306461125380135528549180396860898372199601181906320855060007775622901861677135844143415184659608296753063976267179143215843268191017363123352906937802290220972763754629622069629694444815564461136813066672610748190882905216158092864193641724904752603601590431071289784918026378545706746850434331296747819215213829112615611358733602622982144738769671544002089327780666450738705352699968185871081566114980705969664633449638861282703414442860416422627084081955466163707215000385135241889921636303165287828632218133056375522740751190728801239468429233669478844215927864918413242821349807969903190787125797731688332325810539658447226905428100127018342578626112000535501981375812369416236734041527376647929018727497661301196921873632396227173868366957279471954471616688498979745951937263385718280193574639337727061224162005823771779875193266054506060926031436564029888637988478128035399216343942482801722025955759023840780965761366177250808989077460897130576961751444498428681933172137869908512965188307448500292192910665153356930582898287431621146723130146018639863041530783694779681059582388153796179252024039319171990652444754524441124943635676591996794177940120300416034437388926717672480090039088893599310266167896990334971903134955459228026835776617905971486012758838812352597071776474920309528431948623287459165569414125689178012310999899699693867692270970692890815515405759012743898159716471332149169584178811566041607922053395019206326142319754981490641225270001925777463517286400028217692136302668382573921346111811123289101130823348721018328655973540815779792700906487754945319981255391828375093131570901786609168428990682576726142229553076397522749382489406555222117047930652865047190917611900677295310765036996144287876320852191660020371718181557678525645796662296806779921740214833828040195523154797349942666726822047644213153656677740188446937119189945009848862478164111587994025944909946354594129946994196734260457009386149127747659928279230983022568755619982741585294248076337852196015518861319618993079650115026813415170758639966038857128771323658387852524035563422045659260279036747339575937141155413730120820034213681450916926985339488041850427964637267034147257072736021704069500909082986751833096401111057465249566284780408299026323278295166324663326722631813245718107813979527452675177527986953111288254262147141423798117581798994734177238959102954488192998677380746418993943935450909710662348620279559731989740994107637795313136910660994247347906403246847231544233994665593183371211215786269943503257645135862011846729855110266645869616572659307921404099655323276882912854096008572270587157183773829819606468511851606098030549238819837774388959474500760914401925475152385615630680617118137754437660773209820460381474232701028698658833534798695038679162184868418394202934188289994229992271971810076530469305189932091055132172148572423336938561659691007762282856052454897040252356601887083476160858314805559243960006438972807866109959381697938407372370978627463803910270461724683180030914423893086589733220416261777263171952715309983560532357597589788131409515826247786232842857246413119797257614185425312914528571445350605977899781475825076295057924012145147406044983774183087412049997873165821373568499448230900590133175739148080812622571551833897861872965560440603845608567309014182269234152532132390355251000855620184228883217322255759858843666158853505988926570913036521421104406498856062536016983048658302311973363356284615509151709722935033296936849631276296935859001224418610699525762425956536963299165119840295132663660407491378697881329801239596424875792427535931339574159322983136633922675803469790522990312077116830218755370288922747684341354587763975517832128082108555081999658673183606527727832926471666216928834087828421715704921665767559492693750121364276202175567717687758514956488028665082175764092247560230438560625243351780799173193342710987123412262427144025099470191419002372648440231722974993526191474772390201779612907831494003994395158179271954682222566764654023403987800750976848151280491634521742759085425803122837077313272625868801496805801316691250667233410191759261449506945212907957870611417848633285617651467033074476695156223723952789580880123823480512556087316588218411908866278653328129806586901932351689430428188164594206820537738662915988747561461078300415005200421459841185147822874095718897864643173229714860137434798922635771403985457607705772306251133970663478218641160029158819037548609992242468000327359232606676948434787672917463747479889102568792194935491008666609320738908525673614329915084164320734487415776181071821622106153169731319256839057660302634882725006050614008743874925796570366577397029120291894259275873760709362019454132692537362861453918255758624770854224406056843026064903109280131184190370647376278945134642187338557664991875782205434731387260981011776212629361718147821219037946876207122276823256085066602903338309055802243757843008041646986024036869739938062016720512529082653082565085726730474441319548262128773646260682751125286205694105445545843407328897387126269438738545664445523917444515159108766822794594522023991988090939478236548954217260880880860068048121059226190607024158568759075868979169287970514376380826915866304406326383875127147266253778788147523292264864715769808983037879560367731325990689593482867949526490145386064829081119822362353455774673040416725523149597858103046480975600758040709773691736549505409719723974143624244319064819586834434925581273481928806291740491953132126813210177510145808110792581073881041249255584303795847248387259022209854914627471915973372981394750393303181796744954962628222860949895331019103917862563135443374874302183983524845490363727141583839665494137209427969308543709435593463039056410238233507182691673238155008129752055340079719397664207206307947757991086028305797450772707787810145922441043058637650507002316147378435691176525968121442262395994641960612681932746747835070452996382554390270273773151788188880800192885080559017882684187785781747228965269451511300450854208633858660423962950225886745301016577714386292540045536670231972939115915225979189817726969710858346985844199558682554501819137720777508616869216647144643865051658107499435037943118784848611086001542505140649872608491592186528624660504305331130844907976527304578582396081924945875004285079702506550976729504860735369173969778208488809704612839112612564919528241260113505879832812233176734854185259757504548629119692971065073043517273408243541524921199980912585991680366514058683443391781278830931237196737202420005117318497419527317418727803392010674673712893897222724698975017324936657929603528432606952517601897751882590289466873447618644858099369888006824013481837436876888198863402235450190210865844583860984643323631583227556847186028323685493637033212236885382755415862437217176074361441321668747137804702295406925854467310297691916994411149718096533430019184133772104364740398250209259176546941289829071372488089697970562797744741923727504108021948603314282890653013474966358408295183221601319738115976044353119462087656576813317066838997549190132445120633828625112186110089993388889086299028716712314094561692861084765391605979334125469319666839212871270938427757708222418846655313671025451681018057484789540242975093105208774072567639268334394487177211795363664102556345098339698565164682701522130538174276403158753560020550396274355600266261754865917201638661847667080977868262112542358419567742595994324982563778018425737792418720501397896493306463991505146305186857739330824151805209075188008507369634976104142669650801958885660348632374020907581558870885431590176160281922111850369790204040227615877892652705875624092626407390736536848982923245926815891540754798680903931570879252594164181126787919618696574806485487115916873154228132534552390449983673026056171858044502340602802475969052123822865641474516608580396244038013940978444172491431287675736738403866464990024348912681527594081778493893482090261581941292539078674394347289099906191062999012552953896166163579284426972009222013989022266223320427268714122201875662242145567036412809574456654402468247780937149576220106997309396443477132030179786750270576954324104137440622264959989096702051033966127520228947061956492482970536698125047223632133999726355405697813738092366254536419428803404120549455618771006247329398259966569863741009817114107611448447609776882396022559675687699010649191827630243126009578704939406224411741146372395271060135976984832490517787784357211163722933029702246156410553336767589090537730582772073339197574372059765293610719137217907617519784653680024828402600791466328671885497752822694892748880566774955445870739988818390122914319697329365556125725028256584425373097101944228323160262439102588055597375686151097621492943005620995274324276864291133161840650431397306112530619535361690064265449108319859177081443609809418918040037570081756576926689088205033085823679259779076515989855278500226471424623494610399510176401933018602426673261471585392111718209743208273753194650952306458858056777213069999029455574113733087415264359341898778981051216755435673334051183569639748709286126876746397042576657562840934560856362927729076941178720087698145208940674874909603002566295351638616004055477917155035950982069898606755399905840716583220331537135481135956712148820703407354656333805847724046466395839536263086248149478937989893325095313039125437288320765590912066270350164536341731147669387180009368394216477552341747186367225849982402600268091846618184268439860059423759627573256308308152164993940601791451020993900594131212858920261735023590623139761823518566412463311469796042485917017693583853217298542476024093697614926904290291049081259137348742361136353008721926034030863498555898586792635953376433445876560347877848838592611103630939217321524159271538586423528743338448501881231610946952715701424521013272567838255982685935742516757140415004000047950415272636790681090979544209878629379439687817397692996856192582074207184773874796654687073299234566787083522813822028826622601088937280275965137864218398672237508145740127221223486836623292544659540124138091002665047075393671160447225699443676835016800524527547879428729358961276835764556691679608131641479981884903050079232997967856145650404585390554322160520331681006525878305511481378904074537295109504610660281982213946952071529688403912979824450066420077470473960661917321634972661503699514409519565894633990963987366198359739020193703413376393426175882586639763863585756619833794858164782506885470975672886552999042828620968598424030517433641968739616329960598634463351791132240834459415783967824626060873198167877653209002111291710420676360426000643446480001959984780296592303264505321422178444396898982805348480133482291362270607952347942875237736918167785466462374117851602075223244935223191253741823972930607149377610857752743625851374566109911225767833143041870378332208957429832076503222564145756173573995263685412090756472615029374639102477487724796873278978796983424975571110746667074944451780621063333188519217563619184514805108102989220861455367033689766181681285380903502584584032978130733630512319561757533157253739830841769659381860735527824052176372982619897039166154710402205682827738519262379492493911815028766464621561001669105396712133366214188564735894183277609762138160027756112126384570951210984629958162318829325370739915797413907331083721947053979169156500903319640070252630677899446319830951181908214247341990856716150538637339648353621368695738567157596982914454084988779627412749878631424704598359654544607774104251489778077893008555529123813404062738125870562395301377746626918973947612185958856772448001169644786599993973120209657637521516771963991735173773200764465009638740157360689348483434339362757033868795283768811838088443647831019137390210429949446731840166168199450600649092996661340208400928006331971760488647657305184593899988053149253509588389469870414919629761569963255110467966668159214850058893856304084341620612379020982423104309104264630014689267308001101888969345996647241251790982690496643677313024443448444172552611958256400966883550361841378980426143917534208668055024545709250933191384420103753821746648290163098976100330053779156693758456342750900672399265396307763092510230715004083310603132251025469184976444890175824879470539804944917611307817535152124287248849164848445169733819177729475710278640966069026942019093910470170328730668747955160000000001/100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "4.999999983202450438744554786643290060792974230016885614974197045396724798371354517396743611736943438671553677255486830914137790279295518798345878572286993633070432842650374726093770722851545819004462436628875244411860232158594469613254421180434381201993107458287802325125163053243069430172110772426807444343933144335882747615503490006601729242847162857298422942376907739613882280443446224985853478634536891188142530824191974863594540321471891983190331438660214238370562076773175178470114670761880010611386002765217334877606662589743493065263885531299974729615216146566125248715060043698437181284131422075731364283345338709699703582993794126253899206026934528146377767153691054534880575379446376966339887312558441481262157726244245697615457333431613530552275449401460162499989639848656487083332296490801937951693311275458058296123013085185208798445708221465563084740804820410787599540932022730154798854652366464476530061371778559455317877071523570265142553496795276955870075571182528875499750360644512024647568031051209246724192054442929880514566129263081607800600413659781576784781538493005974997167768733514791341812590394896312608386149334027698381074953732165321067742972175810066314372640545949939691059199112902259197028374719371255274892663325340259528597987002000622558108239103590586872155083612865748826932850558450127216937887601992803887514760693042973096472391063480588422977774969494269373890726888734426098435756907320784308567088373502792516309024646236773935305442872817134944905055513987942401119509705195727840017715028425464818355749703194884577637674587109137707610390307383226651501620601170253964126596900620216453142490711603118113883687304793946602705203186310568182585481733099132087842924462987083665596471409057053089142884222238680920348385341993474341045344088992681826336970904415586716700466508239664209600653162760712100530064502065167678737914771432371617979347503998020717290436951568819830615653761168700466043348086144727916925815070477843455475263686724263892892283969716867279371835765077377676910558598090331378177098353930094532295184009856445876560728286563561671334986536567325297894362351326764395460227163902172113952967717938090786088835394692844065885155267530618028426790389854030687484589562087120424512546486618421621433139619412602429066309466808032200836147058200624093927272069181608034101135651581307045796714383412826355512250686832248794798741015735179125057686456136632780958741021703784606998844147553906477008242783863461524576481328027139732701732284213209639484110376713320660110731582869204969465058671090103178705963815577957977980117208041307484040287948737207568397920862262167038764918914817399842386679521269528858792702378468840740576184166859648224733306749763575359090479283104041504241262307460577374215178978240585414372079147184993907992934116201605852641627727983013849912701637111777081993050829497271839664962028123086823798057182710282673420545733083021127090208832414549389548919179553208520792478116741455214699919785611603942118797765688096950288243879790634767873964857412444521648789803864560527147448552706069899091964323053563880288116863458208447919482878912060824116216698178139352435731695393401069959535324329203337622444367964764061787544412798293121516020525308941658364483453926273235491667129709613354532811589881095340509634320462896872830943304431176506564806154989036967958119208939559282519121803571937582119862858446558992323103590098402945164868905912372866014958993377116548118056741920067867964800627129001792217256006372683260501696091755588032157504905364186439930604862402349604921406933898606480677990962773702118697528181450577674026026040023217843651205895169065731895622635287238154653002041327740805127497998404814040867953756393423858986581727546968897217062680339576927939315498123265676443381136821542767186642202268311779287137369988858543177262407415050532321766834262982082942729764844869626177125112178091879986327807056026858437493399517480756985593236221508005540862688976770344799922216391395173157205049774868126436946262798463619701932890548353790753130685603189442366043826482068753531636900090555220592854185818035818981280794463330453310287795746469816958668263449875118586343150143382025983152488932463664717049268332065582602411764617487761017362546088923610752439276799425157166364622576023516282873398008827449799492320163887496028572604329672091852166412083019528597446840308235376692555668878567063995524222075477679436187916561393864664701716295051250017146458408474680788744495296167920219138275186733081479551861681791850145716555390102750468576506624434182037146500833059769216411324853913506659182415964985931974732458164426896249910308397876690383771233200557682978044527273317266187310688817938781979724308299037807342261634826491889372280466449324691637292048702697208746100893536219224910805348780141004772899321384268303789145405962067068659115826930838936027389263862499231941746698310892530926800426163629122716789538636535068335698424166105711665816227169698271759908607554255447741519484647287775464775586826630437191071751601991786746297222514600603511526076187208985092199533657474012268783174356831306339273234382812087374268783742364878567203252127234917351357818577422542203631334747050151316735928824292337199112277152975081523059788411362066798178727143074846374847022962133404093560957328602289023861383204326526366798133980024505950668680469796137915702365344566789454461282321469368569384728254641905605206252705110159818993327848215556361321699361182134003268232156282529461606966219581458745669214204656720103751374062498965933005719439097625261545734348151860218812996061459868240810940632590549583225266890965603405669247161868311403610323915622920699773320018403174567436157512549233527003865219439392576304796699833669190771721750330665815804924660495989007766617180669938655541518102221736339007458487278896115814840389728106572436128133348046976438246914894910389328577270036495289555335838603779788402406600688728983750367478711785480803627041120011595405846690665194697274993102564182272417977785521126226029463354862083414639966239062537424633585905125960527196497163650367754962898558133935085520218232971045192894826443352174895945063001618197997716918169404305641361705376564122552909442555474380911205044917745568460264209719148058883898124904296081743039862454718802995249783687812484239545533080307791568124502319276457208070170486105403271748909783407788588623457304653388935603531013315641671533061474940740509097401130867061513990597789708087415699448514286045807330405795484454409372627862270959652274754864846161817333892395313034696813877203218902630924470517678009527602945906297590647095144641033005907949739186795336883574210830699748481098623990230990996922358768446567263956872951585350694919282365194777760898345139105052376447906312707515844063772324702025922421695626445261002793312676023355509168125449286713195571352714457666571006199211724242392272656758826375432934837773401542465605519225770976278260960312280148010970968609620269923731457561466052387666796744189152301229311824229240528366633286193964849211935796876157058512888242164456457532262515525118445232426068779870206088852516995620007265573732402492186414146551719263362341389084272369748635325142345305071161013465827317764784818556642455137737802460455801584468704675705973702978702562050212162885088545088197264362710639445282084217346797313750029354440212606177767305669959313989808509254445654208112194243203864003942547252112061034256370725382329499535445044566985518312381404944626821368153118702124129493272484179106106594874005286311275465576733582281544536229417172981049465323909684145712933515751623689853795654304881905794167274951504382288581217977984933820025940845115273642980792498743287928660007920363068636552967008292556186811975761184970545699554846297176827519982866465269409244150517580077090105658481993751696827754307229511170446538396180031543712461469960982640186951330698974101674730040533397426228707096260003691349836513148366575430719609650987925121494853155487720575294618993258954276325690133694658453757516974087425500332372491407152150377720548315957693901383438608798726642658841457342244335808600114656917134040760906450724745235612762155608275193598542083943922544462348989583359513801542818782262453430634924980492138257240716254706368902697191547729161631740698106572679728926717811536827568518071152250630512480356152053943061379919489821479901573379675778952345478933740078454301922258033939332925540550953849589102144085096469818627679240281625878936368375931096758784576716386579976896915109471603351855000293948513711728864109106291708719515828886671836940270341778954971547010025637682545354546619764413544963136071330412616727121378027469631516945421967574919893060514575134060627203491533012269368640477526650060074942639362754358840267746386603697490980015537639979512088494715554529852565471673605077816041269667864433525328862657049179421169591711132019935683754112915180309490692743311528574600360599593197527955551937489120317666438743406566623600920034726496381351809578995548437120817845944760612791994635287070261238756876254381986117369594572971254903415234481578999571304824874226299040384119381765271675500558916223038726159267166397839091286873439781979391831653306681036184517775340417885779699985994088242180833915961419164015392012666475353250392438062819677664324449712791954694345361829095881904646324446900081398092399841065084167402777791261957108396319900357321537558598609351144514123586232757517463522215309210479435396026705449053182075115545381133167378162891570418610375391568418467713532658099573156927933541294240387208873670292705589380161637330303489091190772245666408614172132536287098373790449335642269781468802740907807000798880801532718686182349064008929819099658955296297160431748343287617227025758556381615697521335431858630443468039849725161463149942071490040181252754366757765402238101888119683413607869215354888477286151682100721590760744259547995729744451895689002165731095387507972272388511147230946838102549368617524663869089291230878112277885238417787787500892035732648418871961054110958176784979467592202000685822574014433192620798269622718671742258111069916597240201870770928646458769319449998427605608398837888884858744738041016456295014269647421788064027072875439692238599209744489088438159656303203058286919958027590862709333287965962360582817349155695483204512259400171229508417962621682331163069980931328175400676481782832742619346559965800261061634429057044119510109696319675023793788531271097999640595815806148493633936034822283756715209879989431162540124310842412923810719759674951228501682677104269802397651436525408759297706029316618169019031012666762663747502525151417828297818511052770756862441104113729760325728016734595950663491011081341374783557259489483930181516501977726991269653222563115739227411849289964914275594419477958902538734335840837866406724268410710362042287913858178112990146853580694389124946767609772634514331049703249129807813675720279663542499562211946574393811286819675944516700292967321719829972269485593620974512889268877626520727823104487339138757572900205714535005057544056640508292624665931152592072441916930101886783551061651943388621969207214364915535384153337638922887646982857902309553681638214492675026864451296567718786503486415503463926743782007527332397070619457207449414025070410173534204464804627487742539522102551659740010198664500434221720642750622601245764590238160776021280192874466775213349176810695806327659918701121325107931132727719926736125164083208695546364035356199678659280079468671220920359611493166156935059300257731810591392728434029017098978571498080511667375288002649446369944354410692269173966775404069501225141128638613508517270336321368034153771249517768261790131422784041205280234280139205082485161687724587431783525628301425869449811584590859638047350656120286205640746182537058178458011067441888161036142730604383542880627488002045848874652864863472578859615496426932245857707492317955318670839847208240297340543457813376408971587575706951538489680990241386323090646209237277246828061030644382283594214519893540971588797887325287282848853028372431821364676612535208838803820614288601840118775940885407091690781946123401596790897258449192357639018842848375122083839519363626894225360189703860646914879184399290521872411421558341306875058315667050874025638518631452356098187830311835476234479203801328946779047120870964061645850129279712974487836151667843756189869241699516300287685476819880862085702881277692041051626804037535736034101565061586056794684117642170197281787911451229235882132586167485825240016182556224292327913837763762648232546794540287357985572571544659558012970569611802334266733447697256493032571750977933006396522005661412462361995323481559327137101753658501261485880070610408601124535470755301680022083639556451525433513111898445182459935967269098342215726647311955803051120188495038500274288245274151781369180847189331880946381129848966173661232198554513479073359851119790801561684486110067166241982746959954793508697017118956825540146146708707756691310573958811509896007969118615479636472687130791618953880064060153240230177098996360676752650787322074396783692337948726735671386873419616357401649790373547202735930425104234749188218816105546753648451451440566679030240963868372532420916144090467851979021340313103875047271063474291253721370358698242027985575436008796103151603946976664002230125406842425163103775689458795612555584666375660611802312129131564746256983667470775891206754959767123332976309063744057216000845574914643885632563226853563972305752501088876812475457480795801919076679085866031423899815618934524244330721825545049492875655554649523947287340982079391168594771900118691949866799218284833875501064831774880846619489674621538254560973044966564253289589557599961335541221321000473514998226241061494094384319084688168648023657844363588778101191150137564904893958207434372754941499929605601645767412269535475316401945568236085850553572114519192909237443259261745995380449900269293432272875308880990249155202894716646900397690835101623861852449079635560616272001177047110621449259998014232179314110283927213091258077553993933723475832500729843011388275850885051734233636001108733005913905028910930569427079238122287278100160171384337498450674659502511765615579332831617919953290644828277893917857658791835072711796006509183311007091932205915730456931540050364041601481421764280879176645976774393050966577067384384328696155030579902840171795938667127662372400001644930351514714343524146671414179381551549636697614602950915304174194202785783486654744915134361212750039370681735778393563638603332358409583092761206019021703759257121269131832135791542754948344683867112928772575378221266980528018803922637941474244651063428778280705531698317845101730157253632346009646490633730140519531763558929631852276847799533790600904882119880198392449161412152038190214039167839022566241741457860524980334649743372928250409121730362134357606759258999529060593626182606712291465243823144708713348378261987640561983757890888430423104406345967172414567184170692000504707324348013274343098682682986352837817498499795066930920172206199414650322768340902276526880236779659693713242908394769695691301687090662650192646738551548779962253131861831039401602094198408959116710109831550375575557154758512657249506128072736359097339472540292707650443239990418063639065742990365650923531574077702165512815821540016205941380581803799003060300775103871074949484734992368430979648108948334994557634884186830246638726000306537474503274791264105485607321663831253244304847082238799463340948322914078086133073045340672739880785783460418486291201990124525627125722694566260611174560591964874922263135687273850164105204791509625708451175028953616465210428603022790133838661683312090847444053457363819327881107642252478737335986889422847785533290755806573818854144495424186006876058603276498694297618462243532135035835512065983943701285440544922346469276000694906109597071122892410868432865707799321328552878171515919843764146292895058546164111485626144446580954262928652923990654759497028191861429734957145309772691964838731265178001113256307263284741094529521210923230670366204769542508504988481923039230834063796280039698982548162428335132589956417771043575602305145369460236240667589037392028941690251725336103011214038145192164013749762931586725779188794180072477219543057757552171529085652378240731662171648535333456907054847939596677439393668342092939544402637518018959745729873867763241276372006323579216159825723683978374539312142795381636565042814349739236871788679635093162468557368102613410892234115954013989264873662566543021200149405169783369952869064209415476029004811018291514614052636494617294085952076809180158116766966959034200501705593407615510518043732500061127787740233317676508018494377314270265325765141107915300663540181780965942976847000378613533418115446214390083775685405099557892490560296843420557863519602527982165181213351619449156625779430606155947632755088106755819971470644481509394310781758433904186252400407167713558343576986161379927686747886543742337864346749387037686779151785137789727966605142875152496229663400412990135345708001897402049867844551049609613376835501551136185569073353732426734781650743540622426309346856138490883828378567804688976182488822145166510718312713718078064576402035357302288111389048795606142157883016006380604638087283964922600297695772672553559777998913691279529917972141411957557229257169864040934718416319459280364118008204379061687133004480493827101877023498464816329939158539258280839581381622816163165640979358826741104764490528083201454871755539867895707989306461125380135528549180396860898372199601181906320855060007775622901861677135844143415184659608296753063976267179143215843268191017363123352906937802290220972763754629622069629694444815564461136813066672610748190882905216158092864193641724904752603601590431071289784918026378545706746850434331296747819215213829112615611358733602622982144738769671544002089327780666450738705352699968185871081566114980705969664633449638861282703414442860416422627084081955466163707215000385135241889921636303165287828632218133056375522740751190728801239468429233669478844215927864918413242821349807969903190787125797731688332325810539658447226905428100127018342578626112000535501981375812369416236734041527376647929018727497661301196921873632396227173868366957279471954471616688498979745951937263385718280193574639337727061224162005823771779875193266054506060926031436564029888637988478128035399216343942482801722025955759023840780965761366177250808989077460897130576961751444498428681933172137869908512965188307448500292192910665153356930582898287431621146723130146018639863041530783694779681059582388153796179252024039319171990652444754524441124943635676591996794177940120300416034437388926717672480090039088893599310266167896990334971903134955459228026835776617905971486012758838812352597071776474920309528431948623287459165569414125689178012310999899699693867692270970692890815515405759012743898159716471332149169584178811566041607922053395019206326142319754981490641225270001925777463517286400028217692136302668382573921346111811123289101130823348721018328655973540815779792700906487754945319981255391828375093131570901786609168428990682576726142229553076397522749382489406555222117047930652865047190917611900677295310765036996144287876320852191660020371718181557678525645796662296806779921740214833828040195523154797349942666726822047644213153656677740188446937119189945009848862478164111587994025944909946354594129946994196734260457009386149127747659928279230983022568755619982741585294248076337852196015518861319618993079650115026813415170758639966038857128771323658387852524035563422045659260279036747339575937141155413730120820034213681450916926985339488041850427964637267034147257072736021704069500909082986751833096401111057465249566284780408299026323278295166324663326722631813245718107813979527452675177527986953111288254262147141423798117581798994734177238959102954488192998677380746418993943935450909710662348620279559731989740994107637795313136910660994247347906403246847231544233994665593183371211215786269943503257645135862011846729855110266645869616572659307921404099655323276882912854096008572270587157183773829819606468511851606098030549238819837774388959474500760914401925475152385615630680617118137754437660773209820460381474232701028698658833534798695038679162184868418394202934188289994229992271971810076530469305189932091055132172148572423336938561659691007762282856052454897040252356601887083476160858314805559243960006438972807866109959381697938407372370978627463803910270461724683180030914423893086589733220416261777263171952715309983560532357597589788131409515826247786232842857246413119797257614185425312914528571445350605977899781475825076295057924012145147406044983774183087412049997873165821373568499448230900590133175739148080812622571551833897861872965560440603845608567309014182269234152532132390355251000855620184228883217322255759858843666158853505988926570913036521421104406498856062536016983048658302311973363356284615509151709722935033296936849631276296935859001224418610699525762425956536963299165119840295132663660407491378697881329801239596424875792427535931339574159322983136633922675803469790522990312077116830218755370288922747684341354587763975517832128082108555081999658673183606527727832926471666216928834087828421715704921665767559492693750121364276202175567717687758514956488028665082175764092247560230438560625243351780799173193342710987123412262427144025099470191419002372648440231722974993526191474772390201779612907831494003994395158179271954682222566764654023403987800750976848151280491634521742759085425803122837077313272625868801496805801316691250667233410191759261449506945212907957870611417848633285617651467033074476695156223723952789580880123823480512556087316588218411908866278653328129806586901932351689430428188164594206820537738662915988747561461078300415005200421459841185147822874095718897864643173229714860137434798922635771403985457607705772306251133970663478218641160029158819037548609992242468000327359232606676948434787672917463747479889102568792194935491008666609320738908525673614329915084164320734487415776181071821622106153169731319256839057660302634882725006050614008743874925796570366577397029120291894259275873760709362019454132692537362861453918255758624770854224406056843026064903109280131184190370647376278945134642187338557664991875782205434731387260981011776212629361718147821219037946876207122276823256085066602903338309055802243757843008041646986024036869739938062016720512529082653082565085726730474441319548262128773646260682751125286205694105445545843407328897387126269438738545664445523917444515159108766822794594522023991988090939478236548954217260880880860068048121059226190607024158568759075868979169287970514376380826915866304406326383875127147266253778788147523292264864715769808983037879560367731325990689593482867949526490145386064829081119822362353455774673040416725523149597858103046480975600758040709773691736549505409719723974143624244319064819586834434925581273481928806291740491953132126813210177510145808110792581073881041249255584303795847248387259022209854914627471915973372981394750393303181796744954962628222860949895331019103917862563135443374874302183983524845490363727141583839665494137209427969308543709435593463039056410238233507182691673238155008129752055340079719397664207206307947757991086028305797450772707787810145922441043058637650507002316147378435691176525968121442262395994641960612681932746747835070452996382554390270273773151788188880800192885080559017882684187785781747228965269451511300450854208633858660423962950225886745301016577714386292540045536670231972939115915225979189817726969710858346985844199558682554501819137720777508616869216647144643865051658107499435037943118784848611086001542505140649872608491592186528624660504305331130844907976527304578582396081924945875004285079702506550976729504860735369173969778208488809704612839112612564919528241260113505879832812233176734854185259757504548629119692971065073043517273408243541524921199980912585991680366514058683443391781278830931237196737202420005117318497419527317418727803392010674673712893897222724698975017324936657929603528432606952517601897751882590289466873447618644858099369888006824013481837436876888198863402235450190210865844583860984643323631583227556847186028323685493637033212236885382755415862437217176074361441321668747137804702295406925854467310297691916994411149718096533430019184133772104364740398250209259176546941289829071372488089697970562797744741923727504108021948603314282890653013474966358408295183221601319738115976044353119462087656576813317066838997549190132445120633828625112186110089993388889086299028716712314094561692861084765391605979334125469319666839212871270938427757708222418846655313671025451681018057484789540242975093105208774072567639268334394487177211795363664102556345098339698565164682701522130538174276403158753560020550396274355600266261754865917201638661847667080977868262112542358419567742595994324982563778018425737792418720501397896493306463991505146305186857739330824151805209075188008507369634976104142669650801958885660348632374020907581558870885431590176160281922111850369790204040227615877892652705875624092626407390736536848982923245926815891540754798680903931570879252594164181126787919618696574806485487115916873154228132534552390449983673026056171858044502340602802475969052123822865641474516608580396244038013940978444172491431287675736738403866464990024348912681527594081778493893482090261581941292539078674394347289099906191062999012552953896166163579284426972009222013989022266223320427268714122201875662242145567036412809574456654402468247780937149576220106997309396443477132030179786750270576954324104137440622264959989096702051033966127520228947061956492482970536698125047223632133999726355405697813738092366254536419428803404120549455618771006247329398259966569863741009817114107611448447609776882396022559675687699010649191827630243126009578704939406224411741146372395271060135976984832490517787784357211163722933029702246156410553336767589090537730582772073339197574372059765293610719137217907617519784653680024828402600791466328671885497752822694892748880566774955445870739988818390122914319697329365556125725028256584425373097101944228323160262439102588055597375686151097621492943005620995274324276864291133161840650431397306112530619535361690064265449108319859177081443609809418918040037570081756576926689088205033085823679259779076515989855278500226471424623494610399510176401933018602426673261471585392111718209743208273753194650952306458858056777213069999029455574113733087415264359341898778981051216755435673334051183569639748709286126876746397042576657562840934560856362927729076941178720087698145208940674874909603002566295351638616004055477917155035950982069898606755399905840716583220331537135481135956712148820703407354656333805847724046466395839536263086248149478937989893325095313039125437288320765590912066270350164536341731147669387180009368394216477552341747186367225849982402600268091846618184268439860059423759627573256308308152164993940601791451020993900594131212858920261735023590623139761823518566412463311469796042485917017693583853217298542476024093697614926904290291049081259137348742361136353008721926034030863498555898586792635953376433445876560347877848838592611103630939217321524159271538586423528743338448501881231610946952715701424521013272567838255982685935742516757140415004000047950415272636790681090979544209878629379439687817397692996856192582074207184773874796654687073299234566787083522813822028826622601088937280275965137864218398672237508145740127221223486836623292544659540124138091002665047075393671160447225699443676835016800524527547879428729358961276835764556691679608131641479981884903050079232997967856145650404585390554322160520331681006525878305511481378904074537295109504610660281982213946952071529688403912979824450066420077470473960661917321634972661503699514409519565894633990963987366198359739020193703413376393426175882586639763863585756619833794858164782506885470975672886552999042828620968598424030517433641968739616329960598634463351791132240834459415783967824626060873198167877653209002111291710420676360426000643446480001959984780296592303264505321422178444396898982805348480133482291362270607952347942875237736918167785466462374117851602075223244935223191253741823972930607149377610857752743625851374566109911225767833143041870378332208957429832076503222564145756173573995263685412090756472615029374639102477487724796873278978796983424975571110746667074944451780621063333188519217563619184514805108102989220861455367033689766181681285380903502584584032978130733630512319561757533157253739830841769659381860735527824052176372982619897039166154710402205682827738519262379492493911815028766464621561001669105396712133366214188564735894183277609762138160027756112126384570951210984629958162318829325370739915797413907331083721947053979169156500903319640070252630677899446319830951181908214247341990856716150538637339648353621368695738567157596982914454084988779627412749878631424704598359654544607774104251489778077893008555529123813404062738125870562395301377746626918973947612185958856772448001169644786599993973120209657637521516771963991735173773200764465009638740157360689348483434339362757033868795283768811838088443647831019137390210429949446731840166168199450600649092996661340208400928006331971760488647657305184593899988053149253509588389469870414919629761569963255110467966668159214850058893856304084341620612379020982423104309104264630014689267308001101888969345996647241251790982690496643677313024443448444172552611958256400966883550361841378980426143917534208668055024545709250933191384420103753821746648290163098976100330053779156693758456342750900672399265396307763092510230715004083310603132251025469184976444890175824879470539804944917611307817535152124287248849164848445169733819177729475710278640966069026942019093910470170328730668747955160000000001E-30011" + }, + "q_below_internal": { + "rational": "1/20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "5E-30011" + }, + "q_below_leaf": { + "rational": "9999999983202450438744554786643290060792974230016885614974197045396724798371354517396743611736943438671553677255486830914137790279295518798345878572286993633070432842650374726093770722851545819004462436628875244411860232158594469613254421180434381201993107458287802325125163053243069430172110772426807444343933144335882747615503490006601729242847162857298422942376907739613882280443446224985853478634536891188142530824191974863594540321471891983190331438660214238370562076773175178470114670761880010611386002765217334877606662589743493065263885531299974729615216146566125248715060043698437181284131422075731364283345338709699703582993794126253899206026934528146377767153691054534880575379446376966339887312558441481262157726244245697615457333431613530552275449401460162499989639848656487083332296490801937951693311275458058296123013085185208798445708221465563084740804820410787599540932022730154798854652366464476530061371778559455317877071523570265142553496795276955870075571182528875499750360644512024647568031051209246724192054442929880514566129263081607800600413659781576784781538493005974997167768733514791341812590394896312608386149334027698381074953732165321067742972175810066314372640545949939691059199112902259197028374719371255274892663325340259528597987002000622558108239103590586872155083612865748826932850558450127216937887601992803887514760693042973096472391063480588422977774969494269373890726888734426098435756907320784308567088373502792516309024646236773935305442872817134944905055513987942401119509705195727840017715028425464818355749703194884577637674587109137707610390307383226651501620601170253964126596900620216453142490711603118113883687304793946602705203186310568182585481733099132087842924462987083665596471409057053089142884222238680920348385341993474341045344088992681826336970904415586716700466508239664209600653162760712100530064502065167678737914771432371617979347503998020717290436951568819830615653761168700466043348086144727916925815070477843455475263686724263892892283969716867279371835765077377676910558598090331378177098353930094532295184009856445876560728286563561671334986536567325297894362351326764395460227163902172113952967717938090786088835394692844065885155267530618028426790389854030687484589562087120424512546486618421621433139619412602429066309466808032200836147058200624093927272069181608034101135651581307045796714383412826355512250686832248794798741015735179125057686456136632780958741021703784606998844147553906477008242783863461524576481328027139732701732284213209639484110376713320660110731582869204969465058671090103178705963815577957977980117208041307484040287948737207568397920862262167038764918914817399842386679521269528858792702378468840740576184166859648224733306749763575359090479283104041504241262307460577374215178978240585414372079147184993907992934116201605852641627727983013849912701637111777081993050829497271839664962028123086823798057182710282673420545733083021127090208832414549389548919179553208520792478116741455214699919785611603942118797765688096950288243879790634767873964857412444521648789803864560527147448552706069899091964323053563880288116863458208447919482878912060824116216698178139352435731695393401069959535324329203337622444367964764061787544412798293121516020525308941658364483453926273235491667129709613354532811589881095340509634320462896872830943304431176506564806154989036967958119208939559282519121803571937582119862858446558992323103590098402945164868905912372866014958993377116548118056741920067867964800627129001792217256006372683260501696091755588032157504905364186439930604862402349604921406933898606480677990962773702118697528181450577674026026040023217843651205895169065731895622635287238154653002041327740805127497998404814040867953756393423858986581727546968897217062680339576927939315498123265676443381136821542767186642202268311779287137369988858543177262407415050532321766834262982082942729764844869626177125112178091879986327807056026858437493399517480756985593236221508005540862688976770344799922216391395173157205049774868126436946262798463619701932890548353790753130685603189442366043826482068753531636900090555220592854185818035818981280794463330453310287795746469816958668263449875118586343150143382025983152488932463664717049268332065582602411764617487761017362546088923610752439276799425157166364622576023516282873398008827449799492320163887496028572604329672091852166412083019528597446840308235376692555668878567063995524222075477679436187916561393864664701716295051250017146458408474680788744495296167920219138275186733081479551861681791850145716555390102750468576506624434182037146500833059769216411324853913506659182415964985931974732458164426896249910308397876690383771233200557682978044527273317266187310688817938781979724308299037807342261634826491889372280466449324691637292048702697208746100893536219224910805348780141004772899321384268303789145405962067068659115826930838936027389263862499231941746698310892530926800426163629122716789538636535068335698424166105711665816227169698271759908607554255447741519484647287775464775586826630437191071751601991786746297222514600603511526076187208985092199533657474012268783174356831306339273234382812087374268783742364878567203252127234917351357818577422542203631334747050151316735928824292337199112277152975081523059788411362066798178727143074846374847022962133404093560957328602289023861383204326526366798133980024505950668680469796137915702365344566789454461282321469368569384728254641905605206252705110159818993327848215556361321699361182134003268232156282529461606966219581458745669214204656720103751374062498965933005719439097625261545734348151860218812996061459868240810940632590549583225266890965603405669247161868311403610323915622920699773320018403174567436157512549233527003865219439392576304796699833669190771721750330665815804924660495989007766617180669938655541518102221736339007458487278896115814840389728106572436128133348046976438246914894910389328577270036495289555335838603779788402406600688728983750367478711785480803627041120011595405846690665194697274993102564182272417977785521126226029463354862083414639966239062537424633585905125960527196497163650367754962898558133935085520218232971045192894826443352174895945063001618197997716918169404305641361705376564122552909442555474380911205044917745568460264209719148058883898124904296081743039862454718802995249783687812484239545533080307791568124502319276457208070170486105403271748909783407788588623457304653388935603531013315641671533061474940740509097401130867061513990597789708087415699448514286045807330405795484454409372627862270959652274754864846161817333892395313034696813877203218902630924470517678009527602945906297590647095144641033005907949739186795336883574210830699748481098623990230990996922358768446567263956872951585350694919282365194777760898345139105052376447906312707515844063772324702025922421695626445261002793312676023355509168125449286713195571352714457666571006199211724242392272656758826375432934837773401542465605519225770976278260960312280148010970968609620269923731457561466052387666796744189152301229311824229240528366633286193964849211935796876157058512888242164456457532262515525118445232426068779870206088852516995620007265573732402492186414146551719263362341389084272369748635325142345305071161013465827317764784818556642455137737802460455801584468704675705973702978702562050212162885088545088197264362710639445282084217346797313750029354440212606177767305669959313989808509254445654208112194243203864003942547252112061034256370725382329499535445044566985518312381404944626821368153118702124129493272484179106106594874005286311275465576733582281544536229417172981049465323909684145712933515751623689853795654304881905794167274951504382288581217977984933820025940845115273642980792498743287928660007920363068636552967008292556186811975761184970545699554846297176827519982866465269409244150517580077090105658481993751696827754307229511170446538396180031543712461469960982640186951330698974101674730040533397426228707096260003691349836513148366575430719609650987925121494853155487720575294618993258954276325690133694658453757516974087425500332372491407152150377720548315957693901383438608798726642658841457342244335808600114656917134040760906450724745235612762155608275193598542083943922544462348989583359513801542818782262453430634924980492138257240716254706368902697191547729161631740698106572679728926717811536827568518071152250630512480356152053943061379919489821479901573379675778952345478933740078454301922258033939332925540550953849589102144085096469818627679240281625878936368375931096758784576716386579976896915109471603351855000293948513711728864109106291708719515828886671836940270341778954971547010025637682545354546619764413544963136071330412616727121378027469631516945421967574919893060514575134060627203491533012269368640477526650060074942639362754358840267746386603697490980015537639979512088494715554529852565471673605077816041269667864433525328862657049179421169591711132019935683754112915180309490692743311528574600360599593197527955551937489120317666438743406566623600920034726496381351809578995548437120817845944760612791994635287070261238756876254381986117369594572971254903415234481578999571304824874226299040384119381765271675500558916223038726159267166397839091286873439781979391831653306681036184517775340417885779699985994088242180833915961419164015392012666475353250392438062819677664324449712791954694345361829095881904646324446900081398092399841065084167402777791261957108396319900357321537558598609351144514123586232757517463522215309210479435396026705449053182075115545381133167378162891570418610375391568418467713532658099573156927933541294240387208873670292705589380161637330303489091190772245666408614172132536287098373790449335642269781468802740907807000798880801532718686182349064008929819099658955296297160431748343287617227025758556381615697521335431858630443468039849725161463149942071490040181252754366757765402238101888119683413607869215354888477286151682100721590760744259547995729744451895689002165731095387507972272388511147230946838102549368617524663869089291230878112277885238417787787500892035732648418871961054110958176784979467592202000685822574014433192620798269622718671742258111069916597240201870770928646458769319449998427605608398837888884858744738041016456295014269647421788064027072875439692238599209744489088438159656303203058286919958027590862709333287965962360582817349155695483204512259400171229508417962621682331163069980931328175400676481782832742619346559965800261061634429057044119510109696319675023793788531271097999640595815806148493633936034822283756715209879989431162540124310842412923810719759674951228501682677104269802397651436525408759297706029316618169019031012666762663747502525151417828297818511052770756862441104113729760325728016734595950663491011081341374783557259489483930181516501977726991269653222563115739227411849289964914275594419477958902538734335840837866406724268410710362042287913858178112990146853580694389124946767609772634514331049703249129807813675720279663542499562211946574393811286819675944516700292967321719829972269485593620974512889268877626520727823104487339138757572900205714535005057544056640508292624665931152592072441916930101886783551061651943388621969207214364915535384153337638922887646982857902309553681638214492675026864451296567718786503486415503463926743782007527332397070619457207449414025070410173534204464804627487742539522102551659740010198664500434221720642750622601245764590238160776021280192874466775213349176810695806327659918701121325107931132727719926736125164083208695546364035356199678659280079468671220920359611493166156935059300257731810591392728434029017098978571498080511667375288002649446369944354410692269173966775404069501225141128638613508517270336321368034153771249517768261790131422784041205280234280139205082485161687724587431783525628301425869449811584590859638047350656120286205640746182537058178458011067441888161036142730604383542880627488002045848874652864863472578859615496426932245857707492317955318670839847208240297340543457813376408971587575706951538489680990241386323090646209237277246828061030644382283594214519893540971588797887325287282848853028372431821364676612535208838803820614288601840118775940885407091690781946123401596790897258449192357639018842848375122083839519363626894225360189703860646914879184399290521872411421558341306875058315667050874025638518631452356098187830311835476234479203801328946779047120870964061645850129279712974487836151667843756189869241699516300287685476819880862085702881277692041051626804037535736034101565061586056794684117642170197281787911451229235882132586167485825240016182556224292327913837763762648232546794540287357985572571544659558012970569611802334266733447697256493032571750977933006396522005661412462361995323481559327137101753658501261485880070610408601124535470755301680022083639556451525433513111898445182459935967269098342215726647311955803051120188495038500274288245274151781369180847189331880946381129848966173661232198554513479073359851119790801561684486110067166241982746959954793508697017118956825540146146708707756691310573958811509896007969118615479636472687130791618953880064060153240230177098996360676752650787322074396783692337948726735671386873419616357401649790373547202735930425104234749188218816105546753648451451440566679030240963868372532420916144090467851979021340313103875047271063474291253721370358698242027985575436008796103151603946976664002230125406842425163103775689458795612555584666375660611802312129131564746256983667470775891206754959767123332976309063744057216000845574914643885632563226853563972305752501088876812475457480795801919076679085866031423899815618934524244330721825545049492875655554649523947287340982079391168594771900118691949866799218284833875501064831774880846619489674621538254560973044966564253289589557599961335541221321000473514998226241061494094384319084688168648023657844363588778101191150137564904893958207434372754941499929605601645767412269535475316401945568236085850553572114519192909237443259261745995380449900269293432272875308880990249155202894716646900397690835101623861852449079635560616272001177047110621449259998014232179314110283927213091258077553993933723475832500729843011388275850885051734233636001108733005913905028910930569427079238122287278100160171384337498450674659502511765615579332831617919953290644828277893917857658791835072711796006509183311007091932205915730456931540050364041601481421764280879176645976774393050966577067384384328696155030579902840171795938667127662372400001644930351514714343524146671414179381551549636697614602950915304174194202785783486654744915134361212750039370681735778393563638603332358409583092761206019021703759257121269131832135791542754948344683867112928772575378221266980528018803922637941474244651063428778280705531698317845101730157253632346009646490633730140519531763558929631852276847799533790600904882119880198392449161412152038190214039167839022566241741457860524980334649743372928250409121730362134357606759258999529060593626182606712291465243823144708713348378261987640561983757890888430423104406345967172414567184170692000504707324348013274343098682682986352837817498499795066930920172206199414650322768340902276526880236779659693713242908394769695691301687090662650192646738551548779962253131861831039401602094198408959116710109831550375575557154758512657249506128072736359097339472540292707650443239990418063639065742990365650923531574077702165512815821540016205941380581803799003060300775103871074949484734992368430979648108948334994557634884186830246638726000306537474503274791264105485607321663831253244304847082238799463340948322914078086133073045340672739880785783460418486291201990124525627125722694566260611174560591964874922263135687273850164105204791509625708451175028953616465210428603022790133838661683312090847444053457363819327881107642252478737335986889422847785533290755806573818854144495424186006876058603276498694297618462243532135035835512065983943701285440544922346469276000694906109597071122892410868432865707799321328552878171515919843764146292895058546164111485626144446580954262928652923990654759497028191861429734957145309772691964838731265178001113256307263284741094529521210923230670366204769542508504988481923039230834063796280039698982548162428335132589956417771043575602305145369460236240667589037392028941690251725336103011214038145192164013749762931586725779188794180072477219543057757552171529085652378240731662171648535333456907054847939596677439393668342092939544402637518018959745729873867763241276372006323579216159825723683978374539312142795381636565042814349739236871788679635093162468557368102613410892234115954013989264873662566543021200149405169783369952869064209415476029004811018291514614052636494617294085952076809180158116766966959034200501705593407615510518043732500061127787740233317676508018494377314270265325765141107915300663540181780965942976847000378613533418115446214390083775685405099557892490560296843420557863519602527982165181213351619449156625779430606155947632755088106755819971470644481509394310781758433904186252400407167713558343576986161379927686747886543742337864346749387037686779151785137789727966605142875152496229663400412990135345708001897402049867844551049609613376835501551136185569073353732426734781650743540622426309346856138490883828378567804688976182488822145166510718312713718078064576402035357302288111389048795606142157883016006380604638087283964922600297695772672553559777998913691279529917972141411957557229257169864040934718416319459280364118008204379061687133004480493827101877023498464816329939158539258280839581381622816163165640979358826741104764490528083201454871755539867895707989306461125380135528549180396860898372199601181906320855060007775622901861677135844143415184659608296753063976267179143215843268191017363123352906937802290220972763754629622069629694444815564461136813066672610748190882905216158092864193641724904752603601590431071289784918026378545706746850434331296747819215213829112615611358733602622982144738769671544002089327780666450738705352699968185871081566114980705969664633449638861282703414442860416422627084081955466163707215000385135241889921636303165287828632218133056375522740751190728801239468429233669478844215927864918413242821349807969903190787125797731688332325810539658447226905428100127018342578626112000535501981375812369416236734041527376647929018727497661301196921873632396227173868366957279471954471616688498979745951937263385718280193574639337727061224162005823771779875193266054506060926031436564029888637988478128035399216343942482801722025955759023840780965761366177250808989077460897130576961751444498428681933172137869908512965188307448500292192910665153356930582898287431621146723130146018639863041530783694779681059582388153796179252024039319171990652444754524441124943635676591996794177940120300416034437388926717672480090039088893599310266167896990334971903134955459228026835776617905971486012758838812352597071776474920309528431948623287459165569414125689178012310999899699693867692270970692890815515405759012743898159716471332149169584178811566041607922053395019206326142319754981490641225270001925777463517286400028217692136302668382573921346111811123289101130823348721018328655973540815779792700906487754945319981255391828375093131570901786609168428990682576726142229553076397522749382489406555222117047930652865047190917611900677295310765036996144287876320852191660020371718181557678525645796662296806779921740214833828040195523154797349942666726822047644213153656677740188446937119189945009848862478164111587994025944909946354594129946994196734260457009386149127747659928279230983022568755619982741585294248076337852196015518861319618993079650115026813415170758639966038857128771323658387852524035563422045659260279036747339575937141155413730120820034213681450916926985339488041850427964637267034147257072736021704069500909082986751833096401111057465249566284780408299026323278295166324663326722631813245718107813979527452675177527986953111288254262147141423798117581798994734177238959102954488192998677380746418993943935450909710662348620279559731989740994107637795313136910660994247347906403246847231544233994665593183371211215786269943503257645135862011846729855110266645869616572659307921404099655323276882912854096008572270587157183773829819606468511851606098030549238819837774388959474500760914401925475152385615630680617118137754437660773209820460381474232701028698658833534798695038679162184868418394202934188289994229992271971810076530469305189932091055132172148572423336938561659691007762282856052454897040252356601887083476160858314805559243960006438972807866109959381697938407372370978627463803910270461724683180030914423893086589733220416261777263171952715309983560532357597589788131409515826247786232842857246413119797257614185425312914528571445350605977899781475825076295057924012145147406044983774183087412049997873165821373568499448230900590133175739148080812622571551833897861872965560440603845608567309014182269234152532132390355251000855620184228883217322255759858843666158853505988926570913036521421104406498856062536016983048658302311973363356284615509151709722935033296936849631276296935859001224418610699525762425956536963299165119840295132663660407491378697881329801239596424875792427535931339574159322983136633922675803469790522990312077116830218755370288922747684341354587763975517832128082108555081999658673183606527727832926471666216928834087828421715704921665767559492693750121364276202175567717687758514956488028665082175764092247560230438560625243351780799173193342710987123412262427144025099470191419002372648440231722974993526191474772390201779612907831494003994395158179271954682222566764654023403987800750976848151280491634521742759085425803122837077313272625868801496805801316691250667233410191759261449506945212907957870611417848633285617651467033074476695156223723952789580880123823480512556087316588218411908866278653328129806586901932351689430428188164594206820537738662915988747561461078300415005200421459841185147822874095718897864643173229714860137434798922635771403985457607705772306251133970663478218641160029158819037548609992242468000327359232606676948434787672917463747479889102568792194935491008666609320738908525673614329915084164320734487415776181071821622106153169731319256839057660302634882725006050614008743874925796570366577397029120291894259275873760709362019454132692537362861453918255758624770854224406056843026064903109280131184190370647376278945134642187338557664991875782205434731387260981011776212629361718147821219037946876207122276823256085066602903338309055802243757843008041646986024036869739938062016720512529082653082565085726730474441319548262128773646260682751125286205694105445545843407328897387126269438738545664445523917444515159108766822794594522023991988090939478236548954217260880880860068048121059226190607024158568759075868979169287970514376380826915866304406326383875127147266253778788147523292264864715769808983037879560367731325990689593482867949526490145386064829081119822362353455774673040416725523149597858103046480975600758040709773691736549505409719723974143624244319064819586834434925581273481928806291740491953132126813210177510145808110792581073881041249255584303795847248387259022209854914627471915973372981394750393303181796744954962628222860949895331019103917862563135443374874302183983524845490363727141583839665494137209427969308543709435593463039056410238233507182691673238155008129752055340079719397664207206307947757991086028305797450772707787810145922441043058637650507002316147378435691176525968121442262395994641960612681932746747835070452996382554390270273773151788188880800192885080559017882684187785781747228965269451511300450854208633858660423962950225886745301016577714386292540045536670231972939115915225979189817726969710858346985844199558682554501819137720777508616869216647144643865051658107499435037943118784848611086001542505140649872608491592186528624660504305331130844907976527304578582396081924945875004285079702506550976729504860735369173969778208488809704612839112612564919528241260113505879832812233176734854185259757504548629119692971065073043517273408243541524921199980912585991680366514058683443391781278830931237196737202420005117318497419527317418727803392010674673712893897222724698975017324936657929603528432606952517601897751882590289466873447618644858099369888006824013481837436876888198863402235450190210865844583860984643323631583227556847186028323685493637033212236885382755415862437217176074361441321668747137804702295406925854467310297691916994411149718096533430019184133772104364740398250209259176546941289829071372488089697970562797744741923727504108021948603314282890653013474966358408295183221601319738115976044353119462087656576813317066838997549190132445120633828625112186110089993388889086299028716712314094561692861084765391605979334125469319666839212871270938427757708222418846655313671025451681018057484789540242975093105208774072567639268334394487177211795363664102556345098339698565164682701522130538174276403158753560020550396274355600266261754865917201638661847667080977868262112542358419567742595994324982563778018425737792418720501397896493306463991505146305186857739330824151805209075188008507369634976104142669650801958885660348632374020907581558870885431590176160281922111850369790204040227615877892652705875624092626407390736536848982923245926815891540754798680903931570879252594164181126787919618696574806485487115916873154228132534552390449983673026056171858044502340602802475969052123822865641474516608580396244038013940978444172491431287675736738403866464990024348912681527594081778493893482090261581941292539078674394347289099906191062999012552953896166163579284426972009222013989022266223320427268714122201875662242145567036412809574456654402468247780937149576220106997309396443477132030179786750270576954324104137440622264959989096702051033966127520228947061956492482970536698125047223632133999726355405697813738092366254536419428803404120549455618771006247329398259966569863741009817114107611448447609776882396022559675687699010649191827630243126009578704939406224411741146372395271060135976984832490517787784357211163722933029702246156410553336767589090537730582772073339197574372059765293610719137217907617519784653680024828402600791466328671885497752822694892748880566774955445870739988818390122914319697329365556125725028256584425373097101944228323160262439102588055597375686151097621492943005620995274324276864291133161840650431397306112530619535361690064265449108319859177081443609809418918040037570081756576926689088205033085823679259779076515989855278500226471424623494610399510176401933018602426673261471585392111718209743208273753194650952306458858056777213069999029455574113733087415264359341898778981051216755435673334051183569639748709286126876746397042576657562840934560856362927729076941178720087698145208940674874909603002566295351638616004055477917155035950982069898606755399905840716583220331537135481135956712148820703407354656333805847724046466395839536263086248149478937989893325095313039125437288320765590912066270350164536341731147669387180009368394216477552341747186367225849982402600268091846618184268439860059423759627573256308308152164993940601791451020993900594131212858920261735023590623139761823518566412463311469796042485917017693583853217298542476024093697614926904290291049081259137348742361136353008721926034030863498555898586792635953376433445876560347877848838592611103630939217321524159271538586423528743338448501881231610946952715701424521013272567838255982685935742516757140415004000047950415272636790681090979544209878629379439687817397692996856192582074207184773874796654687073299234566787083522813822028826622601088937280275965137864218398672237508145740127221223486836623292544659540124138091002665047075393671160447225699443676835016800524527547879428729358961276835764556691679608131641479981884903050079232997967856145650404585390554322160520331681006525878305511481378904074537295109504610660281982213946952071529688403912979824450066420077470473960661917321634972661503699514409519565894633990963987366198359739020193703413376393426175882586639763863585756619833794858164782506885470975672886552999042828620968598424030517433641968739616329960598634463351791132240834459415783967824626060873198167877653209002111291710420676360426000643446480001959984780296592303264505321422178444396898982805348480133482291362270607952347942875237736918167785466462374117851602075223244935223191253741823972930607149377610857752743625851374566109911225767833143041870378332208957429832076503222564145756173573995263685412090756472615029374639102477487724796873278978796983424975571110746667074944451780621063333188519217563619184514805108102989220861455367033689766181681285380903502584584032978130733630512319561757533157253739830841769659381860735527824052176372982619897039166154710402205682827738519262379492493911815028766464621561001669105396712133366214188564735894183277609762138160027756112126384570951210984629958162318829325370739915797413907331083721947053979169156500903319640070252630677899446319830951181908214247341990856716150538637339648353621368695738567157596982914454084988779627412749878631424704598359654544607774104251489778077893008555529123813404062738125870562395301377746626918973947612185958856772448001169644786599993973120209657637521516771963991735173773200764465009638740157360689348483434339362757033868795283768811838088443647831019137390210429949446731840166168199450600649092996661340208400928006331971760488647657305184593899988053149253509588389469870414919629761569963255110467966668159214850058893856304084341620612379020982423104309104264630014689267308001101888969345996647241251790982690496643677313024443448444172552611958256400966883550361841378980426143917534208668055024545709250933191384420103753821746648290163098976100330053779156693758456342750900672399265396307763092510230715004083310603132251025469184976444890175824879470539804944917611307817535152124287248849164848445169733819177729475710278640966069026942019093910470170328730668747955160000000001/100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "9.999999983202450438744554786643290060792974230016885614974197045396724798371354517396743611736943438671553677255486830914137790279295518798345878572286993633070432842650374726093770722851545819004462436628875244411860232158594469613254421180434381201993107458287802325125163053243069430172110772426807444343933144335882747615503490006601729242847162857298422942376907739613882280443446224985853478634536891188142530824191974863594540321471891983190331438660214238370562076773175178470114670761880010611386002765217334877606662589743493065263885531299974729615216146566125248715060043698437181284131422075731364283345338709699703582993794126253899206026934528146377767153691054534880575379446376966339887312558441481262157726244245697615457333431613530552275449401460162499989639848656487083332296490801937951693311275458058296123013085185208798445708221465563084740804820410787599540932022730154798854652366464476530061371778559455317877071523570265142553496795276955870075571182528875499750360644512024647568031051209246724192054442929880514566129263081607800600413659781576784781538493005974997167768733514791341812590394896312608386149334027698381074953732165321067742972175810066314372640545949939691059199112902259197028374719371255274892663325340259528597987002000622558108239103590586872155083612865748826932850558450127216937887601992803887514760693042973096472391063480588422977774969494269373890726888734426098435756907320784308567088373502792516309024646236773935305442872817134944905055513987942401119509705195727840017715028425464818355749703194884577637674587109137707610390307383226651501620601170253964126596900620216453142490711603118113883687304793946602705203186310568182585481733099132087842924462987083665596471409057053089142884222238680920348385341993474341045344088992681826336970904415586716700466508239664209600653162760712100530064502065167678737914771432371617979347503998020717290436951568819830615653761168700466043348086144727916925815070477843455475263686724263892892283969716867279371835765077377676910558598090331378177098353930094532295184009856445876560728286563561671334986536567325297894362351326764395460227163902172113952967717938090786088835394692844065885155267530618028426790389854030687484589562087120424512546486618421621433139619412602429066309466808032200836147058200624093927272069181608034101135651581307045796714383412826355512250686832248794798741015735179125057686456136632780958741021703784606998844147553906477008242783863461524576481328027139732701732284213209639484110376713320660110731582869204969465058671090103178705963815577957977980117208041307484040287948737207568397920862262167038764918914817399842386679521269528858792702378468840740576184166859648224733306749763575359090479283104041504241262307460577374215178978240585414372079147184993907992934116201605852641627727983013849912701637111777081993050829497271839664962028123086823798057182710282673420545733083021127090208832414549389548919179553208520792478116741455214699919785611603942118797765688096950288243879790634767873964857412444521648789803864560527147448552706069899091964323053563880288116863458208447919482878912060824116216698178139352435731695393401069959535324329203337622444367964764061787544412798293121516020525308941658364483453926273235491667129709613354532811589881095340509634320462896872830943304431176506564806154989036967958119208939559282519121803571937582119862858446558992323103590098402945164868905912372866014958993377116548118056741920067867964800627129001792217256006372683260501696091755588032157504905364186439930604862402349604921406933898606480677990962773702118697528181450577674026026040023217843651205895169065731895622635287238154653002041327740805127497998404814040867953756393423858986581727546968897217062680339576927939315498123265676443381136821542767186642202268311779287137369988858543177262407415050532321766834262982082942729764844869626177125112178091879986327807056026858437493399517480756985593236221508005540862688976770344799922216391395173157205049774868126436946262798463619701932890548353790753130685603189442366043826482068753531636900090555220592854185818035818981280794463330453310287795746469816958668263449875118586343150143382025983152488932463664717049268332065582602411764617487761017362546088923610752439276799425157166364622576023516282873398008827449799492320163887496028572604329672091852166412083019528597446840308235376692555668878567063995524222075477679436187916561393864664701716295051250017146458408474680788744495296167920219138275186733081479551861681791850145716555390102750468576506624434182037146500833059769216411324853913506659182415964985931974732458164426896249910308397876690383771233200557682978044527273317266187310688817938781979724308299037807342261634826491889372280466449324691637292048702697208746100893536219224910805348780141004772899321384268303789145405962067068659115826930838936027389263862499231941746698310892530926800426163629122716789538636535068335698424166105711665816227169698271759908607554255447741519484647287775464775586826630437191071751601991786746297222514600603511526076187208985092199533657474012268783174356831306339273234382812087374268783742364878567203252127234917351357818577422542203631334747050151316735928824292337199112277152975081523059788411362066798178727143074846374847022962133404093560957328602289023861383204326526366798133980024505950668680469796137915702365344566789454461282321469368569384728254641905605206252705110159818993327848215556361321699361182134003268232156282529461606966219581458745669214204656720103751374062498965933005719439097625261545734348151860218812996061459868240810940632590549583225266890965603405669247161868311403610323915622920699773320018403174567436157512549233527003865219439392576304796699833669190771721750330665815804924660495989007766617180669938655541518102221736339007458487278896115814840389728106572436128133348046976438246914894910389328577270036495289555335838603779788402406600688728983750367478711785480803627041120011595405846690665194697274993102564182272417977785521126226029463354862083414639966239062537424633585905125960527196497163650367754962898558133935085520218232971045192894826443352174895945063001618197997716918169404305641361705376564122552909442555474380911205044917745568460264209719148058883898124904296081743039862454718802995249783687812484239545533080307791568124502319276457208070170486105403271748909783407788588623457304653388935603531013315641671533061474940740509097401130867061513990597789708087415699448514286045807330405795484454409372627862270959652274754864846161817333892395313034696813877203218902630924470517678009527602945906297590647095144641033005907949739186795336883574210830699748481098623990230990996922358768446567263956872951585350694919282365194777760898345139105052376447906312707515844063772324702025922421695626445261002793312676023355509168125449286713195571352714457666571006199211724242392272656758826375432934837773401542465605519225770976278260960312280148010970968609620269923731457561466052387666796744189152301229311824229240528366633286193964849211935796876157058512888242164456457532262515525118445232426068779870206088852516995620007265573732402492186414146551719263362341389084272369748635325142345305071161013465827317764784818556642455137737802460455801584468704675705973702978702562050212162885088545088197264362710639445282084217346797313750029354440212606177767305669959313989808509254445654208112194243203864003942547252112061034256370725382329499535445044566985518312381404944626821368153118702124129493272484179106106594874005286311275465576733582281544536229417172981049465323909684145712933515751623689853795654304881905794167274951504382288581217977984933820025940845115273642980792498743287928660007920363068636552967008292556186811975761184970545699554846297176827519982866465269409244150517580077090105658481993751696827754307229511170446538396180031543712461469960982640186951330698974101674730040533397426228707096260003691349836513148366575430719609650987925121494853155487720575294618993258954276325690133694658453757516974087425500332372491407152150377720548315957693901383438608798726642658841457342244335808600114656917134040760906450724745235612762155608275193598542083943922544462348989583359513801542818782262453430634924980492138257240716254706368902697191547729161631740698106572679728926717811536827568518071152250630512480356152053943061379919489821479901573379675778952345478933740078454301922258033939332925540550953849589102144085096469818627679240281625878936368375931096758784576716386579976896915109471603351855000293948513711728864109106291708719515828886671836940270341778954971547010025637682545354546619764413544963136071330412616727121378027469631516945421967574919893060514575134060627203491533012269368640477526650060074942639362754358840267746386603697490980015537639979512088494715554529852565471673605077816041269667864433525328862657049179421169591711132019935683754112915180309490692743311528574600360599593197527955551937489120317666438743406566623600920034726496381351809578995548437120817845944760612791994635287070261238756876254381986117369594572971254903415234481578999571304824874226299040384119381765271675500558916223038726159267166397839091286873439781979391831653306681036184517775340417885779699985994088242180833915961419164015392012666475353250392438062819677664324449712791954694345361829095881904646324446900081398092399841065084167402777791261957108396319900357321537558598609351144514123586232757517463522215309210479435396026705449053182075115545381133167378162891570418610375391568418467713532658099573156927933541294240387208873670292705589380161637330303489091190772245666408614172132536287098373790449335642269781468802740907807000798880801532718686182349064008929819099658955296297160431748343287617227025758556381615697521335431858630443468039849725161463149942071490040181252754366757765402238101888119683413607869215354888477286151682100721590760744259547995729744451895689002165731095387507972272388511147230946838102549368617524663869089291230878112277885238417787787500892035732648418871961054110958176784979467592202000685822574014433192620798269622718671742258111069916597240201870770928646458769319449998427605608398837888884858744738041016456295014269647421788064027072875439692238599209744489088438159656303203058286919958027590862709333287965962360582817349155695483204512259400171229508417962621682331163069980931328175400676481782832742619346559965800261061634429057044119510109696319675023793788531271097999640595815806148493633936034822283756715209879989431162540124310842412923810719759674951228501682677104269802397651436525408759297706029316618169019031012666762663747502525151417828297818511052770756862441104113729760325728016734595950663491011081341374783557259489483930181516501977726991269653222563115739227411849289964914275594419477958902538734335840837866406724268410710362042287913858178112990146853580694389124946767609772634514331049703249129807813675720279663542499562211946574393811286819675944516700292967321719829972269485593620974512889268877626520727823104487339138757572900205714535005057544056640508292624665931152592072441916930101886783551061651943388621969207214364915535384153337638922887646982857902309553681638214492675026864451296567718786503486415503463926743782007527332397070619457207449414025070410173534204464804627487742539522102551659740010198664500434221720642750622601245764590238160776021280192874466775213349176810695806327659918701121325107931132727719926736125164083208695546364035356199678659280079468671220920359611493166156935059300257731810591392728434029017098978571498080511667375288002649446369944354410692269173966775404069501225141128638613508517270336321368034153771249517768261790131422784041205280234280139205082485161687724587431783525628301425869449811584590859638047350656120286205640746182537058178458011067441888161036142730604383542880627488002045848874652864863472578859615496426932245857707492317955318670839847208240297340543457813376408971587575706951538489680990241386323090646209237277246828061030644382283594214519893540971588797887325287282848853028372431821364676612535208838803820614288601840118775940885407091690781946123401596790897258449192357639018842848375122083839519363626894225360189703860646914879184399290521872411421558341306875058315667050874025638518631452356098187830311835476234479203801328946779047120870964061645850129279712974487836151667843756189869241699516300287685476819880862085702881277692041051626804037535736034101565061586056794684117642170197281787911451229235882132586167485825240016182556224292327913837763762648232546794540287357985572571544659558012970569611802334266733447697256493032571750977933006396522005661412462361995323481559327137101753658501261485880070610408601124535470755301680022083639556451525433513111898445182459935967269098342215726647311955803051120188495038500274288245274151781369180847189331880946381129848966173661232198554513479073359851119790801561684486110067166241982746959954793508697017118956825540146146708707756691310573958811509896007969118615479636472687130791618953880064060153240230177098996360676752650787322074396783692337948726735671386873419616357401649790373547202735930425104234749188218816105546753648451451440566679030240963868372532420916144090467851979021340313103875047271063474291253721370358698242027985575436008796103151603946976664002230125406842425163103775689458795612555584666375660611802312129131564746256983667470775891206754959767123332976309063744057216000845574914643885632563226853563972305752501088876812475457480795801919076679085866031423899815618934524244330721825545049492875655554649523947287340982079391168594771900118691949866799218284833875501064831774880846619489674621538254560973044966564253289589557599961335541221321000473514998226241061494094384319084688168648023657844363588778101191150137564904893958207434372754941499929605601645767412269535475316401945568236085850553572114519192909237443259261745995380449900269293432272875308880990249155202894716646900397690835101623861852449079635560616272001177047110621449259998014232179314110283927213091258077553993933723475832500729843011388275850885051734233636001108733005913905028910930569427079238122287278100160171384337498450674659502511765615579332831617919953290644828277893917857658791835072711796006509183311007091932205915730456931540050364041601481421764280879176645976774393050966577067384384328696155030579902840171795938667127662372400001644930351514714343524146671414179381551549636697614602950915304174194202785783486654744915134361212750039370681735778393563638603332358409583092761206019021703759257121269131832135791542754948344683867112928772575378221266980528018803922637941474244651063428778280705531698317845101730157253632346009646490633730140519531763558929631852276847799533790600904882119880198392449161412152038190214039167839022566241741457860524980334649743372928250409121730362134357606759258999529060593626182606712291465243823144708713348378261987640561983757890888430423104406345967172414567184170692000504707324348013274343098682682986352837817498499795066930920172206199414650322768340902276526880236779659693713242908394769695691301687090662650192646738551548779962253131861831039401602094198408959116710109831550375575557154758512657249506128072736359097339472540292707650443239990418063639065742990365650923531574077702165512815821540016205941380581803799003060300775103871074949484734992368430979648108948334994557634884186830246638726000306537474503274791264105485607321663831253244304847082238799463340948322914078086133073045340672739880785783460418486291201990124525627125722694566260611174560591964874922263135687273850164105204791509625708451175028953616465210428603022790133838661683312090847444053457363819327881107642252478737335986889422847785533290755806573818854144495424186006876058603276498694297618462243532135035835512065983943701285440544922346469276000694906109597071122892410868432865707799321328552878171515919843764146292895058546164111485626144446580954262928652923990654759497028191861429734957145309772691964838731265178001113256307263284741094529521210923230670366204769542508504988481923039230834063796280039698982548162428335132589956417771043575602305145369460236240667589037392028941690251725336103011214038145192164013749762931586725779188794180072477219543057757552171529085652378240731662171648535333456907054847939596677439393668342092939544402637518018959745729873867763241276372006323579216159825723683978374539312142795381636565042814349739236871788679635093162468557368102613410892234115954013989264873662566543021200149405169783369952869064209415476029004811018291514614052636494617294085952076809180158116766966959034200501705593407615510518043732500061127787740233317676508018494377314270265325765141107915300663540181780965942976847000378613533418115446214390083775685405099557892490560296843420557863519602527982165181213351619449156625779430606155947632755088106755819971470644481509394310781758433904186252400407167713558343576986161379927686747886543742337864346749387037686779151785137789727966605142875152496229663400412990135345708001897402049867844551049609613376835501551136185569073353732426734781650743540622426309346856138490883828378567804688976182488822145166510718312713718078064576402035357302288111389048795606142157883016006380604638087283964922600297695772672553559777998913691279529917972141411957557229257169864040934718416319459280364118008204379061687133004480493827101877023498464816329939158539258280839581381622816163165640979358826741104764490528083201454871755539867895707989306461125380135528549180396860898372199601181906320855060007775622901861677135844143415184659608296753063976267179143215843268191017363123352906937802290220972763754629622069629694444815564461136813066672610748190882905216158092864193641724904752603601590431071289784918026378545706746850434331296747819215213829112615611358733602622982144738769671544002089327780666450738705352699968185871081566114980705969664633449638861282703414442860416422627084081955466163707215000385135241889921636303165287828632218133056375522740751190728801239468429233669478844215927864918413242821349807969903190787125797731688332325810539658447226905428100127018342578626112000535501981375812369416236734041527376647929018727497661301196921873632396227173868366957279471954471616688498979745951937263385718280193574639337727061224162005823771779875193266054506060926031436564029888637988478128035399216343942482801722025955759023840780965761366177250808989077460897130576961751444498428681933172137869908512965188307448500292192910665153356930582898287431621146723130146018639863041530783694779681059582388153796179252024039319171990652444754524441124943635676591996794177940120300416034437388926717672480090039088893599310266167896990334971903134955459228026835776617905971486012758838812352597071776474920309528431948623287459165569414125689178012310999899699693867692270970692890815515405759012743898159716471332149169584178811566041607922053395019206326142319754981490641225270001925777463517286400028217692136302668382573921346111811123289101130823348721018328655973540815779792700906487754945319981255391828375093131570901786609168428990682576726142229553076397522749382489406555222117047930652865047190917611900677295310765036996144287876320852191660020371718181557678525645796662296806779921740214833828040195523154797349942666726822047644213153656677740188446937119189945009848862478164111587994025944909946354594129946994196734260457009386149127747659928279230983022568755619982741585294248076337852196015518861319618993079650115026813415170758639966038857128771323658387852524035563422045659260279036747339575937141155413730120820034213681450916926985339488041850427964637267034147257072736021704069500909082986751833096401111057465249566284780408299026323278295166324663326722631813245718107813979527452675177527986953111288254262147141423798117581798994734177238959102954488192998677380746418993943935450909710662348620279559731989740994107637795313136910660994247347906403246847231544233994665593183371211215786269943503257645135862011846729855110266645869616572659307921404099655323276882912854096008572270587157183773829819606468511851606098030549238819837774388959474500760914401925475152385615630680617118137754437660773209820460381474232701028698658833534798695038679162184868418394202934188289994229992271971810076530469305189932091055132172148572423336938561659691007762282856052454897040252356601887083476160858314805559243960006438972807866109959381697938407372370978627463803910270461724683180030914423893086589733220416261777263171952715309983560532357597589788131409515826247786232842857246413119797257614185425312914528571445350605977899781475825076295057924012145147406044983774183087412049997873165821373568499448230900590133175739148080812622571551833897861872965560440603845608567309014182269234152532132390355251000855620184228883217322255759858843666158853505988926570913036521421104406498856062536016983048658302311973363356284615509151709722935033296936849631276296935859001224418610699525762425956536963299165119840295132663660407491378697881329801239596424875792427535931339574159322983136633922675803469790522990312077116830218755370288922747684341354587763975517832128082108555081999658673183606527727832926471666216928834087828421715704921665767559492693750121364276202175567717687758514956488028665082175764092247560230438560625243351780799173193342710987123412262427144025099470191419002372648440231722974993526191474772390201779612907831494003994395158179271954682222566764654023403987800750976848151280491634521742759085425803122837077313272625868801496805801316691250667233410191759261449506945212907957870611417848633285617651467033074476695156223723952789580880123823480512556087316588218411908866278653328129806586901932351689430428188164594206820537738662915988747561461078300415005200421459841185147822874095718897864643173229714860137434798922635771403985457607705772306251133970663478218641160029158819037548609992242468000327359232606676948434787672917463747479889102568792194935491008666609320738908525673614329915084164320734487415776181071821622106153169731319256839057660302634882725006050614008743874925796570366577397029120291894259275873760709362019454132692537362861453918255758624770854224406056843026064903109280131184190370647376278945134642187338557664991875782205434731387260981011776212629361718147821219037946876207122276823256085066602903338309055802243757843008041646986024036869739938062016720512529082653082565085726730474441319548262128773646260682751125286205694105445545843407328897387126269438738545664445523917444515159108766822794594522023991988090939478236548954217260880880860068048121059226190607024158568759075868979169287970514376380826915866304406326383875127147266253778788147523292264864715769808983037879560367731325990689593482867949526490145386064829081119822362353455774673040416725523149597858103046480975600758040709773691736549505409719723974143624244319064819586834434925581273481928806291740491953132126813210177510145808110792581073881041249255584303795847248387259022209854914627471915973372981394750393303181796744954962628222860949895331019103917862563135443374874302183983524845490363727141583839665494137209427969308543709435593463039056410238233507182691673238155008129752055340079719397664207206307947757991086028305797450772707787810145922441043058637650507002316147378435691176525968121442262395994641960612681932746747835070452996382554390270273773151788188880800192885080559017882684187785781747228965269451511300450854208633858660423962950225886745301016577714386292540045536670231972939115915225979189817726969710858346985844199558682554501819137720777508616869216647144643865051658107499435037943118784848611086001542505140649872608491592186528624660504305331130844907976527304578582396081924945875004285079702506550976729504860735369173969778208488809704612839112612564919528241260113505879832812233176734854185259757504548629119692971065073043517273408243541524921199980912585991680366514058683443391781278830931237196737202420005117318497419527317418727803392010674673712893897222724698975017324936657929603528432606952517601897751882590289466873447618644858099369888006824013481837436876888198863402235450190210865844583860984643323631583227556847186028323685493637033212236885382755415862437217176074361441321668747137804702295406925854467310297691916994411149718096533430019184133772104364740398250209259176546941289829071372488089697970562797744741923727504108021948603314282890653013474966358408295183221601319738115976044353119462087656576813317066838997549190132445120633828625112186110089993388889086299028716712314094561692861084765391605979334125469319666839212871270938427757708222418846655313671025451681018057484789540242975093105208774072567639268334394487177211795363664102556345098339698565164682701522130538174276403158753560020550396274355600266261754865917201638661847667080977868262112542358419567742595994324982563778018425737792418720501397896493306463991505146305186857739330824151805209075188008507369634976104142669650801958885660348632374020907581558870885431590176160281922111850369790204040227615877892652705875624092626407390736536848982923245926815891540754798680903931570879252594164181126787919618696574806485487115916873154228132534552390449983673026056171858044502340602802475969052123822865641474516608580396244038013940978444172491431287675736738403866464990024348912681527594081778493893482090261581941292539078674394347289099906191062999012552953896166163579284426972009222013989022266223320427268714122201875662242145567036412809574456654402468247780937149576220106997309396443477132030179786750270576954324104137440622264959989096702051033966127520228947061956492482970536698125047223632133999726355405697813738092366254536419428803404120549455618771006247329398259966569863741009817114107611448447609776882396022559675687699010649191827630243126009578704939406224411741146372395271060135976984832490517787784357211163722933029702246156410553336767589090537730582772073339197574372059765293610719137217907617519784653680024828402600791466328671885497752822694892748880566774955445870739988818390122914319697329365556125725028256584425373097101944228323160262439102588055597375686151097621492943005620995274324276864291133161840650431397306112530619535361690064265449108319859177081443609809418918040037570081756576926689088205033085823679259779076515989855278500226471424623494610399510176401933018602426673261471585392111718209743208273753194650952306458858056777213069999029455574113733087415264359341898778981051216755435673334051183569639748709286126876746397042576657562840934560856362927729076941178720087698145208940674874909603002566295351638616004055477917155035950982069898606755399905840716583220331537135481135956712148820703407354656333805847724046466395839536263086248149478937989893325095313039125437288320765590912066270350164536341731147669387180009368394216477552341747186367225849982402600268091846618184268439860059423759627573256308308152164993940601791451020993900594131212858920261735023590623139761823518566412463311469796042485917017693583853217298542476024093697614926904290291049081259137348742361136353008721926034030863498555898586792635953376433445876560347877848838592611103630939217321524159271538586423528743338448501881231610946952715701424521013272567838255982685935742516757140415004000047950415272636790681090979544209878629379439687817397692996856192582074207184773874796654687073299234566787083522813822028826622601088937280275965137864218398672237508145740127221223486836623292544659540124138091002665047075393671160447225699443676835016800524527547879428729358961276835764556691679608131641479981884903050079232997967856145650404585390554322160520331681006525878305511481378904074537295109504610660281982213946952071529688403912979824450066420077470473960661917321634972661503699514409519565894633990963987366198359739020193703413376393426175882586639763863585756619833794858164782506885470975672886552999042828620968598424030517433641968739616329960598634463351791132240834459415783967824626060873198167877653209002111291710420676360426000643446480001959984780296592303264505321422178444396898982805348480133482291362270607952347942875237736918167785466462374117851602075223244935223191253741823972930607149377610857752743625851374566109911225767833143041870378332208957429832076503222564145756173573995263685412090756472615029374639102477487724796873278978796983424975571110746667074944451780621063333188519217563619184514805108102989220861455367033689766181681285380903502584584032978130733630512319561757533157253739830841769659381860735527824052176372982619897039166154710402205682827738519262379492493911815028766464621561001669105396712133366214188564735894183277609762138160027756112126384570951210984629958162318829325370739915797413907331083721947053979169156500903319640070252630677899446319830951181908214247341990856716150538637339648353621368695738567157596982914454084988779627412749878631424704598359654544607774104251489778077893008555529123813404062738125870562395301377746626918973947612185958856772448001169644786599993973120209657637521516771963991735173773200764465009638740157360689348483434339362757033868795283768811838088443647831019137390210429949446731840166168199450600649092996661340208400928006331971760488647657305184593899988053149253509588389469870414919629761569963255110467966668159214850058893856304084341620612379020982423104309104264630014689267308001101888969345996647241251790982690496643677313024443448444172552611958256400966883550361841378980426143917534208668055024545709250933191384420103753821746648290163098976100330053779156693758456342750900672399265396307763092510230715004083310603132251025469184976444890175824879470539804944917611307817535152124287248849164848445169733819177729475710278640966069026942019093910470170328730668747955160000000001E-30011" + }, + "lambda_above_tau": { + "rational": "1/40000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "2.5E-30011" + }, + "lambda_above_sigma": { + "rational": "3/40000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "7.5E-30011" + }, + "lambda_above_internal": { + "rational": "1/40000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "2.5E-30011" + }, + "lambda_prime_above_lambda": { + "rational": "1/40000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "2.5E-30011" + }, + "lambda_prime_above_leaf": { + "rational": "9999999983202450438744554786643290060792974230016885614974197045396724798371354517396743611736943438671553677255486830914137790279295518798345878572286993633070432842650374726093770722851545819004462436628875244411860232158594469613254421180434381201993107458287802325125163053243069430172110772426807444343933144335882747615503490006601729242847162857298422942376907739613882280443446224985853478634536891188142530824191974863594540321471891983190331438660214238370562076773175178470114670761880010611386002765217334877606662589743493065263885531299974729615216146566125248715060043698437181284131422075731364283345338709699703582993794126253899206026934528146377767153691054534880575379446376966339887312558441481262157726244245697615457333431613530552275449401460162499989639848656487083332296490801937951693311275458058296123013085185208798445708221465563084740804820410787599540932022730154798854652366464476530061371778559455317877071523570265142553496795276955870075571182528875499750360644512024647568031051209246724192054442929880514566129263081607800600413659781576784781538493005974997167768733514791341812590394896312608386149334027698381074953732165321067742972175810066314372640545949939691059199112902259197028374719371255274892663325340259528597987002000622558108239103590586872155083612865748826932850558450127216937887601992803887514760693042973096472391063480588422977774969494269373890726888734426098435756907320784308567088373502792516309024646236773935305442872817134944905055513987942401119509705195727840017715028425464818355749703194884577637674587109137707610390307383226651501620601170253964126596900620216453142490711603118113883687304793946602705203186310568182585481733099132087842924462987083665596471409057053089142884222238680920348385341993474341045344088992681826336970904415586716700466508239664209600653162760712100530064502065167678737914771432371617979347503998020717290436951568819830615653761168700466043348086144727916925815070477843455475263686724263892892283969716867279371835765077377676910558598090331378177098353930094532295184009856445876560728286563561671334986536567325297894362351326764395460227163902172113952967717938090786088835394692844065885155267530618028426790389854030687484589562087120424512546486618421621433139619412602429066309466808032200836147058200624093927272069181608034101135651581307045796714383412826355512250686832248794798741015735179125057686456136632780958741021703784606998844147553906477008242783863461524576481328027139732701732284213209639484110376713320660110731582869204969465058671090103178705963815577957977980117208041307484040287948737207568397920862262167038764918914817399842386679521269528858792702378468840740576184166859648224733306749763575359090479283104041504241262307460577374215178978240585414372079147184993907992934116201605852641627727983013849912701637111777081993050829497271839664962028123086823798057182710282673420545733083021127090208832414549389548919179553208520792478116741455214699919785611603942118797765688096950288243879790634767873964857412444521648789803864560527147448552706069899091964323053563880288116863458208447919482878912060824116216698178139352435731695393401069959535324329203337622444367964764061787544412798293121516020525308941658364483453926273235491667129709613354532811589881095340509634320462896872830943304431176506564806154989036967958119208939559282519121803571937582119862858446558992323103590098402945164868905912372866014958993377116548118056741920067867964800627129001792217256006372683260501696091755588032157504905364186439930604862402349604921406933898606480677990962773702118697528181450577674026026040023217843651205895169065731895622635287238154653002041327740805127497998404814040867953756393423858986581727546968897217062680339576927939315498123265676443381136821542767186642202268311779287137369988858543177262407415050532321766834262982082942729764844869626177125112178091879986327807056026858437493399517480756985593236221508005540862688976770344799922216391395173157205049774868126436946262798463619701932890548353790753130685603189442366043826482068753531636900090555220592854185818035818981280794463330453310287795746469816958668263449875118586343150143382025983152488932463664717049268332065582602411764617487761017362546088923610752439276799425157166364622576023516282873398008827449799492320163887496028572604329672091852166412083019528597446840308235376692555668878567063995524222075477679436187916561393864664701716295051250017146458408474680788744495296167920219138275186733081479551861681791850145716555390102750468576506624434182037146500833059769216411324853913506659182415964985931974732458164426896249910308397876690383771233200557682978044527273317266187310688817938781979724308299037807342261634826491889372280466449324691637292048702697208746100893536219224910805348780141004772899321384268303789145405962067068659115826930838936027389263862499231941746698310892530926800426163629122716789538636535068335698424166105711665816227169698271759908607554255447741519484647287775464775586826630437191071751601991786746297222514600603511526076187208985092199533657474012268783174356831306339273234382812087374268783742364878567203252127234917351357818577422542203631334747050151316735928824292337199112277152975081523059788411362066798178727143074846374847022962133404093560957328602289023861383204326526366798133980024505950668680469796137915702365344566789454461282321469368569384728254641905605206252705110159818993327848215556361321699361182134003268232156282529461606966219581458745669214204656720103751374062498965933005719439097625261545734348151860218812996061459868240810940632590549583225266890965603405669247161868311403610323915622920699773320018403174567436157512549233527003865219439392576304796699833669190771721750330665815804924660495989007766617180669938655541518102221736339007458487278896115814840389728106572436128133348046976438246914894910389328577270036495289555335838603779788402406600688728983750367478711785480803627041120011595405846690665194697274993102564182272417977785521126226029463354862083414639966239062537424633585905125960527196497163650367754962898558133935085520218232971045192894826443352174895945063001618197997716918169404305641361705376564122552909442555474380911205044917745568460264209719148058883898124904296081743039862454718802995249783687812484239545533080307791568124502319276457208070170486105403271748909783407788588623457304653388935603531013315641671533061474940740509097401130867061513990597789708087415699448514286045807330405795484454409372627862270959652274754864846161817333892395313034696813877203218902630924470517678009527602945906297590647095144641033005907949739186795336883574210830699748481098623990230990996922358768446567263956872951585350694919282365194777760898345139105052376447906312707515844063772324702025922421695626445261002793312676023355509168125449286713195571352714457666571006199211724242392272656758826375432934837773401542465605519225770976278260960312280148010970968609620269923731457561466052387666796744189152301229311824229240528366633286193964849211935796876157058512888242164456457532262515525118445232426068779870206088852516995620007265573732402492186414146551719263362341389084272369748635325142345305071161013465827317764784818556642455137737802460455801584468704675705973702978702562050212162885088545088197264362710639445282084217346797313750029354440212606177767305669959313989808509254445654208112194243203864003942547252112061034256370725382329499535445044566985518312381404944626821368153118702124129493272484179106106594874005286311275465576733582281544536229417172981049465323909684145712933515751623689853795654304881905794167274951504382288581217977984933820025940845115273642980792498743287928660007920363068636552967008292556186811975761184970545699554846297176827519982866465269409244150517580077090105658481993751696827754307229511170446538396180031543712461469960982640186951330698974101674730040533397426228707096260003691349836513148366575430719609650987925121494853155487720575294618993258954276325690133694658453757516974087425500332372491407152150377720548315957693901383438608798726642658841457342244335808600114656917134040760906450724745235612762155608275193598542083943922544462348989583359513801542818782262453430634924980492138257240716254706368902697191547729161631740698106572679728926717811536827568518071152250630512480356152053943061379919489821479901573379675778952345478933740078454301922258033939332925540550953849589102144085096469818627679240281625878936368375931096758784576716386579976896915109471603351855000293948513711728864109106291708719515828886671836940270341778954971547010025637682545354546619764413544963136071330412616727121378027469631516945421967574919893060514575134060627203491533012269368640477526650060074942639362754358840267746386603697490980015537639979512088494715554529852565471673605077816041269667864433525328862657049179421169591711132019935683754112915180309490692743311528574600360599593197527955551937489120317666438743406566623600920034726496381351809578995548437120817845944760612791994635287070261238756876254381986117369594572971254903415234481578999571304824874226299040384119381765271675500558916223038726159267166397839091286873439781979391831653306681036184517775340417885779699985994088242180833915961419164015392012666475353250392438062819677664324449712791954694345361829095881904646324446900081398092399841065084167402777791261957108396319900357321537558598609351144514123586232757517463522215309210479435396026705449053182075115545381133167378162891570418610375391568418467713532658099573156927933541294240387208873670292705589380161637330303489091190772245666408614172132536287098373790449335642269781468802740907807000798880801532718686182349064008929819099658955296297160431748343287617227025758556381615697521335431858630443468039849725161463149942071490040181252754366757765402238101888119683413607869215354888477286151682100721590760744259547995729744451895689002165731095387507972272388511147230946838102549368617524663869089291230878112277885238417787787500892035732648418871961054110958176784979467592202000685822574014433192620798269622718671742258111069916597240201870770928646458769319449998427605608398837888884858744738041016456295014269647421788064027072875439692238599209744489088438159656303203058286919958027590862709333287965962360582817349155695483204512259400171229508417962621682331163069980931328175400676481782832742619346559965800261061634429057044119510109696319675023793788531271097999640595815806148493633936034822283756715209879989431162540124310842412923810719759674951228501682677104269802397651436525408759297706029316618169019031012666762663747502525151417828297818511052770756862441104113729760325728016734595950663491011081341374783557259489483930181516501977726991269653222563115739227411849289964914275594419477958902538734335840837866406724268410710362042287913858178112990146853580694389124946767609772634514331049703249129807813675720279663542499562211946574393811286819675944516700292967321719829972269485593620974512889268877626520727823104487339138757572900205714535005057544056640508292624665931152592072441916930101886783551061651943388621969207214364915535384153337638922887646982857902309553681638214492675026864451296567718786503486415503463926743782007527332397070619457207449414025070410173534204464804627487742539522102551659740010198664500434221720642750622601245764590238160776021280192874466775213349176810695806327659918701121325107931132727719926736125164083208695546364035356199678659280079468671220920359611493166156935059300257731810591392728434029017098978571498080511667375288002649446369944354410692269173966775404069501225141128638613508517270336321368034153771249517768261790131422784041205280234280139205082485161687724587431783525628301425869449811584590859638047350656120286205640746182537058178458011067441888161036142730604383542880627488002045848874652864863472578859615496426932245857707492317955318670839847208240297340543457813376408971587575706951538489680990241386323090646209237277246828061030644382283594214519893540971588797887325287282848853028372431821364676612535208838803820614288601840118775940885407091690781946123401596790897258449192357639018842848375122083839519363626894225360189703860646914879184399290521872411421558341306875058315667050874025638518631452356098187830311835476234479203801328946779047120870964061645850129279712974487836151667843756189869241699516300287685476819880862085702881277692041051626804037535736034101565061586056794684117642170197281787911451229235882132586167485825240016182556224292327913837763762648232546794540287357985572571544659558012970569611802334266733447697256493032571750977933006396522005661412462361995323481559327137101753658501261485880070610408601124535470755301680022083639556451525433513111898445182459935967269098342215726647311955803051120188495038500274288245274151781369180847189331880946381129848966173661232198554513479073359851119790801561684486110067166241982746959954793508697017118956825540146146708707756691310573958811509896007969118615479636472687130791618953880064060153240230177098996360676752650787322074396783692337948726735671386873419616357401649790373547202735930425104234749188218816105546753648451451440566679030240963868372532420916144090467851979021340313103875047271063474291253721370358698242027985575436008796103151603946976664002230125406842425163103775689458795612555584666375660611802312129131564746256983667470775891206754959767123332976309063744057216000845574914643885632563226853563972305752501088876812475457480795801919076679085866031423899815618934524244330721825545049492875655554649523947287340982079391168594771900118691949866799218284833875501064831774880846619489674621538254560973044966564253289589557599961335541221321000473514998226241061494094384319084688168648023657844363588778101191150137564904893958207434372754941499929605601645767412269535475316401945568236085850553572114519192909237443259261745995380449900269293432272875308880990249155202894716646900397690835101623861852449079635560616272001177047110621449259998014232179314110283927213091258077553993933723475832500729843011388275850885051734233636001108733005913905028910930569427079238122287278100160171384337498450674659502511765615579332831617919953290644828277893917857658791835072711796006509183311007091932205915730456931540050364041601481421764280879176645976774393050966577067384384328696155030579902840171795938667127662372400001644930351514714343524146671414179381551549636697614602950915304174194202785783486654744915134361212750039370681735778393563638603332358409583092761206019021703759257121269131832135791542754948344683867112928772575378221266980528018803922637941474244651063428778280705531698317845101730157253632346009646490633730140519531763558929631852276847799533790600904882119880198392449161412152038190214039167839022566241741457860524980334649743372928250409121730362134357606759258999529060593626182606712291465243823144708713348378261987640561983757890888430423104406345967172414567184170692000504707324348013274343098682682986352837817498499795066930920172206199414650322768340902276526880236779659693713242908394769695691301687090662650192646738551548779962253131861831039401602094198408959116710109831550375575557154758512657249506128072736359097339472540292707650443239990418063639065742990365650923531574077702165512815821540016205941380581803799003060300775103871074949484734992368430979648108948334994557634884186830246638726000306537474503274791264105485607321663831253244304847082238799463340948322914078086133073045340672739880785783460418486291201990124525627125722694566260611174560591964874922263135687273850164105204791509625708451175028953616465210428603022790133838661683312090847444053457363819327881107642252478737335986889422847785533290755806573818854144495424186006876058603276498694297618462243532135035835512065983943701285440544922346469276000694906109597071122892410868432865707799321328552878171515919843764146292895058546164111485626144446580954262928652923990654759497028191861429734957145309772691964838731265178001113256307263284741094529521210923230670366204769542508504988481923039230834063796280039698982548162428335132589956417771043575602305145369460236240667589037392028941690251725336103011214038145192164013749762931586725779188794180072477219543057757552171529085652378240731662171648535333456907054847939596677439393668342092939544402637518018959745729873867763241276372006323579216159825723683978374539312142795381636565042814349739236871788679635093162468557368102613410892234115954013989264873662566543021200149405169783369952869064209415476029004811018291514614052636494617294085952076809180158116766966959034200501705593407615510518043732500061127787740233317676508018494377314270265325765141107915300663540181780965942976847000378613533418115446214390083775685405099557892490560296843420557863519602527982165181213351619449156625779430606155947632755088106755819971470644481509394310781758433904186252400407167713558343576986161379927686747886543742337864346749387037686779151785137789727966605142875152496229663400412990135345708001897402049867844551049609613376835501551136185569073353732426734781650743540622426309346856138490883828378567804688976182488822145166510718312713718078064576402035357302288111389048795606142157883016006380604638087283964922600297695772672553559777998913691279529917972141411957557229257169864040934718416319459280364118008204379061687133004480493827101877023498464816329939158539258280839581381622816163165640979358826741104764490528083201454871755539867895707989306461125380135528549180396860898372199601181906320855060007775622901861677135844143415184659608296753063976267179143215843268191017363123352906937802290220972763754629622069629694444815564461136813066672610748190882905216158092864193641724904752603601590431071289784918026378545706746850434331296747819215213829112615611358733602622982144738769671544002089327780666450738705352699968185871081566114980705969664633449638861282703414442860416422627084081955466163707215000385135241889921636303165287828632218133056375522740751190728801239468429233669478844215927864918413242821349807969903190787125797731688332325810539658447226905428100127018342578626112000535501981375812369416236734041527376647929018727497661301196921873632396227173868366957279471954471616688498979745951937263385718280193574639337727061224162005823771779875193266054506060926031436564029888637988478128035399216343942482801722025955759023840780965761366177250808989077460897130576961751444498428681933172137869908512965188307448500292192910665153356930582898287431621146723130146018639863041530783694779681059582388153796179252024039319171990652444754524441124943635676591996794177940120300416034437388926717672480090039088893599310266167896990334971903134955459228026835776617905971486012758838812352597071776474920309528431948623287459165569414125689178012310999899699693867692270970692890815515405759012743898159716471332149169584178811566041607922053395019206326142319754981490641225270001925777463517286400028217692136302668382573921346111811123289101130823348721018328655973540815779792700906487754945319981255391828375093131570901786609168428990682576726142229553076397522749382489406555222117047930652865047190917611900677295310765036996144287876320852191660020371718181557678525645796662296806779921740214833828040195523154797349942666726822047644213153656677740188446937119189945009848862478164111587994025944909946354594129946994196734260457009386149127747659928279230983022568755619982741585294248076337852196015518861319618993079650115026813415170758639966038857128771323658387852524035563422045659260279036747339575937141155413730120820034213681450916926985339488041850427964637267034147257072736021704069500909082986751833096401111057465249566284780408299026323278295166324663326722631813245718107813979527452675177527986953111288254262147141423798117581798994734177238959102954488192998677380746418993943935450909710662348620279559731989740994107637795313136910660994247347906403246847231544233994665593183371211215786269943503257645135862011846729855110266645869616572659307921404099655323276882912854096008572270587157183773829819606468511851606098030549238819837774388959474500760914401925475152385615630680617118137754437660773209820460381474232701028698658833534798695038679162184868418394202934188289994229992271971810076530469305189932091055132172148572423336938561659691007762282856052454897040252356601887083476160858314805559243960006438972807866109959381697938407372370978627463803910270461724683180030914423893086589733220416261777263171952715309983560532357597589788131409515826247786232842857246413119797257614185425312914528571445350605977899781475825076295057924012145147406044983774183087412049997873165821373568499448230900590133175739148080812622571551833897861872965560440603845608567309014182269234152532132390355251000855620184228883217322255759858843666158853505988926570913036521421104406498856062536016983048658302311973363356284615509151709722935033296936849631276296935859001224418610699525762425956536963299165119840295132663660407491378697881329801239596424875792427535931339574159322983136633922675803469790522990312077116830218755370288922747684341354587763975517832128082108555081999658673183606527727832926471666216928834087828421715704921665767559492693750121364276202175567717687758514956488028665082175764092247560230438560625243351780799173193342710987123412262427144025099470191419002372648440231722974993526191474772390201779612907831494003994395158179271954682222566764654023403987800750976848151280491634521742759085425803122837077313272625868801496805801316691250667233410191759261449506945212907957870611417848633285617651467033074476695156223723952789580880123823480512556087316588218411908866278653328129806586901932351689430428188164594206820537738662915988747561461078300415005200421459841185147822874095718897864643173229714860137434798922635771403985457607705772306251133970663478218641160029158819037548609992242468000327359232606676948434787672917463747479889102568792194935491008666609320738908525673614329915084164320734487415776181071821622106153169731319256839057660302634882725006050614008743874925796570366577397029120291894259275873760709362019454132692537362861453918255758624770854224406056843026064903109280131184190370647376278945134642187338557664991875782205434731387260981011776212629361718147821219037946876207122276823256085066602903338309055802243757843008041646986024036869739938062016720512529082653082565085726730474441319548262128773646260682751125286205694105445545843407328897387126269438738545664445523917444515159108766822794594522023991988090939478236548954217260880880860068048121059226190607024158568759075868979169287970514376380826915866304406326383875127147266253778788147523292264864715769808983037879560367731325990689593482867949526490145386064829081119822362353455774673040416725523149597858103046480975600758040709773691736549505409719723974143624244319064819586834434925581273481928806291740491953132126813210177510145808110792581073881041249255584303795847248387259022209854914627471915973372981394750393303181796744954962628222860949895331019103917862563135443374874302183983524845490363727141583839665494137209427969308543709435593463039056410238233507182691673238155008129752055340079719397664207206307947757991086028305797450772707787810145922441043058637650507002316147378435691176525968121442262395994641960612681932746747835070452996382554390270273773151788188880800192885080559017882684187785781747228965269451511300450854208633858660423962950225886745301016577714386292540045536670231972939115915225979189817726969710858346985844199558682554501819137720777508616869216647144643865051658107499435037943118784848611086001542505140649872608491592186528624660504305331130844907976527304578582396081924945875004285079702506550976729504860735369173969778208488809704612839112612564919528241260113505879832812233176734854185259757504548629119692971065073043517273408243541524921199980912585991680366514058683443391781278830931237196737202420005117318497419527317418727803392010674673712893897222724698975017324936657929603528432606952517601897751882590289466873447618644858099369888006824013481837436876888198863402235450190210865844583860984643323631583227556847186028323685493637033212236885382755415862437217176074361441321668747137804702295406925854467310297691916994411149718096533430019184133772104364740398250209259176546941289829071372488089697970562797744741923727504108021948603314282890653013474966358408295183221601319738115976044353119462087656576813317066838997549190132445120633828625112186110089993388889086299028716712314094561692861084765391605979334125469319666839212871270938427757708222418846655313671025451681018057484789540242975093105208774072567639268334394487177211795363664102556345098339698565164682701522130538174276403158753560020550396274355600266261754865917201638661847667080977868262112542358419567742595994324982563778018425737792418720501397896493306463991505146305186857739330824151805209075188008507369634976104142669650801958885660348632374020907581558870885431590176160281922111850369790204040227615877892652705875624092626407390736536848982923245926815891540754798680903931570879252594164181126787919618696574806485487115916873154228132534552390449983673026056171858044502340602802475969052123822865641474516608580396244038013940978444172491431287675736738403866464990024348912681527594081778493893482090261581941292539078674394347289099906191062999012552953896166163579284426972009222013989022266223320427268714122201875662242145567036412809574456654402468247780937149576220106997309396443477132030179786750270576954324104137440622264959989096702051033966127520228947061956492482970536698125047223632133999726355405697813738092366254536419428803404120549455618771006247329398259966569863741009817114107611448447609776882396022559675687699010649191827630243126009578704939406224411741146372395271060135976984832490517787784357211163722933029702246156410553336767589090537730582772073339197574372059765293610719137217907617519784653680024828402600791466328671885497752822694892748880566774955445870739988818390122914319697329365556125725028256584425373097101944228323160262439102588055597375686151097621492943005620995274324276864291133161840650431397306112530619535361690064265449108319859177081443609809418918040037570081756576926689088205033085823679259779076515989855278500226471424623494610399510176401933018602426673261471585392111718209743208273753194650952306458858056777213069999029455574113733087415264359341898778981051216755435673334051183569639748709286126876746397042576657562840934560856362927729076941178720087698145208940674874909603002566295351638616004055477917155035950982069898606755399905840716583220331537135481135956712148820703407354656333805847724046466395839536263086248149478937989893325095313039125437288320765590912066270350164536341731147669387180009368394216477552341747186367225849982402600268091846618184268439860059423759627573256308308152164993940601791451020993900594131212858920261735023590623139761823518566412463311469796042485917017693583853217298542476024093697614926904290291049081259137348742361136353008721926034030863498555898586792635953376433445876560347877848838592611103630939217321524159271538586423528743338448501881231610946952715701424521013272567838255982685935742516757140415004000047950415272636790681090979544209878629379439687817397692996856192582074207184773874796654687073299234566787083522813822028826622601088937280275965137864218398672237508145740127221223486836623292544659540124138091002665047075393671160447225699443676835016800524527547879428729358961276835764556691679608131641479981884903050079232997967856145650404585390554322160520331681006525878305511481378904074537295109504610660281982213946952071529688403912979824450066420077470473960661917321634972661503699514409519565894633990963987366198359739020193703413376393426175882586639763863585756619833794858164782506885470975672886552999042828620968598424030517433641968739616329960598634463351791132240834459415783967824626060873198167877653209002111291710420676360426000643446480001959984780296592303264505321422178444396898982805348480133482291362270607952347942875237736918167785466462374117851602075223244935223191253741823972930607149377610857752743625851374566109911225767833143041870378332208957429832076503222564145756173573995263685412090756472615029374639102477487724796873278978796983424975571110746667074944451780621063333188519217563619184514805108102989220861455367033689766181681285380903502584584032978130733630512319561757533157253739830841769659381860735527824052176372982619897039166154710402205682827738519262379492493911815028766464621561001669105396712133366214188564735894183277609762138160027756112126384570951210984629958162318829325370739915797413907331083721947053979169156500903319640070252630677899446319830951181908214247341990856716150538637339648353621368695738567157596982914454084988779627412749878631424704598359654544607774104251489778077893008555529123813404062738125870562395301377746626918973947612185958856772448001169644786599993973120209657637521516771963991735173773200764465009638740157360689348483434339362757033868795283768811838088443647831019137390210429949446731840166168199450600649092996661340208400928006331971760488647657305184593899988053149253509588389469870414919629761569963255110467966668159214850058893856304084341620612379020982423104309104264630014689267308001101888969345996647241251790982690496643677313024443448444172552611958256400966883550361841378980426143917534208668055024545709250933191384420103753821746648290163098976100330053779156693758456342750900672399265396307763092510230715004083310603132251025469184976444890175824879470539804944917611307817535152124287248849164848445169733819177729475710278640966069026942019093910470170328730668747955160000000001/100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "9.999999983202450438744554786643290060792974230016885614974197045396724798371354517396743611736943438671553677255486830914137790279295518798345878572286993633070432842650374726093770722851545819004462436628875244411860232158594469613254421180434381201993107458287802325125163053243069430172110772426807444343933144335882747615503490006601729242847162857298422942376907739613882280443446224985853478634536891188142530824191974863594540321471891983190331438660214238370562076773175178470114670761880010611386002765217334877606662589743493065263885531299974729615216146566125248715060043698437181284131422075731364283345338709699703582993794126253899206026934528146377767153691054534880575379446376966339887312558441481262157726244245697615457333431613530552275449401460162499989639848656487083332296490801937951693311275458058296123013085185208798445708221465563084740804820410787599540932022730154798854652366464476530061371778559455317877071523570265142553496795276955870075571182528875499750360644512024647568031051209246724192054442929880514566129263081607800600413659781576784781538493005974997167768733514791341812590394896312608386149334027698381074953732165321067742972175810066314372640545949939691059199112902259197028374719371255274892663325340259528597987002000622558108239103590586872155083612865748826932850558450127216937887601992803887514760693042973096472391063480588422977774969494269373890726888734426098435756907320784308567088373502792516309024646236773935305442872817134944905055513987942401119509705195727840017715028425464818355749703194884577637674587109137707610390307383226651501620601170253964126596900620216453142490711603118113883687304793946602705203186310568182585481733099132087842924462987083665596471409057053089142884222238680920348385341993474341045344088992681826336970904415586716700466508239664209600653162760712100530064502065167678737914771432371617979347503998020717290436951568819830615653761168700466043348086144727916925815070477843455475263686724263892892283969716867279371835765077377676910558598090331378177098353930094532295184009856445876560728286563561671334986536567325297894362351326764395460227163902172113952967717938090786088835394692844065885155267530618028426790389854030687484589562087120424512546486618421621433139619412602429066309466808032200836147058200624093927272069181608034101135651581307045796714383412826355512250686832248794798741015735179125057686456136632780958741021703784606998844147553906477008242783863461524576481328027139732701732284213209639484110376713320660110731582869204969465058671090103178705963815577957977980117208041307484040287948737207568397920862262167038764918914817399842386679521269528858792702378468840740576184166859648224733306749763575359090479283104041504241262307460577374215178978240585414372079147184993907992934116201605852641627727983013849912701637111777081993050829497271839664962028123086823798057182710282673420545733083021127090208832414549389548919179553208520792478116741455214699919785611603942118797765688096950288243879790634767873964857412444521648789803864560527147448552706069899091964323053563880288116863458208447919482878912060824116216698178139352435731695393401069959535324329203337622444367964764061787544412798293121516020525308941658364483453926273235491667129709613354532811589881095340509634320462896872830943304431176506564806154989036967958119208939559282519121803571937582119862858446558992323103590098402945164868905912372866014958993377116548118056741920067867964800627129001792217256006372683260501696091755588032157504905364186439930604862402349604921406933898606480677990962773702118697528181450577674026026040023217843651205895169065731895622635287238154653002041327740805127497998404814040867953756393423858986581727546968897217062680339576927939315498123265676443381136821542767186642202268311779287137369988858543177262407415050532321766834262982082942729764844869626177125112178091879986327807056026858437493399517480756985593236221508005540862688976770344799922216391395173157205049774868126436946262798463619701932890548353790753130685603189442366043826482068753531636900090555220592854185818035818981280794463330453310287795746469816958668263449875118586343150143382025983152488932463664717049268332065582602411764617487761017362546088923610752439276799425157166364622576023516282873398008827449799492320163887496028572604329672091852166412083019528597446840308235376692555668878567063995524222075477679436187916561393864664701716295051250017146458408474680788744495296167920219138275186733081479551861681791850145716555390102750468576506624434182037146500833059769216411324853913506659182415964985931974732458164426896249910308397876690383771233200557682978044527273317266187310688817938781979724308299037807342261634826491889372280466449324691637292048702697208746100893536219224910805348780141004772899321384268303789145405962067068659115826930838936027389263862499231941746698310892530926800426163629122716789538636535068335698424166105711665816227169698271759908607554255447741519484647287775464775586826630437191071751601991786746297222514600603511526076187208985092199533657474012268783174356831306339273234382812087374268783742364878567203252127234917351357818577422542203631334747050151316735928824292337199112277152975081523059788411362066798178727143074846374847022962133404093560957328602289023861383204326526366798133980024505950668680469796137915702365344566789454461282321469368569384728254641905605206252705110159818993327848215556361321699361182134003268232156282529461606966219581458745669214204656720103751374062498965933005719439097625261545734348151860218812996061459868240810940632590549583225266890965603405669247161868311403610323915622920699773320018403174567436157512549233527003865219439392576304796699833669190771721750330665815804924660495989007766617180669938655541518102221736339007458487278896115814840389728106572436128133348046976438246914894910389328577270036495289555335838603779788402406600688728983750367478711785480803627041120011595405846690665194697274993102564182272417977785521126226029463354862083414639966239062537424633585905125960527196497163650367754962898558133935085520218232971045192894826443352174895945063001618197997716918169404305641361705376564122552909442555474380911205044917745568460264209719148058883898124904296081743039862454718802995249783687812484239545533080307791568124502319276457208070170486105403271748909783407788588623457304653388935603531013315641671533061474940740509097401130867061513990597789708087415699448514286045807330405795484454409372627862270959652274754864846161817333892395313034696813877203218902630924470517678009527602945906297590647095144641033005907949739186795336883574210830699748481098623990230990996922358768446567263956872951585350694919282365194777760898345139105052376447906312707515844063772324702025922421695626445261002793312676023355509168125449286713195571352714457666571006199211724242392272656758826375432934837773401542465605519225770976278260960312280148010970968609620269923731457561466052387666796744189152301229311824229240528366633286193964849211935796876157058512888242164456457532262515525118445232426068779870206088852516995620007265573732402492186414146551719263362341389084272369748635325142345305071161013465827317764784818556642455137737802460455801584468704675705973702978702562050212162885088545088197264362710639445282084217346797313750029354440212606177767305669959313989808509254445654208112194243203864003942547252112061034256370725382329499535445044566985518312381404944626821368153118702124129493272484179106106594874005286311275465576733582281544536229417172981049465323909684145712933515751623689853795654304881905794167274951504382288581217977984933820025940845115273642980792498743287928660007920363068636552967008292556186811975761184970545699554846297176827519982866465269409244150517580077090105658481993751696827754307229511170446538396180031543712461469960982640186951330698974101674730040533397426228707096260003691349836513148366575430719609650987925121494853155487720575294618993258954276325690133694658453757516974087425500332372491407152150377720548315957693901383438608798726642658841457342244335808600114656917134040760906450724745235612762155608275193598542083943922544462348989583359513801542818782262453430634924980492138257240716254706368902697191547729161631740698106572679728926717811536827568518071152250630512480356152053943061379919489821479901573379675778952345478933740078454301922258033939332925540550953849589102144085096469818627679240281625878936368375931096758784576716386579976896915109471603351855000293948513711728864109106291708719515828886671836940270341778954971547010025637682545354546619764413544963136071330412616727121378027469631516945421967574919893060514575134060627203491533012269368640477526650060074942639362754358840267746386603697490980015537639979512088494715554529852565471673605077816041269667864433525328862657049179421169591711132019935683754112915180309490692743311528574600360599593197527955551937489120317666438743406566623600920034726496381351809578995548437120817845944760612791994635287070261238756876254381986117369594572971254903415234481578999571304824874226299040384119381765271675500558916223038726159267166397839091286873439781979391831653306681036184517775340417885779699985994088242180833915961419164015392012666475353250392438062819677664324449712791954694345361829095881904646324446900081398092399841065084167402777791261957108396319900357321537558598609351144514123586232757517463522215309210479435396026705449053182075115545381133167378162891570418610375391568418467713532658099573156927933541294240387208873670292705589380161637330303489091190772245666408614172132536287098373790449335642269781468802740907807000798880801532718686182349064008929819099658955296297160431748343287617227025758556381615697521335431858630443468039849725161463149942071490040181252754366757765402238101888119683413607869215354888477286151682100721590760744259547995729744451895689002165731095387507972272388511147230946838102549368617524663869089291230878112277885238417787787500892035732648418871961054110958176784979467592202000685822574014433192620798269622718671742258111069916597240201870770928646458769319449998427605608398837888884858744738041016456295014269647421788064027072875439692238599209744489088438159656303203058286919958027590862709333287965962360582817349155695483204512259400171229508417962621682331163069980931328175400676481782832742619346559965800261061634429057044119510109696319675023793788531271097999640595815806148493633936034822283756715209879989431162540124310842412923810719759674951228501682677104269802397651436525408759297706029316618169019031012666762663747502525151417828297818511052770756862441104113729760325728016734595950663491011081341374783557259489483930181516501977726991269653222563115739227411849289964914275594419477958902538734335840837866406724268410710362042287913858178112990146853580694389124946767609772634514331049703249129807813675720279663542499562211946574393811286819675944516700292967321719829972269485593620974512889268877626520727823104487339138757572900205714535005057544056640508292624665931152592072441916930101886783551061651943388621969207214364915535384153337638922887646982857902309553681638214492675026864451296567718786503486415503463926743782007527332397070619457207449414025070410173534204464804627487742539522102551659740010198664500434221720642750622601245764590238160776021280192874466775213349176810695806327659918701121325107931132727719926736125164083208695546364035356199678659280079468671220920359611493166156935059300257731810591392728434029017098978571498080511667375288002649446369944354410692269173966775404069501225141128638613508517270336321368034153771249517768261790131422784041205280234280139205082485161687724587431783525628301425869449811584590859638047350656120286205640746182537058178458011067441888161036142730604383542880627488002045848874652864863472578859615496426932245857707492317955318670839847208240297340543457813376408971587575706951538489680990241386323090646209237277246828061030644382283594214519893540971588797887325287282848853028372431821364676612535208838803820614288601840118775940885407091690781946123401596790897258449192357639018842848375122083839519363626894225360189703860646914879184399290521872411421558341306875058315667050874025638518631452356098187830311835476234479203801328946779047120870964061645850129279712974487836151667843756189869241699516300287685476819880862085702881277692041051626804037535736034101565061586056794684117642170197281787911451229235882132586167485825240016182556224292327913837763762648232546794540287357985572571544659558012970569611802334266733447697256493032571750977933006396522005661412462361995323481559327137101753658501261485880070610408601124535470755301680022083639556451525433513111898445182459935967269098342215726647311955803051120188495038500274288245274151781369180847189331880946381129848966173661232198554513479073359851119790801561684486110067166241982746959954793508697017118956825540146146708707756691310573958811509896007969118615479636472687130791618953880064060153240230177098996360676752650787322074396783692337948726735671386873419616357401649790373547202735930425104234749188218816105546753648451451440566679030240963868372532420916144090467851979021340313103875047271063474291253721370358698242027985575436008796103151603946976664002230125406842425163103775689458795612555584666375660611802312129131564746256983667470775891206754959767123332976309063744057216000845574914643885632563226853563972305752501088876812475457480795801919076679085866031423899815618934524244330721825545049492875655554649523947287340982079391168594771900118691949866799218284833875501064831774880846619489674621538254560973044966564253289589557599961335541221321000473514998226241061494094384319084688168648023657844363588778101191150137564904893958207434372754941499929605601645767412269535475316401945568236085850553572114519192909237443259261745995380449900269293432272875308880990249155202894716646900397690835101623861852449079635560616272001177047110621449259998014232179314110283927213091258077553993933723475832500729843011388275850885051734233636001108733005913905028910930569427079238122287278100160171384337498450674659502511765615579332831617919953290644828277893917857658791835072711796006509183311007091932205915730456931540050364041601481421764280879176645976774393050966577067384384328696155030579902840171795938667127662372400001644930351514714343524146671414179381551549636697614602950915304174194202785783486654744915134361212750039370681735778393563638603332358409583092761206019021703759257121269131832135791542754948344683867112928772575378221266980528018803922637941474244651063428778280705531698317845101730157253632346009646490633730140519531763558929631852276847799533790600904882119880198392449161412152038190214039167839022566241741457860524980334649743372928250409121730362134357606759258999529060593626182606712291465243823144708713348378261987640561983757890888430423104406345967172414567184170692000504707324348013274343098682682986352837817498499795066930920172206199414650322768340902276526880236779659693713242908394769695691301687090662650192646738551548779962253131861831039401602094198408959116710109831550375575557154758512657249506128072736359097339472540292707650443239990418063639065742990365650923531574077702165512815821540016205941380581803799003060300775103871074949484734992368430979648108948334994557634884186830246638726000306537474503274791264105485607321663831253244304847082238799463340948322914078086133073045340672739880785783460418486291201990124525627125722694566260611174560591964874922263135687273850164105204791509625708451175028953616465210428603022790133838661683312090847444053457363819327881107642252478737335986889422847785533290755806573818854144495424186006876058603276498694297618462243532135035835512065983943701285440544922346469276000694906109597071122892410868432865707799321328552878171515919843764146292895058546164111485626144446580954262928652923990654759497028191861429734957145309772691964838731265178001113256307263284741094529521210923230670366204769542508504988481923039230834063796280039698982548162428335132589956417771043575602305145369460236240667589037392028941690251725336103011214038145192164013749762931586725779188794180072477219543057757552171529085652378240731662171648535333456907054847939596677439393668342092939544402637518018959745729873867763241276372006323579216159825723683978374539312142795381636565042814349739236871788679635093162468557368102613410892234115954013989264873662566543021200149405169783369952869064209415476029004811018291514614052636494617294085952076809180158116766966959034200501705593407615510518043732500061127787740233317676508018494377314270265325765141107915300663540181780965942976847000378613533418115446214390083775685405099557892490560296843420557863519602527982165181213351619449156625779430606155947632755088106755819971470644481509394310781758433904186252400407167713558343576986161379927686747886543742337864346749387037686779151785137789727966605142875152496229663400412990135345708001897402049867844551049609613376835501551136185569073353732426734781650743540622426309346856138490883828378567804688976182488822145166510718312713718078064576402035357302288111389048795606142157883016006380604638087283964922600297695772672553559777998913691279529917972141411957557229257169864040934718416319459280364118008204379061687133004480493827101877023498464816329939158539258280839581381622816163165640979358826741104764490528083201454871755539867895707989306461125380135528549180396860898372199601181906320855060007775622901861677135844143415184659608296753063976267179143215843268191017363123352906937802290220972763754629622069629694444815564461136813066672610748190882905216158092864193641724904752603601590431071289784918026378545706746850434331296747819215213829112615611358733602622982144738769671544002089327780666450738705352699968185871081566114980705969664633449638861282703414442860416422627084081955466163707215000385135241889921636303165287828632218133056375522740751190728801239468429233669478844215927864918413242821349807969903190787125797731688332325810539658447226905428100127018342578626112000535501981375812369416236734041527376647929018727497661301196921873632396227173868366957279471954471616688498979745951937263385718280193574639337727061224162005823771779875193266054506060926031436564029888637988478128035399216343942482801722025955759023840780965761366177250808989077460897130576961751444498428681933172137869908512965188307448500292192910665153356930582898287431621146723130146018639863041530783694779681059582388153796179252024039319171990652444754524441124943635676591996794177940120300416034437388926717672480090039088893599310266167896990334971903134955459228026835776617905971486012758838812352597071776474920309528431948623287459165569414125689178012310999899699693867692270970692890815515405759012743898159716471332149169584178811566041607922053395019206326142319754981490641225270001925777463517286400028217692136302668382573921346111811123289101130823348721018328655973540815779792700906487754945319981255391828375093131570901786609168428990682576726142229553076397522749382489406555222117047930652865047190917611900677295310765036996144287876320852191660020371718181557678525645796662296806779921740214833828040195523154797349942666726822047644213153656677740188446937119189945009848862478164111587994025944909946354594129946994196734260457009386149127747659928279230983022568755619982741585294248076337852196015518861319618993079650115026813415170758639966038857128771323658387852524035563422045659260279036747339575937141155413730120820034213681450916926985339488041850427964637267034147257072736021704069500909082986751833096401111057465249566284780408299026323278295166324663326722631813245718107813979527452675177527986953111288254262147141423798117581798994734177238959102954488192998677380746418993943935450909710662348620279559731989740994107637795313136910660994247347906403246847231544233994665593183371211215786269943503257645135862011846729855110266645869616572659307921404099655323276882912854096008572270587157183773829819606468511851606098030549238819837774388959474500760914401925475152385615630680617118137754437660773209820460381474232701028698658833534798695038679162184868418394202934188289994229992271971810076530469305189932091055132172148572423336938561659691007762282856052454897040252356601887083476160858314805559243960006438972807866109959381697938407372370978627463803910270461724683180030914423893086589733220416261777263171952715309983560532357597589788131409515826247786232842857246413119797257614185425312914528571445350605977899781475825076295057924012145147406044983774183087412049997873165821373568499448230900590133175739148080812622571551833897861872965560440603845608567309014182269234152532132390355251000855620184228883217322255759858843666158853505988926570913036521421104406498856062536016983048658302311973363356284615509151709722935033296936849631276296935859001224418610699525762425956536963299165119840295132663660407491378697881329801239596424875792427535931339574159322983136633922675803469790522990312077116830218755370288922747684341354587763975517832128082108555081999658673183606527727832926471666216928834087828421715704921665767559492693750121364276202175567717687758514956488028665082175764092247560230438560625243351780799173193342710987123412262427144025099470191419002372648440231722974993526191474772390201779612907831494003994395158179271954682222566764654023403987800750976848151280491634521742759085425803122837077313272625868801496805801316691250667233410191759261449506945212907957870611417848633285617651467033074476695156223723952789580880123823480512556087316588218411908866278653328129806586901932351689430428188164594206820537738662915988747561461078300415005200421459841185147822874095718897864643173229714860137434798922635771403985457607705772306251133970663478218641160029158819037548609992242468000327359232606676948434787672917463747479889102568792194935491008666609320738908525673614329915084164320734487415776181071821622106153169731319256839057660302634882725006050614008743874925796570366577397029120291894259275873760709362019454132692537362861453918255758624770854224406056843026064903109280131184190370647376278945134642187338557664991875782205434731387260981011776212629361718147821219037946876207122276823256085066602903338309055802243757843008041646986024036869739938062016720512529082653082565085726730474441319548262128773646260682751125286205694105445545843407328897387126269438738545664445523917444515159108766822794594522023991988090939478236548954217260880880860068048121059226190607024158568759075868979169287970514376380826915866304406326383875127147266253778788147523292264864715769808983037879560367731325990689593482867949526490145386064829081119822362353455774673040416725523149597858103046480975600758040709773691736549505409719723974143624244319064819586834434925581273481928806291740491953132126813210177510145808110792581073881041249255584303795847248387259022209854914627471915973372981394750393303181796744954962628222860949895331019103917862563135443374874302183983524845490363727141583839665494137209427969308543709435593463039056410238233507182691673238155008129752055340079719397664207206307947757991086028305797450772707787810145922441043058637650507002316147378435691176525968121442262395994641960612681932746747835070452996382554390270273773151788188880800192885080559017882684187785781747228965269451511300450854208633858660423962950225886745301016577714386292540045536670231972939115915225979189817726969710858346985844199558682554501819137720777508616869216647144643865051658107499435037943118784848611086001542505140649872608491592186528624660504305331130844907976527304578582396081924945875004285079702506550976729504860735369173969778208488809704612839112612564919528241260113505879832812233176734854185259757504548629119692971065073043517273408243541524921199980912585991680366514058683443391781278830931237196737202420005117318497419527317418727803392010674673712893897222724698975017324936657929603528432606952517601897751882590289466873447618644858099369888006824013481837436876888198863402235450190210865844583860984643323631583227556847186028323685493637033212236885382755415862437217176074361441321668747137804702295406925854467310297691916994411149718096533430019184133772104364740398250209259176546941289829071372488089697970562797744741923727504108021948603314282890653013474966358408295183221601319738115976044353119462087656576813317066838997549190132445120633828625112186110089993388889086299028716712314094561692861084765391605979334125469319666839212871270938427757708222418846655313671025451681018057484789540242975093105208774072567639268334394487177211795363664102556345098339698565164682701522130538174276403158753560020550396274355600266261754865917201638661847667080977868262112542358419567742595994324982563778018425737792418720501397896493306463991505146305186857739330824151805209075188008507369634976104142669650801958885660348632374020907581558870885431590176160281922111850369790204040227615877892652705875624092626407390736536848982923245926815891540754798680903931570879252594164181126787919618696574806485487115916873154228132534552390449983673026056171858044502340602802475969052123822865641474516608580396244038013940978444172491431287675736738403866464990024348912681527594081778493893482090261581941292539078674394347289099906191062999012552953896166163579284426972009222013989022266223320427268714122201875662242145567036412809574456654402468247780937149576220106997309396443477132030179786750270576954324104137440622264959989096702051033966127520228947061956492482970536698125047223632133999726355405697813738092366254536419428803404120549455618771006247329398259966569863741009817114107611448447609776882396022559675687699010649191827630243126009578704939406224411741146372395271060135976984832490517787784357211163722933029702246156410553336767589090537730582772073339197574372059765293610719137217907617519784653680024828402600791466328671885497752822694892748880566774955445870739988818390122914319697329365556125725028256584425373097101944228323160262439102588055597375686151097621492943005620995274324276864291133161840650431397306112530619535361690064265449108319859177081443609809418918040037570081756576926689088205033085823679259779076515989855278500226471424623494610399510176401933018602426673261471585392111718209743208273753194650952306458858056777213069999029455574113733087415264359341898778981051216755435673334051183569639748709286126876746397042576657562840934560856362927729076941178720087698145208940674874909603002566295351638616004055477917155035950982069898606755399905840716583220331537135481135956712148820703407354656333805847724046466395839536263086248149478937989893325095313039125437288320765590912066270350164536341731147669387180009368394216477552341747186367225849982402600268091846618184268439860059423759627573256308308152164993940601791451020993900594131212858920261735023590623139761823518566412463311469796042485917017693583853217298542476024093697614926904290291049081259137348742361136353008721926034030863498555898586792635953376433445876560347877848838592611103630939217321524159271538586423528743338448501881231610946952715701424521013272567838255982685935742516757140415004000047950415272636790681090979544209878629379439687817397692996856192582074207184773874796654687073299234566787083522813822028826622601088937280275965137864218398672237508145740127221223486836623292544659540124138091002665047075393671160447225699443676835016800524527547879428729358961276835764556691679608131641479981884903050079232997967856145650404585390554322160520331681006525878305511481378904074537295109504610660281982213946952071529688403912979824450066420077470473960661917321634972661503699514409519565894633990963987366198359739020193703413376393426175882586639763863585756619833794858164782506885470975672886552999042828620968598424030517433641968739616329960598634463351791132240834459415783967824626060873198167877653209002111291710420676360426000643446480001959984780296592303264505321422178444396898982805348480133482291362270607952347942875237736918167785466462374117851602075223244935223191253741823972930607149377610857752743625851374566109911225767833143041870378332208957429832076503222564145756173573995263685412090756472615029374639102477487724796873278978796983424975571110746667074944451780621063333188519217563619184514805108102989220861455367033689766181681285380903502584584032978130733630512319561757533157253739830841769659381860735527824052176372982619897039166154710402205682827738519262379492493911815028766464621561001669105396712133366214188564735894183277609762138160027756112126384570951210984629958162318829325370739915797413907331083721947053979169156500903319640070252630677899446319830951181908214247341990856716150538637339648353621368695738567157596982914454084988779627412749878631424704598359654544607774104251489778077893008555529123813404062738125870562395301377746626918973947612185958856772448001169644786599993973120209657637521516771963991735173773200764465009638740157360689348483434339362757033868795283768811838088443647831019137390210429949446731840166168199450600649092996661340208400928006331971760488647657305184593899988053149253509588389469870414919629761569963255110467966668159214850058893856304084341620612379020982423104309104264630014689267308001101888969345996647241251790982690496643677313024443448444172552611958256400966883550361841378980426143917534208668055024545709250933191384420103753821746648290163098976100330053779156693758456342750900672399265396307763092510230715004083310603132251025469184976444890175824879470539804944917611307817535152124287248849164848445169733819177729475710278640966069026942019093910470170328730668747955160000000001E-30011" + }, + "epsilon_positive": { + "rational": "4999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999998" + }, + "epsilon_below_one": { + "rational": "1/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "2E-30010" + }, + "cap_above_band": { + "rational": "10198243873903138613033391774848017564424957785962564507386508188004071613706508140970657641403321115806861282922714655524301761203004135303569282515917323917893374063184765573192871135452488843908427811888970349419603513825966863947048914046995017231354280494187187092366892326424569723068932981389140167139160293130961241274983495676892882092856753942644057730650965294298891384437535366303413657772029643672939520062841013649196320270042024171403349464404073594808067062053824713323095299973471534993086956662805983343525641267336840286171750063175961959633584686878212349890753907046789671444810671589291636653225750741042515514684365251984932663679634055582115772363662798561551384057584150281718603896296844605684389385755961356666420966173619311376496349593750025900378358782291669258772995155120766721811354854259692467287036978003885729446336092288147987948973031001147669943174613002863369083838808674846570553601361705307321191074337143616258011807610324811072043677811250624098388719938381079922371976883189519863892675298713584676842295980498498965850546058038046153767485062507080578166213021645468524012759218479034626664930754047312615669586697330642569560474834214068398635125150772352002217744352007429063201571861812768341686649351178505032494998443604729402241023532819612290967835627932667873603874681957655280995017990281213098267392567258819022341298528942555562576264326565273182778163934753910607731698039228582279066243018709227438384408065161736392817957162637737361215030143997201225737010680399955712428936337954110625742012788555905813532227155730974024231541933371245948497074365089683507748449458867143773220992204715290781738015133493236992034223579543536295667252169780392688842532290836008821477357367277142789444403297699129036645016314147386639777518295434157572738961033208248833729400839475998367093098219748674838744837080803155213071419070955051631240004948206773907621077950423460865597078248834891629784638180207685462323805391361311840783189340267769290075707831801570410587306555807723603504774171554557254115174763669262039975358885308598179283591095821662533658581686755264094121683089011349432090244569715117580705154773034777911513267889835287111831173454928933024025364923281288526094782198938718633783453945946417150951468493927334226332979919497909632354498439765181819827045979914747160871046732385508214041467934111219373282919378013003147460662052187355783859658418047603147445740538482502889631115233807479393040341346188558796679932150668245669289466975901289724058216698349723171042826987576337353322274742053235090461055105055049706979896731289899280128156981079005197844344582403087702712956500394033301196826177853018244053827898148559539582850879438166733125591061602273801792239896239396844231348556564462052554398536464069802132037515230017664709495985368395930680042465375218245907220557295017372926256820400837594929692282940504857043224293316448635667292447182274477918963626526127702051116978698018804708146361963250200535970990144703005585779757624279390300523413080315087856468888695878025490338598682131378618234825252270089192366090299279707841354478880201292802719847939709458254554651618910670761516497325101161689176991655943889080088089845531138968004267196209948686727645854088791365184316911270832175725966613667971025297261648725914198842757817922641738922058733587984612527407580104701977651101793702195491070156044700342853883602519192241024753992637087827735219067834962602516557208629704858145199830330087998432177495519456859984068291848745759770611029919606237736589533900173487843994125987696482665253483798305022593065744703256179546373555814934934899941955390871985262077335670260943411781904613367494896680647987181255003987964897830115609016440352533545681132577756957343299151057680151711254691835808891547157946143082033394494329220551782156575027853642056843981462373669195582914342544792643175587887825934557187219554770300034180482359932853906266501206298107536016909446229986147843277558074138000194459021512067106987375562829683907634343003840950745167773629115523117173285992026394084890433794828116170907749773611948517864535454910452546798013841673866724280510633825457603329341375312203534142124641544935042118777668840838207376829169836043493970588456280597456593634777690973118901808001437107084088443559941209292816504977931375501269199590281259928568489175819770369583969792451178506382899229411558268610827803582340011189444811305801409530208596515338338245709262371874957133853978813298028138761759580199452154312033167296301120345795520374635708611524743123828558733438914544907133747917350576958971687865216233352043960087535170063168854588932759375224229005308274040571916998605792554888681816706834531723277955153045050689229252405481644345912933770276569298833876688270906769878243256978134747766159451937722986628049647488067751696539329240527136485094832328352210432672902659931526840343751920145633254222768672682998934590927193208026153408662329160753939584735720835459432075754320600228481114361380646201288381780561338061032933423907022320620995020533134256943713498491221184809531977537269501165856314969328042064107921734151816914042969781564328040644087803581991869681912706621605453556443644490921663132374621708160177939269157002219307117562296192350528971594833004553182142312884062882442594666489766097606678494277440346541989183684083004665049938735123328298825509655210744086638583026363846794196326578576538179363395235986984368237224600452516680379461109096695751597044664991829419609293676345982584451046353135826964488358199740621564843752585167485701402255936846135664129620349452967509846350329397972648418523626041936832772585991485826882095329221490974190210942698250566699953992063581409606218626916182490336951401518559238008250415827023070695624173335460487688348760027480583457048325153361146204744445659152481353781802759710462899025679733568909679666629882558904382712762724026678556824908761776111660403490550528993983498278177540624081303220536297990932397199971011485383273337013256812517243589544318955055536197184434926341612844791463400084402343656438416035237185098682008757090874080612592753604665162286199454417572387017762933891619562760137342495954505005707704576489235896595736558589693617726393611314047721987387705636078849339475702129852790254687739259795642400343863202992511875540780468789401136167299230521079688744201808856979824573784736491820627725541480528528441356738366527660991172466710895821167346312648148727256497172832346215023505525729781460751378714284885481673985511288863976568430344322600869313112837884595456665269011717413257965306991952743422688823705804976180992635234256023382262138397417485230125652033011657791064472923250628797253440024422522507694103078883581840107817621036623262701794087013055597754137152237369058880234218231210389840569188244935193945760933886847493016718309941611227079686376783217011071618213855833572484501970689394019318358102934061417662905566496143835986201935572559304347599219299629972572578475949325190671356096334869030833008139527119246926720439426898679083416784515087876970160507809607353717779394588858856169343711187203886918934828050324484777868707510949981836065668993769533964633620701841594146527289319075628411687144136737322097466335431705588037953608393862155655493848860496038828238310735065742553243594874469592787278637279506839093223401386794789456633006715624926613899468484555581735825101715025478726863885864479719514391990339990143631869719847414359073186544176251161387388582536204219046487638432946579617203244689676266818789552234733512814986784221811336058166044296138659426457067547376336690225789635717666210620940775365510864237795235514581812621239044278546955055037665449935147887211815892548018753141780178349980199092328408617582479268609532970060597037573635751112884257057931200042833836826476889623706049807274735853795015620757930614231926222073883654009549921140718846325097543399532621673252564745813174898666506434428232259349990771625408717129083561423200975872530187196262867111280698561763452516852614309185774665763353865606207564781436249169068771482119624055698629210105765246541403478003183393352896356644389160478499713357707164898097733873188136910968094610979312016003644790140193638844127526041601215496142953044343866423412687548769654356898209363234077743257021130677095920648254733568300677683205471157931078704822119373423718799109619865142346550201275446300246066550810552619136302665649803864245194354915151667686148622615376027244639787258825453430801899295935302659079060172258103038558209033550057757712226320991620362499265128715720677839727234270728201210427783320407649324145552612571132474935905793636613633450588966137592159821673968458182196554931325921207636445081062700267348713562164848431991271167469326578398806183374849812643401593114102899330634033490756272549961155900051219778763211113675368586320815987305459896825830338916186677843357377051447076020722169950160790614717712049226273268141721178563499098501017006180111120156277199205833903141483583440997699913183759046620476052511128907197955385138098468020013411782324346903107809364045034706576013567571862741461913796052501071737937814434252399039701545586820811248602709442403184601832084005402271782816400545051520420866733297409538705561648955285550750035014779394547915210096452089961519968333811616874018904842950805839188875718020113264136595427260295238384188882749796504769000397337289581493055521845107229009200249106696156103503476622138714691034418106206341194461726973801411509933236377367044812211136547167081554592771073953474061521078953830716168354751067107680166146764399031977815824268236026549595906674241277272023069385833978464569668659282254065523876660894325546327993147730482498002797996168203284544127339977675452250852611759257098920629141780956932435603609045960756196661420353423891329900375687096342125144821274899546868114083105586494404745279700791465980326961612778806784620794748196023098139351130010675638870260777494585672261531230069319028722131922632904743626578456188340327276771922804719305286903955530531247769910668378952820097364722604558037551331019494998285443564963917018448004325943203320644354722325208506899495323072678383853076701375003930985979002905277787853138154897458859262464325881445529839932317811400769403501975638777278904600859241992354282700104931022843226666780085094098542956627110761291988719351499571926228955093445794172092325047671679561498308795542918143451633600085499347345913927357389701224725759200812440515528671822255000898510460484628765915159912944290608211975300026422093649689222893967690473200600812621928745793307239325494005871408686478101755734926708454577452422468333093340631243687121455429255453722368073107843897239715675599185679958163510123341272472296646563041106851276290174546208745055682521825866943592210651931470376775087714311013951305102743653164160397905333983189328973224094894280215354554717524632866048264027187633080975568413714172375741877175480465810699300841143751094470133564015471782950810138708249267581695700425069326286015947563717776827805933698180442238781652153106067749485713662487356139858398729268438335172118519818895207674745283041122345870141528445076981964087711161539616655902692780882542855244226115795904463768312432838871758580703033741283961241340183140544981181669007323451356981376464937323974566164488837988431280643651194743620850649974503338748914445698393123443496885588524404598059946799517813833061966627057973260484180850203247196687230172168180700183159687089791978261134089911609500803351799801328321947699100971267084607662351749355670473521518178914927457252553571254798720831561779993376384075139113973269327065083061489826246937147178403466228706824159196579914615571876205579345524671443039896986799414299651987293787095780688531420541185929246435326375471038522850904881623359699284485898134543657354553854972331395279597409643173489041142798431279994885377813367837841318552850961258932669385355731269205111703322900381979399256648641355466558977571031060732621153775797524396534192273384476906806882929847423389044291014463700266147571028005281686781792877867429068920446588308468661977902990448464278495399703060147786482270773045134691496008022756853877019105902452892879062194790401201590932764436599525740348382712802039001773695318971446104146732812354210832372814935903703421369109754530424220411309413801990496677633052382197822589845885374676800717563780409620830390609525326895751209249280786307950297844785742796805769897370932989906160659914746087346034858013289705894574506795530221371926910294668534581285436899959543609439269180215405590593379418633013649281605036068571138351104967573575970494164333166380756858767418570622555167484008694985846468844095011691296101682157245615853746846285299823473978497188661323111745799944790901108871186416217220253887043850160081827254144460683381720110492372199528762403749314279386814620546577047882026670297634047175377584565846919503613716302316600372200522996095788784724832084395043132600113016228257457202607936149634633228230608271723565102971225259980077203461300908818282173020952615299839849616899424557252509098308118373031694814008040769155128183160821532816450959106495875524066131993160173937239413127029452959736133115878871371398583302424397590329068668947709639773830370052446649217240312381822341314271865696574103254394930036061409978009742120990132558339994424686482893937092240560776353010968611038334060848470494219677171088134357540831323060271983112600582191667559227340639856959997886062713390285918591932866090069235618747277807968811356298010495202308302285334921440250460952663689389173195436137376267810861113376190131781647544801522078513070249703270125333001954287915311247337920562797883451275813446154363597567387583589366776026106000096661146946697498816212504434397346264764039202288279578379940855389091028054747022124656087737765104481414068112646250175985995885581469326161311708995136079409785373616069713702017726906391851845635011548875249326766419317811727797524377111992763208382749005772912245940345368877300911098459319997057382223446376850004964419551714724290181967271854806115015165691310418748175392471529310372787370664415909997228167485215237427722673576432301904694281804749599571539156253873313351243720585961051667920955200116773387929305265205355853020412318220509983727041722482270169485210673857671149874089895996296445589297802058385058064017372583557331539039178259612423550242899570510153332180844068999995887674121213214141189633321464551546121125908255963492622711739564514493035541283363137712164096968124901573295660554016090903491669103976042268096984952445740601857196827170419660521143112629138290332217678068561554446832548679952990193405146314388372341428054298236170754205387245674606865919134975883773415674648701170591102675920369307880501165523497737794700299504018877096469619904524464902080402443584395646355348687549163375641567679373977195674094664105983101852501177348515934543483219271336890442138228216629054345030898595040605272778923942238984135082068963582039573269998738231689129966814142253293292534117905456253750512332672699569484501463374193079147744308682799408050850765716892729013075760771745782273343374518383153621128050094367170345422401495994764503977602208224725421124061061107113103718356876234679818159102256651318649268230873891900023954840902335642524085872691171064805744586217960446149959485146548545490502492349248062240322312626288162519078922550879727629162513605912789532924383403184999233656313741813021839736285981695840421866889237882294403001341647629192714804784667317386648318150298035541348953784271995024688685932185693263584348472063598520087812694342160781815374589736988021225935728872062427615958836973928492443024665403345791719772881389866356590451680297230894368803156660032776442880536166773110483565452864638761439534982809853491808753264255953844391169662410411219835040140746786398637694133826809998262734726007322192768972828917835730501696678617804571210200390589634267762353634589721285934638883547614342678367690023363101257429520346425662607136725568270087903171837054997216859231841788147263676196972691923324084488076143728737528795192401922914840509299900752543629593929162168525108955572391060994237136576349409398331027406519927645774370686659742471964904637019589965625592671033185552028014549818806951142355606119571177285869054398170844570878661666357732362880151008306401515829144767651138993406204952600635675315330591896809069984191051959600435690790054063651719643011545908587392964125651907820528300912267093828606579743466472769414710114965026837815843583642446999626487075541575117827339476461309927487972454271213464868408763456764785119807977049604708082582602414498745736016480961223704890668749847180530649416705808729953764056714324336685587147230211748341149545547585142557882499053466166454711384464024790560786487251105268773599257891448605341200993680044587046966620951377108435551423484610130918112279733110450071323388796226514223045603915239534368998982080716104141057534596550180783130283640644155339133126532405783052120537155525680083487142812118759425841498967524661635729995256494875330388622375975966557911246122159536077316615668933163045873141148443934226632859653772790429053580488277559543777944637083723204218215704804838558994911606744279721527378010984644605292459984048488404781790087693499255760568318616100555002715771801175205069646470106106926857075339897663203959201351799089704979489052345782167488798765432245307441253837959175152103651854297901046545942959592085897551602933147238088773679791996362820611150330260730026733847186549661178627049007847754069500997045234197862349980560942745345807160389641462038350979258117340059332052141960391829522456592191617732655494274447568090613425944825925763887961088847157967333318473129522792736959604767839515895687738118490996023922321775537704934053635733132873914171758130451961965427218460971603165993442544638153075821139994776680548333873153236618250079535322296084712548235075838416375902846793241463892848958943432289795111334590731962499037161895275195909242086780428419454667359061193148122023177996901328926915826302889460180337703966892946625480075242023032185505670779169185473650853881932736429749682454143553434719998661245046560469076459408164896181558380177453181255846747007695315919009432065329082606801320113820958278752550635120156841535704299516063401655682346939594985440570550312016834863734847684921408589925278405028804679911501959140143792995694935110602440398047585596584556872977527306347757173557595621388753928295167069655325228717587029231378749269517723337116607673542754281420947133192174634953400342396173040763050797351044029615509551869939901702070023368888113688897187640910808520008014555149699248959913906527683205818799774902277766001724334580257524162570242162611351929932910558455235071284968102902969118507320558812699226178920128441781352086076464685777054969222500250750765330769322573267772961211485602468140254600708821669627076039552971084895980194866512451984184644200612546273396936824995185556341206783999929455769659243329043565196634720472191777247172941628197454178360066147960550518247733780612636700046861520429062267171072745533477078927523293558184644426117309006193126543776483611944707380173367837382022705970248306761723087407509639280309197869520849949070704546105803685885508344257983050195649462915429899511192113006625143333182944880889467115858305649528882657202025137475377843804589721030014935137725134113514675132514508164348857476534627180630850179301922542443578110950043146036764379809155369509961202846700952517300874712432966462073103400084902857178071690854030368689911091444885851849302408131651060157147111465674697949914465796372707682536651279895373930088406832414631857318159945739826247727292533120417258997222356336876084288048979252434191804262084188341683193420466885704730465051181368312056180032617221779364344632146440504706045502513164556902602242613779517503306548133952515140161372725723344128449301100670025647514730905511717157723347514381630233991882881921139415013336017041571971960534325141241855887160344970383175362224333385325958568351730196489750861691807792717864759978569323532107040565425450983828720370984754923626902950405564027601313748097713995186312119035960923298457204655613905848066975448849046314418247428253352916163003262403302094537828954014492664529275014425019320070474808673826737025169772362169569628568941657653595850772480594292859868862757399369108495282291309597854212986101890099983902567980334725101545755153981569072553431340490224323845688292049922713940267283525666948959345556842070118211725041098669106006025529671476210434380534417892856883967200506855964536436717713678571386623485055250546310437309262355189969637131484887540564542281469875005317085446566078751379422748524667060652129797968443571120415255345317586098898490385978581727464544326914618669669024111872497860949539427791956694360600352890834602866235027683572717408696447238983752859843659957542378354244220066591609288461227120725692662416757657875921809257660352496938953473251185593935108657591752087200399262168340848981271553255296675496901008937810518931160171651064601692542158415193310491325523692524219807207924453111574277693130789146613530590061205419679794728612295000853317040983680680417683820834457677914780428945710737695835581101268265624696589309494561080705780603712608779928337294560589769381099423903598436891620548002067016643222532191469343932139937251324521452494068378899420692562516184521313069024495550967730421264990014012104551820113294443583088364941490030498122557879621798770913695643102286435492192907306716818435327996257985496708271873331916474520601846376232636967730105323471455378416785955871332417313808262109440690118026047799690441298718609781708529453970227834303366679675483532745169120776423929529588514482948655653342710028131096347304248962486998946350397037130442814760702755338392066925712849656413002693410571490036355980735569234372165073341304453397099927102952406128475019393829999181601918483307628913030817706340631300277243578019512661272478333476698152728685815964175212289589198163781460559547320445944734617075671701857902355849243412793187484873464978140312685508574083556507427199270264351810315598226594951364668268656592846365204360603438072864438984857892434837742226799672039524073381559302637163394531653605837520310544486413171531847547470559468426595704630446952405132809482194307941859787333492741654227360494390605392479895882534939907825650154844958198718677293367293587285683173813896701129344678065884348293122186784485764736386135391481677756532184326403153635838886190206388712102228082943013513694940020029772651304408627614456847797797849829879697351934523482439603578102310327552076780073714059047932710334238984184040312182131834365553029631191769337838210575477542405301099080671685023276016292830126183774636534837927297200444094116360563317398958186192126005354742383797560998104898225565770658626236475700690064640939389202337951032913912686046816295177984270648770117169682966974556224635479723018547315297396876861039240510381879031852444475362713431320210066567546513124016742045508137612593429442847625261672452240205343592161391562814244540041187886274090682146040400836264656976430076728640726411016342402358974404416232043270816904612479675619861649800701505839481984230130605022284929235506373068230530474635193897392353405873732494209631553910772058685079696394344010013395098468295168133130412323867509043614024324315567120529527797999517787298602455293289530535545631927586826371221748872864478415353348940092624435283136747458555714034268649886158324420067652210211935052025455682575722854132535389501103293613745452155698056228457826958382138390337370854731251412405142203037878472284996143737148375318478771019533678438348739236672172887730058681738553544009795187635312489287300743733622558176237848161577065075554478777975738467902218468587701179396849716235300417969417058162864536850606238628427200767572337317391206816479391146187697000047718535020799083714853291391520546802922671907008156993949987206703756451181706453180491519973313315717765256943188252562456687658355175991178918482618705995255620293524276332816380953387854751575279982939966295406407807779502841494411374524472835388540347538391690921041931107882034929190786265907416969407786543111460343906957059814096396695828132155488244261482685363831724255770207513972125704758666424952039665569739088149004374476852058632646775427321568779775755073593005638145190681239729945128491714292773367466312584103979262041945996700654710059889117201344780858557966707332902506127024668887198415428437219534724775016527777284252428208219214763595767847288086520985051664686326700832901967821822653930605729443952883361715822436370797454856288026149392562267236978064818580901829164013782056970511590839743609137254150753587088293246194673654564308992103116099948624009314110999334345612835206995903345380832297555329344718644103951080643510014187543590554953935655518953198746505258766733840021237134237032855651672939620486977312029978731575912559739643325872995102785849128419064947731046102822786421024559599295194720374075524489899430960305268368235310939768433981523158657877542691885182960271148113003297740171072801868514589547183030200953258562983786282210207817114429668663619023875040817434859570354888744148492993810077369690442835896313708478549009389904965147553889568771421780810658153990333837524939127718296181014795553765266294774346045146768652303314014131777250234522342502468617615259584591051788932569976944965027444334441698931828214694495310844394636082408967976063858363993829380547657126059449732506726508891307169924550533124323557614189739656398444337600027258244872415084681199427632345108768792573658254687381940919665000684111485755465654769084363658951427991489698626360953072484381676504350083575340647475457214730971378880975557794009943600810780752473377020430924392184976053237651484438970647134069011822349660057537918773705530539106972090692667425744384608973616658081027273655673543069816652006064069850586765973202156955230956200538365799937928993498021334178320286255617943262768127798583062611385323150027954024692714200756676586109685687429358538936567257245139429192099343902243529861006560784622255946267642485947511814189307839272167095398373921506734718673451161595774839336377229200352057296390975476452704899906074795608557683277279487417285440801850552308710025361803749433821438441263474001224558995167453493933316846321036519720704475641979315617013372619233852854858056967325002426361064715667281461839101645253052547371958111410816664872041075900628226784682808134007393558356092897663597859092680677307647053199780754636977648312812725992493584261620903459989861305207112410122544825253483111500235398208541949171157161297160108219627948241481613359165485380689883834010401159342284379626302655025266687261717402186406779198086022719834324124588659145672130826532049976579014458806119145632034081935375043993499329770383454539328900349851440600931066859229229619587515148495521372447515248514671967852699345662441023442150595441203583968841721325509893785207455766040366956753643809939765755962682739274272377296852156628144097159117478195184914922841253610253533018410116558916385308599130305377903518472240922651956696189601821153533941178141653878745296920972632618210746438697466818580404360043285160643708107148962489999880123961818408023297272551139475303426551400780456505767507859518544814482038065313008363282316751913583032291192965444927933443497277656799310087155339454003319406229635649681946941282908441768638351149689654772493337382311515822098881935751390807912457998688681130301428176602596807910588608270800979670896300045287742374801917505080359635873988536523614194598699170797483685304236221296552739813656762226238473349295044465132619821175778990217550438874833949806323815098345206695912568346240751213976201085263415022590031584504100652449515741466559016434560293533400590341035608450415512854588043732786322560817783617502392928447578503939923706415895078150959175098503413841620522169397913851460540080438434847817004580305866977494721770723948309098934998391383799995100038049258519241838736696444553889007752542986628799666294271594323480119130142811905657704580536333844064705370994811941887661942021865645440067673482126555972855618140935371563584725221935580417142395324054169477606425419808741943589635609566065011840786469773108818462426563402243806280688007816802553007541437561072223133332312638870548447341667028701956090952038712987229742526947846361582415775584545796786547741243538539917554673165923719201095606167106865650422895575851545348161180439869559067543450257402084613223994485792930653701844051268765220462428083838446097495827236508219666584464528588160264541805975594654599930609719684038572621972538425104594202926686573150210506465231672290695132365052077108747741700899824368423305251384200422622045229464381645022858209623653406650879115946578260653582106007542713864787528050931468125303421438238504100863638480564739371275554805267478611177190466489843154685323594011746555633432702565130969535102858068879997075888033500015067199475855906196208070090020662065566998088837475903149606598276628791414151593107415328011790577970404778890880422452156524473925126383170399584579501373498377267508346649478997679984170070598778380856737038515250029867126866226029026325323962700925596075091862223830083329601962874852765359239789145948469052447543942239227239338424963276831729997245277576635008381896870522543273758390806717438891378889568618470104358997582791124095396552548934640206164478329862438635726872667021538949740615445633379274592252559749174865552108265603859143122748319001836509230592268724423212489791723492169372436327037558887774560437801323650487637705971730456162119689281877877087878887075665452055676310724303397584827432644952265223824574178173328130112099999999992491601225219372277393321645030396487115008442807487098522698362399185677258698371805868471719335776838627743415457068895139647759399172939286143496816535216421325187363046885361425772909502231218314437622205930116079297234806627210590217190600996553729143901162562581526621534715086055386213403722171966572167941373807751745003300864621423581428649211471188453869806941140221723112492926739317268445594071265412095987431797270160735945991595165719330107119185281038386587589235057335380940005305693001382608667438803331294871746532631942765649987364807608073283062624357530021849218590642065711037865682141672669354849851791496897063126949603013467264073188883576845527267440287689723188483169943656279220740631078863122122848807728666715806765276137724700730081249994819924328243541666148245400968975846655637729029148061506542592604399222854110732781542370402410205393799770466011365077399427326183232238265030685889279727658938535761785132571276748397638477935037785591264437749875180322256012323784015525604623362096027221464940257283064631540803900300206829890788392390769246502987498583884366757395670906295197448156304193074667013849190537476866082660533871486087905033157186320272974969845529599556451129598514187359685627637446331662670129764298993501000311279054119551795293436077541806432874413466425279225063608468943800996401943757380346521486548236195531740294211488887484747134686945363444367213049217878453660392154283544186751396258154512323118386967652721436408567472452527756993971200559754852597863920008857514212732409177874851597442288818837293554568853805195153691613325750810300585126982063298450310108226571245355801559056941843652396973301352601593155284091292740866549566043921462231493541832798235704528526544571442111119340460174192670996737170522672044496340913168485452207793358350233254119832104800326581380356050265032251032583839368957385716185808989673751999010358645218475784409915307826880584350233021674043072363958462907535238921727737631843362131946446141984858433639685917882538688838455279299045165689088549176965047266147592004928222938280364143281780835667493268283662648947181175663382197730113581951086056976483858969045393044417697346422032942577633765309014213395194927015343742294781043560212256273243309210810716569809706301214533154733404016100418073529100312046963636034590804017050567825790653522898357191706413177756125343416124397399370507867589562528843228068316390479370510851892303499422073776953238504121391931730762288240664013569866350866142106604819742055188356660330055365791434602484732529335545051589352981907788978988990058604020653742020143974368603784198960431131083519382459457408699921193339760634764429396351189234420370288092083429824112366653374881787679545239641552020752120631153730288687107589489120292707186039573592496953996467058100802926320813863991506924956350818555888540996525414748635919832481014061543411899028591355141336710272866541510563545104416207274694774459589776604260396239058370727607349959892805801971059398882844048475144121939895317383936982428706222260824394901932280263573724276353034949545982161526781940144058431729104223959741439456030412058108349089069676217865847696700534979767662164601668811222183982382030893772206399146560758010262654470829182241726963136617745833564854806677266405794940547670254817160231448436415471652215588253282403077494518483979059604469779641259560901785968791059931429223279496161551795049201472582434452956186433007479496688558274059028370960033933982400313564500896108628003186341630250848045877794016078752452682093219965302431201174802460703466949303240338995481386851059348764090725288837013013020011608921825602947584532865947811317643619077326501020663870402563748999202407020433976878196711929493290863773484448608531340169788463969657749061632838221690568410771383593321101134155889643568684994429271588631203707525266160883417131491041471364882422434813088562556089045939993163903528013429218746699758740378492796618110754002770431344488385172399961108195697586578602524887434063218473131399231809850966445274176895376565342801594721183021913241034376765818450045277610296427092909017909490640397231665226655143897873234908479334131724937559293171575071691012991576244466231832358524634166032791301205882308743880508681273044461805376219638399712578583182311288011758141436699004413724899746160081943748014286302164836045926083206041509764298723420154117688346277834439283531997762111037738839718093958280696932332350858147525625008573229204237340394372247648083960109569137593366540739775930840895925072858277695051375234288253312217091018573250416529884608205662426956753329591207982492965987366229082213448124955154198938345191885616600278841489022263636658633093655344408969390989862154149518903671130817413245944686140233224662345818646024351348604373050446768109612455402674390070502386449660692134151894572702981033534329557913465419468013694631931249615970873349155446265463400213081814561358394769318267534167849212083052855832908113584849135879954303777127723870759742323643887732387793413315218595535875800995893373148611257300301755763038093604492546099766828737006134391587178415653169636617191406043687134391871182439283601626063617458675678909288711271101815667373525075658367964412146168599556138576487540761529894205681033399089363571537423187423511481066702046780478664301144511930691602163263183399066990012252975334340234898068957851182672283394727230641160734684284692364127320952802603126352555079909496663924107778180660849680591067001634116078141264730803483109790729372834607102328360051875687031249482966502859719548812630772867174075930109406498030729934120405470316295274791612633445482801702834623580934155701805161957811460349886660009201587283718078756274616763501932609719696288152398349916834595385860875165332907902462330247994503883308590334969327770759051110868169503729243639448057907420194864053286218064066674023488219123457447455194664288635018247644777667919301889894201203300344364491875183739355892740401813520560005797702923345332597348637496551282091136208988892760563113014731677431041707319983119531268712316792952562980263598248581825183877481449279066967542760109116485522596447413221676087447972531500809098998858459084702152820680852688282061276454721277737190455602522458872784230132104859574029441949062452148040871519931227359401497624891843906242119772766540153895784062251159638228604035085243052701635874454891703894294311728652326694467801765506657820835766530737470370254548700565433530756995298894854043707849724257143022903665202897742227204686313931135479826137377432423080908666946197656517348406938601609451315462235258839004763801472953148795323547572320516502953974869593397668441787105415349874240549311995115495498461179384223283631978436475792675347459641182597388880449172569552526188223953156353757922031886162351012961210847813222630501396656338011677754584062724643356597785676357228833285503099605862121196136328379413187716467418886700771232802759612885488139130480156140074005485484304810134961865728780733026193833398372094576150614655912114620264183316643096982424605967898438078529256444121082228228766131257762559222616213034389935103044426258497810003632786866201246093207073275859631681170694542136184874317662571172652535580506732913658882392409278321227568868901230227900792234352337852986851489351281025106081442544272544098632181355319722641042108673398656875014677220106303088883652834979656994904254627222827104056097121601932001971273626056030517128185362691164749767722522283492759156190702472313410684076559351062064746636242089553053297437002643155637732788366791140772268114708586490524732661954842072856466757875811844926897827152440952897083637475752191144290608988992466910012970422557636821490396249371643964330003960181534318276483504146278093405987880592485272849777423148588413759991433232634704622075258790038545052829240996875848413877153614755585223269198090015771856230734980491320093475665349487050837365020266698713114353548130001845674918256574183287715359804825493962560747426577743860287647309496629477138162845066847329226878758487043712750166186245703576075188860274157978846950691719304399363321329420728671122167904300057328458567020380453225362372617806381077804137596799271041971961272231174494791679756900771409391131226715317462490246069128620358127353184451348595773864580815870349053286339864463358905768413784259035576125315256240178076026971530689959744910739950786689837889476172739466870039227150961129016969666462770275476924794551072042548234909313839620140812939468184187965548379392288358193289988448457554735801675927500146974256855864432054553145854359757914443335918470135170889477485773505012818841272677273309882206772481568035665206308363560689013734815758472710983787459946530257287567030313601745766506134684320238763325030037471319681377179420133873193301848745490007768819989756044247357777264926282735836802538908020634833932216762664431328524589710584795855566009967841877056457590154745346371655764287300180299796598763977775968744560158833219371703283311800460017363248190675904789497774218560408922972380306395997317643535130619378438127190993058684797286485627451707617240789499785652412437113149520192059690882635837750279458111519363079633583198919545643436719890989695915826653340518092258887670208942889849992997044121090416957980709582007696006333237676625196219031409838832162224856395977347172680914547940952323162223450040699046199920532542083701388895630978554198159950178660768779299304675572257061793116378758731761107654605239717698013352724526591037557772690566583689081445785209305187695784209233856766329049786578463966770647120193604436835146352794690080818665151744545595386122833204307086066268143549186895224667821134890734401370453903500399440400766359343091174532004464909549829477648148580215874171643808613512879278190807848760667715929315221734019924862580731574971035745020090626377183378882701119050944059841706803934607677444238643075841050360795380372129773997864872225947844501082865547693753986136194255573615473419051274684308762331934544645615439056138942619208893893750446017866324209435980527055479088392489733796101000342911287007216596310399134811359335871129055534958298620100935385464323229384659724999213802804199418944442429372369020508228147507134823710894032013536437719846119299604872244544219079828151601529143459979013795431354666643982981180291408674577847741602256129700085614754208981310841165581534990465664087700338240891416371309673279982900130530817214528522059755054848159837511896894265635548999820297907903074246816968017411141878357604939994715581270062155421206461905359879837475614250841338552134901198825718262704379648853014658309084509515506333381331873751262575708914148909255526385378431220552056864880162864008367297975331745505540670687391778629744741965090758250988863495634826611281557869613705924644982457137797209738979451269367167920418933203362134205355181021143956929089056495073426790347194562473383804886317257165524851624564903906837860139831771249781105973287196905643409837972258350146483660859914986134742796810487256444634438813260363911552243669569378786450102857267502528772028320254146312332965576296036220958465050943391775530825971694310984603607182457767692076668819461443823491428951154776840819107246337513432225648283859393251743207751731963371891003763666198535309728603724707012535205086767102232402313743871269761051275829870005099332250217110860321375311300622882295119080388010640096437233387606674588405347903163829959350560662553965566363859963368062582041604347773182017678099839329640039734335610460179805746583078467529650128865905295696364217014508549489285749040255833687644001324723184972177205346134586983387702034750612570564319306754258635168160684017076885624758884130895065711392020602640117140069602541242580843862293715891762814150712934724905792295429819023675328060143102820373091268529089229005533720944080518071365302191771440313744001022924437326432431736289429807748213466122928853746158977659335419923604120148670271728906688204485793787853475769244840495120693161545323104618638623414030515322191141797107259946770485794398943662643641424426514186215910682338306267604419401910307144300920059387970442703545845390973061700798395448629224596178819509421424187561041919759681813447112680094851930323457439592199645260936205710779170653437529157833525437012819259315726178049093915155917738117239601900664473389523560435482030822925064639856487243918075833921878094934620849758150143842738409940431042851440638846020525813402018767868017050782530793028397342058821085098640893955725614617941066293083742912620008091278112146163956918881881324116273397270143678992786285772329779006485284805901167133366723848628246516285875488966503198261002830706231180997661740779663568550876829250630742940035305204300562267735377650840011041819778225762716756555949222591229967983634549171107863323655977901525560094247519250137144122637075890684590423594665940473190564924483086830616099277256739536679925559895400780842243055033583120991373479977396754348508559478412770073073354353878345655286979405754948003984559307739818236343565395809476940032030076620115088549498180338376325393661037198391846168974363367835693436709808178700824895186773601367965212552117374594109408052773376824225725720283339515120481934186266210458072045233925989510670156551937523635531737145626860685179349121013992787718004398051575801973488332001115062703421212581551887844729397806277792333187830305901156064565782373128491833735387945603377479883561666488154531872028608000422787457321942816281613426781986152876250544438406237728740397900959538339542933015711949907809467262122165360912772524746437827777324761973643670491039695584297385950059345974933399609142416937750532415887440423309744837310769127280486522483282126644794778799980667770610660500236757499113120530747047192159542344084324011828922181794389050595575068782452446979103717186377470749964802800822883706134767737658200972784118042925276786057259596454618721629630872997690224950134646716136437654440495124577601447358323450198845417550811930926224539817780308136000588523555310724629999007116089657055141963606545629038776996966861737916250364921505694137925442525867116818000554366502956952514455465284713539619061143639050080085692168749225337329751255882807789666415808959976645322414138946958928829395917536355898003254591655503545966102957865228465770025182020800740710882140439588322988387196525483288533692192164348077515289951420085897969333563831186200000822465175757357171762073335707089690775774818348807301475457652087097101392891743327372457567180606375019685340867889196781819301666179204791546380603009510851879628560634565916067895771377474172341933556464386287689110633490264009401961318970737122325531714389140352765849158922550865078626816173004823245316865070259765881779464815926138423899766895300452441059940099196224580706076019095107019583919511283120870728930262490167324871686464125204560865181067178803379629499764530296813091303356145732621911572354356674189130993820280991878945444215211552203172983586207283592085346000252353662174006637171549341341493176418908749249897533465460086103099707325161384170451138263440118389829846856621454197384847845650843545331325096323369275774389981126565930915519700801047099204479558355054915775187787778577379256328624753064036368179548669736270146353825221619995209031819532871495182825461765787038851082756407910770008102970690290901899501530150387551935537474742367496184215489824054474167497278817442093415123319363000153268737251637395632052742803660831915626622152423541119399731670474161457039043066536522670336369940392891730209243145600995062262813562861347283130305587280295982437461131567843636925082052602395754812854225587514476808232605214301511395066919330841656045423722026728681909663940553821126239368667993444711423892766645377903286909427072247712093003438029301638249347148809231121766067517917756032991971850642720272461173234638000347453054798535561446205434216432853899660664276439085757959921882073146447529273082055742813072223290477131464326461995327379748514095930714867478572654886345982419365632589000556628153631642370547264760605461615335183102384771254252494240961519615417031898140019849491274081214167566294978208885521787801152572684730118120333794518696014470845125862668051505607019072596082006874881465793362889594397090036238609771528878776085764542826189120365831085824267666728453527423969798338719696834171046469772201318759009479872864936933881620638186003161789608079912861841989187269656071397690818282521407174869618435894339817546581234278684051306705446117057977006994632436831283271510600074702584891684976434532104707738014502405509145757307026318247308647042976038404590079058383483479517100250852796703807755259021866250030563893870116658838254009247188657135132662882570553957650331770090890482971488423500189306766709057723107195041887842702549778946245280148421710278931759801263991082590606675809724578312889715303077973816377544053377909985735322240754697155390879216952093126200203583856779171788493080689963843373943271871168932173374693518843389575892568894863983302571437576248114831700206495067672854000948701024933922275524804806688417750775568092784536676866213367390825371770311213154673428069245441914189283902344488091244411072583255359156356859039032288201017678651144055694524397803071078941508003190302319043641982461300148847886336276779888999456845639764958986070705978778614628584932020467359208159729640182059004102189530843566502240246913550938511749232408164969579269629140419790690811408081582820489679413370552382245264041600727435877769933947853994653230562690067764274590198430449186099800590953160427530003887811450930838567922071707592329804148376531988133589571607921634095508681561676453468901145110486381877314811034814847222407782230568406533336305374095441452608079046432096820862452376301800795215535644892459013189272853373425217165648373909607606914556307805679366801311491072369384835772001044663890333225369352676349984092935540783057490352984832316724819430641351707221430208211313542040977733081853607500192567620944960818151582643914316109066528187761370375595364400619734214616834739422107963932459206621410674903984951595393562898865844166162905269829223613452714050063509171289313056000267750990687906184708118367020763688323964509363748830650598460936816198113586934183478639735977235808344249489872975968631692859140096787319668863530612081002911885889937596633027253030463015718282014944318994239064017699608171971241400861012977879511920390482880683088625404494538730448565288480875722249214340966586068934954256482594153724250146096455332576678465291449143715810573361565073009319931520765391847389840529791194076898089626012019659585995326222377262220562471817838295998397088970060150208017218694463358836240045019544446799655133083948495167485951567477729614013417888308952985743006379419406176298535888237460154764215974311643729582784707062844589006155499949849846933846135485346445407757702879506371949079858235666074584792089405783020803961026697509603163071159877490745320612635000962888731758643200014108846068151334191286960673055905561644550565411674360509164327986770407889896350453243877472659990627695914187546565785450893304584214495341288363071114776538198761374691244703277611058523965326432523595458805950338647655382518498072143938160426095830010185859090778839262822898331148403389960870107416914020097761577398674971333363411023822106576828338870094223468559594972504924431239082055793997012972454973177297064973497098367130228504693074563873829964139615491511284377809991370792647124038168926098007759430659809496539825057513406707585379319983019428564385661829193926262017781711022829630139518373669787968570577706865060410017106840725458463492669744020925213982318633517073628536368010852034750454541493375916548200555528732624783142390204149513161639147583162331663361315906622859053906989763726337588763993476555644127131073570711899058790899497367088619479551477244096499338690373209496971967725454855331174310139779865994870497053818897656568455330497123673953201623423615772116997332796591685605607893134971751628822567931005923364927555133322934808286329653960702049827661638441456427048004286135293578591886914909803234255925803049015274619409918887194479737250380457200962737576192807815340308559068877218830386604910230190737116350514349329416767399347519339581092434209197101467094144997114996135985905038265234652594966045527566086074286211668469280829845503881141428026227448520126178300943541738080429157402779621980003219486403933054979690848969203686185489313731901955135230862341590015457211946543294866610208130888631585976357654991780266178798794894065704757913123893116421428623206559898628807092712656457264285722675302988949890737912538147528962006072573703022491887091543706024998936582910686784249724115450295066587869574040406311285775916948930936482780220301922804283654507091134617076266066195177625500427810092114441608661127879929421833079426752994463285456518260710552203249428031268008491524329151155986681678142307754575854861467516648468424815638148467929500612209305349762881212978268481649582559920147566331830203745689348940664900619798212437896213767965669787079661491568316961337901734895261495156038558415109377685144461373842170677293881987758916064041054277540999829336591803263863916463235833108464417043914210857852460832883779746346875060682138101087783858843879257478244014332541087882046123780115219280312621675890399586596671355493561706131213572012549735095709501186324220115861487496763095737386195100889806453915747001997197579089635977341111283382327011701993900375488424075640245817260871379542712901561418538656636312934400748402900658345625333616705095879630724753472606453978935305708924316642808825733516537238347578111861976394790440061911740256278043658294109205954433139326664064903293450966175844715214094082297103410268869331457994373780730539150207502600210729920592573911437047859448932321586614857430068717399461317885701992728803852886153125566985331739109320580014579409518774304996121234000163679616303338474217393836458731873739944551284396097467745504333304660369454262836807164957542082160367243707888090535910811053076584865659628419528830151317441362503025307004371937462898285183288698514560145947129637936880354681009727066346268681430726959127879312385427112203028421513032451554640065592095185323688139472567321093669278832495937891102717365693630490505888106314680859073910609518973438103561138411628042533301451669154527901121878921504020823493012018434869969031008360256264541326541282542863365237220659774131064386823130341375562643102847052722772921703664448693563134719369272832222761958722257579554383411397297261011995994045469739118274477108630440440430034024060529613095303512079284379537934489584643985257188190413457933152203163191937563573633126889394073761646132432357884904491518939780183865662995344796741433974763245072693032414540559911181176727887336520208362761574798929051523240487800379020354886845868274752704859861987071812122159532409793417217462790636740964403145870245976566063406605088755072904055396290536940520624627792151897923624193629511104927457313735957986686490697375196651590898372477481314111430474947665509551958931281567721687437151091991762422745181863570791919832747068604713984654271854717796731519528205119116753591345836619077504064876027670039859698832103603153973878995543014152898725386353893905072961220521529318825253501158073689217845588262984060721131197997320980306340966373373917535226498191277195135136886575894094440400096442540279508941342093892890873614482634725755650225427104316929330211981475112943372650508288857193146270022768335115986469557957612989594908863484855429173492922099779341277250909568860388754308434608323572321932525829053749717518971559392424305543000771252570324936304245796093264312330252152665565422453988263652289291198040962472937502142539851253275488364752430367684586984889104244404852306419556306282459764120630056752939916406116588367427092629878752274314559846485532536521758636704121770762460599990456292995840183257029341721695890639415465618598368601210002558659248709763658709363901696005337336856446948611362349487508662468328964801764216303476258800948875941295144733436723809322429049684944003412006740918718438444099431701117725095105432922291930492321661815791613778423593014161842746818516606118442691377707931218608588037180720660834373568902351147703462927233655148845958497205574859048266715009592066886052182370199125104629588273470644914535686244044848985281398872370961863752054010974301657141445326506737483179204147591610800659869057988022176559731043828288406658533419498774595066222560316914312556093055044996694444543149514358356157047280846430542382695802989667062734659833419606435635469213878854111209423327656835512725840509028742394770121487546552604387036283819634167197243588605897681832051278172549169849282582341350761065269087138201579376780010275198137177800133130877432958600819330923833540488934131056271179209783871297997162491281889009212868896209360250698948246653231995752573152593428869665412075902604537594004253684817488052071334825400979442830174316187010453790779435442715795088080140961055925184895102020113807938946326352937812046313203695368268424491461622963407945770377399340451965785439626297082090563393959809348287403242743557958436577114066267276195224991836513028085929022251170301401237984526061911432820737258304290198122019006970489222086245715643837868369201933232495012174456340763797040889246946741045130790970646269539337197173644549953095531499506276476948083081789642213486004611006994511133111660213634357061100937831121072783518206404787228327201234123890468574788110053498654698221738566015089893375135288477162052068720311132479994548351025516983063760114473530978246241485268349062523611816066999863177702848906869046183127268209714401702060274727809385503123664699129983284931870504908557053805724223804888441198011279837843849505324595913815121563004789352469703112205870573186197635530067988492416245258893892178605581861466514851123078205276668383794545268865291386036669598787186029882646805359568608953808759892326840012414201300395733164335942748876411347446374440283387477722935369994409195061457159848664682778062862514128292212686548550972114161580131219551294027798687843075548810746471502810497637162138432145566580920325215698653056265309767680845032132724554159929588540721804904709459020018785040878288463344544102516542911839629889538257994927639250113235712311747305199755088200966509301213336630735792696055859104871604136876597325476153229429028388606534999514727787056866543707632179670949389490525608377717836667025591784819874354643063438373198521288328781420467280428181463864538470589360043849072604470337437454801501283147675819308002027738958577517975491034949303377699952920358291610165768567740567978356074410351703677328166902923862023233197919768131543124074739468994946662547656519562718644160382795456033135175082268170865573834693590004684197108238776170873593183612924991201300134045923309092134219930029711879813786628154154076082496970300895725510496950297065606429460130867511795311569880911759283206231655734898021242958508846791926608649271238012046848807463452145145524540629568674371180568176504360963017015431749277949293396317976688216722938280173938924419296305551815469608660762079635769293211764371669224250940615805473476357850712260506636283919127991342967871258378570207502000023975207636318395340545489772104939314689719843908698846498428096291037103592386937398327343536649617283393541761406911014413311300544468640137982568932109199336118754072870063610611743418311646272329770062069045501332523537696835580223612849721838417508400262263773939714364679480638417882278345839804065820739990942451525039616498983928072825202292695277161080260165840503262939152755740689452037268647554752305330140991106973476035764844201956489912225033210038735236980330958660817486330751849757204759782947316995481993683099179869510096851706688196713087941293319881931792878309916897429082391253442735487836443276499521414310484299212015258716820984369808164980299317231675895566120417229707891983912313030436599083938826604501055645855210338180213000321723240000979992390148296151632252660711089222198449491402674240066741145681135303976173971437618868459083892733231187058925801037611622467611595626870911986465303574688805428876371812925687283054955612883916571520935189166104478714916038251611282072878086786997631842706045378236307514687319551238743862398436639489398491712487785555373333537472225890310531666594259608781809592257402554051494610430727683516844883090840642690451751292292016489065366815256159780878766578626869915420884829690930367763912026088186491309948519583077355201102841413869259631189746246955907514383232310780500834552698356066683107094282367947091638804881069080013878056063192285475605492314979081159414662685369957898706953665541860973526989584578250451659820035126315338949723159915475590954107123670995428358075269318669824176810684347869283578798491457227042494389813706374939315712352299179827272303887052125744889038946504277764561906702031369062935281197650688873313459486973806092979428386224000584822393299996986560104828818760758385981995867586886600382232504819370078680344674241717169681378516934397641884405919044221823915509568695105214974723365920083084099725300324546498330670104200464003165985880244323828652592296949994026574626754794194734935207459814880784981627555233983334079607425029446928152042170810306189510491211552154552132315007344633654000550944484672998323620625895491345248321838656512221724222086276305979128200483441775180920689490213071958767104334027512272854625466595692210051876910873324145081549488050165026889578346879228171375450336199632698153881546255115357502041655301566125512734592488222445087912439735269902472458805653908767576062143624424582424222584866909588864737855139320483034513471009546955235085164365334373977580000000001/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.40792975495612554452133567099392070257699831143850258029546032752016286454826032563882630565613284463227445131690858622097207044812016541214277130063669295671573496252739062292771484541809955375633711247555881397678414055303867455788195656187980068925417121976748748369467569305698278892275731925556560668556641172523844965099933982707571528371427015770576230922603861177195565537750141465213654631088118574691758080251364054596785281080168096685613397857616294379232268248215298853292381199893886139972347826651223933374102565069347361144687000252703847838534338747512849399563015628187158685779242686357166546612903002964170062058737461007939730654718536222328463089454651194246205536230336601126874415585187378422737557543023845426665683864694477245505985398375000103601513435129166677035091980620483066887245419417038769869148147912015542917785344369152591951795892124004590679772698452011453476335355234699386282214405446821229284764297348574465032047230441299244288174711245002496393554879753524319689487907532758079455570701194854338707369183921993995863402184232152184615069940250028322312664852086581874096051036873916138506659723016189250462678346789322570278241899336856273594540500603089408008870977408029716252806287447251073366746597404714020129979993774418917608964094131278449163871342511730671494415498727830621123980071961124852393069570269035276089365194115770222250305057306261092731112655739015642430926792156914329116264972074836909753537632260646945571271828650550949444860120575988804902948042721599822849715745351816442502968051154223623254128908622923896096926167733484983793988297460358734030993797835468575092883968818861163126952060533972947968136894318174145182669008679121570755370129163344035285909429469108571157777613190796516146580065256589546559110073181736630290955844132832995334917603357903993468372392878994699354979348323212620852285676283820206524960019792827095630484311801693843462388312995339566519138552720830741849295221565445247363132757361071077160302831327206281642349226223230894414019096686218229016460699054677048159901435541234392717134364383286650134634326747021056376486732356045397728360978278860470322820619092139111646053071559341148447324693819715732096101459693125154104379128795754874535133815783785668603805873975709336905331919677991638529417993759060727279308183919658988643484186929542032856165871736444877493131677512052012589842648208749423135438633672190412589782962153930011558524460935229917572161365384754235186719728602672982677157867903605158896232866793398892684171307950305349413289098968212940361844220420220198827919586925159597120512627924316020791377378329612350810851826001576133204787304711412072976215311592594238158331403517752666932502364246409095207168959584957587376925394226257848210217594145856279208528150060920070658837983941473583722720169861500872983628882229180069491705027281603350379718769131762019428172897173265794542669169788729097911675854506104510808204467914792075218832585447853000802143883960578812022343119030497117561202093652321260351425875554783512101961354394728525514472939301009080356769464361197118831365417915520805171210879391758837833018218606475642683046065989300404646756707966623775556320352359382124555872017068784839794746910583416355165460737267645083328702903866454671884101189046594903656795371031271690566955688234934351938450109630320418807910604407174808781964280624178801371415534410076768964099015970548351310940876271339850410066228834518819432580799321320351993728709982077827439936273167394983039082444119678424950946358135600693951375976503950785930661013935193220090372262978813024718185494223259739739599767821563487941048309342681043773647127618453469979586722591948725020015951859591320462436065761410134182724530311027829373196604230720606845018767343235566188631784572328133577977316882207128626300111414568227375925849494676782331657370179170572702351551303738228748878219081200136721929439731415625066004825192430144067637784919944591373110232296552000777836086048268427949502251318735630537372015363802980671094516462092468693143968105576339561735179312464683630999094447794071458141819641810187192055366695466897122042535301830413317365501248814136568498566179740168475110675363352829507316679344173975882353825122389826374539110763892475607232005748428336353774239764837171266019911725502005076798361125039714273956703279081478335879169804714025531596917646233074443311214329360044757779245223205638120834386061353352982837049487499828535415915253192112555047038320797808617248132669185204481383182081498542834446098972495314234933755658179628534991669402307835886751460864933408175840350140680252675418355731037500896916021233096162287667994423170219554727266827338126893111820612180202756917009621926577383651735081106277195335506753083627079512973027912538991064637807750891946512198589952271006786157316962108545940379329313408841730691610639726107361375007680582533016891074690731995738363708772832104613634649316643015758338942883341837728303017282400913924457445522584805153527122245352244131733695628089282483980082132537027774853993964884739238127910149078004663425259877312168256431686936607267656171879126257312162576351214327967478727650826486421814225774577963686652529498486832640711757076628008877228470249184769402115886379332018212728569251536251529770378665959064390426713977109761386167956734736332018660199754940493313195302038620842976346554332105455387176785306314306152717453580943947937472948898401810066721517844436386783006388178659967317678437174705383930337804185412543307857953432798962486259375010340669942805609023747384542656518481397811870039385401317591890593674094504167747331090343965943307528381316885963896760843770793002266799815968254325638424874507664729961347805606074236952033001663308092282782496693341841950753395040109922333828193300613444584818977782636609925415127211038841851596102718934275638718666519530235617530851050896106714227299635047104446641613962202115975933993112710162496325212882145191963729588799884045941533093348053027250068974358177275820222144788737739705366451379165853600337609374625753664140948740394728035028363496322450371014418660649144797817670289548071051735566478251040549369983818020022830818305956943586382946234358774470905574445256190887949550822544315397357902808519411161018750957039182569601375452811970047502163121875157604544669196922084318754976807235427919298295138945967282510902165922114113765426953466110643964689866843583284669385250592594909025988691329384860094022102919125843005514857139541926695942045155455906273721377290403477252451351538381826661076046869653031861227967810973690755294823219904723970540937024093529048553589669940920502608132046631164257891693002515189013760097690090030776412315534327360431270484146493050807176348052222391016548608949476235520936872924841559362276752979740775783043735547389972066873239766444908318745507132868044286472855423334289938007882757576077273432411736245670651622265984575343944807742290237217390396877198519890290313903797300762685424385339476123332032558108476987706881757707594716333667138060351507880642031238429414871117578355435424677374844748815547675739312201297939111474830043799927344262675975078135858534482807366376586109157276302513646748576546949288389865341726822352151814433575448622621975395441984155312953242940262970212974379497878371149114549118027356372893605547179157826532026862499706455597873938222326943300406860101914907455543457918878057567961359960574527478879389657436292746176705004645549554330144816876185950553731786318468812978758705067275158208938934051259947136887245344232664177184554637705828270189505346760903158542870664842483763101462043456951180942058327250484956177114187820220150661799740591548847263570192075012567120713399920796369313634470329917074438131880242388150294543004451537028231724800171335347305907558494824199229098943415180062483031722456927704888295534616038199684562875385300390173598130486693010258983252699594666025737712929037399963086501634868516334245692803903490120748785051468445122794247053810067410457236743098663053415462424830259125744996676275085928478496222794516840423060986165613912012733573411585426577556641913998853430828659592390935492752547643872378443917248064014579160560774555376510104166404861984571812177375465693650750195078617427592837452936310973028084522708383682593018934273202710732821884631724314819288477493694875196438479460569386200805101785200984266203242210476545210662599215456980777419660606670744594490461504108978559149035301813723207597183741210636316240689032412154232836134200231030848905283966481449997060514862882711358908937082912804841711133281630597296582210450284529899743623174546454533802355864550368639286695873832728786219725303684830545780324250801069394854248659393727965084669877306313595224733499399250573606372456411597322536133963025090199844623600204879115052844454701474345283263949221839587303321355664746711373429508205788304082888679800643162458870848196905093072566884714253996394004068024720444480625108796823335612565934333763990799652735036186481904210044515628791821540552393872080053647129297387612431237456180138826304054270287450965847655184210004286951751257737009596158806182347283244994410837769612738407328336021609087131265602180206081683466933189638154822246595821142203000140059117578191660840385808359846079873335246467496075619371803223356755502872080453056546381709041180953536755530999186019076001589349158325972222087380428916036800996426784624414013906488554858764137672424825364777846907895205646039732945509468179248844546188668326218371084295813896246084315815322864673419004268430720664587057596127911263297072944106198383626696965109088092277543335913858278674637129016262095506643577302185311972590921929992011191984672813138176509359910701809003410447037028395682516567123827729742414436183843024786645681413695565319601502748385368500579285099598187472456332422345977618981118803165863921307846451115227138483178992784092392557404520042702555481043109978342689046124920277276114888527690531618974506313824753361309107087691218877221147615822122124991079642673515811280389458890418232150205324077979993141774259855668073792017303772813282577418889300834027597981292290713535412306805500015723943916011621111151412552619589835437049857303525782119359729271245603077614007902555109115618403436967969417130800419724091372906667120340376394171826508443045167954877405998287704915820373783176688369300190686718245993235182171672573806534400341997389383655709429558804898903036803249762062114687289020003594041841938515063660639651777162432847901200105688374598756891575870761892802403250487714983173228957301976023485634745912407022939706833818309809689873332373362524974748485821717021814889472292431375588958862702396742719832654040493365089889186586252164427405105160698184834980222730087303467774368842607725881507100350857244055805220410974612656641591621335932757315892896379577120861418218870098531464193056108750532323902273654856689502967508701921863242797203364575004377880534256061887131803240554832997070326782801700277305144063790254871107311223734792721768955126608612424270997942854649949424559433594917073753340688474079275580830698981132164489383480566113780307927856350844646158466623610771123530171420976904463183617855073249731355487034322812134965135844965360732562179924726676029293805427925505859749295898264657955351953725122574604778974483402599898013354995657782793572493773987542354097618392239787198071255332247866508231893041936723400812988786748920688672722800732638748359167913044536359646438003213407199205313287790796403885068338430649406997422681894086072715659709829010214285019194883326247119973505536300556455893077308260332245959304987748588713613864914827296636786319658462287504822317382098685772159587947197657198607949175148383122754125682164743716985741305501884154091403619526493438797137943592538174629418215419889325581118389638572693956164571193725119979541511253471351365274211403845035730677541422925076820446813291601527917597026594565421866235910284124242930484615103190097586136769093537907627227531719389693556177164057854801064590284112021126747127171511469716275681786353233874647911611961793857113981598812240591145929083092180538765984032091027415508076423609811571516248779161604806363731057746398102961393530851208156007094781275885784416586931249416843329491259743614813685476439018121696881645237655207961986710532209528791290359383541498707202870255121638483321562438101307583004836997123145231801191379142971187223079589483731959624642639658984349384139432053158823578298027182120885487707641178674138325141747599838174437757076720861622362373517674532054597126420144274284553404419870294303881976657332665523027435069674282490220669936034779943385875376380046765184406728628982463414987385141199293895913988754645292446983199779163604435484745664868881015548175400640327309016577842733526880441969488798115049614997257117547258482186308191528106681190536188701510338263387678014454865209266401488802091984383155138899328337580172530400452064913029828810431744598538532912922433086894260411884901039920308813845203635273128692083810461199359398467597698229010036393232473492126779256032163076620512732643286131265803836425983502096264527972640695748957652508117811838944532463515485485594333209697590361316274675790838559095321480209786596868961249527289365257087462786296413017579720144245639912038968483960530233359977698745931575748368962243105412043874444153336243393881976878708684352537430163325292241087932450402328766670236909362559427839991544250853561143674367731464360276942474989111231875245425192041980809233209141339685761001843810654757556692781744549505071243444453504760527126590179206088314052280998813080501332007817151661244989351682251191533805103253784617454390269550334357467104104424000386644587786789995264850017737589385059056156809153118313519763421556364112218988088498624350951060417925656272450585000703943983542325877304645246835980544317639141494464278854808070907625567407382540046195500997307065677271246911190097508447971052833530996023091648983761381475509203644393837279988229528893785507400019857678206858897160727869087419224460060662765241674992701569886117241491149482657663639988912669940860949710890694305729207618777127218998398286156625015493253404974882343844206671683820800467093551717221060821423412081649272882039934908166889929080677940842695430684599496359583985185782357191208233540232256069490334229326156156713038449694200971598282040613328723376275999983550696484852856564758533285858206184484503633023853970490846958258057972142165133452550848656387872499606293182642216064363613966676415904169072387939809782962407428787308681678642084572450516553161328870712274246217787330194719811960773620585257553489365712217192944683016821548982698427463676539903535093662698594804682364410703681477231522004662093990951178801198016075508385878479618097859608321609774337582585421394750196653502566270717495908782696378656423932407410004709394063738173932877085347561768552912866516217380123594380162421091115695768955936540328275854328158293079994952926756519867256569013173170136471621825015002049330690798277938005853496772316590977234731197632203403062867570916052303043086983129093373498073532614484512200377468681381689605983979058015910408832898901684496244244428452414873427504938719272636409026605274597072923495567600095819363609342570096343490764684259222978344871841784599837940586194181962009969396992248961289250505152650076315690203518910516650054423651158131697533612739996934625254967252087358945143926783361687467556951529177612005366590516770859219138669269546593272601192142165395815137087980098754743728742773054337393888254394080351250777368643127261498358947952084903742915488249710463835347895713969772098661613383166879091525559465426361806721188923577475212626640131105771522144667092441934261811458555045758139931239413967235013057023815377564678649641644879340160562987145594550776535307239993050938904029288771075891315671342922006786714471218284840801562358537071049414538358885143738555534190457370713470760093452405029718081385702650428546902273080351612687348219988867436927367152589054704787890767693296337952304574914950115180769607691659362037199603010174518375716648674100435822289564243976948546305397637593324109626079710583097482746638969887859618548078359862502370684132742208112058199275227804569422424478284709143476217592683378283514646665430929451520604033225606063316579070604555973624819810402542701261322367587236279936764207838401742763160216254606878572046183634349571856502607631282113203649068375314426318973865891077658840459860107351263374334569787998505948302166300471309357905845239709951889817084853859473635053827059140479231908198418832330330409657994982944065923844894819562674999388722122597666823234919815056226857297346742348588920846993364598182190340570231529996213864665818845537856099162243145949004421075094397031565794421364803974720178348187866483805508433742205693938440523672449118932441800285293555184906056892182415660958137475995928322864416564230138386200723132521134562576621356532506129623132208482148622102720333948571248475037703365995870098646542919981025979501321554489503903866231644984488638144309266462675732652183492564593775736906531438615091161716214321953110238175111778548334892816872862819219354235979646426977118886109512043938578421169839936193953619127160350773997023042273274464402220010863087204700820278585880424427707428301359590652815836805407196358819917956209383128669955195061728981229765015351836700608414607417191604186183771838368343590206411732588952355094719167985451282444601321042920106935388746198644714508196031391016278003988180936791449399922243770981383228641558565848153403917032469360237328208567841567318089826368766470930621977097790272362453703779303703055551844355388631869333273892518091170947838419071358063582750952473963984095689287102150819736214542932531495656687032521807847861708873843886412663973770178552612303284559979106722193335492612946473000318141289184338850192940303353665503611387172965855571395835773729159180445338362927849996148647581100783636968347121713677818669436244772592488092711987605315707663305211557840721350815867571786501920300968092128742022683116676741894603415527730945718998729816574213738879994644980186241876305837632659584726233520709812725023386988030781263676037728261316330427205280455283833115010202540480627366142817198064253606622729387758379941762282201248067339454939390739685634359701113620115218719646007836560575171982779740442409761592190342386338227491910109225391028694230382485555015713180668278621300914870348116925514997078070893348466430694171017125683788532768698539813601369584692163052203189404176118462038207479759606808280093475552454755588750563643234080032058220598796995839655626110732823275199099609111064006897338321030096650280968650445407719731642233820940285139872411611876474029282235250796904715680513767125408344305858743108219876890001003003061323077290293071091844845942409872561018402835286678508304158211884339583920779466049807936738576802450185093587747299980742225364827135999717823078636973316174260786538881888767108988691766512789816713440264591842202072990935122450546800187446081716249068684290982133908315710093174232738577704469236024772506175105934447778829520693471349528090823880993227046892349630038557121236791478083399796282818184423214743542033377031932200782597851661719598044768452026500573332731779523557868463433222598115530628808100549901511375218358884120059740550900536454058700530058032657395429906138508722523400717207690169774312443800172584147057519236621478039844811386803810069203498849731865848292413600339611428712286763416121474759644365779543407397209632526604240628588445862698791799657863185490830730146605119581495720353627329658527429272639782959304990909170132481669035988889425347504337152195917009736767217048336753366732773681867542818921860204725473248224720130468887117457378528585762018824182010052658227610408970455118070013226192535810060560645490902893376513797204402680102590058923622046868630893390057526520935967531527684557660053344068166287887842137300564967423548641379881532701448897333541303834273406920785959003446767231170871459039914277294128428162261701803935314881483939019694507611801622256110405254992390855980745248476143843693193828818622455623392267901795396185257672989713013411664652013049613208378151315816057970658117100057700077280281899234695306948100679089448678278514275766630614383403089922377171439475451029597476433981129165238391416851944407560399935610271921338900406183020615926276290213725361960897295382753168199690855761069134102667795837382227368280472846900164394676424024102118685904841737522137671571427535868802027423858145746870854714285546493940221002185241749237049420759878548525939550162258169125879500021268341786264315005517690994098668242608519191873774284481661021381270344395593961543914326909858177307658474678676096447489991443798157711167826777442401411563338411464940110734290869634785788955935011439374639830169513416976880266366437153844908482902770649667030631503687237030641409987755813893004742375740434630367008348801597048673363395925086213021186701987604035751242075724640686604258406770168633660773241965302094770096879228831697812446297110772523156586454122360244821678719178914449180003413268163934722721670735283337830711659121715782842950783342324405073062498786357237978244322823122414850435119713349178242359077524397695614393747566482192008268066572890128765877375728559749005298085809976273515597682770250064738085252276097982203870921685059960056048418207280453177774332353459765960121992490231518487195083654782572409145741968771629226867273741311985031941986833087493327665898082407385504930547870920421293885821513667143823485329669255233048437762760472104191198761765194874439126834117815880911337213466718701934130980676483105695718118354057931794622613370840112524385389216995849947995785401588148521771259042811021353568267702851398625652010773642285960145423922942276937488660293365217813588399708411809624513900077575319996726407673933230515652123270825362525201108974312078050645089913333906792610914743263856700849158356792655125842238189281783778938468302686807431609423396973651172749939493859912561250742034296334226029708797081057407241262392906379805458673074626371385460817442413752291457755939431569739350968907198688158096293526237210548653578126614423350081242177945652686127390189882237873706382818521787809620531237928777231767439149333970966616909441977562421569919583530139759631302600619379832794874709173469174349142732695255586804517378712263537393172488747137943058945544541565926711026128737305612614543355544760825554848408912331772054054779760080119090605217634510457827391191191399319518789407738093929758414312409241310208307120294856236191730841336955936736161248728527337462212118524767077351352842301910169621204396322686740093104065171320504735098546139351709188801776376465442253269595832744768504021418969535190243992419592902263082634504945902802760258563757556809351804131655650744187265180711937082595080468678731867898224898541918892074189261189587507444156962041527516127409777901450853725280840266270186052496066968182032550450373717771390501046689808960821374368645566251256978160164751545096362728584161603345058627905720306914562905644065369609435897617664928173083267618449918702479446599202806023357927936920522420089139716942025492272922121898540775589569413623494929976838526215643088234740318785577376040053580393873180672532521649295470036174456097297262268482118111191998071149194409821173158122142182527710347305484886995491457913661413395760370497741132546989834222856137074599544633297680270608840847740208101822730302891416530141558004413174454981808622792224913831307833528553561349483418925005649620568812151513889139984574948593501273915084078134713753394956946688691550920234726954214176039180750541249957149202974934490232704951392646308260302217915111902953871608873874350804717587398864941201671877668232651458147402424954513708803070289349269564827265917564584750788000190874140083196334859413165566082187211690687628032627975799948826815025804726825812721966079893253262871061027772753010249826750633420703964715673930474823981022481174097105331265523813551419006301119931759865181625631231118011365977645498097891341554161390153566763684167724431528139716763145063629667877631146172445841375627828239256385586783312528621952977045930741455326897023080830055888502819034665699808158662278956352596017497907408234530587101709286275119103020294372022552580762724958919780513966857171093469865250336415917048167783986802618840239556468805379123434231866829331610024508098675548793661713748878138899100066111109137009712832876859054383071389152346083940206658745306803331607871287290615722422917775811533446863289745483189819425152104597570249068947912259274323607316656055128227882046363358974436549016603014348353172984778694618257235968412464399794496037256443997337382451340827983613381523329190221317378874576415804322574040056750174362219815742622075812794986021035066935360084948536948131422606691758481947909248119914926303650238958573303491980411143396513676259790924184411291145684098238397180778881496302097959597723841221073472941243759073735926092634631510170767540731841084592452013190960684291207474058358188732120803813034251935145128840831268457718674654476095500163269739438281419554976593971975240309478761771343585254833914196037559619860590215558275085687123242632615961335350099756510873184724059182215061065179097384180587074609213256056527109000938089370009874470461038338364207155730279907779860109777337766795727312858777981243377578544329635871904255433455975317522190628504237798930026906035565228679698202132497294230456758958625593777350400109032979489660338724797710529380435075170294633018749527763678660002736445943021862619076337454635805711965958794505443812289937526706017400334301362589901828858923885515523902231176039774403243123009893508081723697568739904212950605937755882588536276047289398640230151675094822122156427888362770669702977538435894466632324109094622694172279266608024256279402347063892808627820923824802153463199751715973992085336713281145022471773051072511194332250445541292600111816098770856803026706344438742749717434155746269028980557716768397375608974119444026243138489023785070569943790047256757231357088668381593495686026938874693804646383099357345508916801408229185563901905810819599624299182434230733109117949669141763207402209234840101447214997735285753765053896004898235980669813975733267385284146078882817902567917262468053490476935411419432227869300009705444258862669125847356406581012210189487832445643266659488164303602512907138731232536029574233424371590654391436370722709230588212799123018547910593251250903969974337046483613839959445220828449640490179301013932446000941592834167796684628645188640432878511792965926453436661941522759535336041604637369137518505210620101066749046869608745627116792344090879337296498354636582688523306128199906316057835224476582528136327741500175973997319081533818157315601399405762403724267436916918478350060593982085489790060994058687871410797382649764093768602381764814335875366885302039575140829823064161467827014575239759063023850730957097089509187408626512576388636469912780739659691365014441014132073640466235665541234396521221511614073888963690607826784758407284614135764712566615514981187683890530472842985754789867274321617440173140642574832428595849959999520495847273632093189090204557901213706205603121826023070031438074179257928152261252033453129267007654332129164771861779711733773989110627197240348621357816013277624918542598727787765131633767074553404598758619089973349529246063288395527743005563231649831994754724521205712706410387231642354433083203918683585200181150969499207670020321438543495954146094456778394796683189934741216944885186210959254627048904953893397180177860530479284703115960870201755499335799225295260393380826783650273384963004855904804341053660090360126338016402609798062965866236065738241174133602361364142433801662051418352174931145290243271134470009571713790314015759694825663580312603836700394013655366482088677591655405842160321753739391268018321223467909978887082895793236395739993565535199980400152197034076967354946785778215556031010171946515198665177086377293920476520571247622630818322145335376258821483979247767550647768087462581760270693928506223891422472563741486254338900887742321668569581296216677910425701679234967774358542438264260047363145879092435273849706253608975225122752031267210212030165750244288892533329250555482193789366668114807824363808154851948918970107791385446329663102338183187146190964974154159670218692663694876804382424668427462601691582303406181392644721759478236270173801029608338452895977943171722614807376205075060881849712335353784389983308946032878666337858114352641058167223902378618399722438878736154290487890153700418376811706746292600842025860926689162780529460208308434990966803599297473693221005536801690488180917857526580091432838494613626603516463786313042614328424030170855459150112203725872501213685752954016403454553922258957485102219221069914444708761865959372618741294376046986222533730810260523878140411432275519988303552134000060268797903423624784832280360082648262267992355349903612598426393106515165656606372429661312047162311881619115563521689808626097895700505532681598338318005493993509070033386597915990719936680282395113523426948154061000119468507464904116105301295850803702384300367448895320333318407851499411061436959156583793876209790175768956908957353699853107326919988981110306540033527587482090173095033563226869755565515558274473880417435990331164496381586210195738560824657913319449754542907490668086155798962461782533517098369010238996699462208433062415436572490993276007346036922369074897692849959166893968677489745308150235551098241751205294601950550823886921824648478757127511508351515548302661808222705242897213590339309730579809060895298296712693312520448399999999969966404900877489109573286580121585948460033771229948394090793449596742709034793487223473886877343107354510973661828275580558591037596691757144573987266140865685300749452187541445703091638009" + }, + "cap_below_cell": { + "rational": "2301756126096861386966608225151982435575042214037435492613491811995928386293491859029342358596678884193138717077285344475698238796995864696430717484082676082106625936815234426807128864547511156091572188111029650580396486174033136052951085953004982768645719505812812907633107673575430276931067018610859832860839706869038758725016504323107117907143246057355942269349034705701108615562464633696586342227970356327060479937158986350803679729957975828596650535595926405191932937946175286676904700026528465006913043337194016656474358732663159713828249936824038040366415313121787650109246092953210328555189328410708363346774249258957484485315634748015067336320365944417884227636337201438448615942415849718281396103703155394315610614244038643333579033826380688623503650406249974099621641217708330741227004844879233278188645145740307532712963021996114270553663907711852012051026968998852330056825386997136630916161191325153429446398638294692678808925662856383741988192389675188927956322188749375901611280061618920077628023116810480136107324701286415323157704019501501034149453941961953846232514937492919421833786978354531475987240781520965373335069245952687384330413302669357430439525165785931601364874849227647997782255647992570936798428138187231658313350648821494967505001556395270597758976467180387709032164372067332126396125318042344719004982009718786901732607432741180977658701471057444437423735673434726817221836065246089392268301960771417720933756981290772561615591934838263607182042837362262638784969856002798774262989319600044287571063662045889374257987211444094186467772844269025975768458066628754051502925634910316492251550541132856226779007795284709218261984866506763007965776420456463704332747830219607311157467709163991178522642632722857210555596702300870963354983685852613360222481704565842427261038966791751166270599160524001632906901780251325161255162919196844786928580929044948368759995051793226092378922049576539134402921751165108370215361819792314537676194608638688159216810659732230709924292168198429589412693444192276396495225828445442745884825236330737960024641114691401820716408904178337466341418313244735905878316910988650567909755430284882419294845226965222088486732110164712888168826545071066975974635076718711473905217801061281366216546054053582849048531506072665773667020080502090367645501560234818180172954020085252839128953267614491785958532065888780626717080621986996852539337947812644216140341581952396852554259461517497110368884766192520606959658653811441203320067849331754330710533024098710275941783301650276828957173012423662646677725257946764909538944894944950293020103268710100719871843018920994802155655417596912297287043499605966698803173822146981755946172101851440460417149120561833266874408938397726198207760103760603155768651443435537947445601463535930197867962484769982335290504014631604069319957534624781754092779442704982627073743179599162405070307717059495142956775706683551364332707552817725522081036373473872297948883021301981195291853638036749799464029009855296994414220242375720609699476586919684912143531111304121974509661401317868621381765174747729910807633909700720292158645521119798707197280152060290541745445348381089329238483502674898838310823008344056110919911910154468861031995732803790051313272354145911208634815683088729167824274033386332028974702738351274085801157242182077358261077941266412015387472592419895298022348898206297804508929843955299657146116397480807758975246007362912172264780932165037397483442791370295141854800169669912001567822504480543140015931708151254240229388970080393762263410466099826512156005874012303517334746516201694977406934255296743820453626444185065065100058044609128014737922664329739056588218095386632505103319352012818744996012035102169884390983559647466454318867422243042656700848942319848288745308164191108452842053856917966605505670779448217843424972146357943156018537626330804417085657455207356824412112174065442812780445229699965819517640067146093733498793701892463983090553770013852156722441925861999805540978487932893012624437170316092365656996159049254832226370884476882826714007973605915109566205171883829092250226388051482135464545089547453201986158326133275719489366174542396670658624687796465857875358455064957881222331159161792623170830163956506029411543719402543406365222309026881098191998562892915911556440058790707183495022068624498730800409718740071431510824180229630416030207548821493617100770588441731389172196417659988810555188694198590469791403484661661754290737628125042866146021186701971861238240419800547845687966832703698879654204479625364291388475256876171441266561085455092866252082649423041028312134783766647956039912464829936831145411067240624775770994691725959428083001394207445111318183293165468276722044846954949310770747594518355654087066229723430701166123311729093230121756743021865252233840548062277013371950352511932248303460670759472863514905167671647789567327097340068473159656248079854366745777231327317001065409072806791973846591337670839246060415264279164540567924245679399771518885638619353798711618219438661938967066576092977679379004979466865743056286501508778815190468022462730498834143685030671957935892078265848183085957030218435671959355912196418008130318087293378394546443556355509078336867625378291839822060730842997780692882437703807649471028405166995446817857687115937117557405333510233902393321505722559653458010816315916995334950061264876671701174490344789255913361416973636153205803673421423461820636604764013015631762775399547483319620538890903304248402955335008170580390706323654017415548953646864173035511641800259378435156247414832514298597744063153864335870379650547032490153649670602027351581476373958063167227414008514173117904670778509025809789057301749433300046007936418590393781373083817509663048598481440761991749584172976929304375826664539512311651239972519416542951674846638853795255554340847518646218197240289537100974320266431090320333370117441095617287237275973321443175091238223888339596509449471006016501721822459375918696779463702009067602800028988514616726662986743187482756410455681044944463802815565073658387155208536599915597656343561583964762814901317991242909125919387407246395334837713800545582427612982237066108380437239862657504045494994292295423510764103404263441410306382273606388685952278012612294363921150660524297870147209745312260740204357599656136797007488124459219531210598863832700769478920311255798191143020175426215263508179372274458519471471558643261633472339008827533289104178832653687351851272743502827167653784976494474270218539248621285715114518326014488711136023431569655677399130686887162115404543334730988282586742034693008047256577311176294195023819007364765743976617737861602582514769874347966988342208935527076749371202746559975577477492305896921116418159892182378963376737298205912986944402245862847762630941119765781768789610159430811755064806054239066113152506983281690058388772920313623216782988928381786144166427515498029310605980681641897065938582337094433503856164013798064427440695652400780700370027427421524050674809328643903665130969166991860472880753073279560573101320916583215484912123029839492190392646282220605411141143830656288812796113081065171949675515222131292489050018163934331006230466035366379298158405853472710680924371588312855863262677902533664568294411962046391606137844344506151139503961171761689264934257446756405125530407212721362720493160906776598613205210543366993284375073386100531515444418264174898284974521273136114135520280485608009660009856368130280152585640926813455823748838612611417463795780953512361567053420382796755310323733181210447765266487185013215778188663941833955703861340573542932452623663309774210364282333789379059224634489135762204764485418187378760955721453044944962334550064852112788184107451981246858219821650019800907671591382417520731390467029939402962426364248887115742942068799957166163173523110376293950192725264146204984379242069385768073777926116345990450078859281153674902456600467378326747435254186825101333493565571767740650009228374591282870916438576799024127469812803737132888719301438236547483147385690814225334236646134393792435218563750830931228517880375944301370789894234753458596521996816606647103643355610839521500286642292835101902266126811863089031905389020687983996355209859806361155872473958398784503857046955656133576587312451230345643101790636765922256742978869322904079351745266431699322316794528842068921295177880626576281200890380134857653449798724553699753933449189447380863697334350196135754805645084848332313851377384623972755360212741174546569198100704064697340920939827741896961441790966449942242287773679008379637500734871284279322160272765729271798789572216679592350675854447387428867525064094206363386366549411033862407840178326031541817803445068674078792363554918937299732651286437835151568008728832530673421601193816625150187356598406885897100669365966509243727450038844099948780221236788886324631413679184012694540103174169661083813322156642622948552923979277830049839209385282287950773726731858278821436500901498982993819888879843722800794166096858516416559002300086816240953379523947488871092802044614861901531979986588217675653096892190635954965293423986432428137258538086203947498928262062185565747600960298454413179188751397290557596815398167915994597728217183599454948479579133266702590461294438351044714449249964985220605452084789903547910038480031666188383125981095157049194160811124281979886735863404572739704761615811117250203495230999602662710418506944478154892770990799750893303843896496523377861285308965581893793658805538273026198588490066763622632955187788863452832918445407228926046525938478921046169283831645248932892319833853235600968022184175731763973450404093325758722727976930614166021535430331340717745934476123339105674453672006852269517501997202003831796715455872660022324547749147388240742901079370858219043067564396390954039243803338579646576108670099624312903657874855178725100453131885916894413505595254720299208534019673038387221193215379205251803976901860648869989324361129739222505414327738468769930680971277868077367095256373421543811659672723228077195280694713096044469468752230089331621047179902635277395441962448668980505001714556435036082981551995674056796679355645277674791493100504676927321616146923298624996069014020997094722212146861845102541140737535674118554470160067682188599230596498024361222721095399140758007645717299895068977156773333219914905901457043372889238708011280648500428073771044906554205827907674952328320438501691204457081856548366399914500652654086072642610298775274240799187559484471328177744999101489539515371234084840087055709391788024699973577906350310777106032309526799399187378071254206692760674505994128591313521898244265073291545422547577531666906659368756312878544570744546277631926892156102760284324400814320041836489876658727527703353436958893148723709825453791254944317478174133056407789348068529623224912285688986048694897256346835839602094666016810671026775905105719784645445282475367133951735972812366919024431586285827624258122824519534189300699158856248905529866435984528217049189861291750732418304299574930673713984052436282223172194066301819557761218347846893932250514286337512643860141601270731561664827881480181104792325254716958877654129858471554923018035912288838460383344097307219117457144755773884204095536231687567161128241419296966258716038758659816859455018818330992676548643018623535062676025433835511162011568719356348805256379149350025496661251085554301606876556503114411475595401940053200482186166938033372942026739515819149796752803312769827831819299816840312910208021738865910088390499196648200198671678052300899028732915392337648250644329526478481821085072542747446428745201279168438220006623615924860886026730672934916938510173753062852821596533771293175840803420085384428123794420654475328556960103013200585700348012706212904219311468579458814070753564673624528961477149095118376640300715514101865456342645446145027668604720402590356826510958857201568720005114622186632162158681447149038741067330614644268730794888296677099618020600743351358644533441022428968939267378846224202475603465807726615523093193117070152576610955708985536299733852428971994718313218207122132570931079553411691531338022097009551535721504600296939852213517729226954865308503991977243146122980894097547107120937805209598798409067235563400474259651617287197960998226304681028553895853267187645789167627185064096296578630890245469575779588690586198009503322366947617802177410154114625323199282436219590379169609390474673104248790750719213692049702155214257203194230102629067010093839340085253912653965141986710294105425493204469778628073089705331465418714563100040456390560730819784594409406620581366986350718394963931428861648895032426424029505835666833619243141232581429377444832515991305014153531155904988308703898317842754384146253153714700176526021502811338676888254200055209098891128813583782779746112956149839918172745855539316618279889507627800471237596250685720613185379453422952117973329702365952824622415434153080496386283697683399627799477003904211215275167915604956867399886983771742542797392063850365366771769391728276434897028774740019922796538699091181717826979047384700160150383100575442747490901691881626968305185991959230844871816839178467183549040893504124475933868006839826062760586872970547040263866884121128628601416697575602409670931331052290360226169629947553350782759687618177658685728134303425896745605069963938590021990257879009867441660005575313517106062907759439223646989031388961665939151529505780322828911865642459168676939728016887399417808332440772659360143040002113937286609714081408067133909930764381252722192031188643701989504797691697714665078559749539047336310610826804563862623732189138886623809868218352455198477921486929750296729874666998045712084688752662079437202116548724186553845636402432612416410633223973893999903338853053302501183787495565602653735235960797711720421620059144610908971945252977875343912262234895518585931887353749824014004114418530673838688291004863920590214626383930286297982273093608148154364988451124750673233580682188272202475622888007236791617250994227087754059654631122699088901540680002942617776553623149995035580448285275709818032728145193884984834308689581251824607528470689627212629335584090002771832514784762572277326423567698095305718195250400428460843746126686648756279414038948332079044799883226612070694734794644146979587681779490016272958277517729830514789326142328850125910104003703554410702197941614941935982627416442668460960821740387576449757100429489846667819155931000004112325878786785858810366678535448453878874091744036507377288260435485506964458716636862287835903031875098426704339445983909096508330896023957731903015047554259398142803172829580339478856887370861709667782321931438445553167451320047009806594853685611627658571945701763829245794612754325393134080865024116226584325351298829408897324079630692119498834476502262205299700495981122903530380095475535097919597556415604353644651312450836624358432320626022804325905335894016898147498822651484065456516780728663109557861771783370945654969101404959394727221076057761015864917931036417960426730001261768310870033185857746706707465882094543746249487667327300430515498536625806920852255691317200591949149234283107270986924239228254217726656625481616846378871949905632829654577598504005235496022397791775274578875938938892886896281643123765320181840897743348681350731769126108099976045159097664357475914127308828935194255413782039553850040514853451454509497507650751937759677687373711837480921077449120272370837486394087210467075616596815000766343686258186978160263714018304159578133110762117705596998658352370807285195215332682613351681849701964458651046215728004975311314067814306736415651527936401479912187305657839218184625410263011978774064271127937572384041163026071507556975334596654208280227118610133643409548319702769105631196843339967223557119463833226889516434547135361238560465017190146508191246735744046155608830337589588780164959859253213601362305866173190001737265273992677807231027171082164269498303321382195428789799609410365732237646365410278714065361116452385657321632309976636898742570479653574337392863274431729912096828162945002783140768158211852736323803027308076675915511923856271262471204807598077085159490700099247456370406070837831474891044427608939005762863423650590601668972593480072354225629313340257528035095362980410034374407328966814447971985450181193048857644393880428822714130945601829155429121338333642267637119848991693598484170855232348861006593795047399364324684669408103190930015808948040399564309209945936348280356988454091412607035874348092179471699087732906171393420256533527230585289885034973162184156416357553000373512924458424882172660523538690072512027545728786535131591236543235214880192022950395291917417397585501254263983519038776295109331250152819469350583294191270046235943285675663314412852769788251658850454452414857442117500946533833545288615535975209439213512748894731226400742108551394658799006319955412953033379048622891564448576515389869081887720266889549928676611203773485776954396084760465631001017919283895858942465403449819216869716359355844660866873467594216947879462844474319916512857187881240574158501032475338364270004743505124669611377624024033442088753877840463922683384331066836954126858851556065773367140346227209570946419511722440456222055362916276795781784295195161441005088393255720278472621989015355394707540015951511595218209912306500744239431681383899444997284228198824794930353529893893073142924660102336796040798648200910295020510947654217832511201234567754692558746162040824847896348145702098953454057040407914102448397066852761911226320208003637179388849669739269973266152813450338821372950992152245930499002954765802137650019439057254654192839610358537961649020741882659940667947858039608170477543407808382267344505725552431909386574055174074236112038911152842032666681526870477207263040395232160484104312261881509003976077678224462295065946364266867126085828241869548038034572781539028396834006557455361846924178860005223319451666126846763381749920464677703915287451764924161583624097153206758536107151041056567710204888665409268037500962838104724804090757913219571580545332640938806851877976822003098671073084173697110539819662296033107053374519924757976967814494329220830814526349146118067263570250317545856446565280001338754953439530923540591835103818441619822546818744153252992304684080990567934670917393198679886179041721247449364879843158464295700483936598344317653060405014559429449687983165136265152315078591410074721594971195320088498040859856207004305064889397559601952414403415443127022472693652242826442404378611246071704832930344674771282412970768621250730482276662883392326457245718579052866807825365046599657603826959236949202648955970384490448130060098297929976631111886311102812359089191479991985444850300751040086093472316794181200225097722233998275665419742475837429757837388648070067089441544764928715031897097030881492679441187300773821079871558218647913923535314222945030777499749249234669230677426732227038788514397531859745399291178330372923960447028915104019805133487548015815355799387453726603063175004814443658793216000070544230340756670956434803365279527808222752827058371802545821639933852039449481752266219387363299953138479570937732828927254466522921072476706441815355573882690993806873456223516388055292619826632162617977294029751693238276912592490360719690802130479150050929295453894196314114491655742016949804350537084570100488807886993374856666817055119110532884141694350471117342797974862524622156195410278969985064862274865886485324867485491835651142523465372819369149820698077457556421889049956853963235620190844630490038797153299047482699125287567033537926896599915097142821928309145969631310088908555114148150697591868348939842852888534325302050085534203627292317463348720104626069911593167585368142681840054260173752272707466879582741002777643663123915711951020747565808195737915811658316806579533114295269534948818631687943819967382778220635655367853559495293954497486835443097397757386220482496693451866047484859838627274276655871550698899329974352485269094488282842276652485618369766008117118078860584986663982958428028039465674858758144112839655029616824637775666614674041431648269803510249138308192207282135240021430676467892959434574549016171279629015245076373097049594435972398686251902286004813687880964039076701542795344386094151933024551150953685581752571746647083836996737596697905462171045985507335470724985574980679929525191326173262974830227637830430371431058342346404149227519405707140131137242600630891504717708690402145787013898109900016097432019665274898454244846018430927446568659509775676154311707950077286059732716474333051040654443157929881788274958901330893993974470328523789565619465582107143116032799493144035463563282286321428613376514944749453689562690737644810030362868515112459435457718530124994682914553433921248620577251475332939347870202031556428879584744654682413901101509614021418272535455673085381330330975888127502139050460572208043305639399647109165397133764972316427282591303552761016247140156340042457621645755779933408390711538772879274307337583242342124078190742339647503061046526748814406064891342408247912799600737831659151018728446744703324503098991062189481068839828348935398307457841584806689508674476307475780192792075546888425722306869210853386469409938794580320205271387704999146682959016319319582316179165542322085219571054289262304164418898731734375303410690505438919294219396287391220071662705439410230618900576096401563108379451997932983356777467808530656067860062748675478547505931621100579307437483815478686930975504449032269578735009985987895448179886705556416911635058509969501877442120378201229086304356897713564507807092693283181564672003742014503291728126668083525479398153623767363032269894676528544621583214044128667582686191737890559309881973952200309558701281390218291470546029772165696633320324516467254830879223576070470411485517051344346657289971868903652695751037513001053649602962869557185239297244661607933074287150343586997306589428509963644019264430765627834926658695546602900072897047593871524980606170000818398081516692371086969182293659368699722756421980487338727521666523301847271314184035824787710410801836218539440452679554055265382924328298142097644150756587206812515126535021859687314491425916443492572800729735648189684401773405048635331731343407153634795639396561927135561015142107565162257773200327960475926618440697362836605468346394162479689455513586828468152452529440531573404295369553047594867190517805692058140212666507258345772639505609394607520104117465060092174349845155041801281322706632706412714316826186103298870655321934115651706877813215514235263613864608518322243467815673596846364161113809793611287897771917056986486305059979970227348695591372385543152202202150170120302648065476517560396421897689672447923219926285940952067289665761015815959687817868165634446970368808230662161789424522457594698900919328314976723983707169873816225363465162072702799555905883639436682601041813807873994645257616202439001895101774434229341373763524299309935359060610797662048967086087313953183704822015729351229882830317033025443775364520276981452684702603123138960759489618120968147555524637286568679789933432453486875983257954491862387406570557152374738327547759794656407838608437185755459958812113725909317853959599163735343023569923271359273588983657597641025595583767956729183095387520324380138350199298494160518015769869394977715070764493626931769469525364806102607646594126267505790368446089227941314920303605655989986604901531704831866869587676132490956385975675684432879470472202000482212701397544706710469464454368072413173628778251127135521584646651059907375564716863252541444285965731350113841675579932347789788064947974544317424277145867464610498896706386254547844301943771542173041617861609662629145268748587594857796962121527715003856262851624681521228980466321561651260763327827112269941318261446455990204812364687510712699256266377441823762151838422934924445521222024261532097781531412298820603150283764699582030582941837135463149393761371572799232427662682608793183520608853812302999952281464979200916285146708608479453197077328092991843006050012793296243548818293546819508480026686684282234743056811747437543312341644824008821081517381294004744379706475723667183619046612145248424720017060033704593592192220497158505588625475527164611459652461608309078958068892117965070809213734092583030592213456888539656093042940185903603304171867844511755738517314636168275744229792486027874295241333575047960334430260911850995625523147941367353224572678431220224244926406994361854809318760270054871508285707226632533687415896020737958054003299345289940110882798655219141442033292667097493872975331112801584571562780465275224983472222715747571791780785236404232152711913479014948335313673299167098032178177346069394270556047116638284177563629202545143711973850607437732763021935181419098170835986217943029488409160256390862745849246412911706753805326345435691007896883900051375990685889000665654387164793004096654619167702444670655281355896048919356489985812456409445046064344481046801253494741233266159978762865762967144348327060379513022687970021268424087440260356674127004897214150871580935052268953897177213578975440400704805279625924475510100569039694731631764689060231566018476841342122457308114817039728851886996702259828927198131485410452816969799046741437016213717789792182885570331336380976124959182565140429645111255851507006189922630309557164103686291521450990610095034852446110431228578219189341846009666162475060872281703818985204446234733705225653954853231347696685985868222749765477657497531382384740415408948211067430023055034972555665558301068171785305504689155605363917591032023936141636006170619452342873940550267493273491108692830075449466875676442385810260343601555662399972741755127584915318800572367654891231207426341745312618059080334999315888514244534345230915636341048572008510301373639046927515618323495649916424659352524542785269028621119024442205990056399189219247526622979569075607815023946762348515561029352865930988177650339942462081226294469460893027909307332574255615391026383341918972726344326456930183347993935930149413234026797843044769043799461634200062071006501978665821679713744382056737231872201416937388614676849972045975307285799243323413890314312570641461063432742754860570807900656097756470138993439215377744053732357514052488185810692160727832904601626078493265281326548838404225160663622770799647942703609024523547295100093925204391442316722720512582714559198149447691289974638196250566178561558736525998775441004832546506066683153678963480279295524358020684382986627380766147145141943032674997573638935284332718538160898354746947452628041888589183335127958924099371773215317191865992606441643907102336402140907319322692352946800219245363022351687187274007506415738379096540010138694792887589877455174746516888499764601791458050828842838702839891780372051758518386640834514619310116165989598840657715620373697344974733312738282597813593220801913977280165675875411340854327869173467950023420985541193880854367965918064624956006500670229616545460671099650148559399068933140770770380412484851504478627552484751485328032147300654337558976557849404558796416031158278674490106214792544233959633043246356190060234244037317260725727622703147843371855902840882521804815085077158746389746466981589883441083614691400869694622096481527759077348043303810398178846466058821858346121254703079027367381789253561302533181419595639956714839356291892851037510000119876038181591976702727448860524696573448599219543494232492140481455185517961934686991636717683248086416967708807034555072066556502722343200689912844660545996680593770364350318053058717091558231361648850310345227506662617688484177901118064248609192087542001311318869698571823397403192089411391729199020329103699954712257625198082494919640364126011463476385805401300829202516314695763778703447260186343237773761526650704955534867380178824221009782449561125166050193676184901654793304087431653759248786023798914736584977409968415495899347550484258533440983565439706466599409658964391549584487145411956267213677439182216382497607071552421496060076293584104921849040824901496586158379477830602086148539459919561565152182995419694133022505278229276051690901065001608616200004899961950741480758161263303555446110992247457013371200333705728405676519880869857188094342295419463666155935294629005188058112338057978134354559932326517873444027144381859064628436415274778064419582857604675945830522393574580191258056410364390433934988159213530226891181537573436597756193719311992183197446992458562438927776866667687361129451552658332971298043909047961287012770257473052153638417584224415454203213452258756461460082445326834076280798904393832893134349577104424148454651838819560130440932456549742597915386776005514207069346298155948731234779537571916161553902504172763491780333415535471411839735458194024405345400069390280315961427378027461574895405797073313426849789493534768327709304867634947922891252258299100175631576694748615799577377954770535618354977141790376346593349120884053421739346417893992457286135212471949068531874696578561761495899136361519435260628724445194732521388822809533510156845314676405988253444366567297434869030464897141931120002924111966499984932800524144093803791929909979337934433001911162524096850393401723371208585848406892584671988209422029595221109119577547843475526074873616829600415420498626501622732491653350521002320015829929401221619143262961484749970132873133773970973674676037299074403924908137776169916670398037125147234640760210854051530947552456057760772760661575036723168270002754722423364991618103129477456726241609193282561108621110431381529895641002417208875904603447451065359793835521670137561364273127332978461050259384554366620725407747440250825134447891734396140856877251680998163490769407731275576787510208276507830627563672962441112225439562198676349512362294028269543837880310718122122912121112924334547944323689275696602415172567355047734776175425821826671869887900000000002508398774780627722606678354969603512884991557192512901477301637600814322741301628194131528280664223161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999999/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.092070245043874455478664329006079297423001688561497419704539672479837135451739674361173694343867155367725548683091413779027929551879834587857228699363307043284265037472609377072285154581900446243662887524441186023215859446961325442118043438120199310745828780232512516305324306943017211077242680744434393314433588274761550349000660172924284716285729842294237690773961388228044344622498585347863453689118814253082419197486359454032147189198319033143866021423837056207677317517847011467076188001061138600276521733487760666258974349306526388553129997472961521614656612524871506004369843718128413142207573136428334533870969970358299379412625389920602693452814637776715369105453488057537944637696633988731255844148126215772624424569761545733343161353055227544940146016249998963984865648708333229649080193795169331127545805829612301308518520879844570822146556308474080482041078759954093202273015479885465236646447653006137177855945531787707152357026514255349679527695587007557118252887549975036064451202464756803105120924672419205444292988051456612926308160780060041365978157678478153849300597499716776873351479134181259039489631260838614933402769838107495373216532106774297217581006631437264054594993969105919911290225919702837471937125527489266332534025952859798700200062255810823910359058687215508361286574882693285055845012721693788760199280388751476069304297309647239106348058842297777496949426937389072688873442609843575690732078430856708837350279251630902464623677393530544287281713494490505551398794240111950970519572784001771502842546481835574970319488457763767458710913770761039030738322665150162060117025396412659690062021645314249071160311811388368730479394660270520318631056818258548173309913208784292446298708366559647140905705308914288422223868092034838534199347434104534408899268182633697090441558671670046650823966420960065316276071210053006450206516767873791477143237161797934750399802071729043695156881983061565376116870046604334808614472791692581507047784345547526368672426389289228396971686727937183576507737767691055859809033137817709835393009453229518400985644587656072828656356167133498653656732529789436235132676439546022716390217211395296771793809078608883539469284406588515526753061802842679038985403068748458956208712042451254648661842162143313961941260242906630946680803220083614705820062409392727206918160803410113565158130704579671438341282635551225068683224879479874101573517912505768645613663278095874102170378460699884414755390647700824278386346152457648132802713973270173228421320963948411037671332066011073158286920496946505867109010317870596381557795797798011720804130748404028794873720756839792086226216703876491891481739984238667952126952885879270237846884074057618416685964822473330674976357535909047928310404150424126230746057737421517897824058541437207914718499390799293411620160585264162772798301384991270163711177708199305082949727183966496202812308682379805718271028267342054573308302112709020883241454938954891917955320852079247811674145521469991978561160394211879776568809695028824387979063476787396485741244452164878980386456052714744855270606989909196432305356388028811686345820844791948287891206082411621669817813935243573169539340106995953532432920333762244436796476406178754441279829312151602052530894165836448345392627323549166712970961335453281158988109534050963432046289687283094330443117650656480615498903696795811920893955928251912180357193758211986285844655899232310359009840294516486890591237286601495899337711654811805674192006786796480062712900179221725600637268326050169609175558803215750490536418643993060486240234960492140693389860648067799096277370211869752818145057767402602604002321784365120589516906573189562263528723815465300204132774080512749799840481404086795375639342385898658172754696889721706268033957692793931549812326567644338113682154276718664220226831177928713736998885854317726240741505053232176683426298208294272976484486962617712511217809187998632780705602685843749339951748075698559323622150800554086268897677034479992221639139517315720504977486812643694626279846361970193289054835379075313068560318944236604382648206875353163690009055522059285418581803581898128079446333045331028779574646981695866826344987511858634315014338202598315248893246366471704926833206558260241176461748776101736254608892361075243927679942515716636462257602351628287339800882744979949232016388749602857260432967209185216641208301952859744684030823537669255566887856706399552422207547767943618791656139386466470171629505125001714645840847468078874449529616792021913827518673308147955186168179185014571655539010275046857650662443418203714650083305976921641132485391350665918241596498593197473245816442689624991030839787669038377123320055768297804452727331726618731068881793878197972430829903780734226163482649188937228046644932469163729204870269720874610089353621922491080534878014100477289932138426830378914540596206706865911582693083893602738926386249923194174669831089253092680042616362912271678953863653506833569842416610571166581622716969827175990860755425544774151948464728777546477558682663043719107175160199178674629722251460060351152607618720898509219953365747401226878317435683130633927323438281208737426878374236487856720325212723491735135781857742254220363133474705015131673592882429233719911227715297508152305978841136206679817872714307484637484702296213340409356095732860228902386138320432652636679813398002450595066868046979613791570236534456678945446128232146936856938472825464190560520625270511015981899332784821555636132169936118213400326823215628252946160696621958145874566921420465672010375137406249896593300571943909762526154573434815186021881299606145986824081094063259054958322526689096560340566924716186831140361032391562292069977332001840317456743615751254923352700386521943939257630479669983366919077172175033066581580492466049598900776661718066993865554151810222173633900745848727889611581484038972810657243612813334804697643824691489491038932857727003649528955533583860377978840240660068872898375036747871178548080362704112001159540584669066519469727499310256418227241797778552112622602946335486208341463996623906253742463358590512596052719649716365036775496289855813393508552021823297104519289482644335217489594506300161819799771691816940430564136170537656412255290944255547438091120504491774556846026420971914805888389812490429608174303986245471880299524978368781248423954553308030779156812450231927645720807017048610540327174890978340778858862345730465338893560353101331564167153306147494074050909740113086706151399059778970808741569944851428604580733040579548445440937262786227095965227475486484616181733389239531303469681387720321890263092447051767800952760294590629759064709514464103300590794973918679533688357421083069974848109862399023099099692235876844656726395687295158535069491928236519477776089834513910505237644790631270751584406377232470202592242169562644526100279331267602335550916812544928671319557135271445766657100619921172424239227265675882637543293483777340154246560551922577097627826096031228014801097096860962026992373145756146605238766679674418915230122931182422924052836663328619396484921193579687615705851288824216445645753226251552511844523242606877987020608885251699562000726557373240249218641414655171926336234138908427236974863532514234530507116101346582731776478481855664245513773780246045580158446870467570597370297870256205021216288508854508819726436271063944528208421734679731375002935444021260617776730566995931398980850925444565420811219424320386400394254725211206103425637072538232949953544504456698551831238140494462682136815311870212412949327248417910610659487400528631127546557673358228154453622941717298104946532390968414571293351575162368985379565430488190579416727495150438228858121797798493382002594084511527364298079249874328792866000792036306863655296700829255618681197576118497054569955484629717682751998286646526940924415051758007709010565848199375169682775430722951117044653839618003154371246146996098264018695133069897410167473004053339742622870709626000369134983651314836657543071960965098792512149485315548772057529461899325895427632569013369465845375751697408742550033237249140715215037772054831595769390138343860879872664265884145734224433580860011465691713404076090645072474523561276215560827519359854208394392254446234898958335951380154281878226245343063492498049213825724071625470636890269719154772916163174069810657267972892671781153682756851807115225063051248035615205394306137991948982147990157337967577895234547893374007845430192225803393933292554055095384958910214408509646981862767924028162587893636837593109675878457671638657997689691510947160335185500029394851371172886410910629170871951582888667183694027034177895497154701002563768254535454661976441354496313607133041261672712137802746963151694542196757491989306051457513406062720349153301226936864047752665006007494263936275435884026774638660369749098001553763997951208849471555452985256547167360507781604126966786443352532886265704917942116959171113201993568375411291518030949069274331152857460036059959319752795555193748912031766643874340656662360092003472649638135180957899554843712081784594476061279199463528707026123875687625438198611736959457297125490341523448157899957130482487422629904038411938176527167550055891622303872615926716639783909128687343978197939183165330668103618451777534041788577969998599408824218083391596141916401539201266647535325039243806281967766432444971279195469434536182909588190464632444690008139809239984106508416740277779126195710839631990035732153755859860935114451412358623275751746352221530921047943539602670544905318207511554538113316737816289157041861037539156841846771353265809957315692793354129424038720887367029270558938016163733030348909119077224566640861417213253628709837379044933564226978146880274090780700079888080153271868618234906400892981909965895529629716043174834328761722702575855638161569752133543185863044346803984972516146314994207149004018125275436675776540223810188811968341360786921535488847728615168210072159076074425954799572974445189568900216573109538750797227238851114723094683810254936861752466386908929123087811227788523841778778750089203573264841887196105411095817678497946759220200068582257401443319262079826962271867174225811106991659724020187077092864645876931944999842760560839883788888485874473804101645629501426964742178806402707287543969223859920974448908843815965630320305828691995802759086270933328796596236058281734915569548320451225940017122950841796262168233116306998093132817540067648178283274261934655996580026106163442905704411951010969631967502379378853127109799964059581580614849363393603482228375671520987998943116254012431084241292381071975967495122850168267710426980239765143652540875929770602931661816901903101266676266374750252515141782829781851105277075686244110411372976032572801673459595066349101108134137478355725948948393018151650197772699126965322256311573922741184928996491427559441947795890253873433584083786640672426841071036204228791385817811299014685358069438912494676760977263451433104970324912980781367572027966354249956221194657439381128681967594451670029296732171982997226948559362097451288926887762652072782310448733913875757290020571453500505754405664050829262466593115259207244191693010188678355106165194338862196920721436491553538415333763892288764698285790230955368163821449267502686445129656771878650348641550346392674378200752733239707061945720744941402507041017353420446480462748774253952210255165974001019866450043422172064275062260124576459023816077602128019287446677521334917681069580632765991870112132510793113272771992673612516408320869554636403535619967865928007946867122092035961149316615693505930025773181059139272843402901709897857149808051166737528800264944636994435441069226917396677540406950122514112863861350851727033632136803415377124951776826179013142278404120528023428013920508248516168772458743178352562830142586944981158459085963804735065612028620564074618253705817845801106744188816103614273060438354288062748800204584887465286486347257885961549642693224585770749231795531867083984720824029734054345781337640897158757570695153848968099024138632309064620923727724682806103064438228359421451989354097158879788732528728284885302837243182136467661253520883880382061428860184011877594088540709169078194612340159679089725844919235763901884284837512208383951936362689422536018970386064691487918439929052187241142155834130687505831566705087402563851863145235609818783031183547623447920380132894677904712087096406164585012927971297448783615166784375618986924169951630028768547681988086208570288127769204105162680403753573603410156506158605679468411764217019728178791145122923588213258616748582524001618255622429232791383776376264823254679454028735798557257154465955801297056961180233426673344769725649303257175097793300639652200566141246236199532348155932713710175365850126148588007061040860112453547075530168002208363955645152543351311189844518245993596726909834221572664731195580305112018849503850027428824527415178136918084718933188094638112984896617366123219855451347907335985111979080156168448611006716624198274695995479350869701711895682554014614670870775669131057395881150989600796911861547963647268713079161895388006406015324023017709899636067675265078732207439678369233794872673567138687341961635740164979037354720273593042510423474918821881610554675364845145144056667903024096386837253242091614409046785197902134031310387504727106347429125372137035869824202798557543600879610315160394697666400223012540684242516310377568945879561255558466637566061180231212913156474625698366747077589120675495976712333297630906374405721600084557491464388563256322685356397230575250108887681247545748079580191907667908586603142389981561893452424433072182554504949287565555464952394728734098207939116859477190011869194986679921828483387550106483177488084661948967462153825456097304496656425328958955759996133554122132100047351499822624106149409438431908468816864802365784436358877810119115013756490489395820743437275494149992960560164576741226953547531640194556823608585055357211451919290923744325926174599538044990026929343227287530888099024915520289471664690039769083510162386185244907963556061627200117704711062144925999801423217931411028392721309125807755399393372347583250072984301138827585088505173423363600110873300591390502891093056942707923812228727810016017138433749845067465950251176561557933283161791995329064482827789391785765879183507271179600650918331100709193220591573045693154005036404160148142176428087917664597677439305096657706738438432869615503057990284017179593866712766237240000164493035151471434352414667141417938155154963669761460295091530417419420278578348665474491513436121275003937068173577839356363860333235840958309276120601902170375925712126913183213579154275494834468386711292877257537822126698052801880392263794147424465106342877828070553169831784510173015725363234600964649063373014051953176355892963185227684779953379060090488211988019839244916141215203819021403916783902256624174145786052498033464974337292825040912173036213435760675925899952906059362618260671229146524382314470871334837826198764056198375789088843042310440634596717241456718417069200050470732434801327434309868268298635283781749849979506693092017220619941465032276834090227652688023677965969371324290839476969569130168709066265019264673855154877996225313186183103940160209419840895911671010983155037557555715475851265724950612807273635909733947254029270765044323999041806363906574299036565092353157407770216551281582154001620594138058180379900306030077510387107494948473499236843097964810894833499455763488418683024663872600030653747450327479126410548560732166383125324430484708223879946334094832291407808613307304534067273988078578346041848629120199012452562712572269456626061117456059196487492226313568727385016410520479150962570845117502895361646521042860302279013383866168331209084744405345736381932788110764225247873733598688942284778553329075580657381885414449542418600687605860327649869429761846224353213503583551206598394370128544054492234646927600069490610959707112289241086843286570779932132855287817151591984376414629289505854616411148562614444658095426292865292399065475949702819186142973495714530977269196483873126517800111325630726328474109452952121092323067036620476954250850498848192303923083406379628003969898254816242833513258995641777104357560230514536946023624066758903739202894169025172533610301121403814519216401374976293158672577918879418007247721954305775755217152908565237824073166217164853533345690705484793959667743939366834209293954440263751801895974572987386776324127637200632357921615982572368397837453931214279538163656504281434973923687178867963509316246855736810261341089223411595401398926487366256654302120014940516978336995286906420941547602900481101829151461405263649461729408595207680918015811676696695903420050170559340761551051804373250006112778774023331767650801849437731427026532576514110791530066354018178096594297684700037861353341811544621439008377568540509955789249056029684342055786351960252798216518121335161944915662577943060615594763275508810675581997147064448150939431078175843390418625240040716771355834357698616137992768674788654374233786434674938703768677915178513778972796660514287515249622966340041299013534570800189740204986784455104960961337683550155113618556907335373242673478165074354062242630934685613849088382837856780468897618248882214516651071831271371807806457640203535730228811138904879560614215788301600638060463808728396492260029769577267255355977799891369127952991797214141195755722925716986404093471841631945928036411800820437906168713300448049382710187702349846481632993915853925828083958138162281616316564097935882674110476449052808320145487175553986789570798930646112538013552854918039686089837219960118190632085506000777562290186167713584414341518465960829675306397626717914321584326819101736312335290693780229022097276375462962206962969444481556446113681306667261074819088290521615809286419364172490475260360159043107128978491802637854570674685043433129674781921521382911261561135873360262298214473876967154400208932778066645073870535269996818587108156611498070596966463344963886128270341444286041642262708408195546616370721500038513524188992163630316528782863221813305637552274075119072880123946842923366947884421592786491841324282134980796990319078712579773168833232581053965844722690542810012701834257862611200053550198137581236941623673404152737664792901872749766130119692187363239622717386836695727947195447161668849897974595193726338571828019357463933772706122416200582377177987519326605450606092603143656402988863798847812803539921634394248280172202595575902384078096576136617725080898907746089713057696175144449842868193317213786990851296518830744850029219291066515335693058289828743162114672313014601863986304153078369477968105958238815379617925202403931917199065244475452444112494363567659199679417794012030041603443738892671767248009003908889359931026616789699033497190313495545922802683577661790597148601275883881235259707177647492030952843194862328745916556941412568917801231099989969969386769227097069289081551540575901274389815971647133214916958417881156604160792205339501920632614231975498149064122527000192577746351728640002821769213630266838257392134611181112328910113082334872101832865597354081577979270090648775494531998125539182837509313157090178660916842899068257672614222955307639752274938248940655522211704793065286504719091761190067729531076503699614428787632085219166002037171818155767852564579666229680677992174021483382804019552315479734994266672682204764421315365667774018844693711918994500984886247816411158799402594490994635459412994699419673426045700938614912774765992827923098302256875561998274158529424807633785219601551886131961899307965011502681341517075863996603885712877132365838785252403556342204565926027903674733957593714115541373012082003421368145091692698533948804185042796463726703414725707273602170406950090908298675183309640111105746524956628478040829902632327829516632466332672263181324571810781397952745267517752798695311128825426214714142379811758179899473417723895910295448819299867738074641899394393545090971066234862027955973198974099410763779531313691066099424734790640324684723154423399466559318337121121578626994350325764513586201184672985511026664586961657265930792140409965532327688291285409600857227058715718377382981960646851185160609803054923881983777438895947450076091440192547515238561563068061711813775443766077320982046038147423270102869865883353479869503867916218486841839420293418828999422999227197181007653046930518993209105513217214857242333693856165969100776228285605245489704025235660188708347616085831480555924396000643897280786610995938169793840737237097862746380391027046172468318003091442389308658973322041626177726317195271530998356053235759758978813140951582624778623284285724641311979725761418542531291452857144535060597789978147582507629505792401214514740604498377418308741204999787316582137356849944823090059013317573914808081262257155183389786187296556044060384560856730901418226923415253213239035525100085562018422888321732225575985884366615885350598892657091303652142110440649885606253601698304865830231197336335628461550915170972293503329693684963127629693585900122441861069952576242595653696329916511984029513266366040749137869788132980123959642487579242753593133957415932298313663392267580346979052299031207711683021875537028892274768434135458776397551783212808210855508199965867318360652772783292647166621692883408782842171570492166576755949269375012136427620217556771768775851495648802866508217576409224756023043856062524335178079917319334271098712341226242714402509947019141900237264844023172297499352619147477239020177961290783149400399439515817927195468222256676465402340398780075097684815128049163452174275908542580312283707731327262586880149680580131669125066723341019175926144950694521290795787061141784863328561765146703307447669515622372395278958088012382348051255608731658821841190886627865332812980658690193235168943042818816459420682053773866291598874756146107830041500520042145984118514782287409571889786464317322971486013743479892263577140398545760770577230625113397066347821864116002915881903754860999224246800032735923260667694843478767291746374747988910256879219493549100866660932073890852567361432991508416432073448741577618107182162210615316973131925683905766030263488272500605061400874387492579657036657739702912029189425927587376070936201945413269253736286145391825575862477085422440605684302606490310928013118419037064737627894513464218733855766499187578220543473138726098101177621262936171814782121903794687620712227682325608506660290333830905580224375784300804164698602403686973993806201672051252908265308256508572673047444131954826212877364626068275112528620569410544554584340732889738712626943873854566444552391744451515910876682279459452202399198809093947823654895421726088088086006804812105922619060702415856875907586897916928797051437638082691586630440632638387512714726625377878814752329226486471576980898303787956036773132599068959348286794952649014538606482908111982236235345577467304041672552314959785810304648097560075804070977369173654950540971972397414362424431906481958683443492558127348192880629174049195313212681321017751014580811079258107388104124925558430379584724838725902220985491462747191597337298139475039330318179674495496262822286094989533101910391786256313544337487430218398352484549036372714158383966549413720942796930854370943559346303905641023823350718269167323815500812975205534007971939766420720630794775799108602830579745077270778781014592244104305863765050700231614737843569117652596812144226239599464196061268193274674783507045299638255439027027377315178818888080019288508055901788268418778578174722896526945151130045085420863385866042396295022588674530101657771438629254004553667023197293911591522597918981772696971085834698584419955868255450181913772077750861686921664714464386505165810749943503794311878484861108600154250514064987260849159218652862466050430533113084490797652730457858239608192494587500428507970250655097672950486073536917396977820848880970461283911261256491952824126011350587983281223317673485418525975750454862911969297106507304351727340824354152492119998091258599168036651405868344339178127883093123719673720242000511731849741952731741872780339201067467371289389722272469897501732493665792960352843260695251760189775188259028946687344761864485809936988800682401348183743687688819886340223545019021086584458386098464332363158322755684718602832368549363703321223688538275541586243721717607436144132166874713780470229540692585446731029769191699441114971809653343001918413377210436474039825020925917654694128982907137248808969797056279774474192372750410802194860331428289065301347496635840829518322160131973811597604435311946208765657681331706683899754919013244512063382862511218611008999338888908629902871671231409456169286108476539160597933412546931966683921287127093842775770822241884665531367102545168101805748478954024297509310520877407256763926833439448717721179536366410255634509833969856516468270152213053817427640315875356002055039627435560026626175486591720163866184766708097786826211254235841956774259599432498256377801842573779241872050139789649330646399150514630518685773933082415180520907518800850736963497610414266965080195888566034863237402090758155887088543159017616028192211185036979020404022761587789265270587562409262640739073653684898292324592681589154075479868090393157087925259416418112678791961869657480648548711591687315422813253455239044998367302605617185804450234060280247596905212382286564147451660858039624403801394097844417249143128767573673840386646499002434891268152759408177849389348209026158194129253907867439434728909990619106299901255295389616616357928442697200922201398902226622332042726871412220187566224214556703641280957445665440246824778093714957622010699730939644347713203017978675027057695432410413744062226495998909670205103396612752022894706195649248297053669812504722363213399972635540569781373809236625453641942880340412054945561877100624732939825996656986374100981711410761144844760977688239602255967568769901064919182763024312600957870493940622441174114637239527106013597698483249051778778435721116372293302970224615641055333676758909053773058277207333919757437205976529361071913721790761751978465368002482840260079146632867188549775282269489274888056677495544587073998881839012291431969732936555612572502825658442537309710194422832316026243910258805559737568615109762149294300562099527432427686429113316184065043139730611253061953536169006426544910831985917708144360980941891804003757008175657692668908820503308582367925977907651598985527850022647142462349461039951017640193301860242667326147158539211171820974320827375319465095230645885805677721306999902945557411373308741526435934189877898105121675543567333405118356963974870928612687674639704257665756284093456085636292772907694117872008769814520894067487490960300256629535163861600405547791715503595098206989860675539990584071658322033153713548113595671214882070340735465633380584772404646639583953626308624814947893798989332509531303912543728832076559091206627035016453634173114766938718000936839421647755234174718636722584998240260026809184661818426843986005942375962757325630830815216499394060179145102099390059413121285892026173502359062313976182351856641246331146979604248591701769358385321729854247602409369761492690429029104908125913734874236113635300872192603403086349855589858679263595337643344587656034787784883859261110363093921732152415927153858642352874333844850188123161094695271570142452101327256783825598268593574251675714041500400004795041527263679068109097954420987862937943968781739769299685619258207420718477387479665468707329923456678708352281382202882662260108893728027596513786421839867223750814574012722122348683662329254465954012413809100266504707539367116044722569944367683501680052452754787942872935896127683576455669167960813164147998188490305007923299796785614565040458539055432216052033168100652587830551148137890407453729510950461066028198221394695207152968840391297982445006642007747047396066191732163497266150369951440951956589463399096398736619835973902019370341337639342617588258663976386358575661983379485816478250688547097567288655299904282862096859842403051743364196873961632996059863446335179113224083445941578396782462606087319816787765320900211129171042067636042600064344648000195998478029659230326450532142217844439689898280534848013348229136227060795234794287523773691816778546646237411785160207522324493522319125374182397293060714937761085775274362585137456610991122576783314304187037833220895742983207650322256414575617357399526368541209075647261502937463910247748772479687327897879698342497557111074666707494445178062106333318851921756361918451480510810298922086145536703368976618168128538090350258458403297813073363051231956175753315725373983084176965938186073552782405217637298261989703916615471040220568282773851926237949249391181502876646462156100166910539671213336621418856473589418327760976213816002775611212638457095121098462995816231882932537073991579741390733108372194705397916915650090331964007025263067789944631983095118190821424734199085671615053863733964835362136869573856715759698291445408498877962741274987863142470459835965454460777410425148977807789300855552912381340406273812587056239530137774662691897394761218595885677244800116964478659999397312020965763752151677196399173517377320076446500963874015736068934848343433936275703386879528376881183808844364783101913739021042994944673184016616819945060064909299666134020840092800633197176048864765730518459389998805314925350958838946987041491962976156996325511046796666815921485005889385630408434162061237902098242310430910426463001468926730800110188896934599664724125179098269049664367731302444344844417255261195825640096688355036184137898042614391753420866805502454570925093319138442010375382174664829016309897610033005377915669375845634275090067239926539630776309251023071500408331060313225102546918497644489017582487947053980494491761130781753515212428724884916484844516973381917772947571027864096606902694201909391047017032873066874795516000000000100335950991225108904267134198784140515399662287700516059092065504032572909652065127765261131226568926454890263381717244194414089624033082428554260127338591343146992505478124585542969083619911" + }, + "group_positive": { + "rational": "4999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999997/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999994" + }, + "group_below_dimension": { + "rational": "1/2500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "4E-30010" + }, + "support_router_span": { + "rational": "3/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "6E-30010" + }, + "group_gauge_power_slack": { + "rational": "2301756126096861386966608225151982435575042214037435492613491811995928386293491859029342358596678884193138717077285344475698238796995864696430717484082676082106625936815234426807128864547511156091572188111029650580396486174033136052951085953004982768645719505812812907633107673575430276931067018610859832860839706869038758725016504323107117907143246057355942269349034705701108615562464633696586342227970356327060479937158986350803679729957975828596650535595926405191932937946175286676904700026528465006913043337194016656474358732663159713828249936824038040366415313121787650109246092953210328555189328410708363346774249258957484485315634748015067336320365944417884227636337201438448615942415849718281396103703155394315610614244038643333579033826380688623503650406249974099621641217708330741227004844879233278188645145740307532712963021996114270553663907711852012051026968998852330056825386997136630916161191325153429446398638294692678808925662856383741988192389675188927956322188749375901611280061618920077628023116810480136107324701286415323157704019501501034149453941961953846232514937492919421833786978354531475987240781520965373335069245952687384330413302669357430439525165785931601364874849227647997782255647992570936798428138187231658313350648821494967505001556395270597758976467180387709032164372067332126396125318042344719004982009718786901732607432741180977658701471057444437423735673434726817221836065246089392268301960771417720933756981290772561615591934838263607182042837362262638784969856002798774262989319600044287571063662045889374257987211444094186467772844269025975768458066628754051502925634910316492251550541132856226779007795284709218261984866506763007965776420456463704332747830219607311157467709163991178522642632722857210555596702300870963354983685852613360222481704565842427261038966791751166270599160524001632906901780251325161255162919196844786928580929044948368759995051793226092378922049576539134402921751165108370215361819792314537676194608638688159216810659732230709924292168198429589412693444192276396495225828445442745884825236330737960024641114691401820716408904178337466341418313244735905878316910988650567909755430284882419294845226965222088486732110164712888168826545071066975974635076718711473905217801061281366216546054053582849048531506072665773667020080502090367645501560234818180172954020085252839128953267614491785958532065888780626717080621986996852539337947812644216140341581952396852554259461517497110368884766192520606959658653811441203320067849331754330710533024098710275941783301650276828957173012423662646677725257946764909538944894944950293020103268710100719871843018920994802155655417596912297287043499605966698803173822146981755946172101851440460417149120561833266874408938397726198207760103760603155768651443435537947445601463535930197867962484769982335290504014631604069319957534624781754092779442704982627073743179599162405070307717059495142956775706683551364332707552817725522081036373473872297948883021301981195291853638036749799464029009855296994414220242375720609699476586919684912143531111304121974509661401317868621381765174747729910807633909700720292158645521119798707197280152060290541745445348381089329238483502674898838310823008344056110919911910154468861031995732803790051313272354145911208634815683088729167824274033386332028974702738351274085801157242182077358261077941266412015387472592419895298022348898206297804508929843955299657146116397480807758975246007362912172264780932165037397483442791370295141854800169669912001567822504480543140015931708151254240229388970080393762263410466099826512156005874012303517334746516201694977406934255296743820453626444185065065100058044609128014737922664329739056588218095386632505103319352012818744996012035102169884390983559647466454318867422243042656700848942319848288745308164191108452842053856917966605505670779448217843424972146357943156018537626330804417085657455207356824412112174065442812780445229699965819517640067146093733498793701892463983090553770013852156722441925861999805540978487932893012624437170316092365656996159049254832226370884476882826714007973605915109566205171883829092250226388051482135464545089547453201986158326133275719489366174542396670658624687796465857875358455064957881222331159161792623170830163956506029411543719402543406365222309026881098191998562892915911556440058790707183495022068624498730800409718740071431510824180229630416030207548821493617100770588441731389172196417659988810555188694198590469791403484661661754290737628125042866146021186701971861238240419800547845687966832703698879654204479625364291388475256876171441266561085455092866252082649423041028312134783766647956039912464829936831145411067240624775770994691725959428083001394207445111318183293165468276722044846954949310770747594518355654087066229723430701166123311729093230121756743021865252233840548062277013371950352511932248303460670759472863514905167671647789567327097340068473159656248079854366745777231327317001065409072806791973846591337670839246060415264279164540567924245679399771518885638619353798711618219438661938967066576092977679379004979466865743056286501508778815190468022462730498834143685030671957935892078265848183085957030218435671959355912196418008130318087293378394546443556355509078336867625378291839822060730842997780692882437703807649471028405166995446817857687115937117557405333510233902393321505722559653458010816315916995334950061264876671701174490344789255913361416973636153205803673421423461820636604764013015631762775399547483319620538890903304248402955335008170580390706323654017415548953646864173035511641800259378435156247414832514298597744063153864335870379650547032490153649670602027351581476373958063167227414008514173117904670778509025809789057301749433300046007936418590393781373083817509663048598481440761991749584172976929304375826664539512311651239972519416542951674846638853795255554340847518646218197240289537100974320266431090320333370117441095617287237275973321443175091238223888339596509449471006016501721822459375918696779463702009067602800028988514616726662986743187482756410455681044944463802815565073658387155208536599915597656343561583964762814901317991242909125919387407246395334837713800545582427612982237066108380437239862657504045494994292295423510764103404263441410306382273606388685952278012612294363921150660524297870147209745312260740204357599656136797007488124459219531210598863832700769478920311255798191143020175426215263508179372274458519471471558643261633472339008827533289104178832653687351851272743502827167653784976494474270218539248621285715114518326014488711136023431569655677399130686887162115404543334730988282586742034693008047256577311176294195023819007364765743976617737861602582514769874347966988342208935527076749371202746559975577477492305896921116418159892182378963376737298205912986944402245862847762630941119765781768789610159430811755064806054239066113152506983281690058388772920313623216782988928381786144166427515498029310605980681641897065938582337094433503856164013798064427440695652400780700370027427421524050674809328643903665130969166991860472880753073279560573101320916583215484912123029839492190392646282220605411141143830656288812796113081065171949675515222131292489050018163934331006230466035366379298158405853472710680924371588312855863262677902533664568294411962046391606137844344506151139503961171761689264934257446756405125530407212721362720493160906776598613205210543366993284375073386100531515444418264174898284974521273136114135520280485608009660009856368130280152585640926813455823748838612611417463795780953512361567053420382796755310323733181210447765266487185013215778188663941833955703861340573542932452623663309774210364282333789379059224634489135762204764485418187378760955721453044944962334550064852112788184107451981246858219821650019800907671591382417520731390467029939402962426364248887115742942068799957166163173523110376293950192725264146204984379242069385768073777926116345990450078859281153674902456600467378326747435254186825101333493565571767740650009228374591282870916438576799024127469812803737132888719301438236547483147385690814225334236646134393792435218563750830931228517880375944301370789894234753458596521996816606647103643355610839521500286642292835101902266126811863089031905389020687983996355209859806361155872473958398784503857046955656133576587312451230345643101790636765922256742978869322904079351745266431699322316794528842068921295177880626576281200890380134857653449798724553699753933449189447380863697334350196135754805645084848332313851377384623972755360212741174546569198100704064697340920939827741896961441790966449942242287773679008379637500734871284279322160272765729271798789572216679592350675854447387428867525064094206363386366549411033862407840178326031541817803445068674078792363554918937299732651286437835151568008728832530673421601193816625150187356598406885897100669365966509243727450038844099948780221236788886324631413679184012694540103174169661083813322156642622948552923979277830049839209385282287950773726731858278821436500901498982993819888879843722800794166096858516416559002300086816240953379523947488871092802044614861901531979986588217675653096892190635954965293423986432428137258538086203947498928262062185565747600960298454413179188751397290557596815398167915994597728217183599454948479579133266702590461294438351044714449249964985220605452084789903547910038480031666188383125981095157049194160811124281979886735863404572739704761615811117250203495230999602662710418506944478154892770990799750893303843896496523377861285308965581893793658805538273026198588490066763622632955187788863452832918445407228926046525938478921046169283831645248932892319833853235600968022184175731763973450404093325758722727976930614166021535430331340717745934476123339105674453672006852269517501997202003831796715455872660022324547749147388240742901079370858219043067564396390954039243803338579646576108670099624312903657874855178725100453131885916894413505595254720299208534019673038387221193215379205251803976901860648869989324361129739222505414327738468769930680971277868077367095256373421543811659672723228077195280694713096044469468752230089331621047179902635277395441962448668980505001714556435036082981551995674056796679355645277674791493100504676927321616146923298624996069014020997094722212146861845102541140737535674118554470160067682188599230596498024361222721095399140758007645717299895068977156773333219914905901457043372889238708011280648500428073771044906554205827907674952328320438501691204457081856548366399914500652654086072642610298775274240799187559484471328177744999101489539515371234084840087055709391788024699973577906350310777106032309526799399187378071254206692760674505994128591313521898244265073291545422547577531666906659368756312878544570744546277631926892156102760284324400814320041836489876658727527703353436958893148723709825453791254944317478174133056407789348068529623224912285688986048694897256346835839602094666016810671026775905105719784645445282475367133951735972812366919024431586285827624258122824519534189300699158856248905529866435984528217049189861291750732418304299574930673713984052436282223172194066301819557761218347846893932250514286337512643860141601270731561664827881480181104792325254716958877654129858471554923018035912288838460383344097307219117457144755773884204095536231687567161128241419296966258716038758659816859455018818330992676548643018623535062676025433835511162011568719356348805256379149350025496661251085554301606876556503114411475595401940053200482186166938033372942026739515819149796752803312769827831819299816840312910208021738865910088390499196648200198671678052300899028732915392337648250644329526478481821085072542747446428745201279168438220006623615924860886026730672934916938510173753062852821596533771293175840803420085384428123794420654475328556960103013200585700348012706212904219311468579458814070753564673624528961477149095118376640300715514101865456342645446145027668604720402590356826510958857201568720005114622186632162158681447149038741067330614644268730794888296677099618020600743351358644533441022428968939267378846224202475603465807726615523093193117070152576610955708985536299733852428971994718313218207122132570931079553411691531338022097009551535721504600296939852213517729226954865308503991977243146122980894097547107120937805209598798409067235563400474259651617287197960998226304681028553895853267187645789167627185064096296578630890245469575779588690586198009503322366947617802177410154114625323199282436219590379169609390474673104248790750719213692049702155214257203194230102629067010093839340085253912653965141986710294105425493204469778628073089705331465418714563100040456390560730819784594409406620581366986350718394963931428861648895032426424029505835666833619243141232581429377444832515991305014153531155904988308703898317842754384146253153714700176526021502811338676888254200055209098891128813583782779746112956149839918172745855539316618279889507627800471237596250685720613185379453422952117973329702365952824622415434153080496386283697683399627799477003904211215275167915604956867399886983771742542797392063850365366771769391728276434897028774740019922796538699091181717826979047384700160150383100575442747490901691881626968305185991959230844871816839178467183549040893504124475933868006839826062760586872970547040263866884121128628601416697575602409670931331052290360226169629947553350782759687618177658685728134303425896745605069963938590021990257879009867441660005575313517106062907759439223646989031388961665939151529505780322828911865642459168676939728016887399417808332440772659360143040002113937286609714081408067133909930764381252722192031188643701989504797691697714665078559749539047336310610826804563862623732189138886623809868218352455198477921486929750296729874666998045712084688752662079437202116548724186553845636402432612416410633223973893999903338853053302501183787495565602653735235960797711720421620059144610908971945252977875343912262234895518585931887353749824014004114418530673838688291004863920590214626383930286297982273093608148154364988451124750673233580682188272202475622888007236791617250994227087754059654631122699088901540680002942617776553623149995035580448285275709818032728145193884984834308689581251824607528470689627212629335584090002771832514784762572277326423567698095305718195250400428460843746126686648756279414038948332079044799883226612070694734794644146979587681779490016272958277517729830514789326142328850125910104003703554410702197941614941935982627416442668460960821740387576449757100429489846667819155931000004112325878786785858810366678535448453878874091744036507377288260435485506964458716636862287835903031875098426704339445983909096508330896023957731903015047554259398142803172829580339478856887370861709667782321931438445553167451320047009806594853685611627658571945701763829245794612754325393134080865024116226584325351298829408897324079630692119498834476502262205299700495981122903530380095475535097919597556415604353644651312450836624358432320626022804325905335894016898147498822651484065456516780728663109557861771783370945654969101404959394727221076057761015864917931036417960426730001261768310870033185857746706707465882094543746249487667327300430515498536625806920852255691317200591949149234283107270986924239228254217726656625481616846378871949905632829654577598504005235496022397791775274578875938938892886896281643123765320181840897743348681350731769126108099976045159097664357475914127308828935194255413782039553850040514853451454509497507650751937759677687373711837480921077449120272370837486394087210467075616596815000766343686258186978160263714018304159578133110762117705596998658352370807285195215332682613351681849701964458651046215728004975311314067814306736415651527936401479912187305657839218184625410263011978774064271127937572384041163026071507556975334596654208280227118610133643409548319702769105631196843339967223557119463833226889516434547135361238560465017190146508191246735744046155608830337589588780164959859253213601362305866173190001737265273992677807231027171082164269498303321382195428789799609410365732237646365410278714065361116452385657321632309976636898742570479653574337392863274431729912096828162945002783140768158211852736323803027308076675915511923856271262471204807598077085159490700099247456370406070837831474891044427608939005762863423650590601668972593480072354225629313340257528035095362980410034374407328966814447971985450181193048857644393880428822714130945601829155429121338333642267637119848991693598484170855232348861006593795047399364324684669408103190930015808948040399564309209945936348280356988454091412607035874348092179471699087732906171393420256533527230585289885034973162184156416357553000373512924458424882172660523538690072512027545728786535131591236543235214880192022950395291917417397585501254263983519038776295109331250152819469350583294191270046235943285675663314412852769788251658850454452414857442117500946533833545288615535975209439213512748894731226400742108551394658799006319955412953033379048622891564448576515389869081887720266889549928676611203773485776954396084760465631001017919283895858942465403449819216869716359355844660866873467594216947879462844474319916512857187881240574158501032475338364270004743505124669611377624024033442088753877840463922683384331066836954126858851556065773367140346227209570946419511722440456222055362916276795781784295195161441005088393255720278472621989015355394707540015951511595218209912306500744239431681383899444997284228198824794930353529893893073142924660102336796040798648200910295020510947654217832511201234567754692558746162040824847896348145702098953454057040407914102448397066852761911226320208003637179388849669739269973266152813450338821372950992152245930499002954765802137650019439057254654192839610358537961649020741882659940667947858039608170477543407808382267344505725552431909386574055174074236112038911152842032666681526870477207263040395232160484104312261881509003976077678224462295065946364266867126085828241869548038034572781539028396834006557455361846924178860005223319451666126846763381749920464677703915287451764924161583624097153206758536107151041056567710204888665409268037500962838104724804090757913219571580545332640938806851877976822003098671073084173697110539819662296033107053374519924757976967814494329220830814526349146118067263570250317545856446565280001338754953439530923540591835103818441619822546818744153252992304684080990567934670917393198679886179041721247449364879843158464295700483936598344317653060405014559429449687983165136265152315078591410074721594971195320088498040859856207004305064889397559601952414403415443127022472693652242826442404378611246071704832930344674771282412970768621250730482276662883392326457245718579052866807825365046599657603826959236949202648955970384490448130060098297929976631111886311102812359089191479991985444850300751040086093472316794181200225097722233998275665419742475837429757837388648070067089441544764928715031897097030881492679441187300773821079871558218647913923535314222945030777499749249234669230677426732227038788514397531859745399291178330372923960447028915104019805133487548015815355799387453726603063175004814443658793216000070544230340756670956434803365279527808222752827058371802545821639933852039449481752266219387363299953138479570937732828927254466522921072476706441815355573882690993806873456223516388055292619826632162617977294029751693238276912592490360719690802130479150050929295453894196314114491655742016949804350537084570100488807886993374856666817055119110532884141694350471117342797974862524622156195410278969985064862274865886485324867485491835651142523465372819369149820698077457556421889049956853963235620190844630490038797153299047482699125287567033537926896599915097142821928309145969631310088908555114148150697591868348939842852888534325302050085534203627292317463348720104626069911593167585368142681840054260173752272707466879582741002777643663123915711951020747565808195737915811658316806579533114295269534948818631687943819967382778220635655367853559495293954497486835443097397757386220482496693451866047484859838627274276655871550698899329974352485269094488282842276652485618369766008117118078860584986663982958428028039465674858758144112839655029616824637775666614674041431648269803510249138308192207282135240021430676467892959434574549016171279629015245076373097049594435972398686251902286004813687880964039076701542795344386094151933024551150953685581752571746647083836996737596697905462171045985507335470724985574980679929525191326173262974830227637830430371431058342346404149227519405707140131137242600630891504717708690402145787013898109900016097432019665274898454244846018430927446568659509775676154311707950077286059732716474333051040654443157929881788274958901330893993974470328523789565619465582107143116032799493144035463563282286321428613376514944749453689562690737644810030362868515112459435457718530124994682914553433921248620577251475332939347870202031556428879584744654682413901101509614021418272535455673085381330330975888127502139050460572208043305639399647109165397133764972316427282591303552761016247140156340042457621645755779933408390711538772879274307337583242342124078190742339647503061046526748814406064891342408247912799600737831659151018728446744703324503098991062189481068839828348935398307457841584806689508674476307475780192792075546888425722306869210853386469409938794580320205271387704999146682959016319319582316179165542322085219571054289262304164418898731734375303410690505438919294219396287391220071662705439410230618900576096401563108379451997932983356777467808530656067860062748675478547505931621100579307437483815478686930975504449032269578735009985987895448179886705556416911635058509969501877442120378201229086304356897713564507807092693283181564672003742014503291728126668083525479398153623767363032269894676528544621583214044128667582686191737890559309881973952200309558701281390218291470546029772165696633320324516467254830879223576070470411485517051344346657289971868903652695751037513001053649602962869557185239297244661607933074287150343586997306589428509963644019264430765627834926658695546602900072897047593871524980606170000818398081516692371086969182293659368699722756421980487338727521666523301847271314184035824787710410801836218539440452679554055265382924328298142097644150756587206812515126535021859687314491425916443492572800729735648189684401773405048635331731343407153634795639396561927135561015142107565162257773200327960475926618440697362836605468346394162479689455513586828468152452529440531573404295369553047594867190517805692058140212666507258345772639505609394607520104117465060092174349845155041801281322706632706412714316826186103298870655321934115651706877813215514235263613864608518322243467815673596846364161113809793611287897771917056986486305059979970227348695591372385543152202202150170120302648065476517560396421897689672447923219926285940952067289665761015815959687817868165634446970368808230662161789424522457594698900919328314976723983707169873816225363465162072702799555905883639436682601041813807873994645257616202439001895101774434229341373763524299309935359060610797662048967086087313953183704822015729351229882830317033025443775364520276981452684702603123138960759489618120968147555524637286568679789933432453486875983257954491862387406570557152374738327547759794656407838608437185755459958812113725909317853959599163735343023569923271359273588983657597641025595583767956729183095387520324380138350199298494160518015769869394977715070764493626931769469525364806102607646594126267505790368446089227941314920303605655989986604901531704831866869587676132490956385975675684432879470472202000482212701397544706710469464454368072413173628778251127135521584646651059907375564716863252541444285965731350113841675579932347789788064947974544317424277145867464610498896706386254547844301943771542173041617861609662629145268748587594857796962121527715003856262851624681521228980466321561651260763327827112269941318261446455990204812364687510712699256266377441823762151838422934924445521222024261532097781531412298820603150283764699582030582941837135463149393761371572799232427662682608793183520608853812302999952281464979200916285146708608479453197077328092991843006050012793296243548818293546819508480026686684282234743056811747437543312341644824008821081517381294004744379706475723667183619046612145248424720017060033704593592192220497158505588625475527164611459652461608309078958068892117965070809213734092583030592213456888539656093042940185903603304171867844511755738517314636168275744229792486027874295241333575047960334430260911850995625523147941367353224572678431220224244926406994361854809318760270054871508285707226632533687415896020737958054003299345289940110882798655219141442033292667097493872975331112801584571562780465275224983472222715747571791780785236404232152711913479014948335313673299167098032178177346069394270556047116638284177563629202545143711973850607437732763021935181419098170835986217943029488409160256390862745849246412911706753805326345435691007896883900051375990685889000665654387164793004096654619167702444670655281355896048919356489985812456409445046064344481046801253494741233266159978762865762967144348327060379513022687970021268424087440260356674127004897214150871580935052268953897177213578975440400704805279625924475510100569039694731631764689060231566018476841342122457308114817039728851886996702259828927198131485410452816969799046741437016213717789792182885570331336380976124959182565140429645111255851507006189922630309557164103686291521450990610095034852446110431228578219189341846009666162475060872281703818985204446234733705225653954853231347696685985868222749765477657497531382384740415408948211067430023055034972555665558301068171785305504689155605363917591032023936141636006170619452342873940550267493273491108692830075449466875676442385810260343601555662399972741755127584915318800572367654891231207426341745312618059080334999315888514244534345230915636341048572008510301373639046927515618323495649916424659352524542785269028621119024442205990056399189219247526622979569075607815023946762348515561029352865930988177650339942462081226294469460893027909307332574255615391026383341918972726344326456930183347993935930149413234026797843044769043799461634200062071006501978665821679713744382056737231872201416937388614676849972045975307285799243323413890314312570641461063432742754860570807900656097756470138993439215377744053732357514052488185810692160727832904601626078493265281326548838404225160663622770799647942703609024523547295100093925204391442316722720512582714559198149447691289974638196250566178561558736525998775441004832546506066683153678963480279295524358020684382986627380766147145141943032674997573638935284332718538160898354746947452628041888589183335127958924099371773215317191865992606441643907102336402140907319322692352946800219245363022351687187274007506415738379096540010138694792887589877455174746516888499764601791458050828842838702839891780372051758518386640834514619310116165989598840657715620373697344974733312738282597813593220801913977280165675875411340854327869173467950023420985541193880854367965918064624956006500670229616545460671099650148559399068933140770770380412484851504478627552484751485328032147300654337558976557849404558796416031158278674490106214792544233959633043246356190060234244037317260725727622703147843371855902840882521804815085077158746389746466981589883441083614691400869694622096481527759077348043303810398178846466058821858346121254703079027367381789253561302533181419595639956714839356291892851037510000119876038181591976702727448860524696573448599219543494232492140481455185517961934686991636717683248086416967708807034555072066556502722343200689912844660545996680593770364350318053058717091558231361648850310345227506662617688484177901118064248609192087542001311318869698571823397403192089411391729199020329103699954712257625198082494919640364126011463476385805401300829202516314695763778703447260186343237773761526650704955534867380178824221009782449561125166050193676184901654793304087431653759248786023798914736584977409968415495899347550484258533440983565439706466599409658964391549584487145411956267213677439182216382497607071552421496060076293584104921849040824901496586158379477830602086148539459919561565152182995419694133022505278229276051690901065001608616200004899961950741480758161263303555446110992247457013371200333705728405676519880869857188094342295419463666155935294629005188058112338057978134354559932326517873444027144381859064628436415274778064419582857604675945830522393574580191258056410364390433934988159213530226891181537573436597756193719311992183197446992458562438927776866667687361129451552658332971298043909047961287012770257473052153638417584224415454203213452258756461460082445326834076280798904393832893134349577104424148454651838819560130440932456549742597915386776005514207069346298155948731234779537571916161553902504172763491780333415535471411839735458194024405345400069390280315961427378027461574895405797073313426849789493534768327709304867634947922891252258299100175631576694748615799577377954770535618354977141790376346593349120884053421739346417893992457286135212471949068531874696578561761495899136361519435260628724445194732521388822809533510156845314676405988253444366567297434869030464897141931120002924111966499984932800524144093803791929909979337934433001911162524096850393401723371208585848406892584671988209422029595221109119577547843475526074873616829600415420498626501622732491653350521002320015829929401221619143262961484749970132873133773970973674676037299074403924908137776169916670398037125147234640760210854051530947552456057760772760661575036723168270002754722423364991618103129477456726241609193282561108621110431381529895641002417208875904603447451065359793835521670137561364273127332978461050259384554366620725407747440250825134447891734396140856877251680998163490769407731275576787510208276507830627563672962441112225439562198676349512362294028269543837880310718122122912121112924334547944323689275696602415172567355047734776175425821826671869887900000000013758398774780627722606678354969603512884991557192512901477301637600814322741301628194131528280664223161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999999/12500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.18414049008774891095732865801215859484600337712299483940907934495967427090347934872234738868773431073545109736618282755805585910375966917571445739872661408656853007494521875414457030916380089248732577504888237204643171889392265088423608687624039862149165756046502503261064861388603442215448536148886878662886717654952310069800132034584856943257145968458847538154792277645608868924499717069572690737823762850616483839497271890806429437839663806628773204284767411241535463503569402293415237600212227720055304346697552133251794869861305277710625999494592304322931322504974301200873968743625682628441514627285666906774193994071659875882525077984120538690562927555343073821090697611507588927539326797746251168829625243154524884913952309146668632270611045508988029203249999792796973129741666645929816038759033866225509161165922460261703704175968914164429311261694816096408215751990818640454603095977093047329289530601227435571189106357541430471405302851069935905539117401511423650577509995007212890240492951360621024184934483841088858597610291322585261632156012008273195631535695630769860119499943355374670295826836251807897926252167722986680553967621499074643306421354859443516201326287452810918998793821183982258045183940567494387425105497853266506805190571959740040012451162164782071811737443101672257314976538657011169002544338757752039856077750295213860859461929447821269611768459555499389885387477814537774688521968715138146415686171341767470055850326180492924735478706108857456342698898101110279758848022390194103914556800354300568509296367114994063897691552753491742182754152207806147664533030032412023405079282531938012404329062849814232062362277673746095878932054104063726211363651709634661982641756858489259741673311929428181141061782857684444773618406967706839869486820906881779853636526739418088311734334009330164793284192013063255214242010601290041303353574758295428647432359586950079960414345808739031376396612313075223374009320866961722894558338516301409556869109505273734485277857845679394337345587436715301547553538211171961806627563541967078601890645903680197128917531214565731271233426699730731346505957887247026535287909204543278043442279059354358761815721776707893856881317703105350612360568535807797080613749691791241742408490250929732368432428662792388252048581326189336160644016722941164012481878545441383632160682022713031626140915934287668256527110245013736644975895974820314703582501153729122732655619174820434075692139976882951078129540164855677269230491529626560542794654034645684264192789682207534266413202214631657384099389301173421802063574119276311559159559602344160826149680805758974744151367958417245243340775298378296347996847733590425390577175854047569376814811523683337192964494666134995271507181809585662080830084825246149211547484303579564811708287441582943699878159858682324032117052832554559660276998254032742235541639861016589945436793299240562461736475961143654205653468410914661660422541804176648290987790978383591064170415849562334829104293998395712232078842375955313761939005764877595812695357479297148248890432975796077291210542948971054121397981839286461071277605762337269164168958389657578241216482324333963562787048714633907868021399190706486584066752448887359295281235750888255965862430320410506178833167289669078525464709833342594192267090656231797621906810192686409257937456618866088623530131296123099780739359162384178791185650382436071438751642397257168931179846462071801968058903297378118247457320299179867542330962361134838401357359296012542580035844345120127453665210033921835111760643150098107283728798612097248046992098428138677972129613559819255474042373950563629011553480520520800464356873024117903381314637912452705744763093060040826554816102549959968096280817359075127868477179731634550939377944341253606791538558786309962465313528867622736430855343732844045366235585742747399777170863545248148301010646435336685259641658854595296897392523542502243561837599726556141120537168749867990349615139711864724430160110817253779535406895998444327827903463144100995497362528738925255969272394038657810967075815062613712063788847320876529641375070632738001811104411857083716360716379625615889266609066205755914929396339173365268997502371726863002867640519663049778649273294340985366641311652048235292349755220347250921778472215048785535988503143327292451520470325657467960176548995989846403277749920571452086593441837043328241660390571948936806164707533851113377571341279910484441509553588723758331227877293294034325901025000342929168169493615774889905923358404382765503734661629591037233635837002914331107802055009371530132488683640742930016661195384328226497078270133183648319299718639494649163288537924998206167957533807675424664011153659560890545466345323746213776358775639594486165980756146845232696529837787445609328986493832745840974053944174922017870724384498216106975602820095457986427685366075782908119241341373182316538616778720547785277249984638834933966217850618536008523272582454335790772730701366713968483322114233316324543393965435198172151085108954830389692945755509295511736532608743821435032039835734925944450292012070230521523744179701843990673149480245375663487136626126785464687656241747485375674847297571344065042544698347027156371548450844072626694941003026334718576485846743982245543059501630461195768227241335963574542861496927496940459242668081871219146572045780477227664086530527335962679600490119013373609395922758314047306891335789089225646429387371387694565092838112104125054102203196379866556964311127226433987223642680065364643125650589232139324391629174913384284093134402075027481249979318660114388781952505230914686963037204376259921229197364816218812651810991664505337819312068113384943237366228072206478312458413995466400368063491348723150250984670540077304388787851526095933996673383815434435006613316316098493209919780155332343613398773110830362044434726780149169745577922316296807794562131448722562666960939528764938297898207786571545400729905791106716772075595768048132013774579675007349574235709616072540822400231908116933813303893945499862051283645448359555710422524520589267097241668292799324781250748492671718102519210543929943273007355099257971162678701710404364659420903857896528867043497918901260032363959954338363388086112827234107531282451058188851109487618224100898354911369205284194382961177677962498085921634860797249094376059904995673756249684790910661606155831362490046385529144161403409722108065434978195668155771772469146093067778712070620266312833430661229498814810181948022617341230279811955794161748313988970285720916146608115909689088187452557245419193045495097296923236346677847906260693936277544064378052618489410353560190552058918125951812941902892820660118158994783735906737671484216613994969621972479804619819938447175368931345279137459031707013898385647303895555217966902782101047528958126254150316881275446494040518448433912528905220055866253520467110183362508985734263911427054289153331420123984234484847845453135176527508658696755468030849312110384515419525565219206245602960219419372192405398474629151229321047753335934883783046024586236484584810567332665723879296984238715937523141170257764843289129150645250310502368904648521375597404121777050339912400145311474648049843728282931034385267246827781685447394972706502846906101423220269316546355295696371132849102754756049209116031689374093514119474059574051241004243257701770901763945287254212788905641684346935946275000587088804252123555346113399186279796170185088913084162243884864077280078850945042241220685127414507646589990708900891339710366247628098892536427363062374042482589865449683582122131897480105726225509311534671645630890724588343459620989306478193682914258670315032473797075913086097638115883345499030087645771624359559698676400518816902305472859615849974865758573200158407261372731059340165851123736239515223699410913991096925943536550399657329305388184883010351601541802113169639875033936555086144590223408930767923600630874249229399219652803739026613979482033494600810667948524574141925200073826996730262967331508614392193019758502429897063109754411505892379865179085526513802673893169075150339481748510006647449828143043007554410966319153878027668772175974532853176829146844886716172002293138342680815218129014494904712255243112165503871970841678878450889246979791667190276030856375645249068612698499609842765144814325094127378053943830954583232634813962131453594578534356230736551370361423045012610249607123041078861227598389796429598031467593515579046909578674801569086038445160678786658510811019076991782042881701929396372553584805632517578727367518621935175691534327731599537938302189432067037100005878970274234577282182125834174390316577733436738805406835579099430940200512753650907090932395288270899262721426608252334542427560549392630338908439351498397861210291502681212544069830660245387372809550533001201498852787255087176805354927732073949819600310752799590241769894311090597051309433472101556320825393357288670506577253140983588423391834222640398713675082258303606189813854866230571492007211991863950559111038749782406353328774868131332472018400694529927627036191579910968742416356918895212255839892705741405224775137525087639722347391891459425098068304689631579991426096497484525980807682387635305433510011178324460774523185343327956781825737468795639587836633066133620723690355506808357715593999719881764843616678319228383280307840253329507065007848761256393553286488994255839093886907236581917638092926488938001627961847996821301683348055555825239142167926398007146430751171972187022890282471724655150349270444306184209588707920534108981063641502310907622663347563257831408372207507831368369354270653161991463138558670825884807744177473405854111787603232746606069781823815444913328172283442650725741967475808986712845395629376054818156140015977616030654373723646981280178596381993179105925943208634966865752344540515171127632313950426708637172608869360796994503229262998841429800803625055087335155308044762037762393668272157384307097769545723033642014431815214885190959914594889037913780043314621907750159445447770222944618936762050987372350493277381785824617562245557704768355755750017840714652968377439221082219163535699589351844040013716451480288663852415965392454373434845162221398331944804037415418572929175386388999968552112167976757777697174894760820329125900285392948435761280541457508793844771984194889781768763193126064061165738399160551817254186665759319247211656346983113909664090245188003424590168359252433646623261399618626563508013529635656654852386931199316005221232688581140882390202193926393500475875770625421959992811916316122969872678720696445675134304197599788623250802486216848258476214395193499024570033653542085396047953028730508175185954120586332363380380620253335253274950050503028356565956370221055415137248822082274595206514560334691919013269820221626827495671145189789678603630330039554539825393064451262314784548236985799298285511888389559178050774686716816757328134485368214207240845758277163562259802937071613887782498935352195452690286620994064982596156273514405593270849991244238931487876225736393518890334005859346434396599445389711872419490257785377552530414556462089746782775151458004114290700101150881132810165852493318623051841448838338602037735671021233038867772439384144287298310707683066752778457752939657158046191073632764289853500537289025931354375730069728310069278534875640150546647941412389144148988280501408203470684089296092549754850790442051033194800203973290008684434412855012452024915291804763215520425603857489335504266983536213916126553198374022426502158622654554398534722503281664173910927280707123993573185601589373424418407192229863323138701186005154636211827854568680580341979571429961610233347505760052988927398887088213845383479335508081390024502822572772270170345406726427360683075424990355365235802628455680824105604685602784101649703233754491748635670512566028517388996231691817192760947013122405724112814923650741163569160221348837763220722854612087670857612549760040916977493057297269451577192309928538644917154149846359106373416796944164805946810869156267528179431751514139030769793619804827726461812924184745544936561220612887645671884290397870819431775957746505745656977060567448636427293532250704176776076412285772036802375518817708141833815638922468031935817945168983847152780376856967502441676790387272537884507203794077212938297583687985810437448228431166826137501166313341017480512770372629047121963756606236709524689584076026578935580942417419281232917002585594259489756723033356875123797384833990326005753709536397617241714057625553840821032536080750714720682031301231721135893682352843403945635758229024584717642651723349716504800323651124485846558276755275252964650935890805747159711451430893191160259411392236046685334668953945129860651435019558660127930440113228249247239906469631186542742035073170025229717601412208172022490709415106033600441672791129030508670262237968903649198719345381966844314532946239116061022403769900770005485764905483035627383616943786637618927622596979323473224643971090269581467197022395816031233689722201343324839654939199095870173940342379136510802922934174155133826211479176230197920159382372309592729453742615832379077601281203064804603541979927213535053015746441487935673846758974534713427737468392327148032995807470944054718608502084694983764376322110935072969029028811333580604819277367450648418322881809357039580426806262077500945421269485825074427407173964840559711508720175922063032078939533280044602508136848503262075513789175912251111693327513212236046242582631294925139673349415517824135099195342466659526181274881144320016911498292877712651264537071279446115050021777536249509149615916038381533581717320628477996312378690484886614436510900989857513111092990478945746819641587823371895438002373838997335984365696677510021296635497616932389793492430765091219460899331285065791791151999226710824426420009470299964524821229881887686381693763372960473156887271775562023823002751298097879164148687455098829998592112032915348245390709506328038911364721717011071442290383858184748865185234919907608998005385868645457506177619804983104057894332938007953816702032477237048981592711212325440023540942212428985199960284643586282205678544261825161551079878674469516650014596860227765517017701034684672720022174660118278100578218611388541584762445745562003203427686749969013493190050235312311586656632358399065812896565557878357153175836701454235920130183666220141838644118314609138630801007280832029628435285617583532919535487861019331541347687686573923100611598056803435918773342553247448000032898607030294286870482933428283587631030992733952292059018306083483884055715669733094898302687224255000787413634715567871272772066647168191661855224120380434075185142425382636642715830855098966893677342258575451507564425339610560376078452758829484893021268575565614110633966356902034603145072646920192929812674602810390635271178592637045536955990675812018097642397603967848983228243040763804280783356780451324834829157210499606692994867458565008182434607242687152135185179990581211872523652134245829304876462894174266967565239752811239675157817768608462088126919343448291343683413840010094146486960265486861973653659727056756349969995901338618403444123988293006455366818045530537604735593193874264858167895393913826033741813253003852934771030975599245062637236620788032041883968179182334202196631007511511143095170253144990122561454727181946789450805854153008864799808361272781314859807313018470631481554043310256316430800324118827611636075980061206015502077421498989694699847368619592962178966699891152697683736604932774520006130749490065495825282109712146433276625064886096941644775989266818966458281561722661460906813454797615715669208369725824039802490512542514453891325212223491211839297498445262713745477003282104095830192514169023500579072329304208572060455802676773233666241816948881069147276386557622152845049574746719737788456955710665815116131476377082889908483720137521172065529973885952369244870642700716710241319678874025708810898446929385520013898122191941422457848217368657314155986426571057563430318396875282925857901170923282229712522888931619085258573058479813095189940563837228594699142906195453839296774625303560022265126145265694821890590424218464613407324095390850170099769638460784616681275925600793979650963248566702651799128355420871512046102907389204724813351780747840578833805034506722060224280762903843280274995258631734515583775883601449544390861155151043430581713047564814633243432970706669138141096958791933548787873366841858790888052750360379194914597477355264825527440126471584323196514473679567490786242855907632731300856286994784737435773592701863249371147362052268217844682319080279785297473251330860424002988103395667399057381284188309520580096220365830292281052729892345881719041536183603162335339339180684010034111868152310210360874650001222555754804666353530160369887546285405306515302822158306013270803635619318859536940007572270668362308924287801675513708101991157849811205936868411157270392050559643303624267032388983132515588612123118952655101762135116399429412889630187886215635168678083725048008143354271166871539723227598553734957730874846757286934987740753735583035702755794559332102857503049924593268008259802706914160037948040997356891020992192267536710031022723711381467074648534695633014870812448526186937122769817676567571356093779523649776442903330214366254274361561291528040707146045762227780975912122843157660320127612092761745679298452005953915453451071195559978273825590598359442828239151144585143397280818694368326389185607282360164087581233742660089609876542037540469969296326598783170785165616791627632456323263312819587176534822095289810561664029097435110797357914159786129222507602710570983607937217967443992023638126417101200155512458037233542716882868303693192165935061279525343582864316865363820347262467058138756045804419455275092592441392593888896311289222736261333452214963817658104323161857283872834498095052072031808621425795698360527570914134937008686625934956384304276582252312227174672052459642894775393430880041786555613329014774107053999363717421631322299614119393292668992777225654068288857208328452541681639109323274144300007702704837798432726063305756572644362661127510454815023814576024789368584673389576884318557298368264856426996159398063815742515954633766646516210793168944538108562002540366851572522240010710039627516247388324734680830547532958580374549953226023938437472647924543477367339145589439089432333769979594919038745267714365603871492786754541224483240116475435597503865321090121218520628731280597772759769562560707984326878849656034440519115180476815619315227323545016179781549217942611539235028889968573638663442757398170259303766148970005843858213303067138611657965748632422934462602920372797260830615673895593621191647763075923585040480786383439813048895090488822498872713531839935883558802406008320688747778534353449601800781777871986205323357939806699438062699109184560536715532358119429720255176776247051941435529498406190568638972465749183311388282513783560246219997993993877353845419413857816310308115180254877963194329426642983391683576231320832158441067900384126522846395099629812824505400038515549270345728000564353842726053367651478426922236222465782022616466974420366573119470816315595854018129755098906399625107836567501862631418035732183368579813651534522844591061527950454987649788131104442340958613057300943818352238013545906215300739922885757526417043833200407434363631153570512915933245936135598434804296676560803910463095946998853334536440952884263073133554803768938742383798900196977249563282231759880518898198927091882598939883934685209140187722982554953198565584619660451375112399654831705884961526757043920310377226392379861593002300536268303415172799320777142575426473167757050480711268440913185205580734946791518742823108274602416400684273629018338539706789760837008559292745340682945141454720434081390018181659735036661928022221149304991325695608165980526465565903326493266534452636264914362156279590549053503550559739062225765085242942828475962351635979894683544779182059089763859973547614928379878878709018194213246972405591194639794819882152755906262738213219884946958128064936944630884679893311863667424224315725398870065152902717240236934597102205332917392331453186158428081993106465537658257081920171445411743143675476596392129370237032121960610984776396755487779189490015218288038509503047712312613612342362755088753215464196409207629484654020573973176670695973900773583243697368367884058683765799884599845439436201530609386103798641821102643442971448466738771233193820155245657121049097940805047132037741669523217166296111184879200128779456157322199187633958768147447419572549276078205409234493663600618288477861731794664408325235545263439054306199671210647151951795762628190316524955724656857144928262395945152283708506258290571428907012119557995629516501525901158480242902948120899675483661748240999957463316427471369988964618011802663514782961616252451431036677957237459311208812076912171346180283645384683050642647807105020017112403684577664346445115197176873323177070119778531418260730428422088129977121250720339660973166046239467267125692310183034194458700665938736992625525938717180024488372213990515248519130739265983302396805902653273208149827573957626596024791928497515848550718626791483186459662732678453516069395810459806241542336604375107405778454953686827091755279510356642561642171101639993173463672130554556658529433324338576681756568434314098433315351189853875002427285524043511354353755170299129760573301643515281844951204608771212504867035615983463866854219742468245248542880501989403828380047452968804634459499870523829495447804035592258156629880079887903163585439093644451335293080468079756015019536963025609832690434855181708516062456741546265452517376029936116026333825013344668203835185228990138904258159157412228356972665712353029340661489533903124474479055791617602476469610251121746331764368238177325573066562596131738038647033788608563763291884136410754773258319774951229221566008300104008429196823702956457481914377957292863464594297202748695978452715428079709152154115446125022679413269564372823200583176380750972199844849360006547184652133538968695753458349274949597782051375843898709820173332186414778170513472286598301683286414689748315523621436432442123063394626385136781153206052697654500121012280174877498515931407331547940582405837885185517475214187240389082653850747257229078365115172495417084488121136860521298062185602623683807412947525578902692843746771153299837515644108694627745219620235524252587234362956424380758937524142445536465121701332058066766181116044875156860160832939720480737394798761240334410250581653061651301714534609488826390965242575472925213655022505724113882108910916868146577947742525388774770913288910478348890303182175336455891890440479839761818789564730979084345217617617201360962421184523812140483171375181517379583385759410287527616538317326088126527677502542945325075575762950465845297294315396179660757591207354626519813791869657358990529802907721296581622396447247069115493460808334510462991957162060929619512015160814195473834730990108194394479482872484886381296391736688698511625469638576125834809839062642536264203550202916162215851621477620824985111686075916944967745180444197098292549438319467459627895007866063635934899099252564457218997906620382078357251262708867497486043679670496909807274542831676793309882744188559386170874188711869260781128204764670143653833464763100162595041106801594387953284144126158955159821720566115949015454155756202918448820861172753010140046322947568713823530519362428845247919892839212253638654934956701409059927651087805405475463035763777616003857701611180357653683755715634944579305389030226009017084172677173208479259004517734906020331554287725850800910733404639458782318304519583796354539394217166939716883991173651090036382754415550172337384332942892877301033162149988700758862375696972221720030850102812997452169831843730572493210086106622616898159530546091571647921638498917500085701594050131019534590097214707383479395564169776194092256782252251298390564825202270117596656244663534697083705195150090972582393859421301460870345468164870830498423999618251719833607330281173668867835625576618624743934744048400102346369948390546348374556067840213493474257877944454493979500346498733158592070568652139050352037955037651805789337468952372897161987397760136480269636748737537763977268044709003804217316891677219692866472631664551136943720566473709872740664244737707655108317248744343521487228826433374942756094045908138517089346205953838339888222994361930668600383682675442087294807965004185183530938825796581427449761793959411255954894838474550082160438972066285657813060269499327168165903664432026394762319520887062389241753131536266341336779950983802648902412676572502243722201799867777781725980574334246281891233857221695307832119586682509386393336784257425418768555154164448376933106273420509033620361149695790804859501862104175481451352785366687889743544235907273282051126901966793971303293654030442610763485528063175071200411007925487112005325235097318344032773236953341619557365242250847168391354851919886499651275560368514755848374410027957929866129279830102926103737154786616483036104181503760170147392699522082853393016039177713206972647480418151631177417708631803523205638442237007395804080804552317557853054117512481852528147814730736979658464918536317830815095973618078631417585051883283622535758392373931496129709742318337463084562650691047808999673460521123437160890046812056049519381042476457312829490332171607924880760278819568883449828625753514734768077329299800486978253630551881635569877869641805231638825850781573487886945781998123821259980251059077923323271585688539440184440279780445324466408545374282444037513244842911340728256191489133088049364955618742991524402139946187928869542640603595735005411539086482082748812445299199781934041020679322550404578941239129849659410733962500944472642679994527108113956274761847325090728388576068082410989112375420124946587965199331397274820196342282152228968952195537647920451193513753980212983836552604862520191574098788124488234822927447905421202719539696649810355755687144223274458660594044923128211066735351781810754611655441466783951487441195305872214382744358152350395693073600496568052015829326573437709955056453897854977611335499108917414799776367802458286393946587311122514500565131688507461942038884566463205248782051761111947513723021952429858860112419905486485537285822663236813008627946122250612390707233801285308982166397183541628872196188378360800751401635131538533781764100661716473585195581530319797105570004529428492469892207990203528038660372048533465229431707842234364194864165475063893019046129177161135544261399980589111482274661748305287186837975579621024335108713466681023671392794974185722537534927940851533151256818691217127258554581538823574401753962904178813497498192060051325907032772320081109558343100719019641397972135107998116814331664406630742709622719134242976414068147093126676116954480929327916790725261724962989578759797866501906260782508745766415311818241325407003290726834622953387743600187367884329551046834943727344516999648052005361836932363685368797201188475192551465126166163043299878812035829020419878011882624257178405234700471812462795236470371328249266229395920849718340353871677064345970849520481873952298538085805820981625182746974847222727060174438520680617269971117971735852719067528668917531206957556976771852222072618784346430483185430771728470574866768970037624632218939054314028490420265451356765119653718714850335142808300080000959008305452735813621819590884197572587588793756347953859937123851641484143695477495933093741465984691335741670456276440576532452021778745605519302757284367973444750162914802544424469736732465850893190802482761820053300941507873423208944513988873536700336010490550957588574587179225536715291133833592162632829599637698061001584659959357122913008091707811086443210406633620130517566110229627578081490745902190092213205639644278939041430593768078259596489001328401549409479213238346432699453230073990288190391317892679819279747323967194780403874068267527868523517651732795277271715132396675897163295650137709419513457731059980856572419371968480610348672839374792326599211972689267035822644816689188315679356492521217463963357553064180042225834208413527208520012868929600039199695605931846065290106428443568887937979656106969602669645827245412159046958857504754738363355709329247482357032041504464898704463825074836479458612142987552217155054872517027491322198224515356662860837407566644179148596641530064451282915123471479905273708241815129452300587492782049549754495937465579575939668499511422214933341498889035612421266663770384351272383690296102162059784417229107340673795323633625707618070051691680659562614672610246391235150663145074796616835393187637214710556481043527459652397940783323094208044113656554770385247589849878236300575329292431220033382107934242667324283771294717883665552195242763200555122242527691419024219692599163246376586507414798315948278146621674438941079583383130018066392801405052613557988926396619023638164284946839817134323010772746792967072427373914771343151939658289081699775592548254997572628494091967193090892155482085029795561557860171110582476268081254762517411247906027554932538379478952243719177135448960023392895731999879462404193152750430335439279834703475464015289300192774803147213786969668686787255140677375905675376236761768872956620382747804208598988934636803323363989012012981859933226804168018560126639435209772953146103691877999761062985070191767789397408298392595231399265102209359333363184297001177877126081686832412247580419648462086182085292600293785346160022037779386919932944825035819653809932873546260488868968883451052239165128019337671007236827579608522878350684173361100490914185018663827688402075076434932965803261979522006601075583133875169126855018013447985307926155261850204614300081666212062645020509383699528897803516497589410796098898352226156350703042485744976983296968903394676383554589514205572819321380538840381878209403406574613374959103200000000110067190198245021780853426839756828103079932457540103211818413100806514581930413025553052226245313785290978052676343448838882817924806616485710852025467718268629398501095624917108593816723982" + }, + "actual_logarithmic_group_guard": { + "rational": "2301756126096861386966608225151982435575042214037435492613491811995928386293491859029342358596678884193138717077285344475698238796995864696430717484082676082106625936815234426807128864547511156091572188111029650580396486174033136052951085953004982768645719505812812907633107673575430276931067018610859832860839706869038758725016504323107117907143246057355942269349034705701108615562464633696586342227970356327060479937158986350803679729957975828596650535595926405191932937946175286676904700026528465006913043337194016656474358732663159713828249936824038040366415313121787650109246092953210328555189328410708363346774249258957484485315634748015067336320365944417884227636337201438448615942415849718281396103703155394315610614244038643333579033826380688623503650406249974099621641217708330741227004844879233278188645145740307532712963021996114270553663907711852012051026968998852330056825386997136630916161191325153429446398638294692678808925662856383741988192389675188927956322188749375901611280061618920077628023116810480136107324701286415323157704019501501034149453941961953846232514937492919421833786978354531475987240781520965373335069245952687384330413302669357430439525165785931601364874849227647997782255647992570936798428138187231658313350648821494967505001556395270597758976467180387709032164372067332126396125318042344719004982009718786901732607432741180977658701471057444437423735673434726817221836065246089392268301960771417720933756981290772561615591934838263607182042837362262638784969856002798774262989319600044287571063662045889374257987211444094186467772844269025975768458066628754051502925634910316492251550541132856226779007795284709218261984866506763007965776420456463704332747830219607311157467709163991178522642632722857210555596702300870963354983685852613360222481704565842427261038966791751166270599160524001632906901780251325161255162919196844786928580929044948368759995051793226092378922049576539134402921751165108370215361819792314537676194608638688159216810659732230709924292168198429589412693444192276396495225828445442745884825236330737960024641114691401820716408904178337466341418313244735905878316910988650567909755430284882419294845226965222088486732110164712888168826545071066975974635076718711473905217801061281366216546054053582849048531506072665773667020080502090367645501560234818180172954020085252839128953267614491785958532065888780626717080621986996852539337947812644216140341581952396852554259461517497110368884766192520606959658653811441203320067849331754330710533024098710275941783301650276828957173012423662646677725257946764909538944894944950293020103268710100719871843018920994802155655417596912297287043499605966698803173822146981755946172101851440460417149120561833266874408938397726198207760103760603155768651443435537947445601463535930197867962484769982335290504014631604069319957534624781754092779442704982627073743179599162405070307717059495142956775706683551364332707552817725522081036373473872297948883021301981195291853638036749799464029009855296994414220242375720609699476586919684912143531111304121974509661401317868621381765174747729910807633909700720292158645521119798707197280152060290541745445348381089329238483502674898838310823008344056110919911910154468861031995732803790051313272354145911208634815683088729167824274033386332028974702738351274085801157242182077358261077941266412015387472592419895298022348898206297804508929843955299657146116397480807758975246007362912172264780932165037397483442791370295141854800169669912001567822504480543140015931708151254240229388970080393762263410466099826512156005874012303517334746516201694977406934255296743820453626444185065065100058044609128014737922664329739056588218095386632505103319352012818744996012035102169884390983559647466454318867422243042656700848942319848288745308164191108452842053856917966605505670779448217843424972146357943156018537626330804417085657455207356824412112174065442812780445229699965819517640067146093733498793701892463983090553770013852156722441925861999805540978487932893012624437170316092365656996159049254832226370884476882826714007973605915109566205171883829092250226388051482135464545089547453201986158326133275719489366174542396670658624687796465857875358455064957881222331159161792623170830163956506029411543719402543406365222309026881098191998562892915911556440058790707183495022068624498730800409718740071431510824180229630416030207548821493617100770588441731389172196417659988810555188694198590469791403484661661754290737628125042866146021186701971861238240419800547845687966832703698879654204479625364291388475256876171441266561085455092866252082649423041028312134783766647956039912464829936831145411067240624775770994691725959428083001394207445111318183293165468276722044846954949310770747594518355654087066229723430701166123311729093230121756743021865252233840548062277013371950352511932248303460670759472863514905167671647789567327097340068473159656248079854366745777231327317001065409072806791973846591337670839246060415264279164540567924245679399771518885638619353798711618219438661938967066576092977679379004979466865743056286501508778815190468022462730498834143685030671957935892078265848183085957030218435671959355912196418008130318087293378394546443556355509078336867625378291839822060730842997780692882437703807649471028405166995446817857687115937117557405333510233902393321505722559653458010816315916995334950061264876671701174490344789255913361416973636153205803673421423461820636604764013015631762775399547483319620538890903304248402955335008170580390706323654017415548953646864173035511641800259378435156247414832514298597744063153864335870379650547032490153649670602027351581476373958063167227414008514173117904670778509025809789057301749433300046007936418590393781373083817509663048598481440761991749584172976929304375826664539512311651239972519416542951674846638853795255554340847518646218197240289537100974320266431090320333370117441095617287237275973321443175091238223888339596509449471006016501721822459375918696779463702009067602800028988514616726662986743187482756410455681044944463802815565073658387155208536599915597656343561583964762814901317991242909125919387407246395334837713800545582427612982237066108380437239862657504045494994292295423510764103404263441410306382273606388685952278012612294363921150660524297870147209745312260740204357599656136797007488124459219531210598863832700769478920311255798191143020175426215263508179372274458519471471558643261633472339008827533289104178832653687351851272743502827167653784976494474270218539248621285715114518326014488711136023431569655677399130686887162115404543334730988282586742034693008047256577311176294195023819007364765743976617737861602582514769874347966988342208935527076749371202746559975577477492305896921116418159892182378963376737298205912986944402245862847762630941119765781768789610159430811755064806054239066113152506983281690058388772920313623216782988928381786144166427515498029310605980681641897065938582337094433503856164013798064427440695652400780700370027427421524050674809328643903665130969166991860472880753073279560573101320916583215484912123029839492190392646282220605411141143830656288812796113081065171949675515222131292489050018163934331006230466035366379298158405853472710680924371588312855863262677902533664568294411962046391606137844344506151139503961171761689264934257446756405125530407212721362720493160906776598613205210543366993284375073386100531515444418264174898284974521273136114135520280485608009660009856368130280152585640926813455823748838612611417463795780953512361567053420382796755310323733181210447765266487185013215778188663941833955703861340573542932452623663309774210364282333789379059224634489135762204764485418187378760955721453044944962334550064852112788184107451981246858219821650019800907671591382417520731390467029939402962426364248887115742942068799957166163173523110376293950192725264146204984379242069385768073777926116345990450078859281153674902456600467378326747435254186825101333493565571767740650009228374591282870916438576799024127469812803737132888719301438236547483147385690814225334236646134393792435218563750830931228517880375944301370789894234753458596521996816606647103643355610839521500286642292835101902266126811863089031905389020687983996355209859806361155872473958398784503857046955656133576587312451230345643101790636765922256742978869322904079351745266431699322316794528842068921295177880626576281200890380134857653449798724553699753933449189447380863697334350196135754805645084848332313851377384623972755360212741174546569198100704064697340920939827741896961441790966449942242287773679008379637500734871284279322160272765729271798789572216679592350675854447387428867525064094206363386366549411033862407840178326031541817803445068674078792363554918937299732651286437835151568008728832530673421601193816625150187356598406885897100669365966509243727450038844099948780221236788886324631413679184012694540103174169661083813322156642622948552923979277830049839209385282287950773726731858278821436500901498982993819888879843722800794166096858516416559002300086816240953379523947488871092802044614861901531979986588217675653096892190635954965293423986432428137258538086203947498928262062185565747600960298454413179188751397290557596815398167915994597728217183599454948479579133266702590461294438351044714449249964985220605452084789903547910038480031666188383125981095157049194160811124281979886735863404572739704761615811117250203495230999602662710418506944478154892770990799750893303843896496523377861285308965581893793658805538273026198588490066763622632955187788863452832918445407228926046525938478921046169283831645248932892319833853235600968022184175731763973450404093325758722727976930614166021535430331340717745934476123339105674453672006852269517501997202003831796715455872660022324547749147388240742901079370858219043067564396390954039243803338579646576108670099624312903657874855178725100453131885916894413505595254720299208534019673038387221193215379205251803976901860648869989324361129739222505414327738468769930680971277868077367095256373421543811659672723228077195280694713096044469468752230089331621047179902635277395441962448668980505001714556435036082981551995674056796679355645277674791493100504676927321616146923298624996069014020997094722212146861845102541140737535674118554470160067682188599230596498024361222721095399140758007645717299895068977156773333219914905901457043372889238708011280648500428073771044906554205827907674952328320438501691204457081856548366399914500652654086072642610298775274240799187559484471328177744999101489539515371234084840087055709391788024699973577906350310777106032309526799399187378071254206692760674505994128591313521898244265073291545422547577531666906659368756312878544570744546277631926892156102760284324400814320041836489876658727527703353436958893148723709825453791254944317478174133056407789348068529623224912285688986048694897256346835839602094666016810671026775905105719784645445282475367133951735972812366919024431586285827624258122824519534189300699158856248905529866435984528217049189861291750732418304299574930673713984052436282223172194066301819557761218347846893932250514286337512643860141601270731561664827881480181104792325254716958877654129858471554923018035912288838460383344097307219117457144755773884204095536231687567161128241419296966258716038758659816859455018818330992676548643018623535062676025433835511162011568719356348805256379149350025496661251085554301606876556503114411475595401940053200482186166938033372942026739515819149796752803312769827831819299816840312910208021738865910088390499196648200198671678052300899028732915392337648250644329526478481821085072542747446428745201279168438220006623615924860886026730672934916938510173753062852821596533771293175840803420085384428123794420654475328556960103013200585700348012706212904219311468579458814070753564673624528961477149095118376640300715514101865456342645446145027668604720402590356826510958857201568720005114622186632162158681447149038741067330614644268730794888296677099618020600743351358644533441022428968939267378846224202475603465807726615523093193117070152576610955708985536299733852428971994718313218207122132570931079553411691531338022097009551535721504600296939852213517729226954865308503991977243146122980894097547107120937805209598798409067235563400474259651617287197960998226304681028553895853267187645789167627185064096296578630890245469575779588690586198009503322366947617802177410154114625323199282436219590379169609390474673104248790750719213692049702155214257203194230102629067010093839340085253912653965141986710294105425493204469778628073089705331465418714563100040456390560730819784594409406620581366986350718394963931428861648895032426424029505835666833619243141232581429377444832515991305014153531155904988308703898317842754384146253153714700176526021502811338676888254200055209098891128813583782779746112956149839918172745855539316618279889507627800471237596250685720613185379453422952117973329702365952824622415434153080496386283697683399627799477003904211215275167915604956867399886983771742542797392063850365366771769391728276434897028774740019922796538699091181717826979047384700160150383100575442747490901691881626968305185991959230844871816839178467183549040893504124475933868006839826062760586872970547040263866884121128628601416697575602409670931331052290360226169629947553350782759687618177658685728134303425896745605069963938590021990257879009867441660005575313517106062907759439223646989031388961665939151529505780322828911865642459168676939728016887399417808332440772659360143040002113937286609714081408067133909930764381252722192031188643701989504797691697714665078559749539047336310610826804563862623732189138886623809868218352455198477921486929750296729874666998045712084688752662079437202116548724186553845636402432612416410633223973893999903338853053302501183787495565602653735235960797711720421620059144610908971945252977875343912262234895518585931887353749824014004114418530673838688291004863920590214626383930286297982273093608148154364988451124750673233580682188272202475622888007236791617250994227087754059654631122699088901540680002942617776553623149995035580448285275709818032728145193884984834308689581251824607528470689627212629335584090002771832514784762572277326423567698095305718195250400428460843746126686648756279414038948332079044799883226612070694734794644146979587681779490016272958277517729830514789326142328850125910104003703554410702197941614941935982627416442668460960821740387576449757100429489846667819155931000004112325878786785858810366678535448453878874091744036507377288260435485506964458716636862287835903031875098426704339445983909096508330896023957731903015047554259398142803172829580339478856887370861709667782321931438445553167451320047009806594853685611627658571945701763829245794612754325393134080865024116226584325351298829408897324079630692119498834476502262205299700495981122903530380095475535097919597556415604353644651312450836624358432320626022804325905335894016898147498822651484065456516780728663109557861771783370945654969101404959394727221076057761015864917931036417960426730001261768310870033185857746706707465882094543746249487667327300430515498536625806920852255691317200591949149234283107270986924239228254217726656625481616846378871949905632829654577598504005235496022397791775274578875938938892886896281643123765320181840897743348681350731769126108099976045159097664357475914127308828935194255413782039553850040514853451454509497507650751937759677687373711837480921077449120272370837486394087210467075616596815000766343686258186978160263714018304159578133110762117705596998658352370807285195215332682613351681849701964458651046215728004975311314067814306736415651527936401479912187305657839218184625410263011978774064271127937572384041163026071507556975334596654208280227118610133643409548319702769105631196843339967223557119463833226889516434547135361238560465017190146508191246735744046155608830337589588780164959859253213601362305866173190001737265273992677807231027171082164269498303321382195428789799609410365732237646365410278714065361116452385657321632309976636898742570479653574337392863274431729912096828162945002783140768158211852736323803027308076675915511923856271262471204807598077085159490700099247456370406070837831474891044427608939005762863423650590601668972593480072354225629313340257528035095362980410034374407328966814447971985450181193048857644393880428822714130945601829155429121338333642267637119848991693598484170855232348861006593795047399364324684669408103190930015808948040399564309209945936348280356988454091412607035874348092179471699087732906171393420256533527230585289885034973162184156416357553000373512924458424882172660523538690072512027545728786535131591236543235214880192022950395291917417397585501254263983519038776295109331250152819469350583294191270046235943285675663314412852769788251658850454452414857442117500946533833545288615535975209439213512748894731226400742108551394658799006319955412953033379048622891564448576515389869081887720266889549928676611203773485776954396084760465631001017919283895858942465403449819216869716359355844660866873467594216947879462844474319916512857187881240574158501032475338364270004743505124669611377624024033442088753877840463922683384331066836954126858851556065773367140346227209570946419511722440456222055362916276795781784295195161441005088393255720278472621989015355394707540015951511595218209912306500744239431681383899444997284228198824794930353529893893073142924660102336796040798648200910295020510947654217832511201234567754692558746162040824847896348145702098953454057040407914102448397066852761911226320208003637179388849669739269973266152813450338821372950992152245930499002954765802137650019439057254654192839610358537961649020741882659940667947858039608170477543407808382267344505725552431909386574055174074236112038911152842032666681526870477207263040395232160484104312261881509003976077678224462295065946364266867126085828241869548038034572781539028396834006557455361846924178860005223319451666126846763381749920464677703915287451764924161583624097153206758536107151041056567710204888665409268037500962838104724804090757913219571580545332640938806851877976822003098671073084173697110539819662296033107053374519924757976967814494329220830814526349146118067263570250317545856446565280001338754953439530923540591835103818441619822546818744153252992304684080990567934670917393198679886179041721247449364879843158464295700483936598344317653060405014559429449687983165136265152315078591410074721594971195320088498040859856207004305064889397559601952414403415443127022472693652242826442404378611246071704832930344674771282412970768621250730482276662883392326457245718579052866807825365046599657603826959236949202648955970384490448130060098297929976631111886311102812359089191479991985444850300751040086093472316794181200225097722233998275665419742475837429757837388648070067089441544764928715031897097030881492679441187300773821079871558218647913923535314222945030777499749249234669230677426732227038788514397531859745399291178330372923960447028915104019805133487548015815355799387453726603063175004814443658793216000070544230340756670956434803365279527808222752827058371802545821639933852039449481752266219387363299953138479570937732828927254466522921072476706441815355573882690993806873456223516388055292619826632162617977294029751693238276912592490360719690802130479150050929295453894196314114491655742016949804350537084570100488807886993374856666817055119110532884141694350471117342797974862524622156195410278969985064862274865886485324867485491835651142523465372819369149820698077457556421889049956853963235620190844630490038797153299047482699125287567033537926896599915097142821928309145969631310088908555114148150697591868348939842852888534325302050085534203627292317463348720104626069911593167585368142681840054260173752272707466879582741002777643663123915711951020747565808195737915811658316806579533114295269534948818631687943819967382778220635655367853559495293954497486835443097397757386220482496693451866047484859838627274276655871550698899329974352485269094488282842276652485618369766008117118078860584986663982958428028039465674858758144112839655029616824637775666614674041431648269803510249138308192207282135240021430676467892959434574549016171279629015245076373097049594435972398686251902286004813687880964039076701542795344386094151933024551150953685581752571746647083836996737596697905462171045985507335470724985574980679929525191326173262974830227637830430371431058342346404149227519405707140131137242600630891504717708690402145787013898109900016097432019665274898454244846018430927446568659509775676154311707950077286059732716474333051040654443157929881788274958901330893993974470328523789565619465582107143116032799493144035463563282286321428613376514944749453689562690737644810030362868515112459435457718530124994682914553433921248620577251475332939347870202031556428879584744654682413901101509614021418272535455673085381330330975888127502139050460572208043305639399647109165397133764972316427282591303552761016247140156340042457621645755779933408390711538772879274307337583242342124078190742339647503061046526748814406064891342408247912799600737831659151018728446744703324503098991062189481068839828348935398307457841584806689508674476307475780192792075546888425722306869210853386469409938794580320205271387704999146682959016319319582316179165542322085219571054289262304164418898731734375303410690505438919294219396287391220071662705439410230618900576096401563108379451997932983356777467808530656067860062748675478547505931621100579307437483815478686930975504449032269578735009985987895448179886705556416911635058509969501877442120378201229086304356897713564507807092693283181564672003742014503291728126668083525479398153623767363032269894676528544621583214044128667582686191737890559309881973952200309558701281390218291470546029772165696633320324516467254830879223576070470411485517051344346657289971868903652695751037513001053649602962869557185239297244661607933074287150343586997306589428509963644019264430765627834926658695546602900072897047593871524980606170000818398081516692371086969182293659368699722756421980487338727521666523301847271314184035824787710410801836218539440452679554055265382924328298142097644150756587206812515126535021859687314491425916443492572800729735648189684401773405048635331731343407153634795639396561927135561015142107565162257773200327960475926618440697362836605468346394162479689455513586828468152452529440531573404295369553047594867190517805692058140212666507258345772639505609394607520104117465060092174349845155041801281322706632706412714316826186103298870655321934115651706877813215514235263613864608518322243467815673596846364161113809793611287897771917056986486305059979970227348695591372385543152202202150170120302648065476517560396421897689672447923219926285940952067289665761015815959687817868165634446970368808230662161789424522457594698900919328314976723983707169873816225363465162072702799555905883639436682601041813807873994645257616202439001895101774434229341373763524299309935359060610797662048967086087313953183704822015729351229882830317033025443775364520276981452684702603123138960759489618120968147555524637286568679789933432453486875983257954491862387406570557152374738327547759794656407838608437185755459958812113725909317853959599163735343023569923271359273588983657597641025595583767956729183095387520324380138350199298494160518015769869394977715070764493626931769469525364806102607646594126267505790368446089227941314920303605655989986604901531704831866869587676132490956385975675684432879470472202000482212701397544706710469464454368072413173628778251127135521584646651059907375564716863252541444285965731350113841675579932347789788064947974544317424277145867464610498896706386254547844301943771542173041617861609662629145268748587594857796962121527715003856262851624681521228980466321561651260763327827112269941318261446455990204812364687510712699256266377441823762151838422934924445521222024261532097781531412298820603150283764699582030582941837135463149393761371572799232427662682608793183520608853812302999952281464979200916285146708608479453197077328092991843006050012793296243548818293546819508480026686684282234743056811747437543312341644824008821081517381294004744379706475723667183619046612145248424720017060033704593592192220497158505588625475527164611459652461608309078958068892117965070809213734092583030592213456888539656093042940185903603304171867844511755738517314636168275744229792486027874295241333575047960334430260911850995625523147941367353224572678431220224244926406994361854809318760270054871508285707226632533687415896020737958054003299345289940110882798655219141442033292667097493872975331112801584571562780465275224983472222715747571791780785236404232152711913479014948335313673299167098032178177346069394270556047116638284177563629202545143711973850607437732763021935181419098170835986217943029488409160256390862745849246412911706753805326345435691007896883900051375990685889000665654387164793004096654619167702444670655281355896048919356489985812456409445046064344481046801253494741233266159978762865762967144348327060379513022687970021268424087440260356674127004897214150871580935052268953897177213578975440400704805279625924475510100569039694731631764689060231566018476841342122457308114817039728851886996702259828927198131485410452816969799046741437016213717789792182885570331336380976124959182565140429645111255851507006189922630309557164103686291521450990610095034852446110431228578219189341846009666162475060872281703818985204446234733705225653954853231347696685985868222749765477657497531382384740415408948211067430023055034972555665558301068171785305504689155605363917591032023936141636006170619452342873940550267493273491108692830075449466875676442385810260343601555662399972741755127584915318800572367654891231207426341745312618059080334999315888514244534345230915636341048572008510301373639046927515618323495649916424659352524542785269028621119024442205990056399189219247526622979569075607815023946762348515561029352865930988177650339942462081226294469460893027909307332574255615391026383341918972726344326456930183347993935930149413234026797843044769043799461634200062071006501978665821679713744382056737231872201416937388614676849972045975307285799243323413890314312570641461063432742754860570807900656097756470138993439215377744053732357514052488185810692160727832904601626078493265281326548838404225160663622770799647942703609024523547295100093925204391442316722720512582714559198149447691289974638196250566178561558736525998775441004832546506066683153678963480279295524358020684382986627380766147145141943032674997573638935284332718538160898354746947452628041888589183335127958924099371773215317191865992606441643907102336402140907319322692352946800219245363022351687187274007506415738379096540010138694792887589877455174746516888499764601791458050828842838702839891780372051758518386640834514619310116165989598840657715620373697344974733312738282597813593220801913977280165675875411340854327869173467950023420985541193880854367965918064624956006500670229616545460671099650148559399068933140770770380412484851504478627552484751485328032147300654337558976557849404558796416031158278674490106214792544233959633043246356190060234244037317260725727622703147843371855902840882521804815085077158746389746466981589883441083614691400869694622096481527759077348043303810398178846466058821858346121254703079027367381789253561302533181419595639956714839356291892851037510000119876038181591976702727448860524696573448599219543494232492140481455185517961934686991636717683248086416967708807034555072066556502722343200689912844660545996680593770364350318053058717091558231361648850310345227506662617688484177901118064248609192087542001311318869698571823397403192089411391729199020329103699954712257625198082494919640364126011463476385805401300829202516314695763778703447260186343237773761526650704955534867380178824221009782449561125166050193676184901654793304087431653759248786023798914736584977409968415495899347550484258533440983565439706466599409658964391549584487145411956267213677439182216382497607071552421496060076293584104921849040824901496586158379477830602086148539459919561565152182995419694133022505278229276051690901065001608616200004899961950741480758161263303555446110992247457013371200333705728405676519880869857188094342295419463666155935294629005188058112338057978134354559932326517873444027144381859064628436415274778064419582857604675945830522393574580191258056410364390433934988159213530226891181537573436597756193719311992183197446992458562438927776866667687361129451552658332971298043909047961287012770257473052153638417584224415454203213452258756461460082445326834076280798904393832893134349577104424148454651838819560130440932456549742597915386776005514207069346298155948731234779537571916161553902504172763491780333415535471411839735458194024405345400069390280315961427378027461574895405797073313426849789493534768327709304867634947922891252258299100175631576694748615799577377954770535618354977141790376346593349120884053421739346417893992457286135212471949068531874696578561761495899136361519435260628724445194732521388822809533510156845314676405988253444366567297434869030464897141931120002924111966499984932800524144093803791929909979337934433001911162524096850393401723371208585848406892584671988209422029595221109119577547843475526074873616829600415420498626501622732491653350521002320015829929401221619143262961484749970132873133773970973674676037299074403924908137776169916670398037125147234640760210854051530947552456057760772760661575036723168270002754722423364991618103129477456726241609193282561108621110431381529895641002417208875904603447451065359793835521670137561364273127332978461050259384554366620725407747440250825134447891734396140856877251680998163490769407731275576787510208276507830627563672962441112225439562198676349512362294028269543837880310718122122912121112924334547944323689275696602415172567355047734776175425821826671869887900000000015008398774780627722606678354969603512884991557192512901477301637600814322741301628194131528280664223161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999999/12500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.18414049008774891095732865801215859484600337712299483940907934495967427090347934872234738868773431073545109736618282755805585910375966917571445739872661408656853007494521875414457030916380089248732577504888237204643171889392265088423608687624039862149165756046502503261064861388603442215448536148886878662886717654952310069800132034584856943257145968458847538154792277645608868924499717069572690737823762850616483839497271890806429437839663806628773204284767411241535463503569402293415237600212227720055304346697552133251794869861305277710625999494592304322931322504974301200873968743625682628441514627285666906774193994071659875882525077984120538690562927555343073821090697611507588927539326797746251168829625243154524884913952309146668632270611045508988029203249999792796973129741666645929816038759033866225509161165922460261703704175968914164429311261694816096408215751990818640454603095977093047329289530601227435571189106357541430471405302851069935905539117401511423650577509995007212890240492951360621024184934483841088858597610291322585261632156012008273195631535695630769860119499943355374670295826836251807897926252167722986680553967621499074643306421354859443516201326287452810918998793821183982258045183940567494387425105497853266506805190571959740040012451162164782071811737443101672257314976538657011169002544338757752039856077750295213860859461929447821269611768459555499389885387477814537774688521968715138146415686171341767470055850326180492924735478706108857456342698898101110279758848022390194103914556800354300568509296367114994063897691552753491742182754152207806147664533030032412023405079282531938012404329062849814232062362277673746095878932054104063726211363651709634661982641756858489259741673311929428181141061782857684444773618406967706839869486820906881779853636526739418088311734334009330164793284192013063255214242010601290041303353574758295428647432359586950079960414345808739031376396612313075223374009320866961722894558338516301409556869109505273734485277857845679394337345587436715301547553538211171961806627563541967078601890645903680197128917531214565731271233426699730731346505957887247026535287909204543278043442279059354358761815721776707893856881317703105350612360568535807797080613749691791241742408490250929732368432428662792388252048581326189336160644016722941164012481878545441383632160682022713031626140915934287668256527110245013736644975895974820314703582501153729122732655619174820434075692139976882951078129540164855677269230491529626560542794654034645684264192789682207534266413202214631657384099389301173421802063574119276311559159559602344160826149680805758974744151367958417245243340775298378296347996847733590425390577175854047569376814811523683337192964494666134995271507181809585662080830084825246149211547484303579564811708287441582943699878159858682324032117052832554559660276998254032742235541639861016589945436793299240562461736475961143654205653468410914661660422541804176648290987790978383591064170415849562334829104293998395712232078842375955313761939005764877595812695357479297148248890432975796077291210542948971054121397981839286461071277605762337269164168958389657578241216482324333963562787048714633907868021399190706486584066752448887359295281235750888255965862430320410506178833167289669078525464709833342594192267090656231797621906810192686409257937456618866088623530131296123099780739359162384178791185650382436071438751642397257168931179846462071801968058903297378118247457320299179867542330962361134838401357359296012542580035844345120127453665210033921835111760643150098107283728798612097248046992098428138677972129613559819255474042373950563629011553480520520800464356873024117903381314637912452705744763093060040826554816102549959968096280817359075127868477179731634550939377944341253606791538558786309962465313528867622736430855343732844045366235585742747399777170863545248148301010646435336685259641658854595296897392523542502243561837599726556141120537168749867990349615139711864724430160110817253779535406895998444327827903463144100995497362528738925255969272394038657810967075815062613712063788847320876529641375070632738001811104411857083716360716379625615889266609066205755914929396339173365268997502371726863002867640519663049778649273294340985366641311652048235292349755220347250921778472215048785535988503143327292451520470325657467960176548995989846403277749920571452086593441837043328241660390571948936806164707533851113377571341279910484441509553588723758331227877293294034325901025000342929168169493615774889905923358404382765503734661629591037233635837002914331107802055009371530132488683640742930016661195384328226497078270133183648319299718639494649163288537924998206167957533807675424664011153659560890545466345323746213776358775639594486165980756146845232696529837787445609328986493832745840974053944174922017870724384498216106975602820095457986427685366075782908119241341373182316538616778720547785277249984638834933966217850618536008523272582454335790772730701366713968483322114233316324543393965435198172151085108954830389692945755509295511736532608743821435032039835734925944450292012070230521523744179701843990673149480245375663487136626126785464687656241747485375674847297571344065042544698347027156371548450844072626694941003026334718576485846743982245543059501630461195768227241335963574542861496927496940459242668081871219146572045780477227664086530527335962679600490119013373609395922758314047306891335789089225646429387371387694565092838112104125054102203196379866556964311127226433987223642680065364643125650589232139324391629174913384284093134402075027481249979318660114388781952505230914686963037204376259921229197364816218812651810991664505337819312068113384943237366228072206478312458413995466400368063491348723150250984670540077304388787851526095933996673383815434435006613316316098493209919780155332343613398773110830362044434726780149169745577922316296807794562131448722562666960939528764938297898207786571545400729905791106716772075595768048132013774579675007349574235709616072540822400231908116933813303893945499862051283645448359555710422524520589267097241668292799324781250748492671718102519210543929943273007355099257971162678701710404364659420903857896528867043497918901260032363959954338363388086112827234107531282451058188851109487618224100898354911369205284194382961177677962498085921634860797249094376059904995673756249684790910661606155831362490046385529144161403409722108065434978195668155771772469146093067778712070620266312833430661229498814810181948022617341230279811955794161748313988970285720916146608115909689088187452557245419193045495097296923236346677847906260693936277544064378052618489410353560190552058918125951812941902892820660118158994783735906737671484216613994969621972479804619819938447175368931345279137459031707013898385647303895555217966902782101047528958126254150316881275446494040518448433912528905220055866253520467110183362508985734263911427054289153331420123984234484847845453135176527508658696755468030849312110384515419525565219206245602960219419372192405398474629151229321047753335934883783046024586236484584810567332665723879296984238715937523141170257764843289129150645250310502368904648521375597404121777050339912400145311474648049843728282931034385267246827781685447394972706502846906101423220269316546355295696371132849102754756049209116031689374093514119474059574051241004243257701770901763945287254212788905641684346935946275000587088804252123555346113399186279796170185088913084162243884864077280078850945042241220685127414507646589990708900891339710366247628098892536427363062374042482589865449683582122131897480105726225509311534671645630890724588343459620989306478193682914258670315032473797075913086097638115883345499030087645771624359559698676400518816902305472859615849974865758573200158407261372731059340165851123736239515223699410913991096925943536550399657329305388184883010351601541802113169639875033936555086144590223408930767923600630874249229399219652803739026613979482033494600810667948524574141925200073826996730262967331508614392193019758502429897063109754411505892379865179085526513802673893169075150339481748510006647449828143043007554410966319153878027668772175974532853176829146844886716172002293138342680815218129014494904712255243112165503871970841678878450889246979791667190276030856375645249068612698499609842765144814325094127378053943830954583232634813962131453594578534356230736551370361423045012610249607123041078861227598389796429598031467593515579046909578674801569086038445160678786658510811019076991782042881701929396372553584805632517578727367518621935175691534327731599537938302189432067037100005878970274234577282182125834174390316577733436738805406835579099430940200512753650907090932395288270899262721426608252334542427560549392630338908439351498397861210291502681212544069830660245387372809550533001201498852787255087176805354927732073949819600310752799590241769894311090597051309433472101556320825393357288670506577253140983588423391834222640398713675082258303606189813854866230571492007211991863950559111038749782406353328774868131332472018400694529927627036191579910968742416356918895212255839892705741405224775137525087639722347391891459425098068304689631579991426096497484525980807682387635305433510011178324460774523185343327956781825737468795639587836633066133620723690355506808357715593999719881764843616678319228383280307840253329507065007848761256393553286488994255839093886907236581917638092926488938001627961847996821301683348055555825239142167926398007146430751171972187022890282471724655150349270444306184209588707920534108981063641502310907622663347563257831408372207507831368369354270653161991463138558670825884807744177473405854111787603232746606069781823815444913328172283442650725741967475808986712845395629376054818156140015977616030654373723646981280178596381993179105925943208634966865752344540515171127632313950426708637172608869360796994503229262998841429800803625055087335155308044762037762393668272157384307097769545723033642014431815214885190959914594889037913780043314621907750159445447770222944618936762050987372350493277381785824617562245557704768355755750017840714652968377439221082219163535699589351844040013716451480288663852415965392454373434845162221398331944804037415418572929175386388999968552112167976757777697174894760820329125900285392948435761280541457508793844771984194889781768763193126064061165738399160551817254186665759319247211656346983113909664090245188003424590168359252433646623261399618626563508013529635656654852386931199316005221232688581140882390202193926393500475875770625421959992811916316122969872678720696445675134304197599788623250802486216848258476214395193499024570033653542085396047953028730508175185954120586332363380380620253335253274950050503028356565956370221055415137248822082274595206514560334691919013269820221626827495671145189789678603630330039554539825393064451262314784548236985799298285511888389559178050774686716816757328134485368214207240845758277163562259802937071613887782498935352195452690286620994064982596156273514405593270849991244238931487876225736393518890334005859346434396599445389711872419490257785377552530414556462089746782775151458004114290700101150881132810165852493318623051841448838338602037735671021233038867772439384144287298310707683066752778457752939657158046191073632764289853500537289025931354375730069728310069278534875640150546647941412389144148988280501408203470684089296092549754850790442051033194800203973290008684434412855012452024915291804763215520425603857489335504266983536213916126553198374022426502158622654554398534722503281664173910927280707123993573185601589373424418407192229863323138701186005154636211827854568680580341979571429961610233347505760052988927398887088213845383479335508081390024502822572772270170345406726427360683075424990355365235802628455680824105604685602784101649703233754491748635670512566028517388996231691817192760947013122405724112814923650741163569160221348837763220722854612087670857612549760040916977493057297269451577192309928538644917154149846359106373416796944164805946810869156267528179431751514139030769793619804827726461812924184745544936561220612887645671884290397870819431775957746505745656977060567448636427293532250704176776076412285772036802375518817708141833815638922468031935817945168983847152780376856967502441676790387272537884507203794077212938297583687985810437448228431166826137501166313341017480512770372629047121963756606236709524689584076026578935580942417419281232917002585594259489756723033356875123797384833990326005753709536397617241714057625553840821032536080750714720682031301231721135893682352843403945635758229024584717642651723349716504800323651124485846558276755275252964650935890805747159711451430893191160259411392236046685334668953945129860651435019558660127930440113228249247239906469631186542742035073170025229717601412208172022490709415106033600441672791129030508670262237968903649198719345381966844314532946239116061022403769900770005485764905483035627383616943786637618927622596979323473224643971090269581467197022395816031233689722201343324839654939199095870173940342379136510802922934174155133826211479176230197920159382372309592729453742615832379077601281203064804603541979927213535053015746441487935673846758974534713427737468392327148032995807470944054718608502084694983764376322110935072969029028811333580604819277367450648418322881809357039580426806262077500945421269485825074427407173964840559711508720175922063032078939533280044602508136848503262075513789175912251111693327513212236046242582631294925139673349415517824135099195342466659526181274881144320016911498292877712651264537071279446115050021777536249509149615916038381533581717320628477996312378690484886614436510900989857513111092990478945746819641587823371895438002373838997335984365696677510021296635497616932389793492430765091219460899331285065791791151999226710824426420009470299964524821229881887686381693763372960473156887271775562023823002751298097879164148687455098829998592112032915348245390709506328038911364721717011071442290383858184748865185234919907608998005385868645457506177619804983104057894332938007953816702032477237048981592711212325440023540942212428985199960284643586282205678544261825161551079878674469516650014596860227765517017701034684672720022174660118278100578218611388541584762445745562003203427686749969013493190050235312311586656632358399065812896565557878357153175836701454235920130183666220141838644118314609138630801007280832029628435285617583532919535487861019331541347687686573923100611598056803435918773342553247448000032898607030294286870482933428283587631030992733952292059018306083483884055715669733094898302687224255000787413634715567871272772066647168191661855224120380434075185142425382636642715830855098966893677342258575451507564425339610560376078452758829484893021268575565614110633966356902034603145072646920192929812674602810390635271178592637045536955990675812018097642397603967848983228243040763804280783356780451324834829157210499606692994867458565008182434607242687152135185179990581211872523652134245829304876462894174266967565239752811239675157817768608462088126919343448291343683413840010094146486960265486861973653659727056756349969995901338618403444123988293006455366818045530537604735593193874264858167895393913826033741813253003852934771030975599245062637236620788032041883968179182334202196631007511511143095170253144990122561454727181946789450805854153008864799808361272781314859807313018470631481554043310256316430800324118827611636075980061206015502077421498989694699847368619592962178966699891152697683736604932774520006130749490065495825282109712146433276625064886096941644775989266818966458281561722661460906813454797615715669208369725824039802490512542514453891325212223491211839297498445262713745477003282104095830192514169023500579072329304208572060455802676773233666241816948881069147276386557622152845049574746719737788456955710665815116131476377082889908483720137521172065529973885952369244870642700716710241319678874025708810898446929385520013898122191941422457848217368657314155986426571057563430318396875282925857901170923282229712522888931619085258573058479813095189940563837228594699142906195453839296774625303560022265126145265694821890590424218464613407324095390850170099769638460784616681275925600793979650963248566702651799128355420871512046102907389204724813351780747840578833805034506722060224280762903843280274995258631734515583775883601449544390861155151043430581713047564814633243432970706669138141096958791933548787873366841858790888052750360379194914597477355264825527440126471584323196514473679567490786242855907632731300856286994784737435773592701863249371147362052268217844682319080279785297473251330860424002988103395667399057381284188309520580096220365830292281052729892345881719041536183603162335339339180684010034111868152310210360874650001222555754804666353530160369887546285405306515302822158306013270803635619318859536940007572270668362308924287801675513708101991157849811205936868411157270392050559643303624267032388983132515588612123118952655101762135116399429412889630187886215635168678083725048008143354271166871539723227598553734957730874846757286934987740753735583035702755794559332102857503049924593268008259802706914160037948040997356891020992192267536710031022723711381467074648534695633014870812448526186937122769817676567571356093779523649776442903330214366254274361561291528040707146045762227780975912122843157660320127612092761745679298452005953915453451071195559978273825590598359442828239151144585143397280818694368326389185607282360164087581233742660089609876542037540469969296326598783170785165616791627632456323263312819587176534822095289810561664029097435110797357914159786129222507602710570983607937217967443992023638126417101200155512458037233542716882868303693192165935061279525343582864316865363820347262467058138756045804419455275092592441392593888896311289222736261333452214963817658104323161857283872834498095052072031808621425795698360527570914134937008686625934956384304276582252312227174672052459642894775393430880041786555613329014774107053999363717421631322299614119393292668992777225654068288857208328452541681639109323274144300007702704837798432726063305756572644362661127510454815023814576024789368584673389576884318557298368264856426996159398063815742515954633766646516210793168944538108562002540366851572522240010710039627516247388324734680830547532958580374549953226023938437472647924543477367339145589439089432333769979594919038745267714365603871492786754541224483240116475435597503865321090121218520628731280597772759769562560707984326878849656034440519115180476815619315227323545016179781549217942611539235028889968573638663442757398170259303766148970005843858213303067138611657965748632422934462602920372797260830615673895593621191647763075923585040480786383439813048895090488822498872713531839935883558802406008320688747778534353449601800781777871986205323357939806699438062699109184560536715532358119429720255176776247051941435529498406190568638972465749183311388282513783560246219997993993877353845419413857816310308115180254877963194329426642983391683576231320832158441067900384126522846395099629812824505400038515549270345728000564353842726053367651478426922236222465782022616466974420366573119470816315595854018129755098906399625107836567501862631418035732183368579813651534522844591061527950454987649788131104442340958613057300943818352238013545906215300739922885757526417043833200407434363631153570512915933245936135598434804296676560803910463095946998853334536440952884263073133554803768938742383798900196977249563282231759880518898198927091882598939883934685209140187722982554953198565584619660451375112399654831705884961526757043920310377226392379861593002300536268303415172799320777142575426473167757050480711268440913185205580734946791518742823108274602416400684273629018338539706789760837008559292745340682945141454720434081390018181659735036661928022221149304991325695608165980526465565903326493266534452636264914362156279590549053503550559739062225765085242942828475962351635979894683544779182059089763859973547614928379878878709018194213246972405591194639794819882152755906262738213219884946958128064936944630884679893311863667424224315725398870065152902717240236934597102205332917392331453186158428081993106465537658257081920171445411743143675476596392129370237032121960610984776396755487779189490015218288038509503047712312613612342362755088753215464196409207629484654020573973176670695973900773583243697368367884058683765799884599845439436201530609386103798641821102643442971448466738771233193820155245657121049097940805047132037741669523217166296111184879200128779456157322199187633958768147447419572549276078205409234493663600618288477861731794664408325235545263439054306199671210647151951795762628190316524955724656857144928262395945152283708506258290571428907012119557995629516501525901158480242902948120899675483661748240999957463316427471369988964618011802663514782961616252451431036677957237459311208812076912171346180283645384683050642647807105020017112403684577664346445115197176873323177070119778531418260730428422088129977121250720339660973166046239467267125692310183034194458700665938736992625525938717180024488372213990515248519130739265983302396805902653273208149827573957626596024791928497515848550718626791483186459662732678453516069395810459806241542336604375107405778454953686827091755279510356642561642171101639993173463672130554556658529433324338576681756568434314098433315351189853875002427285524043511354353755170299129760573301643515281844951204608771212504867035615983463866854219742468245248542880501989403828380047452968804634459499870523829495447804035592258156629880079887903163585439093644451335293080468079756015019536963025609832690434855181708516062456741546265452517376029936116026333825013344668203835185228990138904258159157412228356972665712353029340661489533903124474479055791617602476469610251121746331764368238177325573066562596131738038647033788608563763291884136410754773258319774951229221566008300104008429196823702956457481914377957292863464594297202748695978452715428079709152154115446125022679413269564372823200583176380750972199844849360006547184652133538968695753458349274949597782051375843898709820173332186414778170513472286598301683286414689748315523621436432442123063394626385136781153206052697654500121012280174877498515931407331547940582405837885185517475214187240389082653850747257229078365115172495417084488121136860521298062185602623683807412947525578902692843746771153299837515644108694627745219620235524252587234362956424380758937524142445536465121701332058066766181116044875156860160832939720480737394798761240334410250581653061651301714534609488826390965242575472925213655022505724113882108910916868146577947742525388774770913288910478348890303182175336455891890440479839761818789564730979084345217617617201360962421184523812140483171375181517379583385759410287527616538317326088126527677502542945325075575762950465845297294315396179660757591207354626519813791869657358990529802907721296581622396447247069115493460808334510462991957162060929619512015160814195473834730990108194394479482872484886381296391736688698511625469638576125834809839062642536264203550202916162215851621477620824985111686075916944967745180444197098292549438319467459627895007866063635934899099252564457218997906620382078357251262708867497486043679670496909807274542831676793309882744188559386170874188711869260781128204764670143653833464763100162595041106801594387953284144126158955159821720566115949015454155756202918448820861172753010140046322947568713823530519362428845247919892839212253638654934956701409059927651087805405475463035763777616003857701611180357653683755715634944579305389030226009017084172677173208479259004517734906020331554287725850800910733404639458782318304519583796354539394217166939716883991173651090036382754415550172337384332942892877301033162149988700758862375696972221720030850102812997452169831843730572493210086106622616898159530546091571647921638498917500085701594050131019534590097214707383479395564169776194092256782252251298390564825202270117596656244663534697083705195150090972582393859421301460870345468164870830498423999618251719833607330281173668867835625576618624743934744048400102346369948390546348374556067840213493474257877944454493979500346498733158592070568652139050352037955037651805789337468952372897161987397760136480269636748737537763977268044709003804217316891677219692866472631664551136943720566473709872740664244737707655108317248744343521487228826433374942756094045908138517089346205953838339888222994361930668600383682675442087294807965004185183530938825796581427449761793959411255954894838474550082160438972066285657813060269499327168165903664432026394762319520887062389241753131536266341336779950983802648902412676572502243722201799867777781725980574334246281891233857221695307832119586682509386393336784257425418768555154164448376933106273420509033620361149695790804859501862104175481451352785366687889743544235907273282051126901966793971303293654030442610763485528063175071200411007925487112005325235097318344032773236953341619557365242250847168391354851919886499651275560368514755848374410027957929866129279830102926103737154786616483036104181503760170147392699522082853393016039177713206972647480418151631177417708631803523205638442237007395804080804552317557853054117512481852528147814730736979658464918536317830815095973618078631417585051883283622535758392373931496129709742318337463084562650691047808999673460521123437160890046812056049519381042476457312829490332171607924880760278819568883449828625753514734768077329299800486978253630551881635569877869641805231638825850781573487886945781998123821259980251059077923323271585688539440184440279780445324466408545374282444037513244842911340728256191489133088049364955618742991524402139946187928869542640603595735005411539086482082748812445299199781934041020679322550404578941239129849659410733962500944472642679994527108113956274761847325090728388576068082410989112375420124946587965199331397274820196342282152228968952195537647920451193513753980212983836552604862520191574098788124488234822927447905421202719539696649810355755687144223274458660594044923128211066735351781810754611655441466783951487441195305872214382744358152350395693073600496568052015829326573437709955056453897854977611335499108917414799776367802458286393946587311122514500565131688507461942038884566463205248782051761111947513723021952429858860112419905486485537285822663236813008627946122250612390707233801285308982166397183541628872196188378360800751401635131538533781764100661716473585195581530319797105570004529428492469892207990203528038660372048533465229431707842234364194864165475063893019046129177161135544261399980589111482274661748305287186837975579621024335108713466681023671392794974185722537534927940851533151256818691217127258554581538823574401753962904178813497498192060051325907032772320081109558343100719019641397972135107998116814331664406630742709622719134242976414068147093126676116954480929327916790725261724962989578759797866501906260782508745766415311818241325407003290726834622953387743600187367884329551046834943727344516999648052005361836932363685368797201188475192551465126166163043299878812035829020419878011882624257178405234700471812462795236470371328249266229395920849718340353871677064345970849520481873952298538085805820981625182746974847222727060174438520680617269971117971735852719067528668917531206957556976771852222072618784346430483185430771728470574866768970037624632218939054314028490420265451356765119653718714850335142808300080000959008305452735813621819590884197572587588793756347953859937123851641484143695477495933093741465984691335741670456276440576532452021778745605519302757284367973444750162914802544424469736732465850893190802482761820053300941507873423208944513988873536700336010490550957588574587179225536715291133833592162632829599637698061001584659959357122913008091707811086443210406633620130517566110229627578081490745902190092213205639644278939041430593768078259596489001328401549409479213238346432699453230073990288190391317892679819279747323967194780403874068267527868523517651732795277271715132396675897163295650137709419513457731059980856572419371968480610348672839374792326599211972689267035822644816689188315679356492521217463963357553064180042225834208413527208520012868929600039199695605931846065290106428443568887937979656106969602669645827245412159046958857504754738363355709329247482357032041504464898704463825074836479458612142987552217155054872517027491322198224515356662860837407566644179148596641530064451282915123471479905273708241815129452300587492782049549754495937465579575939668499511422214933341498889035612421266663770384351272383690296102162059784417229107340673795323633625707618070051691680659562614672610246391235150663145074796616835393187637214710556481043527459652397940783323094208044113656554770385247589849878236300575329292431220033382107934242667324283771294717883665552195242763200555122242527691419024219692599163246376586507414798315948278146621674438941079583383130018066392801405052613557988926396619023638164284946839817134323010772746792967072427373914771343151939658289081699775592548254997572628494091967193090892155482085029795561557860171110582476268081254762517411247906027554932538379478952243719177135448960023392895731999879462404193152750430335439279834703475464015289300192774803147213786969668686787255140677375905675376236761768872956620382747804208598988934636803323363989012012981859933226804168018560126639435209772953146103691877999761062985070191767789397408298392595231399265102209359333363184297001177877126081686832412247580419648462086182085292600293785346160022037779386919932944825035819653809932873546260488868968883451052239165128019337671007236827579608522878350684173361100490914185018663827688402075076434932965803261979522006601075583133875169126855018013447985307926155261850204614300081666212062645020509383699528897803516497589410796098898352226156350703042485744976983296968903394676383554589514205572819321380538840381878209403406574613374959103200000000120067190198245021780853426839756828103079932457540103211818413100806514581930413025553052226245313785290978052676343448838882817924806616485710852025467718268629398501095624917108593816723982" + }, + "global_gamma_power_slack": { + "rational": "1/10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "1E-30010" + }, + "actual_logarithmic_gamma_guard": { + "rational": "1/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "2E-30010" + }, + "alpha_logarithm_absorption": { + "rational": "1/10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "1E-30010" + }, + "group_key_fits_record": { + "rational": "1/2500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "4E-30010" + }, + "membership_arithmetic_fits_record": { + "rational": "1/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "2E-30010" + }, + "microbox_halo_volume": { + "rational": "395000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "79.0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006" + }, + "positive_layout_slack": { + "rational": "1/10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "1E-30010" + }, + "short_record_fallback": { + "rational": "19966404900877489109573286580121585948460033771229948394090793449596742709034793487223473886877343107354510973661828275580558591037596691757144573987266140865685300749452187541445703091638008924873257750488823720464317188939226508842360868762403986214916575604650250326106486138860344221544853614888687866288671765495231006980013203458485694325714596845884753815479227764560886892449971706957269073782376285061648383949727189080642943783966380662877320428476741124153546350356940229341523760021222772005530434669755213325179486986130527771062599949459230432293132250497430120087396874362568262844151462728566690677419399407165987588252507798412053869056292755534307382109069761150758892753932679774625116882962524315452488491395230914666863227061104550898802920324999979279697312974166664592981603875903386622550916116592246026170370417596891416442931126169481609640821575199081864045460309597709304732928953060122743557118910635754143047140530285106993590553911740151142365057750999500721289024049295136062102418493448384108885859761029132258526163215601200827319563153569563076986011949994335537467029582683625180789792625216772298668055396762149907464330642135485944351620132628745281091899879382118398225804518394056749438742510549785326650680519057195974004001245116216478207181173744310167225731497653865701116900254433875775203985607775029521386085946192944782126961176845955549938988538747781453777468852196871513814641568617134176747005585032618049292473547870610885745634269889810111027975884802239019410391455680035430056850929636711499406389769155275349174218275415220780614766453303003241202340507928253193801240432906284981423206236227767374609587893205410406372621136365170963466198264175685848925974167331192942818114106178285768444477361840696770683986948682090688177985363652673941808831173433400933016479328419201306325521424201060129004130335357475829542864743235958695007996041434580873903137639661231307522337400932086696172289455833851630140955686910950527373448527785784567939433734558743671530154755353821117196180662756354196707860189064590368019712891753121456573127123342669973073134650595788724702653528790920454327804344227905935435876181572177670789385688131770310535061236056853580779708061374969179124174240849025092973236843242866279238825204858132618933616064401672294116401248187854544138363216068202271303162614091593428766825652711024501373664497589597482031470358250115372912273265561917482043407569213997688295107812954016485567726923049152962656054279465403464568426419278968220753426641320221463165738409938930117342180206357411927631155915955960234416082614968080575897474415136795841724524334077529837829634799684773359042539057717585404756937681481152368333719296449466613499527150718180958566208083008482524614921154748430357956481170828744158294369987815985868232403211705283255455966027699825403274223554163986101658994543679329924056246173647596114365420565346841091466166042254180417664829098779097838359106417041584956233482910429399839571223207884237595531376193900576487759581269535747929714824889043297579607729121054294897105412139798183928646107127760576233726916416895838965757824121648232433396356278704871463390786802139919070648658406675244888735929528123575088825596586243032041050617883316728966907852546470983334259419226709065623179762190681019268640925793745661886608862353013129612309978073935916238417879118565038243607143875164239725716893117984646207180196805890329737811824745732029917986754233096236113483840135735929601254258003584434512012745366521003392183511176064315009810728372879861209724804699209842813867797212961355981925547404237395056362901155348052052080046435687302411790338131463791245270574476309306004082655481610254995996809628081735907512786847717973163455093937794434125360679153855878630996246531352886762273643085534373284404536623558574274739977717086354524814830101064643533668525964165885459529689739252354250224356183759972655614112053716874986799034961513971186472443016011081725377953540689599844432782790346314410099549736252873892525596927239403865781096707581506261371206378884732087652964137507063273800181110441185708371636071637962561588926660906620575591492939633917336526899750237172686300286764051966304977864927329434098536664131165204823529234975522034725092177847221504878553598850314332729245152047032565746796017654899598984640327774992057145208659344183704332824166039057194893680616470753385111337757134127991048444150955358872375833122787729329403432590102500034292916816949361577488990592335840438276550373466162959103723363583700291433110780205500937153013248868364074293001666119538432822649707827013318364831929971863949464916328853792499820616795753380767542466401115365956089054546634532374621377635877563959448616598075614684523269652983778744560932898649383274584097405394417492201787072438449821610697560282009545798642768536607578290811924134137318231653861677872054778527724998463883493396621785061853600852327258245433579077273070136671396848332211423331632454339396543519817215108510895483038969294575550929551173653260874382143503203983573492594445029201207023052152374417970184399067314948024537566348713662612678546468765624174748537567484729757134406504254469834702715637154845084407262669494100302633471857648584674398224554305950163046119576822724133596357454286149692749694045924266808187121914657204578047722766408653052733596267960049011901337360939592275831404730689133578908922564642938737138769456509283811210412505410220319637986655696431112722643398722364268006536464312565058923213932439162917491338428409313440207502748124997931866011438878195250523091468696303720437625992122919736481621881265181099166450533781931206811338494323736622807220647831245841399546640036806349134872315025098467054007730438878785152609593399667338381543443500661331631609849320991978015533234361339877311083036204443472678014916974557792231629680779456213144872256266696093952876493829789820778657154540072990579110671677207559576804813201377457967500734957423570961607254082240023190811693381330389394549986205128364544835955571042252452058926709724166829279932478125074849267171810251921054392994327300735509925797116267870171040436465942090385789652886704349791890126003236395995433836338808611282723410753128245105818885110948761822410089835491136920528419438296117767796249808592163486079724909437605990499567375624968479091066160615583136249004638552914416140340972210806543497819566815577177246914609306777871207062026631283343066122949881481018194802261734123027981195579416174831398897028572091614660811590968908818745255724541919304549509729692323634667784790626069393627754406437805261848941035356019055205891812595181294190289282066011815899478373590673767148421661399496962197247980461981993844717536893134527913745903170701389838564730389555521796690278210104752895812625415031688127544649404051844843391252890522005586625352046711018336250898573426391142705428915333142012398423448484784545313517652750865869675546803084931211038451541952556521920624560296021941937219240539847462915122932104775333593488378304602458623648458481056733266572387929698423871593752314117025776484328912915064525031050236890464852137559740412177705033991240014531147464804984372828293103438526724682778168544739497270650284690610142322026931654635529569637113284910275475604920911603168937409351411947405957405124100424325770177090176394528725421278890564168434693594627500058708880425212355534611339918627979617018508891308416224388486407728007885094504224122068512741450764658999070890089133971036624762809889253642736306237404248258986544968358212213189748010572622550931153467164563089072458834345962098930647819368291425867031503247379707591308609763811588334549903008764577162435955969867640051881690230547285961584997486575857320015840726137273105934016585112373623951522369941091399109692594353655039965732930538818488301035160154180211316963987503393655508614459022340893076792360063087424922939921965280373902661397948203349460081066794852457414192520007382699673026296733150861439219301975850242989706310975441150589237986517908552651380267389316907515033948174851000664744982814304300755441096631915387802766877217597453285317682914684488671617200229313834268081521812901449490471225524311216550387197084167887845088924697979166719027603085637564524906861269849960984276514481432509412737805394383095458323263481396213145359457853435623073655137036142304501261024960712304107886122759838979642959803146759351557904690957867480156908603844516067878665851081101907699178204288170192939637255358480563251757872736751862193517569153432773159953793830218943206703710000587897027423457728218212583417439031657773343673880540683557909943094020051275365090709093239528827089926272142660825233454242756054939263033890843935149839786121029150268121254406983066024538737280955053300120149885278725508717680535492773207394981960031075279959024176989431109059705130943347210155632082539335728867050657725314098358842339183422264039871367508225830360618981385486623057149200721199186395055911103874978240635332877486813133247201840069452992762703619157991096874241635691889521225583989270574140522477513752508763972234739189145942509806830468963157999142609649748452598080768238763530543351001117832446077452318534332795678182573746879563958783663306613362072369035550680835771559399971988176484361667831922838328030784025332950706500784876125639355328648899425583909388690723658191763809292648893800162796184799682130168334805555582523914216792639800714643075117197218702289028247172465515034927044430618420958870792053410898106364150231090762266334756325783140837220750783136836935427065316199146313855867082588480774417747340585411178760323274660606978182381544491332817228344265072574196747580898671284539562937605481815614001597761603065437372364698128017859638199317910592594320863496686575234454051517112763231395042670863717260886936079699450322926299884142980080362505508733515530804476203776239366827215738430709776954572303364201443181521488519095991459488903791378004331462190775015944544777022294461893676205098737235049327738178582461756224555770476835575575001784071465296837743922108221916353569958935184404001371645148028866385241596539245437343484516222139833194480403741541857292917538638899996855211216797675777769717489476082032912590028539294843576128054145750879384477198419488978176876319312606406116573839916055181725418666575931924721165634698311390966409024518800342459016835925243364662326139961862656350801352963565665485238693119931600522123268858114088239020219392639350047587577062542195999281191631612296987267872069644567513430419759978862325080248621684825847621439519349902457003365354208539604795302873050817518595412058633236338038062025333525327495005050302835656595637022105541513724882208227459520651456033469191901326982022162682749567114518978967860363033003955453982539306445126231478454823698579929828551188838955917805077468671681675732813448536821420724084575827716356225980293707161388778249893535219545269028662099406498259615627351440559327084999124423893148787622573639351889033400585934643439659944538971187241949025778537755253041455646208974678277515145800411429070010115088113281016585249331862305184144883833860203773567102123303886777243938414428729831070768306675277845775293965715804619107363276428985350053728902593135437573006972831006927853487564015054664794141238914414898828050140820347068408929609254975485079044205103319480020397329000868443441285501245202491529180476321552042560385748933550426698353621391612655319837402242650215862265455439853472250328166417391092728070712399357318560158937342441840719222986332313870118600515463621182785456868058034197957142996161023334750576005298892739888708821384538347933550808139002450282257277227017034540672642736068307542499035536523580262845568082410560468560278410164970323375449174863567051256602851738899623169181719276094701312240572411281492365074116356916022134883776322072285461208767085761254976004091697749305729726945157719230992853864491715414984635910637341679694416480594681086915626752817943175151413903076979361980482772646181292418474554493656122061288764567188429039787081943177595774650574565697706056744863642729353225070417677607641228577203680237551881770814183381563892246803193581794516898384715278037685696750244167679038727253788450720379407721293829758368798581043744822843116682613750116631334101748051277037262904712196375660623670952468958407602657893558094241741928123291700258559425948975672303335687512379738483399032600575370953639761724171405762555384082103253608075071472068203130123172113589368235284340394563575822902458471764265172334971650480032365112448584655827675527525296465093589080574715971145143089319116025941139223604668533466895394512986065143501955866012793044011322824924723990646963118654274203507317002522971760141220817202249070941510603360044167279112903050867026223796890364919871934538196684431453294623911606102240376990077000548576490548303562738361694378663761892762259697932347322464397109026958146719702239581603123368972220134332483965493919909587017394034237913651080292293417415513382621147917623019792015938237230959272945374261583237907760128120306480460354197992721353505301574644148793567384675897453471342773746839232714803299580747094405471860850208469498376437632211093507296902902881133358060481927736745064841832288180935703958042680626207750094542126948582507442740717396484055971150872017592206303207893953328004460250813684850326207551378917591225111169332751321223604624258263129492513967334941551782413509919534246665952618127488114432001691149829287771265126453707127944611505002177753624950914961591603838153358171732062847799631237869048488661443651090098985751311109299047894574681964158782337189543800237383899733598436569667751002129663549761693238979349243076509121946089933128506579179115199922671082442642000947029996452482122988188768638169376337296047315688727177556202382300275129809787916414868745509882999859211203291534824539070950632803891136472171701107144229038385818474886518523491990760899800538586864545750617761980498310405789433293800795381670203247723704898159271121232544002354094221242898519996028464358628220567854426182516155107987867446951665001459686022776551701770103468467272002217466011827810057821861138854158476244574556200320342768674996901349319005023531231158665663235839906581289656555787835715317583670145423592013018366622014183864411831460913863080100728083202962843528561758353291953548786101933154134768768657392310061159805680343591877334255324744800003289860703029428687048293342828358763103099273395229205901830608348388405571566973309489830268722425500078741363471556787127277206664716819166185522412038043407518514242538263664271583085509896689367734225857545150756442533961056037607845275882948489302126857556561411063396635690203460314507264692019292981267460281039063527117859263704553695599067581201809764239760396784898322824304076380428078335678045132483482915721049960669299486745856500818243460724268715213518517999058121187252365213424582930487646289417426696756523975281123967515781776860846208812691934344829134368341384001009414648696026548686197365365972705675634996999590133861840344412398829300645536681804553053760473559319387426485816789539391382603374181325300385293477103097559924506263723662078803204188396817918233420219663100751151114309517025314499012256145472718194678945080585415300886479980836127278131485980731301847063148155404331025631643080032411882761163607598006120601550207742149898969469984736861959296217896669989115269768373660493277452000613074949006549582528210971214643327662506488609694164477598926681896645828156172266146090681345479761571566920836972582403980249051254251445389132521222349121183929749844526271374547700328210409583019251416902350057907232930420857206045580267677323366624181694888106914727638655762215284504957474671973778845695571066581511613147637708288990848372013752117206552997388595236924487064270071671024131967887402570881089844692938552001389812219194142245784821736865731415598642657105756343031839687528292585790117092328222971252288893161908525857305847981309518994056383722859469914290619545383929677462530356002226512614526569482189059042421846461340732409539085017009976963846078461668127592560079397965096324856670265179912835542087151204610290738920472481335178074784057883380503450672206022428076290384328027499525863173451558377588360144954439086115515104343058171304756481463324343297070666913814109695879193354878787336684185879088805275036037919491459747735526482552744012647158432319651447367956749078624285590763273130085628699478473743577359270186324937114736205226821784468231908027978529747325133086042400298810339566739905738128418830952058009622036583029228105272989234588171904153618360316233533933918068401003411186815231021036087465000122255575480466635353016036988754628540530651530282215830601327080363561931885953694000757227066836230892428780167551370810199115784981120593686841115727039205055964330362426703238898313251558861212311895265510176213511639942941288963018788621563516867808372504800814335427116687153972322759855373495773087484675728693498774075373558303570275579455933210285750304992459326800825980270691416003794804099735689102099219226753671003102272371138146707464853469563301487081244852618693712276981767656757135609377952364977644290333021436625427436156129152804070714604576222778097591212284315766032012761209276174567929845200595391545345107119555997827382559059835944282823915114458514339728081869436832638918560728236016408758123374266008960987654203754046996929632659878317078516561679162763245632326331281958717653482209528981056166402909743511079735791415978612922250760271057098360793721796744399202363812641710120015551245803723354271688286830369319216593506127952534358286431686536382034726246705813875604580441945527509259244139259388889631128922273626133345221496381765810432316185728387283449809505207203180862142579569836052757091413493700868662593495638430427658225231222717467205245964289477539343088004178655561332901477410705399936371742163132229961411939329266899277722565406828885720832845254168163910932327414430000770270483779843272606330575657264436266112751045481502381457602478936858467338957688431855729836826485642699615939806381574251595463376664651621079316894453810856200254036685157252224001071003962751624738832473468083054753295858037454995322602393843747264792454347736733914558943908943233376997959491903874526771436560387149278675454122448324011647543559750386532109012121852062873128059777275976956256070798432687884965603444051911518047681561931522732354501617978154921794261153923502888996857363866344275739817025930376614897000584385821330306713861165796574863242293446260292037279726083061567389559362119164776307592358504048078638343981304889509048882249887271353183993588355880240600832068874777853435344960180078177787198620532335793980669943806269910918456053671553235811942972025517677624705194143552949840619056863897246574918331138828251378356024621999799399387735384541941385781631030811518025487796319432942664298339168357623132083215844106790038412652284639509962981282450540003851554927034572800056435384272605336765147842692223622246578202261646697442036657311947081631559585401812975509890639962510783656750186263141803573218336857981365153452284459106152795045498764978813110444234095861305730094381835223801354590621530073992288575752641704383320040743436363115357051291593324593613559843480429667656080391046309594699885333453644095288426307313355480376893874238379890019697724956328223175988051889819892709188259893988393468520914018772298255495319856558461966045137511239965483170588496152675704392031037722639237986159300230053626830341517279932077714257542647316775705048071126844091318520558073494679151874282310827460241640068427362901833853970678976083700855929274534068294514145472043408139001818165973503666192802222114930499132569560816598052646556590332649326653445263626491436215627959054905350355055973906222576508524294282847596235163597989468354477918205908976385997354761492837987887870901819421324697240559119463979481988215275590626273821321988494695812806493694463088467989331186366742422431572539887006515290271724023693459710220533291739233145318615842808199310646553765825708192017144541174314367547659639212937023703212196061098477639675548777918949001521828803850950304771231261361234236275508875321546419640920762948465402057397317667069597390077358324369736836788405868376579988459984543943620153060938610379864182110264344297144846673877123319382015524565712104909794080504713203774166952321716629611118487920012877945615732219918763395876814744741957254927607820540923449366360061828847786173179466440832523554526343905430619967121064715195179576262819031652495572465685714492826239594515228370850625829057142890701211955799562951650152590115848024290294812089967548366174824099995746331642747136998896461801180266351478296161625245143103667795723745931120881207691217134618028364538468305064264780710502001711240368457766434644511519717687332317707011977853141826073042842208812997712125072033966097316604623946726712569231018303419445870066593873699262552593871718002448837221399051524851913073926598330239680590265327320814982757395762659602479192849751584855071862679148318645966273267845351606939581045980624154233660437510740577845495368682709175527951035664256164217110163999317346367213055455665852943332433857668175656843431409843331535118985387500242728552404351135435375517029912976057330164351528184495120460877121250486703561598346386685421974246824524854288050198940382838004745296880463445949987052382949544780403559225815662988007988790316358543909364445133529308046807975601501953696302560983269043485518170851606245674154626545251737602993611602633382501334466820383518522899013890425815915741222835697266571235302934066148953390312447447905579161760247646961025112174633176436823817732557306656259613173803864703378860856376329188413641075477325831977495122922156600830010400842919682370295645748191437795729286346459429720274869597845271542807970915215411544612502267941326956437282320058317638075097219984484936000654718465213353896869575345834927494959778205137584389870982017333218641477817051347228659830168328641468974831552362143643244212306339462638513678115320605269765450012101228017487749851593140733154794058240583788518551747521418724038908265385074725722907836511517249541708448812113686052129806218560262368380741294752557890269284374677115329983751564410869462774521962023552425258723436295642438075893752414244553646512170133205806676618111604487515686016083293972048073739479876124033441025058165306165130171453460948882639096524257547292521365502250572411388210891091686814657794774252538877477091328891047834889030318217533645589189044047983976181878956473097908434521761761720136096242118452381214048317137518151737958338575941028752761653831732608812652767750254294532507557576295046584529729431539617966075759120735462651981379186965735899052980290772129658162239644724706911549346080833451046299195716206092961951201516081419547383473099010819439447948287248488638129639173668869851162546963857612583480983906264253626420355020291616221585162147762082498511168607591694496774518044419709829254943831946745962789500786606363593489909925256445721899790662038207835725126270886749748604367967049690980727454283167679330988274418855938617087418871186926078112820476467014365383346476310016259504110680159438795328414412615895515982172056611594901545415575620291844882086117275301014004632294756871382353051936242884524791989283921225363865493495670140905992765108780540547546303576377761600385770161118035765368375571563494457930538903022600901708417267717320847925900451773490602033155428772585080091073340463945878231830451958379635453939421716693971688399117365109003638275441555017233738433294289287730103316214998870075886237569697222172003085010281299745216983184373057249321008610662261689815953054609157164792163849891750008570159405013101953459009721470738347939556416977619409225678225225129839056482520227011759665624466353469708370519515009097258239385942130146087034546816487083049842399961825171983360733028117366886783562557661862474393474404840010234636994839054634837455606784021349347425787794445449397950034649873315859207056865213905035203795503765180578933746895237289716198739776013648026963674873753776397726804470900380421731689167721969286647263166455113694372056647370987274066424473770765510831724874434352148722882643337494275609404590813851708934620595383833988822299436193066860038368267544208729480796500418518353093882579658142744976179395941125595489483847455008216043897206628565781306026949932716816590366443202639476231952088706238924175313153626634133677995098380264890241267657250224372220179986777778172598057433424628189123385722169530783211958668250938639333678425742541876855515416444837693310627342050903362036114969579080485950186210417548145135278536668788974354423590727328205112690196679397130329365403044261076348552806317507120041100792548711200532523509731834403277323695334161955736524225084716839135485191988649965127556036851475584837441002795792986612927983010292610373715478661648303610418150376017014739269952208285339301603917771320697264748041815163117741770863180352320563844223700739580408080455231755785305411751248185252814781473073697965846491853631783081509597361807863141758505188328362253575839237393149612970974231833746308456265069104780899967346052112343716089004681205604951938104247645731282949033217160792488076027881956888344982862575351473476807732929980048697825363055188163556987786964180523163882585078157348788694578199812382125998025105907792332327158568853944018444027978044532446640854537428244403751324484291134072825619148913308804936495561874299152440213994618792886954264060359573500541153908648208274881244529919978193404102067932255040457894123912984965941073396250094447264267999452710811395627476184732509072838857606808241098911237542012494658796519933139727482019634228215222896895219553764792045119351375398021298383655260486252019157409878812448823482292744790542120271953969664981035575568714422327445866059404492312821106673535178181075461165544146678395148744119530587221438274435815235039569307360049656805201582932657343770995505645389785497761133549910891741479977636780245828639394658731112251450056513168850746194203888456646320524878205176111194751372302195242985886011241990548648553728582266323681300862794612225061239070723380128530898216639718354162887219618837836080075140163513153853378176410066171647358519558153031979710557000452942849246989220799020352803866037204853346522943170784223436419486416547506389301904612917716113554426139998058911148227466174830528718683797557962102433510871346668102367139279497418572253753492794085153315125681869121712725855458153882357440175396290417881349749819206005132590703277232008110955834310071901964139797213510799811681433166440663074270962271913424297641406814709312667611695448092932791679072526172496298957875979786650190626078250874576641531181824132540700329072683462295338774360018736788432955104683494372734451699964805200536183693236368536879720118847519255146512616616304329987881203582902041987801188262425717840523470047181246279523647037132824926622939592084971834035387167706434597084952048187395229853808580582098162518274697484722272706017443852068061726997111797173585271906752866891753120695755697677185222207261878434643048318543077172847057486676897003762463221893905431402849042026545135676511965371871485033514280830008000095900830545273581362181959088419757258758879375634795385993712385164148414369547749593309374146598469133574167045627644057653245202177874560551930275728436797344475016291480254442446973673246585089319080248276182005330094150787342320894451398887353670033601049055095758857458717922553671529113383359216263282959963769806100158465995935712291300809170781108644321040663362013051756611022962757808149074590219009221320563964427893904143059376807825959648900132840154940947921323834643269945323007399028819039131789267981927974732396719478040387406826752786852351765173279527727171513239667589716329565013770941951345773105998085657241937196848061034867283937479232659921197268926703582264481668918831567935649252121746396335755306418004222583420841352720852001286892960003919969560593184606529010642844356888793797965610696960266964582724541215904695885750475473836335570932924748235703204150446489870446382507483647945861214298755221715505487251702749132219822451535666286083740756664417914859664153006445128291512347147990527370824181512945230058749278204954975449593746557957593966849951142221493334149888903561242126666377038435127238369029610216205978441722910734067379532363362570761807005169168065956261467261024639123515066314507479661683539318763721471055648104352745965239794078332309420804411365655477038524758984987823630057532929243122003338210793424266732428377129471788366555219524276320055512224252769141902421969259916324637658650741479831594827814662167443894107958338313001806639280140505261355798892639661902363816428494683981713432301077274679296707242737391477134315193965828908169977559254825499757262849409196719309089215548208502979556155786017111058247626808125476251741124790602755493253837947895224371917713544896002339289573199987946240419315275043033543927983470347546401528930019277480314721378696966868678725514067737590567537623676176887295662038274780420859898893463680332336398901201298185993322680416801856012663943520977295314610369187799976106298507019176778939740829839259523139926510220935933336318429700117787712608168683241224758041964846208618208529260029378534616002203777938691993294482503581965380993287354626048886896888345105223916512801933767100723682757960852287835068417336110049091418501866382768840207507643493296580326197952200660107558313387516912685501801344798530792615526185020461430008166621206264502050938369952889780351649758941079609889835222615635070304248574497698329696890339467638355458951420557281932138053884038187820940340657461337495910319999999999/20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.99832024504387445547866432900607929742300168856149741970453967247983713545173967436117369434386715536772554868309141377902792955187983458785722869936330704328426503747260937707228515458190044624366288752444118602321585944696132544211804343812019931074582878023251251630532430694301721107724268074443439331443358827476155034900066017292428471628572984229423769077396138822804434462249858534786345368911881425308241919748635945403214718919831903314386602142383705620767731751784701146707618800106113860027652173348776066625897434930652638855312999747296152161465661252487150600436984371812841314220757313642833453387096997035829937941262538992060269345281463777671536910545348805753794463769663398873125584414812621577262442456976154573334316135305522754494014601624999896398486564870833322964908019379516933112754580582961230130851852087984457082214655630847408048204107875995409320227301547988546523664644765300613717785594553178770715235702651425534967952769558700755711825288754997503606445120246475680310512092467241920544429298805145661292630816078006004136597815767847815384930059749971677687335147913418125903948963126083861493340276983810749537321653210677429721758100663143726405459499396910591991129022591970283747193712552748926633253402595285979870020006225581082391035905868721550836128657488269328505584501272169378876019928038875147606930429730964723910634805884229777749694942693738907268887344260984357569073207843085670883735027925163090246462367739353054428728171349449050555139879424011195097051957278400177150284254648183557497031948845776376745871091377076103903073832266515016206011702539641265969006202164531424907116031181138836873047939466027052031863105681825854817330991320878429244629870836655964714090570530891428842222386809203483853419934743410453440889926818263369709044155867167004665082396642096006531627607121005300645020651676787379147714323716179793475039980207172904369515688198306156537611687004660433480861447279169258150704778434554752636867242638928922839697168672793718357650773776769105585980903313781770983539300945322951840098564458765607282865635616713349865365673252978943623513267643954602271639021721139529677179380907860888353946928440658851552675306180284267903898540306874845895620871204245125464866184216214331396194126024290663094668080322008361470582006240939272720691816080341011356515813070457967143834128263555122506868322487947987410157351791250576864561366327809587410217037846069988441475539064770082427838634615245764813280271397327017322842132096394841103767133206601107315828692049694650586710901031787059638155779579779801172080413074840402879487372075683979208622621670387649189148173998423866795212695288587927023784688407405761841668596482247333067497635753590904792831040415042412623074605773742151789782405854143720791471849939079929341162016058526416277279830138499127016371117770819930508294972718396649620281230868237980571827102826734205457330830211270902088324145493895489191795532085207924781167414552146999197856116039421187977656880969502882438797906347678739648574124445216487898038645605271474485527060698990919643230535638802881168634582084479194828789120608241162166981781393524357316953934010699595353243292033376224443679647640617875444127982931215160205253089416583644834539262732354916671297096133545328115898810953405096343204628968728309433044311765065648061549890369679581192089395592825191218035719375821198628584465589923231035900984029451648689059123728660149589933771165481180567419200678679648006271290017922172560063726832605016960917555880321575049053641864399306048624023496049214069338986064806779909627737021186975281814505776740260260400232178436512058951690657318956226352872381546530020413277408051274979984048140408679537563934238589865817275469688972170626803395769279393154981232656764433811368215427671866422022683117792871373699888585431772624074150505323217668342629820829427297648448696261771251121780918799863278070560268584374933995174807569855932362215080055408626889767703447999222163913951731572050497748681264369462627984636197019328905483537907531306856031894423660438264820687535316369000905552205928541858180358189812807944633304533102877957464698169586682634498751185863431501433820259831524889324636647170492683320655826024117646174877610173625460889236107524392767994251571663646225760235162828733980088274497994923201638874960285726043296720918521664120830195285974468403082353766925556688785670639955242220754776794361879165613938646647017162950512500171464584084746807887444952961679202191382751867330814795518616817918501457165553901027504685765066244341820371465008330597692164113248539135066591824159649859319747324581644268962499103083978766903837712332005576829780445272733172661873106888179387819797243082990378073422616348264918893722804664493246916372920487026972087461008935362192249108053487801410047728993213842683037891454059620670686591158269308389360273892638624992319417466983108925309268004261636291227167895386365350683356984241661057116658162271696982717599086075542554477415194846472877754647755868266304371910717516019917867462972225146006035115260761872089850921995336574740122687831743568313063392732343828120873742687837423648785672032521272349173513578185774225422036313347470501513167359288242923371991122771529750815230597884113620667981787271430748463748470229621334040935609573286022890238613832043265263667981339800245059506686804697961379157023653445667894544612823214693685693847282546419056052062527051101598189933278482155563613216993611821340032682321562825294616069662195814587456692142046567201037513740624989659330057194390976252615457343481518602188129960614598682408109406325905495832252668909656034056692471618683114036103239156229206997733200184031745674361575125492335270038652194393925763047966998336691907717217503306658158049246604959890077666171806699386555415181022217363390074584872788961158148403897281065724361281333480469764382469148949103893285772700364952895553358386037797884024066006887289837503674787117854808036270411200115954058466906651946972749931025641822724179777855211262260294633548620834146399662390625374246335859051259605271964971636503677549628985581339350855202182329710451928948264433521748959450630016181979977169181694043056413617053765641225529094425554743809112050449177455684602642097191480588838981249042960817430398624547188029952497836878124842395455330803077915681245023192764572080701704861054032717489097834077885886234573046533889356035310133156416715330614749407405090974011308670615139905977897080874156994485142860458073304057954844544093726278622709596522747548648461618173338923953130346968138772032189026309244705176780095276029459062975906470951446410330059079497391867953368835742108306997484810986239902309909969223587684465672639568729515853506949192823651947777608983451391050523764479063127075158440637723247020259224216956264452610027933126760233555091681254492867131955713527144576665710061992117242423922726567588263754329348377734015424656055192257709762782609603122801480109709686096202699237314575614660523876667967441891523012293118242292405283666332861939648492119357968761570585128882421644564575322625155251184452324260687798702060888525169956200072655737324024921864141465517192633623413890842723697486353251423453050711610134658273177647848185566424551377378024604558015844687046757059737029787025620502121628850885450881972643627106394452820842173467973137500293544402126061777673056699593139898085092544456542081121942432038640039425472521120610342563707253823294995354450445669855183123814049446268213681531187021241294932724841791061065948740052863112754655767335822815445362294171729810494653239096841457129335157516236898537956543048819057941672749515043822885812179779849338200259408451152736429807924987432879286600079203630686365529670082925561868119757611849705456995548462971768275199828664652694092441505175800770901056584819937516968277543072295111704465383961800315437124614699609826401869513306989741016747300405333974262287070962600036913498365131483665754307196096509879251214948531554877205752946189932589542763256901336946584537575169740874255003323724914071521503777205483159576939013834386087987266426588414573422443358086001146569171340407609064507247452356127621556082751935985420839439225444623489895833595138015428187822624534306349249804921382572407162547063689026971915477291616317406981065726797289267178115368275685180711522506305124803561520539430613799194898214799015733796757789523454789337400784543019222580339393329255405509538495891021440850964698186276792402816258789363683759310967587845767163865799768969151094716033518550002939485137117288641091062917087195158288866718369402703417789549715470100256376825453545466197644135449631360713304126167271213780274696315169454219675749198930605145751340606272034915330122693686404775266500600749426393627543588402677463866036974909800155376399795120884947155545298525654716736050778160412696678644335253288626570491794211695917111320199356837541129151803094906927433115285746003605995931975279555519374891203176664387434065666236009200347264963813518095789955484371208178459447606127919946352870702612387568762543819861173695945729712549034152344815789995713048248742262990403841193817652716755005589162230387261592671663978390912868734397819793918316533066810361845177753404178857796999859940882421808339159614191640153920126664753532503924380628196776643244497127919546943453618290958819046463244469000813980923998410650841674027777912619571083963199003573215375585986093511445141235862327575174635222153092104794353960267054490531820751155453811331673781628915704186103753915684184677135326580995731569279335412942403872088736702927055893801616373303034890911907722456664086141721325362870983737904493356422697814688027409078070007988808015327186861823490640089298190996589552962971604317483432876172270257585563816156975213354318586304434680398497251614631499420714900401812527543667577654022381018881196834136078692153548884772861516821007215907607442595479957297444518956890021657310953875079722723885111472309468381025493686175246638690892912308781122778852384177877875008920357326484188719610541109581767849794675922020006858225740144331926207982696227186717422581110699165972402018707709286464587693194499984276056083988378888848587447380410164562950142696474217880640270728754396922385992097444890884381596563032030582869199580275908627093332879659623605828173491556954832045122594001712295084179626216823311630699809313281754006764817828327426193465599658002610616344290570441195101096963196750237937885312710979996405958158061484936339360348222837567152098799894311625401243108424129238107197596749512285016826771042698023976514365254087592977060293166181690190310126667626637475025251514178282978185110527707568624411041137297603257280167345959506634910110813413747835572594894839301815165019777269912696532225631157392274118492899649142755944194779589025387343358408378664067242684107103620422879138581781129901468535806943891249467676097726345143310497032491298078136757202796635424995622119465743938112868196759445167002929673217198299722694855936209745128892688776265207278231044873391387575729002057145350050575440566405082926246659311525920724419169301018867835510616519433886219692072143649155353841533376389228876469828579023095536816382144926750268644512965677187865034864155034639267437820075273323970706194572074494140250704101735342044648046274877425395221025516597400101986645004342217206427506226012457645902381607760212801928744667752133491768106958063276599187011213251079311327277199267361251640832086955463640353561996786592800794686712209203596114931661569350593002577318105913927284340290170989785714980805116673752880026494463699443544106922691739667754040695012251411286386135085172703363213680341537712495177682617901314227840412052802342801392050824851616877245874317835256283014258694498115845908596380473506561202862056407461825370581784580110674418881610361427306043835428806274880020458488746528648634725788596154964269322458577074923179553186708398472082402973405434578133764089715875757069515384896809902413863230906462092372772468280610306443822835942145198935409715887978873252872828488530283724318213646766125352088388038206142886018401187759408854070916907819461234015967908972584491923576390188428483751220838395193636268942253601897038606469148791843992905218724114215583413068750583156670508740256385186314523560981878303118354762344792038013289467790471208709640616458501292797129744878361516678437561898692416995163002876854768198808620857028812776920410516268040375357360341015650615860567946841176421701972817879114512292358821325861674858252400161825562242923279138377637626482325467945402873579855725715446595580129705696118023342667334476972564930325717509779330063965220056614124623619953234815593271371017536585012614858800706104086011245354707553016800220836395564515254335131118984451824599359672690983422157266473119558030511201884950385002742882452741517813691808471893318809463811298489661736612321985545134790733598511197908015616844861100671662419827469599547935086970171189568255401461467087077566913105739588115098960079691186154796364726871307916189538800640601532402301770989963606767526507873220743967836923379487267356713868734196163574016497903735472027359304251042347491882188161055467536484514514405666790302409638683725324209161440904678519790213403131038750472710634742912537213703586982420279855754360087961031516039469766640022301254068424251631037756894587956125555846663756606118023121291315647462569836674707758912067549597671233329763090637440572160008455749146438856325632268535639723057525010888768124754574807958019190766790858660314238998156189345242443307218255450494928756555546495239472873409820793911685947719001186919498667992182848338755010648317748808466194896746215382545609730449665642532895895575999613355412213210004735149982262410614940943843190846881686480236578443635887781011911501375649048939582074343727549414999296056016457674122695354753164019455682360858505535721145191929092374432592617459953804499002692934322728753088809902491552028947166469003976908351016238618524490796355606162720011770471106214492599980142321793141102839272130912580775539939337234758325007298430113882758508850517342336360011087330059139050289109305694270792381222872781001601713843374984506746595025117656155793328316179199532906448282778939178576587918350727117960065091833110070919322059157304569315400503640416014814217642808791766459767743930509665770673843843286961550305799028401717959386671276623724000016449303515147143435241466714141793815515496366976146029509153041741942027857834866547449151343612127500393706817357783935636386033323584095830927612060190217037592571212691318321357915427549483446838671129287725753782212669805280188039226379414742446510634287782807055316983178451017301572536323460096464906337301405195317635589296318522768477995337906009048821198801983924491614121520381902140391678390225662417414578605249803346497433729282504091217303621343576067592589995290605936261826067122914652438231447087133483782619876405619837578908884304231044063459671724145671841706920005047073243480132743430986826829863528378174984997950669309201722061994146503227683409022765268802367796596937132429083947696956913016870906626501926467385515487799622531318618310394016020941984089591167101098315503755755571547585126572495061280727363590973394725402927076504432399904180636390657429903656509235315740777021655128158215400162059413805818037990030603007751038710749494847349923684309796481089483349945576348841868302466387260003065374745032747912641054856073216638312532443048470822387994633409483229140780861330730453406727398807857834604184862912019901245256271257226945662606111745605919648749222631356872738501641052047915096257084511750289536164652104286030227901338386616833120908474440534573638193278811076422524787373359868894228477855332907558065738188541444954241860068760586032764986942976184622435321350358355120659839437012854405449223464692760006949061095970711228924108684328657077993213285528781715159198437641462928950585461641114856261444465809542629286529239906547594970281918614297349571453097726919648387312651780011132563072632847410945295212109232306703662047695425085049884819230392308340637962800396989825481624283351325899564177710435756023051453694602362406675890373920289416902517253361030112140381451921640137497629315867257791887941800724772195430577575521715290856523782407316621716485353334569070548479395966774393936683420929395444026375180189597457298738677632412763720063235792161598257236839783745393121427953816365650428143497392368717886796350931624685573681026134108922341159540139892648736625665430212001494051697833699528690642094154760290048110182915146140526364946172940859520768091801581167669669590342005017055934076155105180437325000611277877402333176765080184943773142702653257651411079153006635401817809659429768470003786135334181154462143900837756854050995578924905602968434205578635196025279821651812133516194491566257794306061559476327550881067558199714706444815093943107817584339041862524004071677135583435769861613799276867478865437423378643467493870376867791517851377897279666051428751524962296634004129901353457080018974020498678445510496096133768355015511361855690733537324267347816507435406224263093468561384908838283785678046889761824888221451665107183127137180780645764020353573022881113890487956061421578830160063806046380872839649226002976957726725535597779989136912795299179721414119575572292571698640409347184163194592803641180082043790616871330044804938271018770234984648163299391585392582808395813816228161631656409793588267411047644905280832014548717555398678957079893064611253801355285491803968608983721996011819063208550600077756229018616771358441434151846596082967530639762671791432158432681910173631233529069378022902209727637546296220696296944448155644611368130666726107481908829052161580928641936417249047526036015904310712897849180263785457067468504343312967478192152138291126156113587336026229821447387696715440020893277806664507387053526999681858710815661149807059696646334496388612827034144428604164226270840819554661637072150003851352418899216363031652878286322181330563755227407511907288012394684292336694788442159278649184132428213498079699031907871257977316883323258105396584472269054281001270183425786261120005355019813758123694162367340415273766479290187274976613011969218736323962271738683669572794719544716166884989797459519372633857182801935746393377270612241620058237717798751932660545060609260314365640298886379884781280353992163439424828017220259557590238407809657613661772508089890774608971305769617514444984286819331721378699085129651883074485002921929106651533569305828982874316211467231301460186398630415307836947796810595823881537961792520240393191719906524447545244411249436356765919967941779401203004160344373889267176724800900390888935993102661678969903349719031349554592280268357766179059714860127588388123525970717764749203095284319486232874591655694141256891780123109998996996938676922709706928908155154057590127438981597164713321491695841788115660416079220533950192063261423197549814906412252700019257774635172864000282176921363026683825739213461118111232891011308233487210183286559735408157797927009064877549453199812553918283750931315709017866091684289906825767261422295530763975227493824894065552221170479306528650471909176119006772953107650369961442878763208521916600203717181815576785256457966622968067799217402148338280401955231547973499426667268220476442131536566777401884469371191899450098488624781641115879940259449099463545941299469941967342604570093861491277476599282792309830225687556199827415852942480763378521960155188613196189930796501150268134151707586399660388571287713236583878525240355634220456592602790367473395759371411554137301208200342136814509169269853394880418504279646372670341472570727360217040695009090829867518330964011110574652495662847804082990263232782951663246633267226318132457181078139795274526751775279869531112882542621471414237981175817989947341772389591029544881929986773807464189939439354509097106623486202795597319897409941076377953131369106609942473479064032468472315442339946655931833712112157862699435032576451358620118467298551102666458696165726593079214040996553232768829128540960085722705871571837738298196064685118516060980305492388198377743889594745007609144019254751523856156306806171181377544376607732098204603814742327010286986588335347986950386791621848684183942029341882899942299922719718100765304693051899320910551321721485724233369385616596910077622828560524548970402523566018870834761608583148055592439600064389728078661099593816979384073723709786274638039102704617246831800309144238930865897332204162617772631719527153099835605323575975897881314095158262477862328428572464131197972576141854253129145285714453506059778997814758250762950579240121451474060449837741830874120499978731658213735684994482309005901331757391480808126225715518338978618729655604406038456085673090141822692341525321323903552510008556201842288832173222557598588436661588535059889265709130365214211044064988560625360169830486583023119733633562846155091517097229350332969368496312762969358590012244186106995257624259565369632991651198402951326636604074913786978813298012395964248757924275359313395741593229831366339226758034697905229903120771168302187553702889227476843413545877639755178321280821085550819996586731836065277278329264716662169288340878284217157049216657675594926937501213642762021755677176877585149564880286650821757640922475602304385606252433517807991731933427109871234122624271440250994701914190023726484402317229749935261914747723902017796129078314940039943951581792719546822225667646540234039878007509768481512804916345217427590854258031228370773132726258688014968058013166912506672334101917592614495069452129079578706114178486332856176514670330744766951562237239527895808801238234805125560873165882184119088662786533281298065869019323516894304281881645942068205377386629159887475614610783004150052004214598411851478228740957188978646431732297148601374347989226357714039854576077057723062511339706634782186411600291588190375486099922424680003273592326066769484347876729174637474798891025687921949354910086666093207389085256736143299150841643207344874157761810718216221061531697313192568390576603026348827250060506140087438749257965703665773970291202918942592758737607093620194541326925373628614539182557586247708542244060568430260649031092801311841903706473762789451346421873385576649918757822054347313872609810117762126293617181478212190379468762071222768232560850666029033383090558022437578430080416469860240368697399380620167205125290826530825650857267304744413195482621287736462606827511252862056941054455458434073288973871262694387385456644455239174445151591087668227945945220239919880909394782365489542172608808808600680481210592261906070241585687590758689791692879705143763808269158663044063263838751271472662537787881475232922648647157698089830378795603677313259906895934828679495264901453860648290811198223623534557746730404167255231495978581030464809756007580407097736917365495054097197239741436242443190648195868344349255812734819288062917404919531321268132101775101458081107925810738810412492555843037958472483872590222098549146274719159733729813947503933031817967449549626282228609498953310191039178625631354433748743021839835248454903637271415838396654941372094279693085437094355934630390564102382335071826916732381550081297520553400797193976642072063079477579910860283057974507727077878101459224410430586376505070023161473784356911765259681214422623959946419606126819327467478350704529963825543902702737731517881888808001928850805590178826841877857817472289652694515113004508542086338586604239629502258867453010165777143862925400455366702319729391159152259791898177269697108583469858441995586825545018191377207775086168692166471446438650516581074994350379431187848486110860015425051406498726084915921865286246605043053311308449079765273045785823960819249458750042850797025065509767295048607353691739697782084888097046128391126125649195282412601135058798328122331767348541852597575045486291196929710650730435172734082435415249211999809125859916803665140586834433917812788309312371967372024200051173184974195273174187278033920106746737128938972227246989750173249366579296035284326069525176018977518825902894668734476186448580993698880068240134818374368768881988634022354501902108658445838609846433236315832275568471860283236854936370332122368853827554158624372171760743614413216687471378047022954069258544673102976919169944111497180965334300191841337721043647403982502092591765469412898290713724880896979705627977447419237275041080219486033142828906530134749663584082951832216013197381159760443531194620876565768133170668389975491901324451206338286251121861100899933888890862990287167123140945616928610847653916059793341254693196668392128712709384277577082224188466553136710254516810180574847895402429750931052087740725676392683343944871772117953636641025563450983396985651646827015221305381742764031587535600205503962743556002662617548659172016386618476670809778682621125423584195677425959943249825637780184257377924187205013978964933064639915051463051868577393308241518052090751880085073696349761041426696508019588856603486323740209075815588708854315901761602819221118503697902040402276158778926527058756240926264073907365368489829232459268158915407547986809039315708792525941641811267879196186965748064854871159168731542281325345523904499836730260561718580445023406028024759690521238228656414745166085803962440380139409784441724914312876757367384038664649900243489126815275940817784938934820902615819412925390786743943472890999061910629990125529538961661635792844269720092220139890222662233204272687141222018756622421455670364128095744566544024682477809371495762201069973093964434771320301797867502705769543241041374406222649599890967020510339661275202289470619564924829705366981250472236321339997263554056978137380923662545364194288034041205494556187710062473293982599665698637410098171141076114484476097768823960225596756876990106491918276302431260095787049394062244117411463723952710601359769848324905177877843572111637229330297022461564105533367675890905377305827720733391975743720597652936107191372179076175197846536800248284026007914663286718854977528226948927488805667749554458707399888183901229143196973293655561257250282565844253730971019442283231602624391025880555973756861510976214929430056209952743242768642911331618406504313973061125306195353616900642654491083198591770814436098094189180400375700817565769266890882050330858236792597790765159898552785002264714246234946103995101764019330186024266732614715853921117182097432082737531946509523064588580567772130699990294555741137330874152643593418987789810512167554356733340511835696397487092861268767463970425766575628409345608563629277290769411787200876981452089406748749096030025662953516386160040554779171550359509820698986067553999058407165832203315371354811359567121488207034073546563338058477240464663958395362630862481494789379898933250953130391254372883207655909120662703501645363417311476693871800093683942164775523417471863672258499824026002680918466181842684398600594237596275732563083081521649939406017914510209939005941312128589202617350235906231397618235185664124633114697960424859170176935838532172985424760240936976149269042902910490812591373487423611363530087219260340308634985558985867926359533764334458765603478778488385926111036309392173215241592715385864235287433384485018812316109469527157014245210132725678382559826859357425167571404150040000479504152726367906810909795442098786293794396878173976929968561925820742071847738747966546870732992345667870835228138220288266226010889372802759651378642183986722375081457401272212234868366232925446595401241380910026650470753936711604472256994436768350168005245275478794287293589612768357645566916796081316414799818849030500792329979678561456504045853905543221605203316810065258783055114813789040745372951095046106602819822139469520715296884039129798244500664200774704739606619173216349726615036995144095195658946339909639873661983597390201937034133763934261758825866397638635857566198337948581647825068854709756728865529990428286209685984240305174336419687396163299605986344633517911322408344594157839678246260608731981678776532090021112917104206763604260006434464800019599847802965923032645053214221784443968989828053484801334822913622706079523479428752377369181677854664623741178516020752232449352231912537418239729306071493776108577527436258513745661099112257678331430418703783322089574298320765032225641457561735739952636854120907564726150293746391024774877247968732789787969834249755711107466670749444517806210633331885192175636191845148051081029892208614553670336897661816812853809035025845840329781307336305123195617575331572537398308417696593818607355278240521763729826198970391661547104022056828277385192623794924939118150287664646215610016691053967121333662141885647358941832776097621381600277561121263845709512109846299581623188293253707399157974139073310837219470539791691565009033196400702526306778994463198309511819082142473419908567161505386373396483536213686957385671575969829144540849887796274127498786314247045983596545446077741042514897780778930085555291238134040627381258705623953013777466269189739476121859588567724480011696447865999939731202096576375215167719639917351737732007644650096387401573606893484834343393627570338687952837688118380884436478310191373902104299494467318401661681994506006490929966613402084009280063319717604886476573051845938999880531492535095883894698704149196297615699632551104679666681592148500588938563040843416206123790209824231043091042646300146892673080011018889693459966472412517909826904966436773130244434484441725526119582564009668835503618413789804261439175342086680550245457092509331913844201037538217466482901630989761003300537791566937584563427509006723992653963077630925102307150040833106031322510254691849764448901758248794705398049449176113078175351521242872488491648484451697338191777294757102786409660690269420190939104701703287306687479551599999999995" + }, + "improvement_over_online_final": { + "rational": "14084225515528750727854884499887722213098818703941239621441703090022534169547358893438524038821199495983244418524016336423015891458764759872131627115644354328342528905065244765425976867566266423755321343179525298131617636357800820605398284784971764766356484997590631829027189569708749021367252255725003158501449208580723528024928749269702047412182031149994981330109571303716330527304562247787918058585796813087626203514047568602774072952257255764839753913216969586338015820011879005873006163385678179251421304850269711443119845639330764522645094685557929749863429366437612345326658328183178351403206787934853801754497115129387201964699584970869824698279063678272120373833404597170299820621870486294066975287578534695702074782789367452956398332604505835251317511855031640749306066087087126811056502510496574846287895366975645250473691700041107465213234422233295682493288979637352597885546714371145199570578389634846256251681060724961227995814525295334678127144396792373795255059758896797661766031609957528327729835016222908678177724569094291572642236283693809221004651430689304406122875856706111741806229660376896865112083964082747400879605974378989350110628741879843971802300621296989745631208933452492723592583377012611405041421705114754852903714306752340459701796189574837128132001056959282966919340078566196857261572840863334453740752036646273695560671381365504035145555779663222851556700785103095023432450370312540074051574993780345459959287977604510502821549525351507685646553237406784416780376518255453939345115168618578043891378144761587557900983587601029865855689860790127833026504965624075725764502959634295295988220713629529556601411267704068017593938697843865061959323465265198519315316034991459728162263916274888070421333427836257383045145326920782004333350358964653422667071733672996076875249053715870261401283033931742024433394784455693391415384126515676883416782506357856010739363776411320511309534538731393676426578031805511303068600947763534250246973674680653594071697096144402049955018904673801214520679645694928211969035936754635317216012986338233880452443016726804012072450038859339571565229382158903593973880999894600208182753352075116970859720819704783816973103885087233208728835109324538142415381833020915504965507235684115444029979780045929726895052051792943864974021019249677682261587244336161839870183949306561941399871132396946933252756836618555553581262741930802872057625847674186985647769702014833121648539131088347064085577418167131312327132394300155780192870678459146847153110459542280401866704252686571452341830501959153162047805048685352789875937681314456154560834185013959021168588674473772619988757148882104904720537299470466433075077059711628229178303224358331648289248847363895878126391063825048072180212718101003454569675390077596743029778474687825777515269075265625995684514085456962942614597429560754502654067569166521581515551725415761920761622201365043231317503916497972071563679313213369837084695331320075905621944121197068791374821203246568126649465347530462968136883821433454641308379468691438780134113278080210795713557024090987813260652939789102215236076578750765133241316788424214974492307838615622271462506070521037631608528778085819059691210258055441758352777575968176868876727471143329997556646353463618397349710513144757520711911392175003134436384639605433235671634273019379155510550960712572682557864689103712566765080702385841238713945920313850087408126607973553339727270622940286232380984985011336398031679340042225537877934360642294302450046448757430197997857334452391920492604563063787412807776911524786734002137431038985641451567888217879187557033652287219666727405046041295881831920312677177966063743314855172695088357992286349103948563351439342699095098528616170823674446387428783133142636870812696681779612016481010809099333384867858005895966680119803641376307439852964324969727032090661591942751527083947523853508585124351029969032135868311826698581348817126255521992153996549332905180083747999118487810393157992016187746656437055197384629657419097880536637128648381316131131332215825634253730774378891198068062361845632631829904455094629508127625565038028079339197239055066217255106458844204479864271644555219527257888679481993300119540865141879488537469182837536837119937849798056830485164651281840473415886172019732787308075042204952974360391209474516879587792474202776951704374975114065397619217633016458246208587745260159858049811540347930158560624691364702914408013197752013713519123640558424986563297199193519242244941370549278591957940122477324850010939711789009385593057858228510411038435383294866930940380008636981690988542430768662355087278839314448122912029713497964735342466179082041489604513191121116942909216685283084953593251003221038436474504298314415420247036923389607203022650404708744708020140258407061078482794316132844223870911722268954421341890945784502084852334048310715820401250641879263965719912718105191443420799405824666580911234506823886984944637377074911587735414094936953983623588887721791372256458702358947815718410475259381370386975744612447960274273175580333063133902146723568877792917213949946629848710464883869408325069966116221360457589276917227727814249754791506403496776624054354280015387577767795821439754509487632092425889320545773912530440864555312733450748933720815169389270446186515928908495454145683291921786526731979817290151420952566643299476846538619087285967119614783511539391625022640531711546231816025260230807413621911191503981454874700553322383861249122516027203097108451400070074380823903339961398195829438856630687497594750228466794388560969539985068976110068861323858538060509823913525057753082643914088977646309363638596909438646264056850070782786713438753948328086740687138822933466060482658557090157022170905681546473198509822856475847141600144606567026399612503285071038204536172788757353711289288239221437402659068286668543198373526573838433844528416192018526034352371435143362593719568888443994796361889932071761582917207318777322823477539728169461283005661424787151903196531093678949907967970072294386589677785432362473202637808522113132088690984661392957302769628320076208815293420505622706337889102623185442348363040702206141356013261865327891734282493736744961819477570042291874872766270985167107120303176588786100191469546405220065346652526820682128003586048320860677935228918500296886999017388434411046090557650730037083704008460547774166362286279207471996141679631125130878856662603997321601375216558909112963321467889290443731184185539030589114874620463790362847382936090621487830288094134264316759800498841831810114480960127184627256188794612338608705511068742269866716430317873885132419959929111212338402676389768830806361744522379238711872115053427174448242652371332290187215907432921206184516212057352669237158589684284561610436578137590984990692289079101163108737559440734255360572401933471853263815154932948347756528198832908467324369325823457091043673827714241878122611218439689480126535212670680281008045998255195272364950985040435017962533708466615075812413380478637178957340174259271613191159313581348812275322844694744769845399689340810111581785305170596857604591232489747259935194820221744197605728790594623780526450028629262705367845709293038803900280592563687927639557870451266662651337078065350036237610963685922414202480809957238956885962714207016972283639337796467424562237165409756763270530787296648617452424568324034976628525344087888904116711781821164415576080286034090603013856547995489095269820983556215828135659933804924128925593588412346337832919801059551631166045776565084710765737869609334370163144530924921638391934322210759176830186454718266795010366943063319935484891916837649538757852057826463677779886995867707296271643838840742985508236419200027228465217738607503422546864757228643671768993608733939678674354708353157219398680384689993954472696363442318790410395868738782460326874381172404263121645535492504229736221223199028793883812365147576903180408862275085467719402413132566219465342572392091753462053776065960055460525665673091273893827242995685073453987132537634984716901458314918155829509284212110306248784537787474885639393646610590281626167544333867827243740575450533587680577994461471494305510185331773147632247360054447821550643328153317437508254627219375812332374092824276105835200568517902603456129863662251808671778188232426183837584872286801401451555274530259777880957398923102039158912285954863721321568430448325205531609405276147105733046302824220012427479315203651675179945742472172144766818715132601055935556473136828210226328675726047812694206394671659304554287639412977650701660034640777412866761586135857364694736602458090198162410276098739450043264879012226146471596038309563800850750557662265760161581431119062646321255876381536067868821094787926254849946595278234009800555378290662789395890863572051873508323852552350729805860488344950688147091868979907916152239169255397154260497957938601041993875405371301482510228160073896450252825714105385778393974717450461482048861963137620442347466760511470547394251679422134013313180833514004997978360315136677215172901713224821253767958131943505657058599685571935122823369946199193871514333579373667340744772748612442763947804252845589856935684513713662927522311232978876543844704146962305798474692856144433617422908289037714382935843777331107302857120698827309319786734420598643865433485698875239912169383814460633900507031717962928955324961556335645314367561446468618000401375273204667721878220955740540767055429335805531838691849322676478034997735137791308037071438935260247301579980253630208268753429268916012155498330284827055833334535811600355133280521339453192420205839536076003664935289807480739085516298894784008597516458345899537162492050924251458407624765105020170990378631722997970941972332123976635703529301985584239711371411429850909405271014477612136218475874552146360505582777368991070554035508315797638018933978087352424968323367655043202767427068056407571786996717901655492770960823322104697121569231249660286905414051887746494161012089341112269387417681373296040656868687908238331927081302149656125438265321122336649848288980802311573120589121115648276237860779686609124840236337971518486506327342676245316818586565091661028354402426395566766478873366009873517590860148919742119448473282645030835023500623678420990873977152667029979822282631903739458342362910472479525509088408840776896249577900429891258696697958480795445594280656699446811915045791983927691592304159637987988079300658336155139680098398700987680295402820106982580710252660676302531038726554046760602702894893166319219179394432538031420245347517758699291043230511080326235386838976248838334140734663923757855772588443686705713563433841219395933059069220705557102137971428726419517770790791505681294641633613308459866625623187618361839447071226859269706002721462007779441956980330276419550563557946985259304545958029498314085089620114582273613374358843735250015025814858798854623387405521790125714143963334002979432093401053907650321452032023587410452793164456045825601236090075190533450509446244914188783722556084244299188257627026221658903226233855005086537973870511880522932905835676785965581366749535153606589939110165048747133556994267579107693998924160690702901667844565262687989080499895372292422893341127472864182954753062489713930608886405770462376516153374073362744351223307764656244765587516951380876813742621817693652206321181665611654542110857496238420103988884961819929405173211781953335778387092427866980918595770853775824466142511681286652260371606129011648263005801889212527820003164782529289361085368638591163424293003538286591105710172578553692796573284395937756335756716304205121202460595625807843135805447817798707830941846199859600295030862177997027367818082732570193603759375082189351285148618910417193045061963338500941289787722677373340333197076811973891252254149315510255383155052760421009295358468373139189419353984052607754944142554614405251968585856557194677619639214985953213744180133139744026047065030509765283407271723156817211572804415123387488490693218236137683282900900733880720086508361742815835249438389649877411164238682429743555539989854287325751976357834862350878552484373448417864002920794386366048528431447869183595970228532473351279859817629697697871458922089298642523571411932093481791265979862759292210799403497692340116019091095090458286329858602934035982793917237368540615244888308080311269099496514453061204434080294807156441253244912160140315704555159237129413285727342027762181838304824595845530849719325528625807460719915823316001960368561485112959035265213008563438796657468443127454658299390919683067332133184292358896983959917155945830624075063667323996196024155286357584620060533575125883369886893005764240240022162584300330845318678967328920711042001145087433039530142587429012629897647385441488818905729110696765297597822443977309311285506361509741364909126567389805610749501816694296959832993666044996550408515299793466209519296187666257712801505477223186423331588160316448261325759394442357258431205716165922822392198242551140928756502462876877374308588306308536529516207148382755777589193595740279823195032774717978957917748615938977007432644542324127230070867030516062192442437898106401051248666907249254259092091678572816411187641063631724463233321010644997788872551981145958888366468017059532079147286717206481009448988053246329811620791282658711234789805023601824979395017205040473937863247095222922837696580848620345255180091719406268762544097167609233035600820293440639399945559682137259830326686112638410121042181657899171454181350791050572349383376925546034680109916628903437328330276041730697802957627990523923056418757836079186455175202592268155286032834701301017319967148146308378833984216839742528788833194273796778988587232049296952385858332098632304942860454180391550165157562383894236623624003143919074088610569048366794992529294720759975274044118833769638382412822204551356462404046310649740880908711485159580827495860458998488135125705991004936579776907050859680922487710996229766210046944532869564072351098263664992526050746057622671190988835126558512342974352568299494496761981806812189944703761160163689821419497812504090651511265891157011727045661157936894660830509466058535969443548962638348034936827929388864484969164338271071026437282557092806295319536120543820571868277744656738565911641581155603657800673383062504898831677989562988721300464537236765576644138274726991861692261540135960664212117334528615401729191305184989844360643674826919147503386867989331444763753532423688304052665642382838705311915294054651568969222690479831216813788268088933452062641386312869663372547228174274160817476003725602864589506478175887468273845505390080606705902513814071208949381207402368058882409859200939296864316768600000529642211595107578626168846718680520711733377063814050947982505424923059594986611551168699862097090907458278254702811680381218116526367591587007463041597218641864251039849125360846544223517631799988650221590751115668427387450805279370899048338712761639764239763083201726989207725700223982835382305495887036811301139451182595321909992379815334627177856673347198679952786480837472480253644257470091915699843449967108852226096578961150880938968777568339117452738909852701476163822540277027907358703610517850717440418152137453175511915359732922899725192750526257010108669063472872374907097202145081918273606053684203421242033965401595375843914293512601626586950433135532909238635952021331843302962178222928827787840742712244083491234461479604879391721966400104502122710837013344502084492859771431966583304809936427034187409865810956378093842441602667152087009165736778864797692877869559441826438716223613598734813683438890449676639712761980672753102242064422720969313319301008907491519712702743492142258919260499889030970510451021022904626103330503077593340652305150078430842024677905215093472721323080928631823238636048506141459897189663235037143808615397312758167211778947531008590531783759993334334145476389109937808129965658498206028731760647229255046872407850130690544382289189396887154985869250334021170672279028838504821593795967298218832942929969593238714664099304897831486166059110675158263737910981010424229698032652225988296343575585617370908327466679221166849314655869395102061004733684677756291075772600387661678732327302643042066612545213992094700475189053726117849646511010775866820767556714167389908087736212813733570844913080458105367769651524829924983871006903319869818906591389767730972728795557328908093763306109896417667155219171319405308878615396072978789272611880293117054714567289516862594218102253793511325844826957733902852133586662594222568303873175780050582348216750678652281427000333086429288324472299249176428386067484450060401322952644370731426506039598990001092090072752372685036999106313826216198598198087448695151865934685226399290335161980951220686578562639259725783928788899665388288441146026103120101802297447403481228053261983376548294914403253988953715407645254277286580959337196766105905662570890400237526613902178570976989534067325478195046400166023251415600679723341288892118941307141100031475355865885805531456225996917611479156519579254067018147433403130276039386221364949859263882749671370585993125351807933406286038770773439039848391610381986782026347184161814685681658422905616603570741159536421829282139814828822845730237057018338144132746326740012955775808053229888155152585033404331559907593244802445711957304485304076225413521945174744458744381517686903170366678131944642329161458694800230375427976167585029660756835091448107606046851246190295821378089751651681622312130886280550634951281552776303795858867960156532948507684826911363014755703136942995043571736411134615119182276446650123465715534897081388087542761374682910516257228969327146770211385987694950176708598019117876918190606678803988005449279382361330884559556158832198692089585339178433134094045076746238122061497619126393189795045812389617969007599142866983122872953749590681285212368881449590183671065829632579068952125728630479806704855823168351780568924196643030064710165409872499123951633169250554455632390797432028152997852391592520425809057859151849604757401379304147957405844704688791978910081250370441857938421952509358294969057586129000636547875382878744927632714925462905929377669861498810981598999766408254289822425573491937738132067884895301080980080067510721842521458954511966335144373279121817383967130279043627415918867701383532848967132145016627008011235690484434220953550898062183892334322914579409767509615360371570891161652561439621997759430921365462327488774018671821036693551242891437346461540503611123093357705786232121469188375556306078737652425116910369012092267074272206092369520190194360727607646802347227702831490429791555568096565046652518100767501057914863489540330897733638771202630427064431828392829903706103681151420602448788216296280922613795518162413727808960087472991763272925166458801062454082740874669385748229680565095329035397938055474960737371290421853118018948018387080020756491900253114409783027250935977862039504516779245652306419448780001272480164022051942341019726680693559298748420156473014409895931916562752683219768949536982655108789508346750659366115566240443757024653382497162996534509503604861552254579093428806992474515521896507368832526465779187994768775165507587417533281747737908259788317577793957611271285756393278821604204923971676088224192825173027434221904881254426839555748518747407544871254889628251225092308553351973021349422223929935365953506693978000447034327466085767527035543588919626969672194464489174474973848793181920812249111720785591960576282401322551202520576390106427813757613173355826015348185245021844253376697282073207433229120068353781530894016506099530882447099276794162038289432970412624900977014277972978584283687801277764764692942230100365113094755315652316803085478981987377558184838257781451593617162457523995871549789510908247424469434257071278268172531826843811732163753287613095007295891007007396134190769606367309907898324975689954516233974867167427353962024253486934399305014247252432740451335619436903911061420785863582366885127537151224842082753206070826694014407124211889884965553026108949351702558776063496574361935093528913695852169671620044314091180396585534442096092534908427038378333865380838423696560360529802784247980551518818316666648138941215969988802340444291826556269139280754189758279309878897221587429793586039816787544620924656628103985642850371900615516946242795744643444310872684340749389557015606766440458032038350019152149385942125464195138098322297221609310584945969630351986803350558255822847194875462238439484196544257123329884755181485427977213339103189335124095929883876350917298479598631401370324745287779194233103021030772200517059185172552557398122257226813674204610454174944320506355183614661807904232060359676789849002257631397123978346976689967827479139917829894100802134255288501447005661712209863353876761454545374449128192694824630529887692082110500114176782239652693754575348659279843476968584259598155369285877346987642707089806489863037483486149717323820923118718889842056539157521965791370186890631186805286120399460814782820691952367423636357162730937498013162440029872326897174313769122948314081720500965270281564249100063039354778480571368292205442939549474751681326480921499222830559786234594288592165218895126626959474079795464131175607842043826916807596014663877270185401457558034640408256341606256227833133640732192866508907376186805315756730927418906973464421213762976179488368813129845964938405709057386247398999582929393070626056089512078355803986713996682056384042290430239802279447531810113955087446573233548762138845050749174143597411750639451558541934873206084507927119649546236884266005497955455887994262668542688458439333394383120690200401811531326417629441319339253377594152580194610435894806954815200925300564948931169208484420708134826669095592313519248034923188132598793712449678400089224251689769016058651780843279572876872828649008575512957209434043198024245095407463551835177188691644460153604259935690733745994320015119082795948537395242044305691744842227088483919915056611691691993880794128409024345682566188209196906579367618514853677459921195534248121371800118892860083437520563286432366566567372508088139707737444131554297617462514842925904573102362447396768527743166896474858477787898913599962106741358934363714416464256075999114573958200815187051493909089760608181558805684045381683118853123606515270585872083542890212051896817245946171492610363522544269879306958543723748466044412921904763841172245133165749258837768573506178388729180822885584522460553044920126652703202162054227456088442803272901205293351403669713824400701570515290416070941953745467730373178240011153549061281519727881853079649391833694838608766507367530089459604774860478605010144538670113293753561036729205384468640877668098901690996099102686234336620054842029569922105866055741790979101878289666602453552513993623102437449065793710141212722304782162748389824865241216232337670910604134270842282481129686537767703314144105303015370379587264617764360221292824949467209263184042434639152991677742994859464828108883878633055066708658740963778623279738358351425576057263572226877284978909425498557055610859855243159138368734445822938613868414352065251901305316140378105876739731551372904175409514813271866229711215323029718447013521731187258636205490601842198308258926391081258945569583430969406240853956387525911568074732795484267618624253822950439760810093269208724421967112568961447590116085950666075065826902592653643652107426905849441132490311357254785626737866860231142473140898200654938556431172476867862450172121643109972889021177547859202105842399440236704021505205126464926395771673361249109760899307744840457648794268067076775098630377100317357032991620346351284299470875277792352788514089961994705712294597149172371075808897827307147900275606325579554051414399539462205451652250139712682188481701231757665143889933684116545612461630432930971426094970620947129837805628394829566815336580273819669833044625290172256280905029604013239083535739442559904444947417016707104098154243715714165820175295385310944609354883223247612826998038864205144478544116504865253951700521094682654698490814541954895510988966888644222998574039072221085352966573607223748192638301070807358782740687045181897135062001474438915302689997029663427927008601143625694726238956209524474069453644616525691772719039978411551251720129741797154464709182433678133215683174656152838044943422309799386627814451141954512671042523543265686842373598198244787345243064482394331701545696800789752862451233793849983735167655150516743027825210195915180485925683316639046650151632184429418449270775103945902684838047256273341654423445645190727011495432587544787403093668781294218745315247606789024314987029371336396550954549373655027421698375221849485643359222498311352757814677159730323253773712788542786658026145853893596060020658665353430704311754178749195301618907628186742773748683129345728357776915983819177153023605300268363069016737866192240069072651669723960616634130715018538129516330097980718984385458267054758601776437012923369139885179485670598611987874444211332420698332680034242772310314886965323629401319904648932680988814295324279740483991966308425140466160232821440836229523257409714636235233654491540256793758764507543455608946841164972784244225714122903002480235526628072608823170838299761870549078000717199972299040293443445534581181402405467729324431351423520450948232235701246161196498085669913450650315777280923255615951936958155183734916829562677326582132871019847067885824661351863426602228198842389650756329952362302542541326572491685901185718116175852639128618441400028165380976477170425296827789349831067102394204192387983639057004022707776504219054517936302531841319144837447018111230487526885270880821621737638465345062858037135106671019102105504327220320890247874534439932269905240641131786216363731104401441817344469226266302342412149114395590152428381785351836305471528840715518613566020757841056889621607457354175576149489525707993047619293176167597675420771818919758394622263298491391798299574662036109596943092220252691123710933934247503315418583166505178207068625018043741249499488417704314883776777632426398746061439870988076590619373922622377409712932373808559380914573646971822923504338867078924612458189740254562759797088535685302765259648234721392316246288504591145567226172247426188373737163334691183516689617606195367576245775407790820308780991438025681220898769767456424917653195825344707815787640305530486762543976989765022827571458449943670558179134791361090712988549049241875007249074163771260613438499632337995478273241820263413925273069105922796872977519967515600204415080886293146595965011768392345260074518511549407159499684353893872794603416148731867322938023870898220062821800386313491552428412585540135973328815161441870756214569651889648342318129986972576968539286124374422492695817924357387175074718262469307692991755289979241679109705956421269923998253447520053433101832589299381386562842296679710053951627354410482863835245517735652641903923885357268239355530134749558611866679217643759507194442980774446372550047804688030221546080417625583601209270053257240848940418487222870779756734494697743470165291671166031489133843857424976184425605701032848886584240729399299401569917659342553391965864804416487903034632583775923660295164688192553984811608732808839234756833681096299554735167170780798647955009313107378092039448202838508429243233352599887356066237406443809410824087245909033215619014480478430502038945211823209948953000459531171422128312164720589920096976341480230495925102287237320260196944784319964028553911354633116323762334532016110993867400948709792263525276261427189411344409001137082315870892824905448133898390136326193182927371860826831149047446382593355215509378019146507176172647811421100405391600563048651384923273057261558382292634061251557579209560483918102476327356211921459187183274788517463678847747503418223855227143285897613553310219442612646033850957123482629266791512189825421194260992761860741798227325322305716918280662441994246190799488271805725410305772375831818989333176829265285299395626995178505545534346924328313943888793058737113670516979799856688833128067919615008240277400161758753500125818258211801372324785986325621171403180250240301036063799146628457769018884868935393710853063919949834319764082936811790470244376872722906285439111215437661029415653257385757143616347652397805875622236561032527266601628178702332106052621101112238324453437154223569073939624952491682599732410436104224109723862342161552837871109528349375650531367239234094161319392983353020987482810291762296748540075392054595772608330051127519104065578193700422795629546312337044032189219810784005952514437139750041331406174890887776409887884698569933242830159444237035970147411873506997653962667032832473663602662443439635131188659097022469914711675729200513876212157333716577380633280791947341496147944114063626186281858325303426269674126980310090042755630245067949525084107752673957079338000983929076080157068911142986461247022520000312025554835932069592771354348905890623426664680763461830254862591991254876172729774143996760972160355381778860970280588933643225692532988007842018976145047094563628727880372375349431530798863203824826214791064708056550099557773322283537542267029347262067436792008930485764750697705681575602725873986718308936670072103108616927568364870865289568277149958756761133117253884835064421545738027481088688379824483895573549249224677448879744886349987618716432614440156573244958260994152187345637883583413401753012737580293268880839572268152569584618128927251910328186568240713327784403898068929464851030454720569534412469015973761279614053502548666672588696160412510560297241736625529018117214709423074063247203364919230458541755966078511371217058944675601818397437705066546407906160796493385092190504237099744800860372330259745586286204844391103688091416561027892846528724739221843726996418341505267856610774708378573089867296492430366789119159236511213941221177416539589462521022419999999998998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.0000028168451031057501455709768999775444426197637407882479242883406180045068339094717786877048077642398991966488837048032672846031782917529519744263254231288708656685057810130489530851953735132532847510642686359050596263235272715601641210796569569943529532712969995181263658054379139417498042734504511450006317002898417161447056049857498539404094824364062299989962660219142607432661054609124495575836117171593626175252407028095137205548145904514511529679507826433939172676031640023758011746012326771356358502842609700539422886239691278661529045290189371115859499726858732875224690653316656366356702806413575869707603508994230258774403929399169941739649396558127356544240747666809194340599641243740972588133950575157069391404149565578734905912796665209011670502635023710063281498612132174174253622113005020993149692575790733951290500947383400082214930426468844466591364986577959274705195771093428742290399141156779269692512503362121449922455991629050590669356254288793584747590510119517793595323532063219915056655459670032445817356355449138188583145284472567387618442009302861378608812245751713412223483612459320753793730224167928165494801759211948757978700221257483759687943604601242593979491262417866904985447185166754025222810082843410229509705807428613504680919403592379149674256264002113918565933838680157132393714523145681726668907481504073292547391121342762731008070291111559326445703113401570206190046864900740625080148103149987560690919918575955209021005643099050703015371293106474813568833560753036510907878690230337237156087782756289523175115801967175202059731711379721580255666053009931248151451529005919268590591976441427259059113202822535408136035187877395687730123918646930530397038630632069982919456324527832549776140842666855672514766090290653841564008666700717929306845334143467345992153750498107431740522802566067863484048866789568911386782830768253031353766833565012715712021478727552822641022619069077462787352853156063611022606137201895527068500493947349361307188143394192288804099910037809347602429041359291389856423938071873509270634432025972676467760904886033453608024144900077718679143130458764317807187947761999789200416365506704150233941719441639409567633946207770174466417457670218649076284830763666041831009931014471368230888059959560091859453790104103585887729948042038499355364523174488672323679740367898613123882799742264793893866505513673237111107162525483861605744115251695348373971295539404029666243297078262176694128171154836334262624654264788600311560385741356918293694306220919084560803733408505373142904683661003918306324095610097370705579751875362628912309121668370027918042337177348947545239977514297764209809441074598940932866150154119423256458356606448716663296578497694727791756252782127650096144360425436202006909139350780155193486059556949375651555030538150531251991369028170913925885229194859121509005308135138333043163031103450831523841523244402730086462635007832995944143127358626426739674169390662640151811243888242394137582749642406493136253298930695060925936273767642866909282616758937382877560268226556160421591427114048181975626521305879578204430472153157501530266482633576848429948984615677231244542925012141042075263217057556171638119382420516110883516705555151936353737753454942286659995113292706927236794699421026289515041423822784350006268872769279210866471343268546038758311021101921425145365115729378207425133530161404771682477427891840627700174816253215947106679454541245880572464761969970022672796063358680084451075755868721284588604900092897514860395995714668904783840985209126127574825615553823049573468004274862077971282903135776435758375114067304574439333454810092082591763663840625354355932127486629710345390176715984572698207897126702878685398190197057232341647348892774857566266285273741625393363559224032962021618198666769735716011791933360239607282752614879705928649939454064181323183885503054167895047707017170248702059938064271736623653397162697634252511043984307993098665810360167495998236975620786315984032375493312874110394769259314838195761073274257296762632262262664431651268507461548757782396136124723691265263659808910189259016255251130076056158678394478110132434510212917688408959728543289110439054515777358963986600239081730283758977074938365675073674239875699596113660970329302563680946831772344039465574616150084409905948720782418949033759175584948405553903408749950228130795238435266032916492417175490520319716099623080695860317121249382729405828816026395504027427038247281116849973126594398387038484489882741098557183915880244954649700021879423578018771186115716457020822076870766589733861880760017273963381977084861537324710174557678628896245824059426995929470684932358164082979209026382242233885818433370566169907186502006442076872949008596628830840494073846779214406045300809417489416040280516814122156965588632265688447741823444537908842683781891569004169704668096621431640802501283758527931439825436210382886841598811649333161822469013647773969889274754149823175470828189873907967247177775443582744512917404717895631436820950518762740773951489224895920548546351160666126267804293447137755585834427899893259697420929767738816650139932232442720915178553834455455628499509583012806993553248108708560030775155535591642879509018975264184851778641091547825060881729110625466901497867441630338778540892373031857816990908291366583843573053463959634580302841905133286598953693077238174571934239229567023078783250045281063423092463632050520461614827243822383007962909749401106644767722498245032054406194216902800140148761647806679922796391658877713261374995189500456933588777121939079970137952220137722647717076121019647827050115506165287828177955292618727277193818877292528113700141565573426877507896656173481374277645866932120965317114180314044341811363092946397019645712951694283200289213134052799225006570142076409072345577514707422578576478442874805318136573337086396747053147676867689056832384037052068704742870286725187439137776887989592723779864143523165834414637554645646955079456338922566011322849574303806393062187357899815935940144588773179355570864724946405275617044226264177381969322785914605539256640152417630586841011245412675778205246370884696726081404412282712026523730655783468564987473489923638955140084583749745532541970334214240606353177572200382939092810440130693305053641364256007172096641721355870457837000593773998034776868822092181115301460074167408016921095548332724572558414943992283359262250261757713325207994643202750433117818225926642935778580887462368371078061178229749240927580725694765872181242975660576188268528633519600997683663620228961920254369254512377589224677217411022137484539733432860635747770264839919858222424676805352779537661612723489044758477423744230106854348896485304742664580374431814865842412369032424114705338474317179368569123220873156275181969981384578158202326217475118881468510721144803866943706527630309865896695513056397665816934648738651646914182087347655428483756245222436879378960253070425341360562016091996510390544729901970080870035925067416933230151624826760957274357914680348518543226382318627162697624550645689389489539690799378681620223163570610341193715209182464979494519870389640443488395211457581189247561052900057258525410735691418586077607800561185127375855279115740902533325302674156130700072475221927371844828404961619914477913771925428414033944567278675592934849124474330819513526541061574593297234904849136648069953257050688175777808233423563642328831152160572068181206027713095990978190539641967112431656271319867609848257851187176824692675665839602119103262332091553130169421531475739218668740326289061849843276783868644421518353660372909436533590020733886126639870969783833675299077515704115652927355559773991735414592543287677681485971016472838400054456930435477215006845093729514457287343537987217467879357348709416706314438797360769379987908945392726884637580820791737477564920653748762344808526243291070985008459472442446398057587767624730295153806360817724550170935438804826265132438930685144784183506924107552131920110921051331346182547787654485991370146907974265075269969433802916629836311659018568424220612497569075574949771278787293221180563252335088667735654487481150901067175361155988922942988611020370663546295264494720108895643101286656306634875016509254438751624664748185648552211670401137035805206912259727324503617343556376464852367675169744573602802903110549060519555761914797846204078317824571909727442643136860896650411063218810552294211466092605648440024854958630407303350359891484944344289533637430265202111871112946273656420452657351452095625388412789343318609108575278825955301403320069281554825733523172271714729389473204916180396324820552197478900086529758024452292943192076619127601701501115324531520323162862238125292642511752763072135737642189575852509699893190556468019601110756581325578791781727144103747016647705104701459611720976689901376294183737959815832304478338510794308520995915877202083987750810742602965020456320147792900505651428210771556787949434900922964097723926275240884694933521022941094788503358844268026626361667028009995956720630273354430345803426449642507535916263887011314117199371143870245646739892398387743028667158747334681489545497224885527895608505691179713871369027427325855044622465957753087689408293924611596949385712288867234845816578075428765871687554662214605714241397654618639573468841197287730866971397750479824338767628921267801014063435925857910649923112671290628735122892937236000802750546409335443756441911481081534110858671611063677383698645352956069995470275582616074142877870520494603159960507260416537506858537832024310996660569654111666669071623200710266561042678906384840411679072152007329870579614961478171032597789568017195032916691799074324984101848502916815249530210040341980757263445995941883944664247953271407058603971168479422742822859701818810542028955224272436951749104292721011165554737982141108071016631595276037867956174704849936646735310086405534854136112815143573993435803310985541921646644209394243138462499320573810828103775492988322024178682224538774835362746592081313737375816476663854162604299312250876530642244673299696577961604623146241178242231296552475721559373218249680472675943036973012654685352490633637173130183322056708804852791133532957746732019747035181720297839484238896946565290061670047001247356841981747954305334059959644565263807478916684725820944959051018176817681553792499155800859782517393395916961590891188561313398893623830091583967855383184608319275975976158601316672310279360196797401975360590805640213965161420505321352605062077453108093521205405789786332638438358788865076062840490695035517398582086461022160652470773677952497676668281469327847515711545176887373411427126867682438791866118138441411114204275942857452839035541581583011362589283267226616919733251246375236723678894142453718539412005442924015558883913960660552839101127115893970518609091916058996628170179240229164547226748717687470500030051629717597709246774811043580251428287926668005958864186802107815300642904064047174820905586328912091651202472180150381066901018892489828377567445112168488598376515254052443317806452467710010173075947741023761045865811671353571931162733499070307213179878220330097494267113988535158215387997848321381405803335689130525375978160999790744584845786682254945728365909506124979427861217772811540924753032306748146725488702446615529312489531175033902761753627485243635387304412642363331223309084221714992476840207977769923639858810346423563906671556774184855733961837191541707551648932285023362573304520743212258023296526011603778425055640006329565058578722170737277182326848586007076573182211420345157107385593146568791875512671513432608410242404921191251615686271610895635597415661883692399719200590061724355994054735636165465140387207518750164378702570297237820834386090123926677001882579575445354746680666394153623947782504508298631020510766310105520842018590716936746278378838707968105215509888285109228810503937171713114389355239278429971906427488360266279488052094130061019530566814543446313634423145608830246774976981386436472275366565801801467761440173016723485631670498876779299754822328477364859487111079979708574651503952715669724701757104968746896835728005841588772732097056862895738367191940457064946702559719635259395395742917844178597285047142823864186963582531959725518584421598806995384680232038182190180916572659717205868071965587834474737081230489776616160622538198993028906122408868160589614312882506489824320280631409110318474258826571454684055524363676609649191691061699438651057251614921439831646632003920737122970225918070530426017126877593314936886254909316598781839366134664266368584717793967919834311891661248150127334647992392048310572715169240121067150251766739773786011528480480044325168600661690637357934657841422084002290174866079060285174858025259795294770882977637811458221393530595195644887954618622571012723019482729818253134779611221499003633388593919665987332089993100817030599586932419038592375332515425603010954446372846663176320632896522651518788884714516862411432331845644784396485102281857513004925753754748617176612617073059032414296765511555178387191480559646390065549435957915835497231877954014865289084648254460141734061032124384884875796212802102497333814498508518184183357145632822375282127263448926466642021289995577745103962291917776732936034119064158294573434412962018897976106492659623241582565317422469579610047203649958790034410080947875726494190445845675393161697240690510360183438812537525088194335218466071201640586881278799891119364274519660653372225276820242084363315798342908362701582101144698766753851092069360219833257806874656660552083461395605915255981047846112837515672158372910350405184536310572065669402602034639934296292616757667968433679485057577666388547593557977174464098593904771716664197264609885720908360783100330315124767788473247248006287838148177221138096733589985058589441519950548088237667539276764825644409102712924808092621299481761817422970319161654991720917996976270251411982009873159553814101719361844975421992459532420093889065739128144702196527329985052101492115245342381977670253117024685948705136598988993523963613624379889407522320327379642838995625008181303022531782314023454091322315873789321661018932117071938887097925276696069873655858777728969938328676542142052874565114185612590639072241087641143736555489313477131823283162311207315601346766125009797663355979125977442600929074473531153288276549453983723384523080271921328424234669057230803458382610369979688721287349653838295006773735978662889527507064847376608105331284765677410623830588109303137938445380959662433627576536177866904125282772625739326745094456348548321634952007451205729179012956351774936547691010780161213411805027628142417898762414804736117764819718401878593728633537200001059284423190215157252337693437361041423466754127628101895965010849846119189973223102337399724194181814916556509405623360762436233052735183174014926083194437283728502079698250721693088447035263599977300443181502231336854774901610558741798096677425523279528479526166403453978415451400447965670764610991774073622602278902365190643819984759630669254355713346694397359905572961674944960507288514940183831399686899934217704452193157922301761877937555136678234905477819705402952327645080554055814717407221035701434880836304274906351023830719465845799450385501052514020217338126945744749814194404290163836547212107368406842484067930803190751687828587025203253173900866271065818477271904042663686605924356445857655575681485424488166982468922959209758783443932800209004245421674026689004168985719542863933166609619872854068374819731621912756187684883205334304174018331473557729595385755739118883652877432447227197469627366877780899353279425523961345506204484128845441938626638602017814983039425405486984284517838520999778061941020902042045809252206661006155186681304610300156861684049355810430186945442646161857263646477272097012282919794379326470074287617230794625516334423557895062017181063567519986668668290952778219875616259931316996412057463521294458510093744815700261381088764578378793774309971738500668042341344558057677009643187591934596437665885859939186477429328198609795662972332118221350316527475821962020848459396065304451976592687151171234741816654933358442333698629311738790204122009467369355512582151545200775323357464654605286084133225090427984189400950378107452235699293022021551733641535113428334779816175472425627467141689826160916210735539303049659849967742013806639739637813182779535461945457591114657816187526612219792835334310438342638810617757230792145957578545223760586234109429134579033725188436204507587022651689653915467805704267173325188445136607746351560101164696433501357304562854000666172858576648944598498352856772134968900120802645905288741462853012079197980002184180145504745370073998212627652432397196396174897390303731869370452798580670323961902441373157125278519451567857577799330776576882292052206240203604594894806962456106523966753096589828806507977907430815290508554573161918674393532211811325141780800475053227804357141953979068134650956390092800332046502831201359446682577784237882614282200062950711731771611062912451993835222958313039158508134036294866806260552078772442729899718527765499342741171986250703615866812572077541546878079696783220763973564052694368323629371363316845811233207141482319072843658564279629657645691460474114036676288265492653480025911551616106459776310305170066808663119815186489604891423914608970608152450827043890349488917488763035373806340733356263889284658322917389600460750855952335170059321513670182896215212093702492380591642756179503303363244624261772561101269902563105552607591717735920313065897015369653822726029511406273885990087143472822269230238364552893300246931431069794162776175085522749365821032514457938654293540422771975389900353417196038235753836381213357607976010898558764722661769119112317664397384179170678356866268188090153492476244122995238252786379590091624779235938015198285733966245745907499181362570424737762899180367342131659265158137904251457260959613409711646336703561137848393286060129420330819744998247903266338501108911264781594864056305995704783185040851618115718303699209514802758608295914811689409377583957820162500740883715876843905018716589938115172258001273095750765757489855265429850925811858755339722997621963197999532816508579644851146983875476264135769790602161960160135021443685042917909023932670288746558243634767934260558087254831837735402767065697934264290033254016022471380968868441907101796124367784668645829158819535019230720743141782323305122879243995518861842730924654977548037343642073387102485782874692923081007222246186715411572464242938376751112612157475304850233820738024184534148544412184739040380388721455215293604694455405662980859583111136193130093305036201535002115829726979080661795467277542405260854128863656785659807412207362302841204897576432592561845227591036324827455617920174945983526545850332917602124908165481749338771496459361130190658070795876110949921474742580843706236037896036774160041512983800506228819566054501871955724079009033558491304612838897560002544960328044103884682039453361387118597496840312946028819791863833125505366439537899073965310217579016693501318732231132480887514049306764994325993069019007209723104509158186857613984949031043793014737665052931558375989537550331015174835066563495475816519576635155587915222542571512786557643208409847943352176448385650346054868443809762508853679111497037494815089742509779256502450184617106703946042698844447859870731907013387956000894068654932171535054071087177839253939344388928978348949947697586363841624498223441571183921152564802645102405041152780212855627515226346711652030696370490043688506753394564146414866458240136707563061788033012199061764894198553588324076578865940825249801954028555945957168567375602555529529385884460200730226189510631304633606170957963974755116369676515562903187234324915047991743099579021816494848938868514142556536345063653687623464327506575226190014591782014014792268381539212734619815796649951379909032467949734334854707924048506973868798610028494504865480902671238873807822122841571727164733770255074302449684165506412141653388028814248423779769931106052217898703405117552126993148723870187057827391704339343240088628182360793171068884192185069816854076756667730761676847393120721059605568495961103037636633333296277882431939977604680888583653112538278561508379516558619757794443174859587172079633575089241849313256207971285700743801231033892485591489286888621745368681498779114031213532880916064076700038304298771884250928390276196644594443218621169891939260703973606701116511645694389750924476878968393088514246659769510362970855954426678206378670248191859767752701834596959197262802740649490575558388466206042061544401034118370345105114796244514453627348409220908349888641012710367229323615808464120719353579698004515262794247956693953379935654958279835659788201604268510577002894011323424419726707753522909090748898256385389649261059775384164221000228353564479305387509150697318559686953937168519196310738571754693975285414179612979726074966972299434647641846237437779684113078315043931582740373781262373610572240798921629565641383904734847272714325461874996026324880059744653794348627538245896628163441001930540563128498200126078709556961142736584410885879098949503362652961842998445661119572469188577184330437790253253918948159590928262351215684087653833615192029327754540370802915116069280816512683212512455666267281464385733017814752373610631513461854837813946928842427525952358976737626259691929876811418114772494797999165858786141252112179024156711607973427993364112768084580860479604558895063620227910174893146467097524277690101498348287194823501278903117083869746412169015854239299092473768532010995910911775988525337085376916878666788766241380400803623062652835258882638678506755188305160389220871789613909630401850601129897862338416968841416269653338191184627038496069846376265197587424899356800178448503379538032117303561686559145753745657298017151025914418868086396048490190814927103670354377383288920307208519871381467491988640030238165591897074790484088611383489684454176967839830113223383383987761588256818048691365132376418393813158735237029707354919842391068496242743600237785720166875041126572864733133134745016176279415474888263108595234925029685851809146204724894793537055486333792949716955575797827199924213482717868727428832928512151998229147916401630374102987818179521216363117611368090763366237706247213030541171744167085780424103793634491892342985220727045088539758613917087447496932088825843809527682344490266331498517675537147012356777458361645771169044921106089840253305406404324108454912176885606545802410586702807339427648801403141030580832141883907490935460746356480022307098122563039455763706159298783667389677217533014735060178919209549720957210020289077340226587507122073458410768937281755336197803381992198205372468673240109684059139844211732111483581958203756579333204907105027987246204874898131587420282425444609564325496779649730482432464675341821208268541684564962259373075535406628288210606030740759174529235528720442585649898934418526368084869278305983355485989718929656217767757266110133417317481927557246559476716702851152114527144453754569957818850997114111221719710486318276737468891645877227736828704130503802610632280756211753479463102745808350819029626543732459422430646059436894027043462374517272410981203684396616517852782162517891139166861938812481707912775051823136149465590968535237248507645900879521620186538417448843934225137922895180232171901332150131653805185307287304214853811698882264980622714509571253475733720462284946281796401309877112862344953735724900344243286219945778042355095718404211684798880473408043010410252929852791543346722498219521798615489680915297588536134153550197260754200634714065983240692702568598941750555584705577028179923989411424589194298344742151617795654614295800551212651159108102828799078924410903304500279425364376963402463515330287779867368233091224923260865861942852189941241894259675611256789659133630673160547639339666089250580344512561810059208026478167071478885119808889894834033414208196308487431428331640350590770621889218709766446495225653996077728410288957088233009730507903401042189365309396981629083909791021977933777288445997148078144442170705933147214447496385276602141614717565481374090363794270124002948877830605379994059326855854017202287251389452477912419048948138907289233051383545438079956823102503440259483594308929418364867356266431366349312305676089886844619598773255628902283909025342085047086531373684747196396489574690486128964788663403091393601579505724902467587699967470335310301033486055650420391830360971851366633278093300303264368858836898541550207891805369676094512546683308846891290381454022990865175089574806187337562588437490630495213578048629974058742672793101909098747310054843396750443698971286718444996622705515629354319460646507547425577085573316052291707787192120041317330706861408623508357498390603237815256373485547497366258691456715553831967638354306047210600536726138033475732384480138145303339447921233268261430037076259032660195961437968770916534109517203552874025846738279770358971341197223975748888422664841396665360068485544620629773930647258802639809297865361977628590648559480967983932616850280932320465642881672459046514819429272470467308983080513587517529015086911217893682329945568488451428245806004960471053256145217646341676599523741098156001434399944598080586886891069162362804810935458648862702847040901896464471402492322392996171339826901300631554561846511231903873916310367469833659125354653164265742039694135771649322703726853204456397684779301512659904724605085082653144983371802371436232351705278257236882800056330761952954340850593655578699662134204788408384775967278114008045415553008438109035872605063682638289674894036222460975053770541761643243475276930690125716074270213342038204211008654440641780495749068879864539810481282263572432727462208802883634688938452532604684824298228791180304856763570703672610943057681431037227132041515682113779243214914708351152298979051415986095238586352335195350841543637839516789244526596982783596599149324072219193886184440505382247421867868495006630837166333010356414137250036087482498998976835408629767553555264852797492122879741976153181238747845244754819425864747617118761829147293943645847008677734157849224916379480509125519594177071370605530519296469442784632492577009182291134452344494852376747474326669382367033379235212390735152491550815581640617561982876051362441797539534912849835306391650689415631575280611060973525087953979530045655142916899887341116358269582722181425977098098483750014498148327542521226876999264675990956546483640526827850546138211845593745955039935031200408830161772586293191930023536784690520149037023098814318999368707787745589206832297463734645876047741796440125643600772626983104856825171080271946657630322883741512429139303779296684636259973945153937078572248748844985391635848714774350149436524938615385983510579958483358219411912842539847996506895040106866203665178598762773125684593359420107903254708820965727670491035471305283807847770714536478711060269499117223733358435287519014388885961548892745100095609376060443092160835251167202418540106514481697880836974445741559513468989395486940330583342332062978267687714849952368851211402065697773168481458798598803139835318685106783931729608832975806069265167551847320590329376385107969623217465617678469513667362192599109470334341561597295910018626214756184078896405677016858486466705199774712132474812887618821648174491818066431238028960956861004077890423646419897906000919062342844256624329441179840193952682960460991850204574474640520393889568639928057107822709266232647524669064032221987734801897419584527050552522854378822688818002274164631741785649810896267796780272652386365854743721653662298094892765186710431018756038293014352345295622842200810783201126097302769846546114523116764585268122503115158419120967836204952654712423842918374366549577034927357695495006836447710454286571795227106620438885225292067701914246965258533583024379650842388521985523721483596454650644611433836561324883988492381598976543611450820611544751663637978666353658530570598791253990357011091068693848656627887777586117474227341033959599713377666256135839230016480554800323517507000251636516423602744649571972651242342806360500480602072127598293256915538037769737870787421706127839899668639528165873623580940488753745445812570878222430875322058831306514771514287232695304795611751244473122065054533203256357404664212105242202224476648906874308447138147879249904983365199464820872208448219447724684323105675742219056698751301062734478468188322638785966706041974965620583524593497080150784109191545216660102255038208131156387400845591259092624674088064378439621568011905028874279500082662812349781775552819775769397139866485660318888474071940294823747013995307925334065664947327205324886879270262377318194044939829423351458401027752424314667433154761266561583894682992295888228127252372563716650606852539348253960620180085511260490135899050168215505347914158676001967858152160314137822285972922494045040000624051109671864139185542708697811781246853329361526923660509725183982509752345459548287993521944320710763557721940561177867286451385065976015684037952290094189127257455760744750698863061597726407649652429582129416113100199115546644567075084534058694524134873584017860971529501395411363151205451747973436617873340144206217233855136729741730579136554299917513522266234507769670128843091476054962177376759648967791147098498449354897759489772699975237432865228880313146489916521988304374691275767166826803506025475160586537761679144536305139169236257854503820656373136481426655568807796137858929702060909441139068824938031947522559228107005097333345177392320825021120594483473251058036234429418846148126494406729838460917083511932157022742434117889351203636794875410133092815812321592986770184381008474199489601720744660519491172572409688782207376182833122055785693057449478443687453992836683010535713221549416757146179734592984860733578238318473022427882442354833079178925042044839999999997996640490086748910957328658012158594" + }, + "improvement_over_previous_local_final": { + "rational": "31974253598832606678354969603512884991557192512901477301637600814322741301628194131528280664223161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999998998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.0000063948507197665213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997996640490086748910957328658012158594" + }, + "complex_below_one_over_32": { + "rational": "295702450438744554786643290060792974230016885614974197045396724798371354517396743611736943438671553677255486830914137790279295518798345878572286993633070432842650374726093770722851545819004462436628875244411860232158594469613254421180434381201993107458287802325125163053243069430172110772426807444343933144335882747615503490006601729242847162857298422942376907739613882280443446224985853478634536891188142530824191974863594540321471891983190331438660214238370562076773175178470114670761880010611386002765217334877606662589743493065263885531299974729615216146566125248715060043698437181284131422075731364283345338709699703582993794126253899206026934528146377767153691054534880575379446376966339887312558441481262157726244245697615457333431613530552275449401460162499989639848656487083332296490801937951693311275458058296123013085185208798445708221465563084740804820410787599540932022730154798854652366464476530061371778559455317877071523570265142553496795276955870075571182528875499750360644512024647568031051209246724192054442929880514566129263081607800600413659781576784781538493005974997167768733514791341812590394896312608386149334027698381074953732165321067742972175810066314372640545949939691059199112902259197028374719371255274892663325340259528597987002000622558108239103590586872155083612865748826932850558450127216937887601992803887514760693042973096472391063480588422977774969494269373890726888734426098435756907320784308567088373502792516309024646236773935305442872817134944905055513987942401119509705195727840017715028425464818355749703194884577637674587109137707610390307383226651501620601170253964126596900620216453142490711603118113883687304793946602705203186310568182585481733099132087842924462987083665596471409057053089142884222238680920348385341993474341045344088992681826336970904415586716700466508239664209600653162760712100530064502065167678737914771432371617979347503998020717290436951568819830615653761168700466043348086144727916925815070477843455475263686724263892892283969716867279371835765077377676910558598090331378177098353930094532295184009856445876560728286563561671334986536567325297894362351326764395460227163902172113952967717938090786088835394692844065885155267530618028426790389854030687484589562087120424512546486618421621433139619412602429066309466808032200836147058200624093927272069181608034101135651581307045796714383412826355512250686832248794798741015735179125057686456136632780958741021703784606998844147553906477008242783863461524576481328027139732701732284213209639484110376713320660110731582869204969465058671090103178705963815577957977980117208041307484040287948737207568397920862262167038764918914817399842386679521269528858792702378468840740576184166859648224733306749763575359090479283104041504241262307460577374215178978240585414372079147184993907992934116201605852641627727983013849912701637111777081993050829497271839664962028123086823798057182710282673420545733083021127090208832414549389548919179553208520792478116741455214699919785611603942118797765688096950288243879790634767873964857412444521648789803864560527147448552706069899091964323053563880288116863458208447919482878912060824116216698178139352435731695393401069959535324329203337622444367964764061787544412798293121516020525308941658364483453926273235491667129709613354532811589881095340509634320462896872830943304431176506564806154989036967958119208939559282519121803571937582119862858446558992323103590098402945164868905912372866014958993377116548118056741920067867964800627129001792217256006372683260501696091755588032157504905364186439930604862402349604921406933898606480677990962773702118697528181450577674026026040023217843651205895169065731895622635287238154653002041327740805127497998404814040867953756393423858986581727546968897217062680339576927939315498123265676443381136821542767186642202268311779287137369988858543177262407415050532321766834262982082942729764844869626177125112178091879986327807056026858437493399517480756985593236221508005540862688976770344799922216391395173157205049774868126436946262798463619701932890548353790753130685603189442366043826482068753531636900090555220592854185818035818981280794463330453310287795746469816958668263449875118586343150143382025983152488932463664717049268332065582602411764617487761017362546088923610752439276799425157166364622576023516282873398008827449799492320163887496028572604329672091852166412083019528597446840308235376692555668878567063995524222075477679436187916561393864664701716295051250017146458408474680788744495296167920219138275186733081479551861681791850145716555390102750468576506624434182037146500833059769216411324853913506659182415964985931974732458164426896249910308397876690383771233200557682978044527273317266187310688817938781979724308299037807342261634826491889372280466449324691637292048702697208746100893536219224910805348780141004772899321384268303789145405962067068659115826930838936027389263862499231941746698310892530926800426163629122716789538636535068335698424166105711665816227169698271759908607554255447741519484647287775464775586826630437191071751601991786746297222514600603511526076187208985092199533657474012268783174356831306339273234382812087374268783742364878567203252127234917351357818577422542203631334747050151316735928824292337199112277152975081523059788411362066798178727143074846374847022962133404093560957328602289023861383204326526366798133980024505950668680469796137915702365344566789454461282321469368569384728254641905605206252705110159818993327848215556361321699361182134003268232156282529461606966219581458745669214204656720103751374062498965933005719439097625261545734348151860218812996061459868240810940632590549583225266890965603405669247161868311403610323915622920699773320018403174567436157512549233527003865219439392576304796699833669190771721750330665815804924660495989007766617180669938655541518102221736339007458487278896115814840389728106572436128133348046976438246914894910389328577270036495289555335838603779788402406600688728983750367478711785480803627041120011595405846690665194697274993102564182272417977785521126226029463354862083414639966239062537424633585905125960527196497163650367754962898558133935085520218232971045192894826443352174895945063001618197997716918169404305641361705376564122552909442555474380911205044917745568460264209719148058883898124904296081743039862454718802995249783687812484239545533080307791568124502319276457208070170486105403271748909783407788588623457304653388935603531013315641671533061474940740509097401130867061513990597789708087415699448514286045807330405795484454409372627862270959652274754864846161817333892395313034696813877203218902630924470517678009527602945906297590647095144641033005907949739186795336883574210830699748481098623990230990996922358768446567263956872951585350694919282365194777760898345139105052376447906312707515844063772324702025922421695626445261002793312676023355509168125449286713195571352714457666571006199211724242392272656758826375432934837773401542465605519225770976278260960312280148010970968609620269923731457561466052387666796744189152301229311824229240528366633286193964849211935796876157058512888242164456457532262515525118445232426068779870206088852516995620007265573732402492186414146551719263362341389084272369748635325142345305071161013465827317764784818556642455137737802460455801584468704675705973702978702562050212162885088545088197264362710639445282084217346797313750029354440212606177767305669959313989808509254445654208112194243203864003942547252112061034256370725382329499535445044566985518312381404944626821368153118702124129493272484179106106594874005286311275465576733582281544536229417172981049465323909684145712933515751623689853795654304881905794167274951504382288581217977984933820025940845115273642980792498743287928660007920363068636552967008292556186811975761184970545699554846297176827519982866465269409244150517580077090105658481993751696827754307229511170446538396180031543712461469960982640186951330698974101674730040533397426228707096260003691349836513148366575430719609650987925121494853155487720575294618993258954276325690133694658453757516974087425500332372491407152150377720548315957693901383438608798726642658841457342244335808600114656917134040760906450724745235612762155608275193598542083943922544462348989583359513801542818782262453430634924980492138257240716254706368902697191547729161631740698106572679728926717811536827568518071152250630512480356152053943061379919489821479901573379675778952345478933740078454301922258033939332925540550953849589102144085096469818627679240281625878936368375931096758784576716386579976896915109471603351855000293948513711728864109106291708719515828886671836940270341778954971547010025637682545354546619764413544963136071330412616727121378027469631516945421967574919893060514575134060627203491533012269368640477526650060074942639362754358840267746386603697490980015537639979512088494715554529852565471673605077816041269667864433525328862657049179421169591711132019935683754112915180309490692743311528574600360599593197527955551937489120317666438743406566623600920034726496381351809578995548437120817845944760612791994635287070261238756876254381986117369594572971254903415234481578999571304824874226299040384119381765271675500558916223038726159267166397839091286873439781979391831653306681036184517775340417885779699985994088242180833915961419164015392012666475353250392438062819677664324449712791954694345361829095881904646324446900081398092399841065084167402777791261957108396319900357321537558598609351144514123586232757517463522215309210479435396026705449053182075115545381133167378162891570418610375391568418467713532658099573156927933541294240387208873670292705589380161637330303489091190772245666408614172132536287098373790449335642269781468802740907807000798880801532718686182349064008929819099658955296297160431748343287617227025758556381615697521335431858630443468039849725161463149942071490040181252754366757765402238101888119683413607869215354888477286151682100721590760744259547995729744451895689002165731095387507972272388511147230946838102549368617524663869089291230878112277885238417787787500892035732648418871961054110958176784979467592202000685822574014433192620798269622718671742258111069916597240201870770928646458769319449998427605608398837888884858744738041016456295014269647421788064027072875439692238599209744489088438159656303203058286919958027590862709333287965962360582817349155695483204512259400171229508417962621682331163069980931328175400676481782832742619346559965800261061634429057044119510109696319675023793788531271097999640595815806148493633936034822283756715209879989431162540124310842412923810719759674951228501682677104269802397651436525408759297706029316618169019031012666762663747502525151417828297818511052770756862441104113729760325728016734595950663491011081341374783557259489483930181516501977726991269653222563115739227411849289964914275594419477958902538734335840837866406724268410710362042287913858178112990146853580694389124946767609772634514331049703249129807813675720279663542499562211946574393811286819675944516700292967321719829972269485593620974512889268877626520727823104487339138757572900205714535005057544056640508292624665931152592072441916930101886783551061651943388621969207214364915535384153337638922887646982857902309553681638214492675026864451296567718786503486415503463926743782007527332397070619457207449414025070410173534204464804627487742539522102551659740010198664500434221720642750622601245764590238160776021280192874466775213349176810695806327659918701121325107931132727719926736125164083208695546364035356199678659280079468671220920359611493166156935059300257731810591392728434029017098978571498080511667375288002649446369944354410692269173966775404069501225141128638613508517270336321368034153771249517768261790131422784041205280234280139205082485161687724587431783525628301425869449811584590859638047350656120286205640746182537058178458011067441888161036142730604383542880627488002045848874652864863472578859615496426932245857707492317955318670839847208240297340543457813376408971587575706951538489680990241386323090646209237277246828061030644382283594214519893540971588797887325287282848853028372431821364676612535208838803820614288601840118775940885407091690781946123401596790897258449192357639018842848375122083839519363626894225360189703860646914879184399290521872411421558341306875058315667050874025638518631452356098187830311835476234479203801328946779047120870964061645850129279712974487836151667843756189869241699516300287685476819880862085702881277692041051626804037535736034101565061586056794684117642170197281787911451229235882132586167485825240016182556224292327913837763762648232546794540287357985572571544659558012970569611802334266733447697256493032571750977933006396522005661412462361995323481559327137101753658501261485880070610408601124535470755301680022083639556451525433513111898445182459935967269098342215726647311955803051120188495038500274288245274151781369180847189331880946381129848966173661232198554513479073359851119790801561684486110067166241982746959954793508697017118956825540146146708707756691310573958811509896007969118615479636472687130791618953880064060153240230177098996360676752650787322074396783692337948726735671386873419616357401649790373547202735930425104234749188218816105546753648451451440566679030240963868372532420916144090467851979021340313103875047271063474291253721370358698242027985575436008796103151603946976664002230125406842425163103775689458795612555584666375660611802312129131564746256983667470775891206754959767123332976309063744057216000845574914643885632563226853563972305752501088876812475457480795801919076679085866031423899815618934524244330721825545049492875655554649523947287340982079391168594771900118691949866799218284833875501064831774880846619489674621538254560973044966564253289589557599961335541221321000473514998226241061494094384319084688168648023657844363588778101191150137564904893958207434372754941499929605601645767412269535475316401945568236085850553572114519192909237443259261745995380449900269293432272875308880990249155202894716646900397690835101623861852449079635560616272001177047110621449259998014232179314110283927213091258077553993933723475832500729843011388275850885051734233636001108733005913905028910930569427079238122287278100160171384337498450674659502511765615579332831617919953290644828277893917857658791835072711796006509183311007091932205915730456931540050364041601481421764280879176645976774393050966577067384384328696155030579902840171795938667127662372400001644930351514714343524146671414179381551549636697614602950915304174194202785783486654744915134361212750039370681735778393563638603332358409583092761206019021703759257121269131832135791542754948344683867112928772575378221266980528018803922637941474244651063428778280705531698317845101730157253632346009646490633730140519531763558929631852276847799533790600904882119880198392449161412152038190214039167839022566241741457860524980334649743372928250409121730362134357606759258999529060593626182606712291465243823144708713348378261987640561983757890888430423104406345967172414567184170692000504707324348013274343098682682986352837817498499795066930920172206199414650322768340902276526880236779659693713242908394769695691301687090662650192646738551548779962253131861831039401602094198408959116710109831550375575557154758512657249506128072736359097339472540292707650443239990418063639065742990365650923531574077702165512815821540016205941380581803799003060300775103871074949484734992368430979648108948334994557634884186830246638726000306537474503274791264105485607321663831253244304847082238799463340948322914078086133073045340672739880785783460418486291201990124525627125722694566260611174560591964874922263135687273850164105204791509625708451175028953616465210428603022790133838661683312090847444053457363819327881107642252478737335986889422847785533290755806573818854144495424186006876058603276498694297618462243532135035835512065983943701285440544922346469276000694906109597071122892410868432865707799321328552878171515919843764146292895058546164111485626144446580954262928652923990654759497028191861429734957145309772691964838731265178001113256307263284741094529521210923230670366204769542508504988481923039230834063796280039698982548162428335132589956417771043575602305145369460236240667589037392028941690251725336103011214038145192164013749762931586725779188794180072477219543057757552171529085652378240731662171648535333456907054847939596677439393668342092939544402637518018959745729873867763241276372006323579216159825723683978374539312142795381636565042814349739236871788679635093162468557368102613410892234115954013989264873662566543021200149405169783369952869064209415476029004811018291514614052636494617294085952076809180158116766966959034200501705593407615510518043732500061127787740233317676508018494377314270265325765141107915300663540181780965942976847000378613533418115446214390083775685405099557892490560296843420557863519602527982165181213351619449156625779430606155947632755088106755819971470644481509394310781758433904186252400407167713558343576986161379927686747886543742337864346749387037686779151785137789727966605142875152496229663400412990135345708001897402049867844551049609613376835501551136185569073353732426734781650743540622426309346856138490883828378567804688976182488822145166510718312713718078064576402035357302288111389048795606142157883016006380604638087283964922600297695772672553559777998913691279529917972141411957557229257169864040934718416319459280364118008204379061687133004480493827101877023498464816329939158539258280839581381622816163165640979358826741104764490528083201454871755539867895707989306461125380135528549180396860898372199601181906320855060007775622901861677135844143415184659608296753063976267179143215843268191017363123352906937802290220972763754629622069629694444815564461136813066672610748190882905216158092864193641724904752603601590431071289784918026378545706746850434331296747819215213829112615611358733602622982144738769671544002089327780666450738705352699968185871081566114980705969664633449638861282703414442860416422627084081955466163707215000385135241889921636303165287828632218133056375522740751190728801239468429233669478844215927864918413242821349807969903190787125797731688332325810539658447226905428100127018342578626112000535501981375812369416236734041527376647929018727497661301196921873632396227173868366957279471954471616688498979745951937263385718280193574639337727061224162005823771779875193266054506060926031436564029888637988478128035399216343942482801722025955759023840780965761366177250808989077460897130576961751444498428681933172137869908512965188307448500292192910665153356930582898287431621146723130146018639863041530783694779681059582388153796179252024039319171990652444754524441124943635676591996794177940120300416034437388926717672480090039088893599310266167896990334971903134955459228026835776617905971486012758838812352597071776474920309528431948623287459165569414125689178012310999899699693867692270970692890815515405759012743898159716471332149169584178811566041607922053395019206326142319754981490641225270001925777463517286400028217692136302668382573921346111811123289101130823348721018328655973540815779792700906487754945319981255391828375093131570901786609168428990682576726142229553076397522749382489406555222117047930652865047190917611900677295310765036996144287876320852191660020371718181557678525645796662296806779921740214833828040195523154797349942666726822047644213153656677740188446937119189945009848862478164111587994025944909946354594129946994196734260457009386149127747659928279230983022568755619982741585294248076337852196015518861319618993079650115026813415170758639966038857128771323658387852524035563422045659260279036747339575937141155413730120820034213681450916926985339488041850427964637267034147257072736021704069500909082986751833096401111057465249566284780408299026323278295166324663326722631813245718107813979527452675177527986953111288254262147141423798117581798994734177238959102954488192998677380746418993943935450909710662348620279559731989740994107637795313136910660994247347906403246847231544233994665593183371211215786269943503257645135862011846729855110266645869616572659307921404099655323276882912854096008572270587157183773829819606468511851606098030549238819837774388959474500760914401925475152385615630680617118137754437660773209820460381474232701028698658833534798695038679162184868418394202934188289994229992271971810076530469305189932091055132172148572423336938561659691007762282856052454897040252356601887083476160858314805559243960006438972807866109959381697938407372370978627463803910270461724683180030914423893086589733220416261777263171952715309983560532357597589788131409515826247786232842857246413119797257614185425312914528571445350605977899781475825076295057924012145147406044983774183087412049997873165821373568499448230900590133175739148080812622571551833897861872965560440603845608567309014182269234152532132390355251000855620184228883217322255759858843666158853505988926570913036521421104406498856062536016983048658302311973363356284615509151709722935033296936849631276296935859001224418610699525762425956536963299165119840295132663660407491378697881329801239596424875792427535931339574159322983136633922675803469790522990312077116830218755370288922747684341354587763975517832128082108555081999658673183606527727832926471666216928834087828421715704921665767559492693750121364276202175567717687758514956488028665082175764092247560230438560625243351780799173193342710987123412262427144025099470191419002372648440231722974993526191474772390201779612907831494003994395158179271954682222566764654023403987800750976848151280491634521742759085425803122837077313272625868801496805801316691250667233410191759261449506945212907957870611417848633285617651467033074476695156223723952789580880123823480512556087316588218411908866278653328129806586901932351689430428188164594206820537738662915988747561461078300415005200421459841185147822874095718897864643173229714860137434798922635771403985457607705772306251133970663478218641160029158819037548609992242468000327359232606676948434787672917463747479889102568792194935491008666609320738908525673614329915084164320734487415776181071821622106153169731319256839057660302634882725006050614008743874925796570366577397029120291894259275873760709362019454132692537362861453918255758624770854224406056843026064903109280131184190370647376278945134642187338557664991875782205434731387260981011776212629361718147821219037946876207122276823256085066602903338309055802243757843008041646986024036869739938062016720512529082653082565085726730474441319548262128773646260682751125286205694105445545843407328897387126269438738545664445523917444515159108766822794594522023991988090939478236548954217260880880860068048121059226190607024158568759075868979169287970514376380826915866304406326383875127147266253778788147523292264864715769808983037879560367731325990689593482867949526490145386064829081119822362353455774673040416725523149597858103046480975600758040709773691736549505409719723974143624244319064819586834434925581273481928806291740491953132126813210177510145808110792581073881041249255584303795847248387259022209854914627471915973372981394750393303181796744954962628222860949895331019103917862563135443374874302183983524845490363727141583839665494137209427969308543709435593463039056410238233507182691673238155008129752055340079719397664207206307947757991086028305797450772707787810145922441043058637650507002316147378435691176525968121442262395994641960612681932746747835070452996382554390270273773151788188880800192885080559017882684187785781747228965269451511300450854208633858660423962950225886745301016577714386292540045536670231972939115915225979189817726969710858346985844199558682554501819137720777508616869216647144643865051658107499435037943118784848611086001542505140649872608491592186528624660504305331130844907976527304578582396081924945875004285079702506550976729504860735369173969778208488809704612839112612564919528241260113505879832812233176734854185259757504548629119692971065073043517273408243541524921199980912585991680366514058683443391781278830931237196737202420005117318497419527317418727803392010674673712893897222724698975017324936657929603528432606952517601897751882590289466873447618644858099369888006824013481837436876888198863402235450190210865844583860984643323631583227556847186028323685493637033212236885382755415862437217176074361441321668747137804702295406925854467310297691916994411149718096533430019184133772104364740398250209259176546941289829071372488089697970562797744741923727504108021948603314282890653013474966358408295183221601319738115976044353119462087656576813317066838997549190132445120633828625112186110089993388889086299028716712314094561692861084765391605979334125469319666839212871270938427757708222418846655313671025451681018057484789540242975093105208774072567639268334394487177211795363664102556345098339698565164682701522130538174276403158753560020550396274355600266261754865917201638661847667080977868262112542358419567742595994324982563778018425737792418720501397896493306463991505146305186857739330824151805209075188008507369634976104142669650801958885660348632374020907581558870885431590176160281922111850369790204040227615877892652705875624092626407390736536848982923245926815891540754798680903931570879252594164181126787919618696574806485487115916873154228132534552390449983673026056171858044502340602802475969052123822865641474516608580396244038013940978444172491431287675736738403866464990024348912681527594081778493893482090261581941292539078674394347289099906191062999012552953896166163579284426972009222013989022266223320427268714122201875662242145567036412809574456654402468247780937149576220106997309396443477132030179786750270576954324104137440622264959989096702051033966127520228947061956492482970536698125047223632133999726355405697813738092366254536419428803404120549455618771006247329398259966569863741009817114107611448447609776882396022559675687699010649191827630243126009578704939406224411741146372395271060135976984832490517787784357211163722933029702246156410553336767589090537730582772073339197574372059765293610719137217907617519784653680024828402600791466328671885497752822694892748880566774955445870739988818390122914319697329365556125725028256584425373097101944228323160262439102588055597375686151097621492943005620995274324276864291133161840650431397306112530619535361690064265449108319859177081443609809418918040037570081756576926689088205033085823679259779076515989855278500226471424623494610399510176401933018602426673261471585392111718209743208273753194650952306458858056777213069999029455574113733087415264359341898778981051216755435673334051183569639748709286126876746397042576657562840934560856362927729076941178720087698145208940674874909603002566295351638616004055477917155035950982069898606755399905840716583220331537135481135956712148820703407354656333805847724046466395839536263086248149478937989893325095313039125437288320765590912066270350164536341731147669387180009368394216477552341747186367225849982402600268091846618184268439860059423759627573256308308152164993940601791451020993900594131212858920261735023590623139761823518566412463311469796042485917017693583853217298542476024093697614926904290291049081259137348742361136353008721926034030863498555898586792635953376433445876560347877848838592611103630939217321524159271538586423528743338448501881231610946952715701424521013272567838255982685935742516757140415004000047950415272636790681090979544209878629379439687817397692996856192582074207184773874796654687073299234566787083522813822028826622601088937280275965137864218398672237508145740127221223486836623292544659540124138091002665047075393671160447225699443676835016800524527547879428729358961276835764556691679608131641479981884903050079232997967856145650404585390554322160520331681006525878305511481378904074537295109504610660281982213946952071529688403912979824450066420077470473960661917321634972661503699514409519565894633990963987366198359739020193703413376393426175882586639763863585756619833794858164782506885470975672886552999042828620968598424030517433641968739616329960598634463351791132240834459415783967824626060873198167877653209002111291710420676360426000643446480001959984780296592303264505321422178444396898982805348480133482291362270607952347942875237736918167785466462374117851602075223244935223191253741823972930607149377610857752743625851374566109911225767833143041870378332208957429832076503222564145756173573995263685412090756472615029374639102477487724796873278978796983424975571110746667074944451780621063333188519217563619184514805108102989220861455367033689766181681285380903502584584032978130733630512319561757533157253739830841769659381860735527824052176372982619897039166154710402205682827738519262379492493911815028766464621561001669105396712133366214188564735894183277609762138160027756112126384570951210984629958162318829325370739915797413907331083721947053979169156500903319640070252630677899446319830951181908214247341990856716150538637339648353621368695738567157596982914454084988779627412749878631424704598359654544607774104251489778077893008555529123813404062738125870562395301377746626918973947612185958856772448001169644786599993973120209657637521516771963991735173773200764465009638740157360689348483434339362757033868795283768811838088443647831019137390210429949446731840166168199450600649092996661340208400928006331971760488647657305184593899988053149253509588389469870414919629761569963255110467966668159214850058893856304084341620612379020982423104309104264630014689267308001101888969345996647241251790982690496643677313024443448444172552611958256400966883550361841378980426143917534208668055024545709250933191384420103753821746648290163098976100330053779156693758456342750900672399265396307763092510230715004083310603132251025469184976444890175824879470539804944917611307817535152124287248849164848445169733819177729475710278640966069026942019093910470170328730668747955160000000001/10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.0295702450438744554786643290060792974230016885614974197045396724798371354517396743611736943438671553677255486830914137790279295518798345878572286993633070432842650374726093770722851545819004462436628875244411860232158594469613254421180434381201993107458287802325125163053243069430172110772426807444343933144335882747615503490006601729242847162857298422942376907739613882280443446224985853478634536891188142530824191974863594540321471891983190331438660214238370562076773175178470114670761880010611386002765217334877606662589743493065263885531299974729615216146566125248715060043698437181284131422075731364283345338709699703582993794126253899206026934528146377767153691054534880575379446376966339887312558441481262157726244245697615457333431613530552275449401460162499989639848656487083332296490801937951693311275458058296123013085185208798445708221465563084740804820410787599540932022730154798854652366464476530061371778559455317877071523570265142553496795276955870075571182528875499750360644512024647568031051209246724192054442929880514566129263081607800600413659781576784781538493005974997167768733514791341812590394896312608386149334027698381074953732165321067742972175810066314372640545949939691059199112902259197028374719371255274892663325340259528597987002000622558108239103590586872155083612865748826932850558450127216937887601992803887514760693042973096472391063480588422977774969494269373890726888734426098435756907320784308567088373502792516309024646236773935305442872817134944905055513987942401119509705195727840017715028425464818355749703194884577637674587109137707610390307383226651501620601170253964126596900620216453142490711603118113883687304793946602705203186310568182585481733099132087842924462987083665596471409057053089142884222238680920348385341993474341045344088992681826336970904415586716700466508239664209600653162760712100530064502065167678737914771432371617979347503998020717290436951568819830615653761168700466043348086144727916925815070477843455475263686724263892892283969716867279371835765077377676910558598090331378177098353930094532295184009856445876560728286563561671334986536567325297894362351326764395460227163902172113952967717938090786088835394692844065885155267530618028426790389854030687484589562087120424512546486618421621433139619412602429066309466808032200836147058200624093927272069181608034101135651581307045796714383412826355512250686832248794798741015735179125057686456136632780958741021703784606998844147553906477008242783863461524576481328027139732701732284213209639484110376713320660110731582869204969465058671090103178705963815577957977980117208041307484040287948737207568397920862262167038764918914817399842386679521269528858792702378468840740576184166859648224733306749763575359090479283104041504241262307460577374215178978240585414372079147184993907992934116201605852641627727983013849912701637111777081993050829497271839664962028123086823798057182710282673420545733083021127090208832414549389548919179553208520792478116741455214699919785611603942118797765688096950288243879790634767873964857412444521648789803864560527147448552706069899091964323053563880288116863458208447919482878912060824116216698178139352435731695393401069959535324329203337622444367964764061787544412798293121516020525308941658364483453926273235491667129709613354532811589881095340509634320462896872830943304431176506564806154989036967958119208939559282519121803571937582119862858446558992323103590098402945164868905912372866014958993377116548118056741920067867964800627129001792217256006372683260501696091755588032157504905364186439930604862402349604921406933898606480677990962773702118697528181450577674026026040023217843651205895169065731895622635287238154653002041327740805127497998404814040867953756393423858986581727546968897217062680339576927939315498123265676443381136821542767186642202268311779287137369988858543177262407415050532321766834262982082942729764844869626177125112178091879986327807056026858437493399517480756985593236221508005540862688976770344799922216391395173157205049774868126436946262798463619701932890548353790753130685603189442366043826482068753531636900090555220592854185818035818981280794463330453310287795746469816958668263449875118586343150143382025983152488932463664717049268332065582602411764617487761017362546088923610752439276799425157166364622576023516282873398008827449799492320163887496028572604329672091852166412083019528597446840308235376692555668878567063995524222075477679436187916561393864664701716295051250017146458408474680788744495296167920219138275186733081479551861681791850145716555390102750468576506624434182037146500833059769216411324853913506659182415964985931974732458164426896249910308397876690383771233200557682978044527273317266187310688817938781979724308299037807342261634826491889372280466449324691637292048702697208746100893536219224910805348780141004772899321384268303789145405962067068659115826930838936027389263862499231941746698310892530926800426163629122716789538636535068335698424166105711665816227169698271759908607554255447741519484647287775464775586826630437191071751601991786746297222514600603511526076187208985092199533657474012268783174356831306339273234382812087374268783742364878567203252127234917351357818577422542203631334747050151316735928824292337199112277152975081523059788411362066798178727143074846374847022962133404093560957328602289023861383204326526366798133980024505950668680469796137915702365344566789454461282321469368569384728254641905605206252705110159818993327848215556361321699361182134003268232156282529461606966219581458745669214204656720103751374062498965933005719439097625261545734348151860218812996061459868240810940632590549583225266890965603405669247161868311403610323915622920699773320018403174567436157512549233527003865219439392576304796699833669190771721750330665815804924660495989007766617180669938655541518102221736339007458487278896115814840389728106572436128133348046976438246914894910389328577270036495289555335838603779788402406600688728983750367478711785480803627041120011595405846690665194697274993102564182272417977785521126226029463354862083414639966239062537424633585905125960527196497163650367754962898558133935085520218232971045192894826443352174895945063001618197997716918169404305641361705376564122552909442555474380911205044917745568460264209719148058883898124904296081743039862454718802995249783687812484239545533080307791568124502319276457208070170486105403271748909783407788588623457304653388935603531013315641671533061474940740509097401130867061513990597789708087415699448514286045807330405795484454409372627862270959652274754864846161817333892395313034696813877203218902630924470517678009527602945906297590647095144641033005907949739186795336883574210830699748481098623990230990996922358768446567263956872951585350694919282365194777760898345139105052376447906312707515844063772324702025922421695626445261002793312676023355509168125449286713195571352714457666571006199211724242392272656758826375432934837773401542465605519225770976278260960312280148010970968609620269923731457561466052387666796744189152301229311824229240528366633286193964849211935796876157058512888242164456457532262515525118445232426068779870206088852516995620007265573732402492186414146551719263362341389084272369748635325142345305071161013465827317764784818556642455137737802460455801584468704675705973702978702562050212162885088545088197264362710639445282084217346797313750029354440212606177767305669959313989808509254445654208112194243203864003942547252112061034256370725382329499535445044566985518312381404944626821368153118702124129493272484179106106594874005286311275465576733582281544536229417172981049465323909684145712933515751623689853795654304881905794167274951504382288581217977984933820025940845115273642980792498743287928660007920363068636552967008292556186811975761184970545699554846297176827519982866465269409244150517580077090105658481993751696827754307229511170446538396180031543712461469960982640186951330698974101674730040533397426228707096260003691349836513148366575430719609650987925121494853155487720575294618993258954276325690133694658453757516974087425500332372491407152150377720548315957693901383438608798726642658841457342244335808600114656917134040760906450724745235612762155608275193598542083943922544462348989583359513801542818782262453430634924980492138257240716254706368902697191547729161631740698106572679728926717811536827568518071152250630512480356152053943061379919489821479901573379675778952345478933740078454301922258033939332925540550953849589102144085096469818627679240281625878936368375931096758784576716386579976896915109471603351855000293948513711728864109106291708719515828886671836940270341778954971547010025637682545354546619764413544963136071330412616727121378027469631516945421967574919893060514575134060627203491533012269368640477526650060074942639362754358840267746386603697490980015537639979512088494715554529852565471673605077816041269667864433525328862657049179421169591711132019935683754112915180309490692743311528574600360599593197527955551937489120317666438743406566623600920034726496381351809578995548437120817845944760612791994635287070261238756876254381986117369594572971254903415234481578999571304824874226299040384119381765271675500558916223038726159267166397839091286873439781979391831653306681036184517775340417885779699985994088242180833915961419164015392012666475353250392438062819677664324449712791954694345361829095881904646324446900081398092399841065084167402777791261957108396319900357321537558598609351144514123586232757517463522215309210479435396026705449053182075115545381133167378162891570418610375391568418467713532658099573156927933541294240387208873670292705589380161637330303489091190772245666408614172132536287098373790449335642269781468802740907807000798880801532718686182349064008929819099658955296297160431748343287617227025758556381615697521335431858630443468039849725161463149942071490040181252754366757765402238101888119683413607869215354888477286151682100721590760744259547995729744451895689002165731095387507972272388511147230946838102549368617524663869089291230878112277885238417787787500892035732648418871961054110958176784979467592202000685822574014433192620798269622718671742258111069916597240201870770928646458769319449998427605608398837888884858744738041016456295014269647421788064027072875439692238599209744489088438159656303203058286919958027590862709333287965962360582817349155695483204512259400171229508417962621682331163069980931328175400676481782832742619346559965800261061634429057044119510109696319675023793788531271097999640595815806148493633936034822283756715209879989431162540124310842412923810719759674951228501682677104269802397651436525408759297706029316618169019031012666762663747502525151417828297818511052770756862441104113729760325728016734595950663491011081341374783557259489483930181516501977726991269653222563115739227411849289964914275594419477958902538734335840837866406724268410710362042287913858178112990146853580694389124946767609772634514331049703249129807813675720279663542499562211946574393811286819675944516700292967321719829972269485593620974512889268877626520727823104487339138757572900205714535005057544056640508292624665931152592072441916930101886783551061651943388621969207214364915535384153337638922887646982857902309553681638214492675026864451296567718786503486415503463926743782007527332397070619457207449414025070410173534204464804627487742539522102551659740010198664500434221720642750622601245764590238160776021280192874466775213349176810695806327659918701121325107931132727719926736125164083208695546364035356199678659280079468671220920359611493166156935059300257731810591392728434029017098978571498080511667375288002649446369944354410692269173966775404069501225141128638613508517270336321368034153771249517768261790131422784041205280234280139205082485161687724587431783525628301425869449811584590859638047350656120286205640746182537058178458011067441888161036142730604383542880627488002045848874652864863472578859615496426932245857707492317955318670839847208240297340543457813376408971587575706951538489680990241386323090646209237277246828061030644382283594214519893540971588797887325287282848853028372431821364676612535208838803820614288601840118775940885407091690781946123401596790897258449192357639018842848375122083839519363626894225360189703860646914879184399290521872411421558341306875058315667050874025638518631452356098187830311835476234479203801328946779047120870964061645850129279712974487836151667843756189869241699516300287685476819880862085702881277692041051626804037535736034101565061586056794684117642170197281787911451229235882132586167485825240016182556224292327913837763762648232546794540287357985572571544659558012970569611802334266733447697256493032571750977933006396522005661412462361995323481559327137101753658501261485880070610408601124535470755301680022083639556451525433513111898445182459935967269098342215726647311955803051120188495038500274288245274151781369180847189331880946381129848966173661232198554513479073359851119790801561684486110067166241982746959954793508697017118956825540146146708707756691310573958811509896007969118615479636472687130791618953880064060153240230177098996360676752650787322074396783692337948726735671386873419616357401649790373547202735930425104234749188218816105546753648451451440566679030240963868372532420916144090467851979021340313103875047271063474291253721370358698242027985575436008796103151603946976664002230125406842425163103775689458795612555584666375660611802312129131564746256983667470775891206754959767123332976309063744057216000845574914643885632563226853563972305752501088876812475457480795801919076679085866031423899815618934524244330721825545049492875655554649523947287340982079391168594771900118691949866799218284833875501064831774880846619489674621538254560973044966564253289589557599961335541221321000473514998226241061494094384319084688168648023657844363588778101191150137564904893958207434372754941499929605601645767412269535475316401945568236085850553572114519192909237443259261745995380449900269293432272875308880990249155202894716646900397690835101623861852449079635560616272001177047110621449259998014232179314110283927213091258077553993933723475832500729843011388275850885051734233636001108733005913905028910930569427079238122287278100160171384337498450674659502511765615579332831617919953290644828277893917857658791835072711796006509183311007091932205915730456931540050364041601481421764280879176645976774393050966577067384384328696155030579902840171795938667127662372400001644930351514714343524146671414179381551549636697614602950915304174194202785783486654744915134361212750039370681735778393563638603332358409583092761206019021703759257121269131832135791542754948344683867112928772575378221266980528018803922637941474244651063428778280705531698317845101730157253632346009646490633730140519531763558929631852276847799533790600904882119880198392449161412152038190214039167839022566241741457860524980334649743372928250409121730362134357606759258999529060593626182606712291465243823144708713348378261987640561983757890888430423104406345967172414567184170692000504707324348013274343098682682986352837817498499795066930920172206199414650322768340902276526880236779659693713242908394769695691301687090662650192646738551548779962253131861831039401602094198408959116710109831550375575557154758512657249506128072736359097339472540292707650443239990418063639065742990365650923531574077702165512815821540016205941380581803799003060300775103871074949484734992368430979648108948334994557634884186830246638726000306537474503274791264105485607321663831253244304847082238799463340948322914078086133073045340672739880785783460418486291201990124525627125722694566260611174560591964874922263135687273850164105204791509625708451175028953616465210428603022790133838661683312090847444053457363819327881107642252478737335986889422847785533290755806573818854144495424186006876058603276498694297618462243532135035835512065983943701285440544922346469276000694906109597071122892410868432865707799321328552878171515919843764146292895058546164111485626144446580954262928652923990654759497028191861429734957145309772691964838731265178001113256307263284741094529521210923230670366204769542508504988481923039230834063796280039698982548162428335132589956417771043575602305145369460236240667589037392028941690251725336103011214038145192164013749762931586725779188794180072477219543057757552171529085652378240731662171648535333456907054847939596677439393668342092939544402637518018959745729873867763241276372006323579216159825723683978374539312142795381636565042814349739236871788679635093162468557368102613410892234115954013989264873662566543021200149405169783369952869064209415476029004811018291514614052636494617294085952076809180158116766966959034200501705593407615510518043732500061127787740233317676508018494377314270265325765141107915300663540181780965942976847000378613533418115446214390083775685405099557892490560296843420557863519602527982165181213351619449156625779430606155947632755088106755819971470644481509394310781758433904186252400407167713558343576986161379927686747886543742337864346749387037686779151785137789727966605142875152496229663400412990135345708001897402049867844551049609613376835501551136185569073353732426734781650743540622426309346856138490883828378567804688976182488822145166510718312713718078064576402035357302288111389048795606142157883016006380604638087283964922600297695772672553559777998913691279529917972141411957557229257169864040934718416319459280364118008204379061687133004480493827101877023498464816329939158539258280839581381622816163165640979358826741104764490528083201454871755539867895707989306461125380135528549180396860898372199601181906320855060007775622901861677135844143415184659608296753063976267179143215843268191017363123352906937802290220972763754629622069629694444815564461136813066672610748190882905216158092864193641724904752603601590431071289784918026378545706746850434331296747819215213829112615611358733602622982144738769671544002089327780666450738705352699968185871081566114980705969664633449638861282703414442860416422627084081955466163707215000385135241889921636303165287828632218133056375522740751190728801239468429233669478844215927864918413242821349807969903190787125797731688332325810539658447226905428100127018342578626112000535501981375812369416236734041527376647929018727497661301196921873632396227173868366957279471954471616688498979745951937263385718280193574639337727061224162005823771779875193266054506060926031436564029888637988478128035399216343942482801722025955759023840780965761366177250808989077460897130576961751444498428681933172137869908512965188307448500292192910665153356930582898287431621146723130146018639863041530783694779681059582388153796179252024039319171990652444754524441124943635676591996794177940120300416034437388926717672480090039088893599310266167896990334971903134955459228026835776617905971486012758838812352597071776474920309528431948623287459165569414125689178012310999899699693867692270970692890815515405759012743898159716471332149169584178811566041607922053395019206326142319754981490641225270001925777463517286400028217692136302668382573921346111811123289101130823348721018328655973540815779792700906487754945319981255391828375093131570901786609168428990682576726142229553076397522749382489406555222117047930652865047190917611900677295310765036996144287876320852191660020371718181557678525645796662296806779921740214833828040195523154797349942666726822047644213153656677740188446937119189945009848862478164111587994025944909946354594129946994196734260457009386149127747659928279230983022568755619982741585294248076337852196015518861319618993079650115026813415170758639966038857128771323658387852524035563422045659260279036747339575937141155413730120820034213681450916926985339488041850427964637267034147257072736021704069500909082986751833096401111057465249566284780408299026323278295166324663326722631813245718107813979527452675177527986953111288254262147141423798117581798994734177238959102954488192998677380746418993943935450909710662348620279559731989740994107637795313136910660994247347906403246847231544233994665593183371211215786269943503257645135862011846729855110266645869616572659307921404099655323276882912854096008572270587157183773829819606468511851606098030549238819837774388959474500760914401925475152385615630680617118137754437660773209820460381474232701028698658833534798695038679162184868418394202934188289994229992271971810076530469305189932091055132172148572423336938561659691007762282856052454897040252356601887083476160858314805559243960006438972807866109959381697938407372370978627463803910270461724683180030914423893086589733220416261777263171952715309983560532357597589788131409515826247786232842857246413119797257614185425312914528571445350605977899781475825076295057924012145147406044983774183087412049997873165821373568499448230900590133175739148080812622571551833897861872965560440603845608567309014182269234152532132390355251000855620184228883217322255759858843666158853505988926570913036521421104406498856062536016983048658302311973363356284615509151709722935033296936849631276296935859001224418610699525762425956536963299165119840295132663660407491378697881329801239596424875792427535931339574159322983136633922675803469790522990312077116830218755370288922747684341354587763975517832128082108555081999658673183606527727832926471666216928834087828421715704921665767559492693750121364276202175567717687758514956488028665082175764092247560230438560625243351780799173193342710987123412262427144025099470191419002372648440231722974993526191474772390201779612907831494003994395158179271954682222566764654023403987800750976848151280491634521742759085425803122837077313272625868801496805801316691250667233410191759261449506945212907957870611417848633285617651467033074476695156223723952789580880123823480512556087316588218411908866278653328129806586901932351689430428188164594206820537738662915988747561461078300415005200421459841185147822874095718897864643173229714860137434798922635771403985457607705772306251133970663478218641160029158819037548609992242468000327359232606676948434787672917463747479889102568792194935491008666609320738908525673614329915084164320734487415776181071821622106153169731319256839057660302634882725006050614008743874925796570366577397029120291894259275873760709362019454132692537362861453918255758624770854224406056843026064903109280131184190370647376278945134642187338557664991875782205434731387260981011776212629361718147821219037946876207122276823256085066602903338309055802243757843008041646986024036869739938062016720512529082653082565085726730474441319548262128773646260682751125286205694105445545843407328897387126269438738545664445523917444515159108766822794594522023991988090939478236548954217260880880860068048121059226190607024158568759075868979169287970514376380826915866304406326383875127147266253778788147523292264864715769808983037879560367731325990689593482867949526490145386064829081119822362353455774673040416725523149597858103046480975600758040709773691736549505409719723974143624244319064819586834434925581273481928806291740491953132126813210177510145808110792581073881041249255584303795847248387259022209854914627471915973372981394750393303181796744954962628222860949895331019103917862563135443374874302183983524845490363727141583839665494137209427969308543709435593463039056410238233507182691673238155008129752055340079719397664207206307947757991086028305797450772707787810145922441043058637650507002316147378435691176525968121442262395994641960612681932746747835070452996382554390270273773151788188880800192885080559017882684187785781747228965269451511300450854208633858660423962950225886745301016577714386292540045536670231972939115915225979189817726969710858346985844199558682554501819137720777508616869216647144643865051658107499435037943118784848611086001542505140649872608491592186528624660504305331130844907976527304578582396081924945875004285079702506550976729504860735369173969778208488809704612839112612564919528241260113505879832812233176734854185259757504548629119692971065073043517273408243541524921199980912585991680366514058683443391781278830931237196737202420005117318497419527317418727803392010674673712893897222724698975017324936657929603528432606952517601897751882590289466873447618644858099369888006824013481837436876888198863402235450190210865844583860984643323631583227556847186028323685493637033212236885382755415862437217176074361441321668747137804702295406925854467310297691916994411149718096533430019184133772104364740398250209259176546941289829071372488089697970562797744741923727504108021948603314282890653013474966358408295183221601319738115976044353119462087656576813317066838997549190132445120633828625112186110089993388889086299028716712314094561692861084765391605979334125469319666839212871270938427757708222418846655313671025451681018057484789540242975093105208774072567639268334394487177211795363664102556345098339698565164682701522130538174276403158753560020550396274355600266261754865917201638661847667080977868262112542358419567742595994324982563778018425737792418720501397896493306463991505146305186857739330824151805209075188008507369634976104142669650801958885660348632374020907581558870885431590176160281922111850369790204040227615877892652705875624092626407390736536848982923245926815891540754798680903931570879252594164181126787919618696574806485487115916873154228132534552390449983673026056171858044502340602802475969052123822865641474516608580396244038013940978444172491431287675736738403866464990024348912681527594081778493893482090261581941292539078674394347289099906191062999012552953896166163579284426972009222013989022266223320427268714122201875662242145567036412809574456654402468247780937149576220106997309396443477132030179786750270576954324104137440622264959989096702051033966127520228947061956492482970536698125047223632133999726355405697813738092366254536419428803404120549455618771006247329398259966569863741009817114107611448447609776882396022559675687699010649191827630243126009578704939406224411741146372395271060135976984832490517787784357211163722933029702246156410553336767589090537730582772073339197574372059765293610719137217907617519784653680024828402600791466328671885497752822694892748880566774955445870739988818390122914319697329365556125725028256584425373097101944228323160262439102588055597375686151097621492943005620995274324276864291133161840650431397306112530619535361690064265449108319859177081443609809418918040037570081756576926689088205033085823679259779076515989855278500226471424623494610399510176401933018602426673261471585392111718209743208273753194650952306458858056777213069999029455574113733087415264359341898778981051216755435673334051183569639748709286126876746397042576657562840934560856362927729076941178720087698145208940674874909603002566295351638616004055477917155035950982069898606755399905840716583220331537135481135956712148820703407354656333805847724046466395839536263086248149478937989893325095313039125437288320765590912066270350164536341731147669387180009368394216477552341747186367225849982402600268091846618184268439860059423759627573256308308152164993940601791451020993900594131212858920261735023590623139761823518566412463311469796042485917017693583853217298542476024093697614926904290291049081259137348742361136353008721926034030863498555898586792635953376433445876560347877848838592611103630939217321524159271538586423528743338448501881231610946952715701424521013272567838255982685935742516757140415004000047950415272636790681090979544209878629379439687817397692996856192582074207184773874796654687073299234566787083522813822028826622601088937280275965137864218398672237508145740127221223486836623292544659540124138091002665047075393671160447225699443676835016800524527547879428729358961276835764556691679608131641479981884903050079232997967856145650404585390554322160520331681006525878305511481378904074537295109504610660281982213946952071529688403912979824450066420077470473960661917321634972661503699514409519565894633990963987366198359739020193703413376393426175882586639763863585756619833794858164782506885470975672886552999042828620968598424030517433641968739616329960598634463351791132240834459415783967824626060873198167877653209002111291710420676360426000643446480001959984780296592303264505321422178444396898982805348480133482291362270607952347942875237736918167785466462374117851602075223244935223191253741823972930607149377610857752743625851374566109911225767833143041870378332208957429832076503222564145756173573995263685412090756472615029374639102477487724796873278978796983424975571110746667074944451780621063333188519217563619184514805108102989220861455367033689766181681285380903502584584032978130733630512319561757533157253739830841769659381860735527824052176372982619897039166154710402205682827738519262379492493911815028766464621561001669105396712133366214188564735894183277609762138160027756112126384570951210984629958162318829325370739915797413907331083721947053979169156500903319640070252630677899446319830951181908214247341990856716150538637339648353621368695738567157596982914454084988779627412749878631424704598359654544607774104251489778077893008555529123813404062738125870562395301377746626918973947612185958856772448001169644786599993973120209657637521516771963991735173773200764465009638740157360689348483434339362757033868795283768811838088443647831019137390210429949446731840166168199450600649092996661340208400928006331971760488647657305184593899988053149253509588389469870414919629761569963255110467966668159214850058893856304084341620612379020982423104309104264630014689267308001101888969345996647241251790982690496643677313024443448444172552611958256400966883550361841378980426143917534208668055024545709250933191384420103753821746648290163098976100330053779156693758456342750900672399265396307763092510230715004083310603132251025469184976444890175824879470539804944917611307817535152124287248849164848445169733819177729475710278640966069026942019093910470170328730668747955160000000001" + }, + "strassen_integer_power_gap": { + "rational": "1951441519231", + "decimal": "1951441519231" + }, + "theta_positive_polynomial_power": { + "rational": "2", + "decimal": "2" + }, + "cap_below_phase_cell_power": { + "rational": "27301756126096861386966608225151982435575042214037435492613491811995928386293491859029342358596678884193138717077285344475698238796995864696430717484082676082106625936815234426807128864547511156091572188111029650580396486174033136052951085953004982768645719505812812907633107673575430276931067018610859832860839706869038758725016504323107117907143246057355942269349034705701108615562464633696586342227970356327060479937158986350803679729957975828596650535595926405191932937946175286676904700026528465006913043337194016656474358732663159713828249936824038040366415313121787650109246092953210328555189328410708363346774249258957484485315634748015067336320365944417884227636337201438448615942415849718281396103703155394315610614244038643333579033826380688623503650406249974099621641217708330741227004844879233278188645145740307532712963021996114270553663907711852012051026968998852330056825386997136630916161191325153429446398638294692678808925662856383741988192389675188927956322188749375901611280061618920077628023116810480136107324701286415323157704019501501034149453941961953846232514937492919421833786978354531475987240781520965373335069245952687384330413302669357430439525165785931601364874849227647997782255647992570936798428138187231658313350648821494967505001556395270597758976467180387709032164372067332126396125318042344719004982009718786901732607432741180977658701471057444437423735673434726817221836065246089392268301960771417720933756981290772561615591934838263607182042837362262638784969856002798774262989319600044287571063662045889374257987211444094186467772844269025975768458066628754051502925634910316492251550541132856226779007795284709218261984866506763007965776420456463704332747830219607311157467709163991178522642632722857210555596702300870963354983685852613360222481704565842427261038966791751166270599160524001632906901780251325161255162919196844786928580929044948368759995051793226092378922049576539134402921751165108370215361819792314537676194608638688159216810659732230709924292168198429589412693444192276396495225828445442745884825236330737960024641114691401820716408904178337466341418313244735905878316910988650567909755430284882419294845226965222088486732110164712888168826545071066975974635076718711473905217801061281366216546054053582849048531506072665773667020080502090367645501560234818180172954020085252839128953267614491785958532065888780626717080621986996852539337947812644216140341581952396852554259461517497110368884766192520606959658653811441203320067849331754330710533024098710275941783301650276828957173012423662646677725257946764909538944894944950293020103268710100719871843018920994802155655417596912297287043499605966698803173822146981755946172101851440460417149120561833266874408938397726198207760103760603155768651443435537947445601463535930197867962484769982335290504014631604069319957534624781754092779442704982627073743179599162405070307717059495142956775706683551364332707552817725522081036373473872297948883021301981195291853638036749799464029009855296994414220242375720609699476586919684912143531111304121974509661401317868621381765174747729910807633909700720292158645521119798707197280152060290541745445348381089329238483502674898838310823008344056110919911910154468861031995732803790051313272354145911208634815683088729167824274033386332028974702738351274085801157242182077358261077941266412015387472592419895298022348898206297804508929843955299657146116397480807758975246007362912172264780932165037397483442791370295141854800169669912001567822504480543140015931708151254240229388970080393762263410466099826512156005874012303517334746516201694977406934255296743820453626444185065065100058044609128014737922664329739056588218095386632505103319352012818744996012035102169884390983559647466454318867422243042656700848942319848288745308164191108452842053856917966605505670779448217843424972146357943156018537626330804417085657455207356824412112174065442812780445229699965819517640067146093733498793701892463983090553770013852156722441925861999805540978487932893012624437170316092365656996159049254832226370884476882826714007973605915109566205171883829092250226388051482135464545089547453201986158326133275719489366174542396670658624687796465857875358455064957881222331159161792623170830163956506029411543719402543406365222309026881098191998562892915911556440058790707183495022068624498730800409718740071431510824180229630416030207548821493617100770588441731389172196417659988810555188694198590469791403484661661754290737628125042866146021186701971861238240419800547845687966832703698879654204479625364291388475256876171441266561085455092866252082649423041028312134783766647956039912464829936831145411067240624775770994691725959428083001394207445111318183293165468276722044846954949310770747594518355654087066229723430701166123311729093230121756743021865252233840548062277013371950352511932248303460670759472863514905167671647789567327097340068473159656248079854366745777231327317001065409072806791973846591337670839246060415264279164540567924245679399771518885638619353798711618219438661938967066576092977679379004979466865743056286501508778815190468022462730498834143685030671957935892078265848183085957030218435671959355912196418008130318087293378394546443556355509078336867625378291839822060730842997780692882437703807649471028405166995446817857687115937117557405333510233902393321505722559653458010816315916995334950061264876671701174490344789255913361416973636153205803673421423461820636604764013015631762775399547483319620538890903304248402955335008170580390706323654017415548953646864173035511641800259378435156247414832514298597744063153864335870379650547032490153649670602027351581476373958063167227414008514173117904670778509025809789057301749433300046007936418590393781373083817509663048598481440761991749584172976929304375826664539512311651239972519416542951674846638853795255554340847518646218197240289537100974320266431090320333370117441095617287237275973321443175091238223888339596509449471006016501721822459375918696779463702009067602800028988514616726662986743187482756410455681044944463802815565073658387155208536599915597656343561583964762814901317991242909125919387407246395334837713800545582427612982237066108380437239862657504045494994292295423510764103404263441410306382273606388685952278012612294363921150660524297870147209745312260740204357599656136797007488124459219531210598863832700769478920311255798191143020175426215263508179372274458519471471558643261633472339008827533289104178832653687351851272743502827167653784976494474270218539248621285715114518326014488711136023431569655677399130686887162115404543334730988282586742034693008047256577311176294195023819007364765743976617737861602582514769874347966988342208935527076749371202746559975577477492305896921116418159892182378963376737298205912986944402245862847762630941119765781768789610159430811755064806054239066113152506983281690058388772920313623216782988928381786144166427515498029310605980681641897065938582337094433503856164013798064427440695652400780700370027427421524050674809328643903665130969166991860472880753073279560573101320916583215484912123029839492190392646282220605411141143830656288812796113081065171949675515222131292489050018163934331006230466035366379298158405853472710680924371588312855863262677902533664568294411962046391606137844344506151139503961171761689264934257446756405125530407212721362720493160906776598613205210543366993284375073386100531515444418264174898284974521273136114135520280485608009660009856368130280152585640926813455823748838612611417463795780953512361567053420382796755310323733181210447765266487185013215778188663941833955703861340573542932452623663309774210364282333789379059224634489135762204764485418187378760955721453044944962334550064852112788184107451981246858219821650019800907671591382417520731390467029939402962426364248887115742942068799957166163173523110376293950192725264146204984379242069385768073777926116345990450078859281153674902456600467378326747435254186825101333493565571767740650009228374591282870916438576799024127469812803737132888719301438236547483147385690814225334236646134393792435218563750830931228517880375944301370789894234753458596521996816606647103643355610839521500286642292835101902266126811863089031905389020687983996355209859806361155872473958398784503857046955656133576587312451230345643101790636765922256742978869322904079351745266431699322316794528842068921295177880626576281200890380134857653449798724553699753933449189447380863697334350196135754805645084848332313851377384623972755360212741174546569198100704064697340920939827741896961441790966449942242287773679008379637500734871284279322160272765729271798789572216679592350675854447387428867525064094206363386366549411033862407840178326031541817803445068674078792363554918937299732651286437835151568008728832530673421601193816625150187356598406885897100669365966509243727450038844099948780221236788886324631413679184012694540103174169661083813322156642622948552923979277830049839209385282287950773726731858278821436500901498982993819888879843722800794166096858516416559002300086816240953379523947488871092802044614861901531979986588217675653096892190635954965293423986432428137258538086203947498928262062185565747600960298454413179188751397290557596815398167915994597728217183599454948479579133266702590461294438351044714449249964985220605452084789903547910038480031666188383125981095157049194160811124281979886735863404572739704761615811117250203495230999602662710418506944478154892770990799750893303843896496523377861285308965581893793658805538273026198588490066763622632955187788863452832918445407228926046525938478921046169283831645248932892319833853235600968022184175731763973450404093325758722727976930614166021535430331340717745934476123339105674453672006852269517501997202003831796715455872660022324547749147388240742901079370858219043067564396390954039243803338579646576108670099624312903657874855178725100453131885916894413505595254720299208534019673038387221193215379205251803976901860648869989324361129739222505414327738468769930680971277868077367095256373421543811659672723228077195280694713096044469468752230089331621047179902635277395441962448668980505001714556435036082981551995674056796679355645277674791493100504676927321616146923298624996069014020997094722212146861845102541140737535674118554470160067682188599230596498024361222721095399140758007645717299895068977156773333219914905901457043372889238708011280648500428073771044906554205827907674952328320438501691204457081856548366399914500652654086072642610298775274240799187559484471328177744999101489539515371234084840087055709391788024699973577906350310777106032309526799399187378071254206692760674505994128591313521898244265073291545422547577531666906659368756312878544570744546277631926892156102760284324400814320041836489876658727527703353436958893148723709825453791254944317478174133056407789348068529623224912285688986048694897256346835839602094666016810671026775905105719784645445282475367133951735972812366919024431586285827624258122824519534189300699158856248905529866435984528217049189861291750732418304299574930673713984052436282223172194066301819557761218347846893932250514286337512643860141601270731561664827881480181104792325254716958877654129858471554923018035912288838460383344097307219117457144755773884204095536231687567161128241419296966258716038758659816859455018818330992676548643018623535062676025433835511162011568719356348805256379149350025496661251085554301606876556503114411475595401940053200482186166938033372942026739515819149796752803312769827831819299816840312910208021738865910088390499196648200198671678052300899028732915392337648250644329526478481821085072542747446428745201279168438220006623615924860886026730672934916938510173753062852821596533771293175840803420085384428123794420654475328556960103013200585700348012706212904219311468579458814070753564673624528961477149095118376640300715514101865456342645446145027668604720402590356826510958857201568720005114622186632162158681447149038741067330614644268730794888296677099618020600743351358644533441022428968939267378846224202475603465807726615523093193117070152576610955708985536299733852428971994718313218207122132570931079553411691531338022097009551535721504600296939852213517729226954865308503991977243146122980894097547107120937805209598798409067235563400474259651617287197960998226304681028553895853267187645789167627185064096296578630890245469575779588690586198009503322366947617802177410154114625323199282436219590379169609390474673104248790750719213692049702155214257203194230102629067010093839340085253912653965141986710294105425493204469778628073089705331465418714563100040456390560730819784594409406620581366986350718394963931428861648895032426424029505835666833619243141232581429377444832515991305014153531155904988308703898317842754384146253153714700176526021502811338676888254200055209098891128813583782779746112956149839918172745855539316618279889507627800471237596250685720613185379453422952117973329702365952824622415434153080496386283697683399627799477003904211215275167915604956867399886983771742542797392063850365366771769391728276434897028774740019922796538699091181717826979047384700160150383100575442747490901691881626968305185991959230844871816839178467183549040893504124475933868006839826062760586872970547040263866884121128628601416697575602409670931331052290360226169629947553350782759687618177658685728134303425896745605069963938590021990257879009867441660005575313517106062907759439223646989031388961665939151529505780322828911865642459168676939728016887399417808332440772659360143040002113937286609714081408067133909930764381252722192031188643701989504797691697714665078559749539047336310610826804563862623732189138886623809868218352455198477921486929750296729874666998045712084688752662079437202116548724186553845636402432612416410633223973893999903338853053302501183787495565602653735235960797711720421620059144610908971945252977875343912262234895518585931887353749824014004114418530673838688291004863920590214626383930286297982273093608148154364988451124750673233580682188272202475622888007236791617250994227087754059654631122699088901540680002942617776553623149995035580448285275709818032728145193884984834308689581251824607528470689627212629335584090002771832514784762572277326423567698095305718195250400428460843746126686648756279414038948332079044799883226612070694734794644146979587681779490016272958277517729830514789326142328850125910104003703554410702197941614941935982627416442668460960821740387576449757100429489846667819155931000004112325878786785858810366678535448453878874091744036507377288260435485506964458716636862287835903031875098426704339445983909096508330896023957731903015047554259398142803172829580339478856887370861709667782321931438445553167451320047009806594853685611627658571945701763829245794612754325393134080865024116226584325351298829408897324079630692119498834476502262205299700495981122903530380095475535097919597556415604353644651312450836624358432320626022804325905335894016898147498822651484065456516780728663109557861771783370945654969101404959394727221076057761015864917931036417960426730001261768310870033185857746706707465882094543746249487667327300430515498536625806920852255691317200591949149234283107270986924239228254217726656625481616846378871949905632829654577598504005235496022397791775274578875938938892886896281643123765320181840897743348681350731769126108099976045159097664357475914127308828935194255413782039553850040514853451454509497507650751937759677687373711837480921077449120272370837486394087210467075616596815000766343686258186978160263714018304159578133110762117705596998658352370807285195215332682613351681849701964458651046215728004975311314067814306736415651527936401479912187305657839218184625410263011978774064271127937572384041163026071507556975334596654208280227118610133643409548319702769105631196843339967223557119463833226889516434547135361238560465017190146508191246735744046155608830337589588780164959859253213601362305866173190001737265273992677807231027171082164269498303321382195428789799609410365732237646365410278714065361116452385657321632309976636898742570479653574337392863274431729912096828162945002783140768158211852736323803027308076675915511923856271262471204807598077085159490700099247456370406070837831474891044427608939005762863423650590601668972593480072354225629313340257528035095362980410034374407328966814447971985450181193048857644393880428822714130945601829155429121338333642267637119848991693598484170855232348861006593795047399364324684669408103190930015808948040399564309209945936348280356988454091412607035874348092179471699087732906171393420256533527230585289885034973162184156416357553000373512924458424882172660523538690072512027545728786535131591236543235214880192022950395291917417397585501254263983519038776295109331250152819469350583294191270046235943285675663314412852769788251658850454452414857442117500946533833545288615535975209439213512748894731226400742108551394658799006319955412953033379048622891564448576515389869081887720266889549928676611203773485776954396084760465631001017919283895858942465403449819216869716359355844660866873467594216947879462844474319916512857187881240574158501032475338364270004743505124669611377624024033442088753877840463922683384331066836954126858851556065773367140346227209570946419511722440456222055362916276795781784295195161441005088393255720278472621989015355394707540015951511595218209912306500744239431681383899444997284228198824794930353529893893073142924660102336796040798648200910295020510947654217832511201234567754692558746162040824847896348145702098953454057040407914102448397066852761911226320208003637179388849669739269973266152813450338821372950992152245930499002954765802137650019439057254654192839610358537961649020741882659940667947858039608170477543407808382267344505725552431909386574055174074236112038911152842032666681526870477207263040395232160484104312261881509003976077678224462295065946364266867126085828241869548038034572781539028396834006557455361846924178860005223319451666126846763381749920464677703915287451764924161583624097153206758536107151041056567710204888665409268037500962838104724804090757913219571580545332640938806851877976822003098671073084173697110539819662296033107053374519924757976967814494329220830814526349146118067263570250317545856446565280001338754953439530923540591835103818441619822546818744153252992304684080990567934670917393198679886179041721247449364879843158464295700483936598344317653060405014559429449687983165136265152315078591410074721594971195320088498040859856207004305064889397559601952414403415443127022472693652242826442404378611246071704832930344674771282412970768621250730482276662883392326457245718579052866807825365046599657603826959236949202648955970384490448130060098297929976631111886311102812359089191479991985444850300751040086093472316794181200225097722233998275665419742475837429757837388648070067089441544764928715031897097030881492679441187300773821079871558218647913923535314222945030777499749249234669230677426732227038788514397531859745399291178330372923960447028915104019805133487548015815355799387453726603063175004814443658793216000070544230340756670956434803365279527808222752827058371802545821639933852039449481752266219387363299953138479570937732828927254466522921072476706441815355573882690993806873456223516388055292619826632162617977294029751693238276912592490360719690802130479150050929295453894196314114491655742016949804350537084570100488807886993374856666817055119110532884141694350471117342797974862524622156195410278969985064862274865886485324867485491835651142523465372819369149820698077457556421889049956853963235620190844630490038797153299047482699125287567033537926896599915097142821928309145969631310088908555114148150697591868348939842852888534325302050085534203627292317463348720104626069911593167585368142681840054260173752272707466879582741002777643663123915711951020747565808195737915811658316806579533114295269534948818631687943819967382778220635655367853559495293954497486835443097397757386220482496693451866047484859838627274276655871550698899329974352485269094488282842276652485618369766008117118078860584986663982958428028039465674858758144112839655029616824637775666614674041431648269803510249138308192207282135240021430676467892959434574549016171279629015245076373097049594435972398686251902286004813687880964039076701542795344386094151933024551150953685581752571746647083836996737596697905462171045985507335470724985574980679929525191326173262974830227637830430371431058342346404149227519405707140131137242600630891504717708690402145787013898109900016097432019665274898454244846018430927446568659509775676154311707950077286059732716474333051040654443157929881788274958901330893993974470328523789565619465582107143116032799493144035463563282286321428613376514944749453689562690737644810030362868515112459435457718530124994682914553433921248620577251475332939347870202031556428879584744654682413901101509614021418272535455673085381330330975888127502139050460572208043305639399647109165397133764972316427282591303552761016247140156340042457621645755779933408390711538772879274307337583242342124078190742339647503061046526748814406064891342408247912799600737831659151018728446744703324503098991062189481068839828348935398307457841584806689508674476307475780192792075546888425722306869210853386469409938794580320205271387704999146682959016319319582316179165542322085219571054289262304164418898731734375303410690505438919294219396287391220071662705439410230618900576096401563108379451997932983356777467808530656067860062748675478547505931621100579307437483815478686930975504449032269578735009985987895448179886705556416911635058509969501877442120378201229086304356897713564507807092693283181564672003742014503291728126668083525479398153623767363032269894676528544621583214044128667582686191737890559309881973952200309558701281390218291470546029772165696633320324516467254830879223576070470411485517051344346657289971868903652695751037513001053649602962869557185239297244661607933074287150343586997306589428509963644019264430765627834926658695546602900072897047593871524980606170000818398081516692371086969182293659368699722756421980487338727521666523301847271314184035824787710410801836218539440452679554055265382924328298142097644150756587206812515126535021859687314491425916443492572800729735648189684401773405048635331731343407153634795639396561927135561015142107565162257773200327960475926618440697362836605468346394162479689455513586828468152452529440531573404295369553047594867190517805692058140212666507258345772639505609394607520104117465060092174349845155041801281322706632706412714316826186103298870655321934115651706877813215514235263613864608518322243467815673596846364161113809793611287897771917056986486305059979970227348695591372385543152202202150170120302648065476517560396421897689672447923219926285940952067289665761015815959687817868165634446970368808230662161789424522457594698900919328314976723983707169873816225363465162072702799555905883639436682601041813807873994645257616202439001895101774434229341373763524299309935359060610797662048967086087313953183704822015729351229882830317033025443775364520276981452684702603123138960759489618120968147555524637286568679789933432453486875983257954491862387406570557152374738327547759794656407838608437185755459958812113725909317853959599163735343023569923271359273588983657597641025595583767956729183095387520324380138350199298494160518015769869394977715070764493626931769469525364806102607646594126267505790368446089227941314920303605655989986604901531704831866869587676132490956385975675684432879470472202000482212701397544706710469464454368072413173628778251127135521584646651059907375564716863252541444285965731350113841675579932347789788064947974544317424277145867464610498896706386254547844301943771542173041617861609662629145268748587594857796962121527715003856262851624681521228980466321561651260763327827112269941318261446455990204812364687510712699256266377441823762151838422934924445521222024261532097781531412298820603150283764699582030582941837135463149393761371572799232427662682608793183520608853812302999952281464979200916285146708608479453197077328092991843006050012793296243548818293546819508480026686684282234743056811747437543312341644824008821081517381294004744379706475723667183619046612145248424720017060033704593592192220497158505588625475527164611459652461608309078958068892117965070809213734092583030592213456888539656093042940185903603304171867844511755738517314636168275744229792486027874295241333575047960334430260911850995625523147941367353224572678431220224244926406994361854809318760270054871508285707226632533687415896020737958054003299345289940110882798655219141442033292667097493872975331112801584571562780465275224983472222715747571791780785236404232152711913479014948335313673299167098032178177346069394270556047116638284177563629202545143711973850607437732763021935181419098170835986217943029488409160256390862745849246412911706753805326345435691007896883900051375990685889000665654387164793004096654619167702444670655281355896048919356489985812456409445046064344481046801253494741233266159978762865762967144348327060379513022687970021268424087440260356674127004897214150871580935052268953897177213578975440400704805279625924475510100569039694731631764689060231566018476841342122457308114817039728851886996702259828927198131485410452816969799046741437016213717789792182885570331336380976124959182565140429645111255851507006189922630309557164103686291521450990610095034852446110431228578219189341846009666162475060872281703818985204446234733705225653954853231347696685985868222749765477657497531382384740415408948211067430023055034972555665558301068171785305504689155605363917591032023936141636006170619452342873940550267493273491108692830075449466875676442385810260343601555662399972741755127584915318800572367654891231207426341745312618059080334999315888514244534345230915636341048572008510301373639046927515618323495649916424659352524542785269028621119024442205990056399189219247526622979569075607815023946762348515561029352865930988177650339942462081226294469460893027909307332574255615391026383341918972726344326456930183347993935930149413234026797843044769043799461634200062071006501978665821679713744382056737231872201416937388614676849972045975307285799243323413890314312570641461063432742754860570807900656097756470138993439215377744053732357514052488185810692160727832904601626078493265281326548838404225160663622770799647942703609024523547295100093925204391442316722720512582714559198149447691289974638196250566178561558736525998775441004832546506066683153678963480279295524358020684382986627380766147145141943032674997573638935284332718538160898354746947452628041888589183335127958924099371773215317191865992606441643907102336402140907319322692352946800219245363022351687187274007506415738379096540010138694792887589877455174746516888499764601791458050828842838702839891780372051758518386640834514619310116165989598840657715620373697344974733312738282597813593220801913977280165675875411340854327869173467950023420985541193880854367965918064624956006500670229616545460671099650148559399068933140770770380412484851504478627552484751485328032147300654337558976557849404558796416031158278674490106214792544233959633043246356190060234244037317260725727622703147843371855902840882521804815085077158746389746466981589883441083614691400869694622096481527759077348043303810398178846466058821858346121254703079027367381789253561302533181419595639956714839356291892851037510000119876038181591976702727448860524696573448599219543494232492140481455185517961934686991636717683248086416967708807034555072066556502722343200689912844660545996680593770364350318053058717091558231361648850310345227506662617688484177901118064248609192087542001311318869698571823397403192089411391729199020329103699954712257625198082494919640364126011463476385805401300829202516314695763778703447260186343237773761526650704955534867380178824221009782449561125166050193676184901654793304087431653759248786023798914736584977409968415495899347550484258533440983565439706466599409658964391549584487145411956267213677439182216382497607071552421496060076293584104921849040824901496586158379477830602086148539459919561565152182995419694133022505278229276051690901065001608616200004899961950741480758161263303555446110992247457013371200333705728405676519880869857188094342295419463666155935294629005188058112338057978134354559932326517873444027144381859064628436415274778064419582857604675945830522393574580191258056410364390433934988159213530226891181537573436597756193719311992183197446992458562438927776866667687361129451552658332971298043909047961287012770257473052153638417584224415454203213452258756461460082445326834076280798904393832893134349577104424148454651838819560130440932456549742597915386776005514207069346298155948731234779537571916161553902504172763491780333415535471411839735458194024405345400069390280315961427378027461574895405797073313426849789493534768327709304867634947922891252258299100175631576694748615799577377954770535618354977141790376346593349120884053421739346417893992457286135212471949068531874696578561761495899136361519435260628724445194732521388822809533510156845314676405988253444366567297434869030464897141931120002924111966499984932800524144093803791929909979337934433001911162524096850393401723371208585848406892584671988209422029595221109119577547843475526074873616829600415420498626501622732491653350521002320015829929401221619143262961484749970132873133773970973674676037299074403924908137776169916670398037125147234640760210854051530947552456057760772760661575036723168270002754722423364991618103129477456726241609193282561108621110431381529895641002417208875904603447451065359793835521670137561364273127332978461050259384554366620725407747440250825134447891734396140856877251680998163490769407731275576787510208276507830627563672962441112225439562198676349512362294028269543837880310718122122912121112924334547944323689275696602415172567355047734776175425821826671869887900000000007508398774780627722606678354969603512884991557192512901477301637600814322741301628194131528280664223161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999999/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "1.0920702450438744554786643290060792974230016885614974197045396724798371354517396743611736943438671553677255486830914137790279295518798345878572286993633070432842650374726093770722851545819004462436628875244411860232158594469613254421180434381201993107458287802325125163053243069430172110772426807444343933144335882747615503490006601729242847162857298422942376907739613882280443446224985853478634536891188142530824191974863594540321471891983190331438660214238370562076773175178470114670761880010611386002765217334877606662589743493065263885531299974729615216146566125248715060043698437181284131422075731364283345338709699703582993794126253899206026934528146377767153691054534880575379446376966339887312558441481262157726244245697615457333431613530552275449401460162499989639848656487083332296490801937951693311275458058296123013085185208798445708221465563084740804820410787599540932022730154798854652366464476530061371778559455317877071523570265142553496795276955870075571182528875499750360644512024647568031051209246724192054442929880514566129263081607800600413659781576784781538493005974997167768733514791341812590394896312608386149334027698381074953732165321067742972175810066314372640545949939691059199112902259197028374719371255274892663325340259528597987002000622558108239103590586872155083612865748826932850558450127216937887601992803887514760693042973096472391063480588422977774969494269373890726888734426098435756907320784308567088373502792516309024646236773935305442872817134944905055513987942401119509705195727840017715028425464818355749703194884577637674587109137707610390307383226651501620601170253964126596900620216453142490711603118113883687304793946602705203186310568182585481733099132087842924462987083665596471409057053089142884222238680920348385341993474341045344088992681826336970904415586716700466508239664209600653162760712100530064502065167678737914771432371617979347503998020717290436951568819830615653761168700466043348086144727916925815070477843455475263686724263892892283969716867279371835765077377676910558598090331378177098353930094532295184009856445876560728286563561671334986536567325297894362351326764395460227163902172113952967717938090786088835394692844065885155267530618028426790389854030687484589562087120424512546486618421621433139619412602429066309466808032200836147058200624093927272069181608034101135651581307045796714383412826355512250686832248794798741015735179125057686456136632780958741021703784606998844147553906477008242783863461524576481328027139732701732284213209639484110376713320660110731582869204969465058671090103178705963815577957977980117208041307484040287948737207568397920862262167038764918914817399842386679521269528858792702378468840740576184166859648224733306749763575359090479283104041504241262307460577374215178978240585414372079147184993907992934116201605852641627727983013849912701637111777081993050829497271839664962028123086823798057182710282673420545733083021127090208832414549389548919179553208520792478116741455214699919785611603942118797765688096950288243879790634767873964857412444521648789803864560527147448552706069899091964323053563880288116863458208447919482878912060824116216698178139352435731695393401069959535324329203337622444367964764061787544412798293121516020525308941658364483453926273235491667129709613354532811589881095340509634320462896872830943304431176506564806154989036967958119208939559282519121803571937582119862858446558992323103590098402945164868905912372866014958993377116548118056741920067867964800627129001792217256006372683260501696091755588032157504905364186439930604862402349604921406933898606480677990962773702118697528181450577674026026040023217843651205895169065731895622635287238154653002041327740805127497998404814040867953756393423858986581727546968897217062680339576927939315498123265676443381136821542767186642202268311779287137369988858543177262407415050532321766834262982082942729764844869626177125112178091879986327807056026858437493399517480756985593236221508005540862688976770344799922216391395173157205049774868126436946262798463619701932890548353790753130685603189442366043826482068753531636900090555220592854185818035818981280794463330453310287795746469816958668263449875118586343150143382025983152488932463664717049268332065582602411764617487761017362546088923610752439276799425157166364622576023516282873398008827449799492320163887496028572604329672091852166412083019528597446840308235376692555668878567063995524222075477679436187916561393864664701716295051250017146458408474680788744495296167920219138275186733081479551861681791850145716555390102750468576506624434182037146500833059769216411324853913506659182415964985931974732458164426896249910308397876690383771233200557682978044527273317266187310688817938781979724308299037807342261634826491889372280466449324691637292048702697208746100893536219224910805348780141004772899321384268303789145405962067068659115826930838936027389263862499231941746698310892530926800426163629122716789538636535068335698424166105711665816227169698271759908607554255447741519484647287775464775586826630437191071751601991786746297222514600603511526076187208985092199533657474012268783174356831306339273234382812087374268783742364878567203252127234917351357818577422542203631334747050151316735928824292337199112277152975081523059788411362066798178727143074846374847022962133404093560957328602289023861383204326526366798133980024505950668680469796137915702365344566789454461282321469368569384728254641905605206252705110159818993327848215556361321699361182134003268232156282529461606966219581458745669214204656720103751374062498965933005719439097625261545734348151860218812996061459868240810940632590549583225266890965603405669247161868311403610323915622920699773320018403174567436157512549233527003865219439392576304796699833669190771721750330665815804924660495989007766617180669938655541518102221736339007458487278896115814840389728106572436128133348046976438246914894910389328577270036495289555335838603779788402406600688728983750367478711785480803627041120011595405846690665194697274993102564182272417977785521126226029463354862083414639966239062537424633585905125960527196497163650367754962898558133935085520218232971045192894826443352174895945063001618197997716918169404305641361705376564122552909442555474380911205044917745568460264209719148058883898124904296081743039862454718802995249783687812484239545533080307791568124502319276457208070170486105403271748909783407788588623457304653388935603531013315641671533061474940740509097401130867061513990597789708087415699448514286045807330405795484454409372627862270959652274754864846161817333892395313034696813877203218902630924470517678009527602945906297590647095144641033005907949739186795336883574210830699748481098623990230990996922358768446567263956872951585350694919282365194777760898345139105052376447906312707515844063772324702025922421695626445261002793312676023355509168125449286713195571352714457666571006199211724242392272656758826375432934837773401542465605519225770976278260960312280148010970968609620269923731457561466052387666796744189152301229311824229240528366633286193964849211935796876157058512888242164456457532262515525118445232426068779870206088852516995620007265573732402492186414146551719263362341389084272369748635325142345305071161013465827317764784818556642455137737802460455801584468704675705973702978702562050212162885088545088197264362710639445282084217346797313750029354440212606177767305669959313989808509254445654208112194243203864003942547252112061034256370725382329499535445044566985518312381404944626821368153118702124129493272484179106106594874005286311275465576733582281544536229417172981049465323909684145712933515751623689853795654304881905794167274951504382288581217977984933820025940845115273642980792498743287928660007920363068636552967008292556186811975761184970545699554846297176827519982866465269409244150517580077090105658481993751696827754307229511170446538396180031543712461469960982640186951330698974101674730040533397426228707096260003691349836513148366575430719609650987925121494853155487720575294618993258954276325690133694658453757516974087425500332372491407152150377720548315957693901383438608798726642658841457342244335808600114656917134040760906450724745235612762155608275193598542083943922544462348989583359513801542818782262453430634924980492138257240716254706368902697191547729161631740698106572679728926717811536827568518071152250630512480356152053943061379919489821479901573379675778952345478933740078454301922258033939332925540550953849589102144085096469818627679240281625878936368375931096758784576716386579976896915109471603351855000293948513711728864109106291708719515828886671836940270341778954971547010025637682545354546619764413544963136071330412616727121378027469631516945421967574919893060514575134060627203491533012269368640477526650060074942639362754358840267746386603697490980015537639979512088494715554529852565471673605077816041269667864433525328862657049179421169591711132019935683754112915180309490692743311528574600360599593197527955551937489120317666438743406566623600920034726496381351809578995548437120817845944760612791994635287070261238756876254381986117369594572971254903415234481578999571304824874226299040384119381765271675500558916223038726159267166397839091286873439781979391831653306681036184517775340417885779699985994088242180833915961419164015392012666475353250392438062819677664324449712791954694345361829095881904646324446900081398092399841065084167402777791261957108396319900357321537558598609351144514123586232757517463522215309210479435396026705449053182075115545381133167378162891570418610375391568418467713532658099573156927933541294240387208873670292705589380161637330303489091190772245666408614172132536287098373790449335642269781468802740907807000798880801532718686182349064008929819099658955296297160431748343287617227025758556381615697521335431858630443468039849725161463149942071490040181252754366757765402238101888119683413607869215354888477286151682100721590760744259547995729744451895689002165731095387507972272388511147230946838102549368617524663869089291230878112277885238417787787500892035732648418871961054110958176784979467592202000685822574014433192620798269622718671742258111069916597240201870770928646458769319449998427605608398837888884858744738041016456295014269647421788064027072875439692238599209744489088438159656303203058286919958027590862709333287965962360582817349155695483204512259400171229508417962621682331163069980931328175400676481782832742619346559965800261061634429057044119510109696319675023793788531271097999640595815806148493633936034822283756715209879989431162540124310842412923810719759674951228501682677104269802397651436525408759297706029316618169019031012666762663747502525151417828297818511052770756862441104113729760325728016734595950663491011081341374783557259489483930181516501977726991269653222563115739227411849289964914275594419477958902538734335840837866406724268410710362042287913858178112990146853580694389124946767609772634514331049703249129807813675720279663542499562211946574393811286819675944516700292967321719829972269485593620974512889268877626520727823104487339138757572900205714535005057544056640508292624665931152592072441916930101886783551061651943388621969207214364915535384153337638922887646982857902309553681638214492675026864451296567718786503486415503463926743782007527332397070619457207449414025070410173534204464804627487742539522102551659740010198664500434221720642750622601245764590238160776021280192874466775213349176810695806327659918701121325107931132727719926736125164083208695546364035356199678659280079468671220920359611493166156935059300257731810591392728434029017098978571498080511667375288002649446369944354410692269173966775404069501225141128638613508517270336321368034153771249517768261790131422784041205280234280139205082485161687724587431783525628301425869449811584590859638047350656120286205640746182537058178458011067441888161036142730604383542880627488002045848874652864863472578859615496426932245857707492317955318670839847208240297340543457813376408971587575706951538489680990241386323090646209237277246828061030644382283594214519893540971588797887325287282848853028372431821364676612535208838803820614288601840118775940885407091690781946123401596790897258449192357639018842848375122083839519363626894225360189703860646914879184399290521872411421558341306875058315667050874025638518631452356098187830311835476234479203801328946779047120870964061645850129279712974487836151667843756189869241699516300287685476819880862085702881277692041051626804037535736034101565061586056794684117642170197281787911451229235882132586167485825240016182556224292327913837763762648232546794540287357985572571544659558012970569611802334266733447697256493032571750977933006396522005661412462361995323481559327137101753658501261485880070610408601124535470755301680022083639556451525433513111898445182459935967269098342215726647311955803051120188495038500274288245274151781369180847189331880946381129848966173661232198554513479073359851119790801561684486110067166241982746959954793508697017118956825540146146708707756691310573958811509896007969118615479636472687130791618953880064060153240230177098996360676752650787322074396783692337948726735671386873419616357401649790373547202735930425104234749188218816105546753648451451440566679030240963868372532420916144090467851979021340313103875047271063474291253721370358698242027985575436008796103151603946976664002230125406842425163103775689458795612555584666375660611802312129131564746256983667470775891206754959767123332976309063744057216000845574914643885632563226853563972305752501088876812475457480795801919076679085866031423899815618934524244330721825545049492875655554649523947287340982079391168594771900118691949866799218284833875501064831774880846619489674621538254560973044966564253289589557599961335541221321000473514998226241061494094384319084688168648023657844363588778101191150137564904893958207434372754941499929605601645767412269535475316401945568236085850553572114519192909237443259261745995380449900269293432272875308880990249155202894716646900397690835101623861852449079635560616272001177047110621449259998014232179314110283927213091258077553993933723475832500729843011388275850885051734233636001108733005913905028910930569427079238122287278100160171384337498450674659502511765615579332831617919953290644828277893917857658791835072711796006509183311007091932205915730456931540050364041601481421764280879176645976774393050966577067384384328696155030579902840171795938667127662372400001644930351514714343524146671414179381551549636697614602950915304174194202785783486654744915134361212750039370681735778393563638603332358409583092761206019021703759257121269131832135791542754948344683867112928772575378221266980528018803922637941474244651063428778280705531698317845101730157253632346009646490633730140519531763558929631852276847799533790600904882119880198392449161412152038190214039167839022566241741457860524980334649743372928250409121730362134357606759258999529060593626182606712291465243823144708713348378261987640561983757890888430423104406345967172414567184170692000504707324348013274343098682682986352837817498499795066930920172206199414650322768340902276526880236779659693713242908394769695691301687090662650192646738551548779962253131861831039401602094198408959116710109831550375575557154758512657249506128072736359097339472540292707650443239990418063639065742990365650923531574077702165512815821540016205941380581803799003060300775103871074949484734992368430979648108948334994557634884186830246638726000306537474503274791264105485607321663831253244304847082238799463340948322914078086133073045340672739880785783460418486291201990124525627125722694566260611174560591964874922263135687273850164105204791509625708451175028953616465210428603022790133838661683312090847444053457363819327881107642252478737335986889422847785533290755806573818854144495424186006876058603276498694297618462243532135035835512065983943701285440544922346469276000694906109597071122892410868432865707799321328552878171515919843764146292895058546164111485626144446580954262928652923990654759497028191861429734957145309772691964838731265178001113256307263284741094529521210923230670366204769542508504988481923039230834063796280039698982548162428335132589956417771043575602305145369460236240667589037392028941690251725336103011214038145192164013749762931586725779188794180072477219543057757552171529085652378240731662171648535333456907054847939596677439393668342092939544402637518018959745729873867763241276372006323579216159825723683978374539312142795381636565042814349739236871788679635093162468557368102613410892234115954013989264873662566543021200149405169783369952869064209415476029004811018291514614052636494617294085952076809180158116766966959034200501705593407615510518043732500061127787740233317676508018494377314270265325765141107915300663540181780965942976847000378613533418115446214390083775685405099557892490560296843420557863519602527982165181213351619449156625779430606155947632755088106755819971470644481509394310781758433904186252400407167713558343576986161379927686747886543742337864346749387037686779151785137789727966605142875152496229663400412990135345708001897402049867844551049609613376835501551136185569073353732426734781650743540622426309346856138490883828378567804688976182488822145166510718312713718078064576402035357302288111389048795606142157883016006380604638087283964922600297695772672553559777998913691279529917972141411957557229257169864040934718416319459280364118008204379061687133004480493827101877023498464816329939158539258280839581381622816163165640979358826741104764490528083201454871755539867895707989306461125380135528549180396860898372199601181906320855060007775622901861677135844143415184659608296753063976267179143215843268191017363123352906937802290220972763754629622069629694444815564461136813066672610748190882905216158092864193641724904752603601590431071289784918026378545706746850434331296747819215213829112615611358733602622982144738769671544002089327780666450738705352699968185871081566114980705969664633449638861282703414442860416422627084081955466163707215000385135241889921636303165287828632218133056375522740751190728801239468429233669478844215927864918413242821349807969903190787125797731688332325810539658447226905428100127018342578626112000535501981375812369416236734041527376647929018727497661301196921873632396227173868366957279471954471616688498979745951937263385718280193574639337727061224162005823771779875193266054506060926031436564029888637988478128035399216343942482801722025955759023840780965761366177250808989077460897130576961751444498428681933172137869908512965188307448500292192910665153356930582898287431621146723130146018639863041530783694779681059582388153796179252024039319171990652444754524441124943635676591996794177940120300416034437388926717672480090039088893599310266167896990334971903134955459228026835776617905971486012758838812352597071776474920309528431948623287459165569414125689178012310999899699693867692270970692890815515405759012743898159716471332149169584178811566041607922053395019206326142319754981490641225270001925777463517286400028217692136302668382573921346111811123289101130823348721018328655973540815779792700906487754945319981255391828375093131570901786609168428990682576726142229553076397522749382489406555222117047930652865047190917611900677295310765036996144287876320852191660020371718181557678525645796662296806779921740214833828040195523154797349942666726822047644213153656677740188446937119189945009848862478164111587994025944909946354594129946994196734260457009386149127747659928279230983022568755619982741585294248076337852196015518861319618993079650115026813415170758639966038857128771323658387852524035563422045659260279036747339575937141155413730120820034213681450916926985339488041850427964637267034147257072736021704069500909082986751833096401111057465249566284780408299026323278295166324663326722631813245718107813979527452675177527986953111288254262147141423798117581798994734177238959102954488192998677380746418993943935450909710662348620279559731989740994107637795313136910660994247347906403246847231544233994665593183371211215786269943503257645135862011846729855110266645869616572659307921404099655323276882912854096008572270587157183773829819606468511851606098030549238819837774388959474500760914401925475152385615630680617118137754437660773209820460381474232701028698658833534798695038679162184868418394202934188289994229992271971810076530469305189932091055132172148572423336938561659691007762282856052454897040252356601887083476160858314805559243960006438972807866109959381697938407372370978627463803910270461724683180030914423893086589733220416261777263171952715309983560532357597589788131409515826247786232842857246413119797257614185425312914528571445350605977899781475825076295057924012145147406044983774183087412049997873165821373568499448230900590133175739148080812622571551833897861872965560440603845608567309014182269234152532132390355251000855620184228883217322255759858843666158853505988926570913036521421104406498856062536016983048658302311973363356284615509151709722935033296936849631276296935859001224418610699525762425956536963299165119840295132663660407491378697881329801239596424875792427535931339574159322983136633922675803469790522990312077116830218755370288922747684341354587763975517832128082108555081999658673183606527727832926471666216928834087828421715704921665767559492693750121364276202175567717687758514956488028665082175764092247560230438560625243351780799173193342710987123412262427144025099470191419002372648440231722974993526191474772390201779612907831494003994395158179271954682222566764654023403987800750976848151280491634521742759085425803122837077313272625868801496805801316691250667233410191759261449506945212907957870611417848633285617651467033074476695156223723952789580880123823480512556087316588218411908866278653328129806586901932351689430428188164594206820537738662915988747561461078300415005200421459841185147822874095718897864643173229714860137434798922635771403985457607705772306251133970663478218641160029158819037548609992242468000327359232606676948434787672917463747479889102568792194935491008666609320738908525673614329915084164320734487415776181071821622106153169731319256839057660302634882725006050614008743874925796570366577397029120291894259275873760709362019454132692537362861453918255758624770854224406056843026064903109280131184190370647376278945134642187338557664991875782205434731387260981011776212629361718147821219037946876207122276823256085066602903338309055802243757843008041646986024036869739938062016720512529082653082565085726730474441319548262128773646260682751125286205694105445545843407328897387126269438738545664445523917444515159108766822794594522023991988090939478236548954217260880880860068048121059226190607024158568759075868979169287970514376380826915866304406326383875127147266253778788147523292264864715769808983037879560367731325990689593482867949526490145386064829081119822362353455774673040416725523149597858103046480975600758040709773691736549505409719723974143624244319064819586834434925581273481928806291740491953132126813210177510145808110792581073881041249255584303795847248387259022209854914627471915973372981394750393303181796744954962628222860949895331019103917862563135443374874302183983524845490363727141583839665494137209427969308543709435593463039056410238233507182691673238155008129752055340079719397664207206307947757991086028305797450772707787810145922441043058637650507002316147378435691176525968121442262395994641960612681932746747835070452996382554390270273773151788188880800192885080559017882684187785781747228965269451511300450854208633858660423962950225886745301016577714386292540045536670231972939115915225979189817726969710858346985844199558682554501819137720777508616869216647144643865051658107499435037943118784848611086001542505140649872608491592186528624660504305331130844907976527304578582396081924945875004285079702506550976729504860735369173969778208488809704612839112612564919528241260113505879832812233176734854185259757504548629119692971065073043517273408243541524921199980912585991680366514058683443391781278830931237196737202420005117318497419527317418727803392010674673712893897222724698975017324936657929603528432606952517601897751882590289466873447618644858099369888006824013481837436876888198863402235450190210865844583860984643323631583227556847186028323685493637033212236885382755415862437217176074361441321668747137804702295406925854467310297691916994411149718096533430019184133772104364740398250209259176546941289829071372488089697970562797744741923727504108021948603314282890653013474966358408295183221601319738115976044353119462087656576813317066838997549190132445120633828625112186110089993388889086299028716712314094561692861084765391605979334125469319666839212871270938427757708222418846655313671025451681018057484789540242975093105208774072567639268334394487177211795363664102556345098339698565164682701522130538174276403158753560020550396274355600266261754865917201638661847667080977868262112542358419567742595994324982563778018425737792418720501397896493306463991505146305186857739330824151805209075188008507369634976104142669650801958885660348632374020907581558870885431590176160281922111850369790204040227615877892652705875624092626407390736536848982923245926815891540754798680903931570879252594164181126787919618696574806485487115916873154228132534552390449983673026056171858044502340602802475969052123822865641474516608580396244038013940978444172491431287675736738403866464990024348912681527594081778493893482090261581941292539078674394347289099906191062999012552953896166163579284426972009222013989022266223320427268714122201875662242145567036412809574456654402468247780937149576220106997309396443477132030179786750270576954324104137440622264959989096702051033966127520228947061956492482970536698125047223632133999726355405697813738092366254536419428803404120549455618771006247329398259966569863741009817114107611448447609776882396022559675687699010649191827630243126009578704939406224411741146372395271060135976984832490517787784357211163722933029702246156410553336767589090537730582772073339197574372059765293610719137217907617519784653680024828402600791466328671885497752822694892748880566774955445870739988818390122914319697329365556125725028256584425373097101944228323160262439102588055597375686151097621492943005620995274324276864291133161840650431397306112530619535361690064265449108319859177081443609809418918040037570081756576926689088205033085823679259779076515989855278500226471424623494610399510176401933018602426673261471585392111718209743208273753194650952306458858056777213069999029455574113733087415264359341898778981051216755435673334051183569639748709286126876746397042576657562840934560856362927729076941178720087698145208940674874909603002566295351638616004055477917155035950982069898606755399905840716583220331537135481135956712148820703407354656333805847724046466395839536263086248149478937989893325095313039125437288320765590912066270350164536341731147669387180009368394216477552341747186367225849982402600268091846618184268439860059423759627573256308308152164993940601791451020993900594131212858920261735023590623139761823518566412463311469796042485917017693583853217298542476024093697614926904290291049081259137348742361136353008721926034030863498555898586792635953376433445876560347877848838592611103630939217321524159271538586423528743338448501881231610946952715701424521013272567838255982685935742516757140415004000047950415272636790681090979544209878629379439687817397692996856192582074207184773874796654687073299234566787083522813822028826622601088937280275965137864218398672237508145740127221223486836623292544659540124138091002665047075393671160447225699443676835016800524527547879428729358961276835764556691679608131641479981884903050079232997967856145650404585390554322160520331681006525878305511481378904074537295109504610660281982213946952071529688403912979824450066420077470473960661917321634972661503699514409519565894633990963987366198359739020193703413376393426175882586639763863585756619833794858164782506885470975672886552999042828620968598424030517433641968739616329960598634463351791132240834459415783967824626060873198167877653209002111291710420676360426000643446480001959984780296592303264505321422178444396898982805348480133482291362270607952347942875237736918167785466462374117851602075223244935223191253741823972930607149377610857752743625851374566109911225767833143041870378332208957429832076503222564145756173573995263685412090756472615029374639102477487724796873278978796983424975571110746667074944451780621063333188519217563619184514805108102989220861455367033689766181681285380903502584584032978130733630512319561757533157253739830841769659381860735527824052176372982619897039166154710402205682827738519262379492493911815028766464621561001669105396712133366214188564735894183277609762138160027756112126384570951210984629958162318829325370739915797413907331083721947053979169156500903319640070252630677899446319830951181908214247341990856716150538637339648353621368695738567157596982914454084988779627412749878631424704598359654544607774104251489778077893008555529123813404062738125870562395301377746626918973947612185958856772448001169644786599993973120209657637521516771963991735173773200764465009638740157360689348483434339362757033868795283768811838088443647831019137390210429949446731840166168199450600649092996661340208400928006331971760488647657305184593899988053149253509588389469870414919629761569963255110467966668159214850058893856304084341620612379020982423104309104264630014689267308001101888969345996647241251790982690496643677313024443448444172552611958256400966883550361841378980426143917534208668055024545709250933191384420103753821746648290163098976100330053779156693758456342750900672399265396307763092510230715004083310603132251025469184976444890175824879470539804944917611307817535152124287248849164848445169733819177729475710278640966069026942019093910470170328730668747955160000000003003359509912251089042671341987841405153996622877005160590920655040325729096520651277652611312265689264548902633817172441944140896240330824285542601273385913431469925054781245855429690836199" + }, + "halo_covers_generic_inverse_radius": { + "rational": "5", + "decimal": "5" + }, + "union_tag_work_per_visit_fits_record": { + "rational": "3/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "6E-30010" + }, + "union_header_fits_record": { + "rational": "3/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "6E-30010" + }, + "source_axis_superpolynomial": { + "rational": "1/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "2E-30010" + }, + "improvement_over_pr1786": { + "rational": "839877478062775615637103512884991557192512901477301638600814222741801628194131528280664223161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999998998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "1.679754956125551231274207025769983114385025802954603277201628445483603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997996640490086748910957328658012158594E-10" + }, + "improvement_over_pr1828": { + "rational": "322741301628194131528280674239958921822839988144461570291448100827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999998998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "6.45482603256388263056561348479917843645679976288923140582896201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997996640490086748910957328658012158594E-71" + }, + "improvement_over_pr1839": { + "rational": "3280664224163052011541168475626196023234521530060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999998998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "6.561328448326104023082336951252392046469043060121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997996640490086748910957328658012158594E-91" + }, + "improvement_over_pr1875": { + "rational": "3033427833060305947204880541220471049570339274350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999998998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "6.066855666120611894409761082440942099140678548701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997996640490086748910957328658012158594E-301" + }, + "improvement_over_pr1876": { + "rational": "405928734587904012578219527388830309453618190990609099906584718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999998998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "8.11857469175808025156439054777660618907236381981218199813169437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997996640490086748910957328658012158594E-401" + }, + "improvement_over_pr1897": { + "rational": "100167975495612554452133567099392070257699831143850758029546032752016286454826032563882630565613284469317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999998998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "2.00335950991225108904267134198784140515399662287701516059092065504032572909652065127765261131226568938635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997996640490086748910957328658012158594E-500" + }, + "improvement_over_pr1758": { + "rational": "47236616227348945686543603644523424190093558898078539350696150401526438700190980619919539308161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999998998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "9.4473232454697891373087207289046848380187117796157078701392300803052877400381961239839078616322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997996640490086748910957328658012158594E-9" + }, + "improvement_over_pr1699": { + "rational": "10566123910949785423063534285289139663714727512901477301637600814322741301628194131528280664223161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999998998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.0000021132247821899570846127068570578279327429455025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997996640490086748910957328658012158594" + }, + "improvement_over_pr1712": { + "rational": "10566123910949785419716990283520769137284331145185116242937570587010026762657482732265060371872161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999998998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.0000021132247821899570839433980567041538274568662290370232485875141174020053525314965464530120743744322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997996640490086748910957328658012158594" + }, + "improvement_over_previous_package": { + "rational": "9675269055540438523079290215512378076856584627572177401962959455835702932679465170171181939799661372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999998998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.0000019350538111080877046158580431024756153713169255144354803925918911671405865358930340342363879599322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997996640490086748910957328658012158594" + }, + "improvement_over_pkg_k2": { + "rational": "8811744601310003017911095449471023877167707342353456253041106665295374239370539792111155976238161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999998998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.0000017623489202620006035822190898942047754335414684706912506082213330590748478741079584222311952476322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997996640490086748910957328658012158594" + }, + "main_transform_above_kappa": { + "rational": "2500000000000000000000002115008442807487098522698362399185677258698371805868471719335776838627743415457068895139647759399172939286143496816535216421325187363046885361425772909502231218314437622205930116079297234806627210590217190600996553729143901162562581526621534715086055386213403722171966572167941373807751745003300864621423581428649211471188453869806941140221723112492926739317268445594071265412095987431797270160735945991595165719330107119185281038386587589235057335380940005305693001382608667438803331294871746532631942765649987364807608073283062624357530021849218590642065711037865682141672669354849851791496897063126949603013467264073188883576845527267440287689723188483169943656279220740631078863122122848807728666715806765276137724700730081249994819924328243541666148245400968975846655637729029148061506542592604399222854110732781542370402410205393799770466011365077399427326183232238265030685889279727658938535761785132571276748397638477935037785591264437749875180322256012323784015525604623362096027221464940257283064631540803900300206829890788392390769246502987498583884366757395670906295197448156304193074667013849190537476866082660533871486087905033157186320272974969845529599556451129598514187359685627637446331662670129764298993501000311279054119551795293436077541806432874413466425279225063608468943800996401943757380346521486548236195531740294211488887484747134686945363444367213049217878453660392154283544186751396258154512323118386967652721436408567472452527756993971200559754852597863920008857514212732409177874851597442288818837293554568853805195153691613325750810300585126982063298450310108226571245355801559056941843652396973301352601593155284091292740866549566043921462231493541832798235704528526544571442111119340460174192670996737170522672044496340913168485452207793358350233254119832104800326581380356050265032251032583839368957385716185808989673751999010358645218475784409915307826880584350233021674043072363958462907535238921727737631843362131946446141984858433639685917882538688838455279299045165689088549176965047266147592004928222938280364143281780835667493268283662648947181175663382197730113581951086056976483858969045393044417697346422032942577633765309014213395194927015343742294781043560212256273243309210810716569809706301214533154733404016100418073529100312046963636034590804017050567825790653522898357191706413177756125343416124397399370507867589562528843228068316390479370510851892303499422073776953238504121391931730762288240664013569866350866142106604819742055188356660330055365791434602484732529335545051589352981907788978988990058604020653742020143974368603784198960431131083519382459457408699921193339760634764429396351189234420370288092083429824112366653374881787679545239641552020752120631153730288687107589489120292707186039573592496953996467058100802926320813863991506924956350818555888540996525414748635919832481014061543411899028591355141336710272866541510563545104416207274694774459589776604260396239058370727607349959892805801971059398882844048475144121939895317383936982428706222260824394901932280263573724276353034949545982161526781940144058431729104223959741439456030412058108349089069676217865847696700534979767662164601668811222183982382030893772206399146560758010262654470829182241726963136617745833564854806677266405794940547670254817160231448436415471652215588253282403077494518483979059604469779641259560901785968791059931429223279496161551795049201472582434452956186433007479496688558274059028370960033933982400313564500896108628003186341630250848045877794016078752452682093219965302431201174802460703466949303240338995481386851059348764090725288837013013020011608921825602947584532865947811317643619077326501020663870402563748999202407020433976878196711929493290863773484448608531340169788463969657749061632838221690568410771383593321101134155889643568684994429271588631203707525266160883417131491041471364882422434813088562556089045939993163903528013429218746699758740378492796618110754002770431344488385172399961108195697586578602524887434063218473131399231809850966445274176895376565342801594721183021913241034376765818450045277610296427092909017909490640397231665226655143897873234908479334131724937559293171575071691012991576244466231832358524634166032791301205882308743880508681273044461805376219638399712578583182311288011758141436699004413724899746160081943748014286302164836045926083206041509764298723420154117688346277834439283531997762111037738839718093958280696932332350858147525625008573229204237340394372247648083960109569137593366540739775930840895925072858277695051375234288253312217091018573250416529884608205662426956753329591207982492965987366229082213448124955154198938345191885616600278841489022263636658633093655344408969390989862154149518903671130817413245944686140233224662345818646024351348604373050446768109612455402674390070502386449660692134151894572702981033534329557913465419468013694631931249615970873349155446265463400213081814561358394769318267534167849212083052855832908113584849135879954303777127723870759742323643887732387793413315218595535875800995893373148611257300301755763038093604492546099766828737006134391587178415653169636617191406043687134391871182439283601626063617458675678909288711271101815667373525075658367964412146168599556138576487540761529894205681033399089363571537423187423511481066702046780478664301144511930691602163263183399066990012252975334340234898068957851182672283394727230641160734684284692364127320952802603126352555079909496663924107778180660849680591067001634116078141264730803483109790729372834607102328360051875687031249482966502859719548812630772867174075930109406498030729934120405470316295274791612633445482801702834623580934155701805161957811460349886660009201587283718078756274616763501932609719696288152398349916834595385860875165332907902462330247994503883308590334969327770759051110868169503729243639448057907420194864053286218064066674023488219123457447455194664288635018247644777667919301889894201203300344364491875183739355892740401813520560005797702923345332597348637496551282091136208988892760563113014731677431041707319983119531268712316792952562980263598248581825183877481449279066967542760109116485522596447413221676087447972531500809098998858459084702152820680852688282061276454721277737190455602522458872784230132104859574029441949062452148040871519931227359401497624891843906242119772766540153895784062251159638228604035085243052701635874454891703894294311728652326694467801765506657820835766530737470370254548700565433530756995298894854043707849724257143022903665202897742227204686313931135479826137377432423080908666946197656517348406938601609451315462235258839004763801472953148795323547572320516502953974869593397668441787105415349874240549311995115495498461179384223283631978436475792675347459641182597388880449172569552526188223953156353757922031886162351012961210847813222630501396656338011677754584062724643356597785676357228833285503099605862121196136328379413187716467418886700771232802759612885488139130480156140074005485484304810134961865728780733026193833398372094576150614655912114620264183316643096982424605967898438078529256444121082228228766131257762559222616213034389935103044426258497810003632786866201246093207073275859631681170694542136184874317662571172652535580506732913658882392409278321227568868901230227900792234352337852986851489351281025106081442544272544098632181355319722641042108673398656875014677220106303088883652834979656994904254627222827104056097121601932001971273626056030517128185362691164749767722522283492759156190702472313410684076559351062064746636242089553053297437002643155637732788366791140772268114708586490524732661954842072856466757875811844926897827152440952897083637475752191144290608988992466910012970422557636821490396249371643964330003960181534318276483504146278093405987880592485272849777423148588413759991433232634704622075258790038545052829240996875848413877153614755585223269198090015771856230734980491320093475665349487050837365020266698713114353548130001845674918256574183287715359804825493962560747426577743860287647309496629477138162845066847329226878758487043712750166186245703576075188860274157978846950691719304399363321329420728671122167904300057328458567020380453225362372617806381077804137596799271041971961272231174494791679756900771409391131226715317462490246069128620358127353184451348595773864580815870349053286339864463358905768413784259035576125315256240178076026971530689959744910739950786689837889476172739466870039227150961129016969666462770275476924794551072042548234909313839620140812939468184187965548379392288358193289988448457554735801675927500146974256855864432054553145854359757914443335918470135170889477485773505012818841272677273309882206772481568035665206308363560689013734815758472710983787459946530257287567030313601745766506134684320238763325030037471319681377179420133873193301848745490007768819989756044247357777264926282735836802538908020634833932216762664431328524589710584795855566009967841877056457590154745346371655764287300180299796598763977775968744560158833219371703283311800460017363248190675904789497774218560408922972380306395997317643535130619378438127190993058684797286485627451707617240789499785652412437113149520192059690882635837750279458111519363079633583198919545643436719890989695915826653340518092258887670208942889849992997044121090416957980709582007696006333237676625196219031409838832162224856395977347172680914547940952323162223450040699046199920532542083701388895630978554198159950178660768779299304675572257061793116378758731761107654605239717698013352724526591037557772690566583689081445785209305187695784209233856766329049786578463966770647120193604436835146352794690080818665151744545595386122833204307086066268143549186895224667821134890734401370453903500399440400766359343091174532004464909549829477648148580215874171643808613512879278190807848760667715929315221734019924862580731574971035745020090626377183378882701119050944059841706803934607677444238643075841050360795380372129773997864872225947844501082865547693753986136194255573615473419051274684308762331934544645615439056138942619208893893750446017866324209435980527055479088392489733796101000342911287007216596310399134811359335871129055534958298620100935385464323229384659724999213802804199418944442429372369020508228147507134823710894032013536437719846119299604872244544219079828151601529143459979013795431354666643982981180291408674577847741602256129700085614754208981310841165581534990465664087700338240891416371309673279982900130530817214528522059755054848159837511896894265635548999820297907903074246816968017411141878357604939994715581270062155421206461905359879837475614250841338552134901198825718262704379648853014658309084509515506333381331873751262575708914148909255526385378431220552056864880162864008367297975331745505540670687391778629744741965090758250988863495634826611281557869613705924644982457137797209738979451269367167920418933203362134205355181021143956929089056495073426790347194562473383804886317257165524851624564903906837860139831771249781105973287196905643409837972258350146483660859914986134742796810487256444634438813260363911552243669569378786450102857267502528772028320254146312332965576296036220958465050943391775530825971694310984603607182457767692076668819461443823491428951154776840819107246337513432225648283859393251743207751731963371891003763666198535309728603724707012535205086767102232402313743871269761051275829870005099332250217110860321375311300622882295119080388010640096437233387606674588405347903163829959350560662553965566363859963368062582041604347773182017678099839329640039734335610460179805746583078467529650128865905295696364217014508549489285749040255833687644001324723184972177205346134586983387702034750612570564319306754258635168160684017076885624758884130895065711392020602640117140069602541242580843862293715891762814150712934724905792295429819023675328060143102820373091268529089229005533720944080518071365302191771440313744001022924437326432431736289429807748213466122928853746158977659335419923604120148670271728906688204485793787853475769244840495120693161545323104618638623414030515322191141797107259946770485794398943662643641424426514186215910682338306267604419401910307144300920059387970442703545845390973061700798395448629224596178819509421424187561041919759681813447112680094851930323457439592199645260936205710779170653437529157833525437012819259315726178049093915155917738117239601900664473389523560435482030822925064639856487243918075833921878094934620849758150143842738409940431042851440638846020525813402018767868017050782530793028397342058821085098640893955725614617941066293083742912620008091278112146163956918881881324116273397270143678992786285772329779006485284805901167133366723848628246516285875488966503198261002830706231180997661740779663568550876829250630742940035305204300562267735377650840011041819778225762716756555949222591229967983634549171107863323655977901525560094247519250137144122637075890684590423594665940473190564924483086830616099277256739536679925559895400780842243055033583120991373479977396754348508559478412770073073354353878345655286979405754948003984559307739818236343565395809476940032030076620115088549498180338376325393661037198391846168974363367835693436709808178700824895186773601367965212552117374594109408052773376824225725720283339515120481934186266210458072045233925989510670156551937523635531737145626860685179349121013992787718004398051575801973488332001115062703421212581551887844729397806277792333187830305901156064565782373128491833735387945603377479883561666488154531872028608000422787457321942816281613426781986152876250544438406237728740397900959538339542933015711949907809467262122165360912772524746437827777324761973643670491039695584297385950059345974933399609142416937750532415887440423309744837310769127280486522483282126644794778799980667770610660500236757499113120530747047192159542344084324011828922181794389050595575068782452446979103717186377470749964802800822883706134767737658200972784118042925276786057259596454618721629630872997690224950134646716136437654440495124577601447358323450198845417550811930926224539817780308136000588523555310724629999007116089657055141963606545629038776996966861737916250364921505694137925442525867116818000554366502956952514455465284713539619061143639050080085692168749225337329751255882807789666415808959976645322414138946958928829395917536355898003254591655503545966102957865228465770025182020800740710882140439588322988387196525483288533692192164348077515289951420085897969333563831186200000822465175757357171762073335707089690775774818348807301475457652087097101392891743327372457567180606375019685340867889196781819301666179204791546380603009510851879628560634565916067895771377474172341933556464386287689110633490264009401961318970737122325531714389140352765849158922550865078626816173004823245316865070259765881779464815926138423899766895300452441059940099196224580706076019095107019583919511283120870728930262490167324871686464125204560865181067178803379629499764530296813091303356145732621911572354356674189130993820280991878945444215211552203172983586207283592085346000252353662174006637171549341341493176418908749249897533465460086103099707325161384170451138263440118389829846856621454197384847845650843545331325096323369275774389981126565930915519700801047099204479558355054915775187787778577379256328624753064036368179548669736270146353825221619995209031819532871495182825461765787038851082756407910770008102970690290901899501530150387551935537474742367496184215489824054474167497278817442093415123319363000153268737251637395632052742803660831915626622152423541119399731670474161457039043066536522670336369940392891730209243145600995062262813562861347283130305587280295982437461131567843636925082052602395754812854225587514476808232605214301511395066919330841656045423722026728681909663940553821126239368667993444711423892766645377903286909427072247712093003438029301638249347148809231121766067517917756032991971850642720272461173234638000347453054798535561446205434216432853899660664276439085757959921882073146447529273082055742813072223290477131464326461995327379748514095930714867478572654886345982419365632589000556628153631642370547264760605461615335183102384771254252494240961519615417031898140019849491274081214167566294978208885521787801152572684730118120333794518696014470845125862668051505607019072596082006874881465793362889594397090036238609771528878776085764542826189120365831085824267666728453527423969798338719696834171046469772201318759009479872864936933881620638186003161789608079912861841989187269656071397690818282521407174869618435894339817546581234278684051306705446117057977006994632436831283271510600074702584891684976434532104707738014502405509145757307026318247308647042976038404590079058383483479517100250852796703807755259021866250030563893870116658838254009247188657135132662882570553957650331770090890482971488423500189306766709057723107195041887842702549778946245280148421710278931759801263991082590606675809724578312889715303077973816377544053377909985735322240754697155390879216952093126200203583856779171788493080689963843373943271871168932173374693518843389575892568894863983302571437576248114831700206495067672854000948701024933922275524804806688417750775568092784536676866213367390825371770311213154673428069245441914189283902344488091244411072583255359156356859039032288201017678651144055694524397803071078941508003190302319043641982461300148847886336276779888999456845639764958986070705978778614628584932020467359208159729640182059004102189530843566502240246913550938511749232408164969579269629140419790690811408081582820489679413370552382245264041600727435877769933947853994653230562690067764274590198430449186099800590953160427530003887811450930838567922071707592329804148376531988133589571607921634095508681561676453468901145110486381877314811034814847222407782230568406533336305374095441452608079046432096820862452376301800795215535644892459013189272853373425217165648373909607606914556307805679366801311491072369384835772001044663890333225369352676349984092935540783057490352984832316724819430641351707221430208211313542040977733081853607500192567620944960818151582643914316109066528187761370375595364400619734214616834739422107963932459206621410674903984951595393562898865844166162905269829223613452714050063509171289313056000267750990687906184708118367020763688323964509363748830650598460936816198113586934183478639735977235808344249489872975968631692859140096787319668863530612081002911885889937596633027253030463015718282014944318994239064017699608171971241400861012977879511920390482880683088625404494538730448565288480875722249214340966586068934954256482594153724250146096455332576678465291449143715810573361565073009319931520765391847389840529791194076898089626012019659585995326222377262220562471817838295998397088970060150208017218694463358836240045019544446799655133083948495167485951567477729614013417888308952985743006379419406176298535888237460154764215974311643729582784707062844589006155499949849846933846135485346445407757702879506371949079858235666074584792089405783020803961026697509603163071159877490745320612635000962888731758643200014108846068151334191286960673055905561644550565411674360509164327986770407889896350453243877472659990627695914187546565785450893304584214495341288363071114776538198761374691244703277611058523965326432523595458805950338647655382518498072143938160426095830010185859090778839262822898331148403389960870107416914020097761577398674971333363411023822106576828338870094223468559594972504924431239082055793997012972454973177297064973497098367130228504693074563873829964139615491511284377809991370792647124038168926098007759430659809496539825057513406707585379319983019428564385661829193926262017781711022829630139518373669787968570577706865060410017106840725458463492669744020925213982318633517073628536368010852034750454541493375916548200555528732624783142390204149513161639147583162331663361315906622859053906989763726337588763993476555644127131073570711899058790899497367088619479551477244096499338690373209496971967725454855331174310139779865994870497053818897656568455330497123673953201623423615772116997332796591685605607893134971751628822567931005923364927555133322934808286329653960702049827661638441456427048004286135293578591886914909803234255925803049015274619409918887194479737250380457200962737576192807815340308559068877218830386604910230190737116350514349329416767399347519339581092434209197101467094144997114996135985905038265234652594966045527566086074286211668469280829845503881141428026227448520126178300943541738080429157402779621980003219486403933054979690848969203686185489313731901955135230862341590015457211946543294866610208130888631585976357654991780266178798794894065704757913123893116421428623206559898628807092712656457264285722675302988949890737912538147528962006072573703022491887091543706024998936582910686784249724115450295066587869574040406311285775916948930936482780220301922804283654507091134617076266066195177625500427810092114441608661127879929421833079426752994463285456518260710552203249428031268008491524329151155986681678142307754575854861467516648468424815638148467929500612209305349762881212978268481649582559920147566331830203745689348940664900619798212437896213767965669787079661491568316961337901734895261495156038558415109377685144461373842170677293881987758916064041054277540999829336591803263863916463235833108464417043914210857852460832883779746346875060682138101087783858843879257478244014332541087882046123780115219280312621675890399586596671355493561706131213572012549735095709501186324220115861487496763095737386195100889806453915747001997197579089635977341111283382327011701993900375488424075640245817260871379542712901561418538656636312934400748402900658345625333616705095879630724753472606453978935305708924316642808825733516537238347578111861976394790440061911740256278043658294109205954433139326664064903293450966175844715214094082297103410268869331457994373780730539150207502600210729920592573911437047859448932321586614857430068717399461317885701992728803852886153125566985331739109320580014579409518774304996121234000163679616303338474217393836458731873739944551284396097467745504333304660369454262836807164957542082160367243707888090535910811053076584865659628419528830151317441362503025307004371937462898285183288698514560145947129637936880354681009727066346268681430726959127879312385427112203028421513032451554640065592095185323688139472567321093669278832495937891102717365693630490505888106314680859073910609518973438103561138411628042533301451669154527901121878921504020823493012018434869969031008360256264541326541282542863365237220659774131064386823130341375562643102847052722772921703664448693563134719369272832222761958722257579554383411397297261011995994045469739118274477108630440440430034024060529613095303512079284379537934489584643985257188190413457933152203163191937563573633126889394073761646132432357884904491518939780183865662995344796741433974763245072693032414540559911181176727887336520208362761574798929051523240487800379020354886845868274752704859861987071812122159532409793417217462790636740964403145870245976566063406605088755072904055396290536940520624627792151897923624193629511104927457313735957986686490697375196651590898372477481314111430474947665509551958931281567721687437151091991762422745181863570791919832747068604713984654271854717796731519528205119116753591345836619077504064876027670039859698832103603153973878995543014152898725386353893905072961220521529318825253501158073689217845588262984060721131197997320980306340966373373917535226498191277195135136886575894094440400096442540279508941342093892890873614482634725755650225427104316929330211981475112943372650508288857193146270022768335115986469557957612989594908863484855429173492922099779341277250909568860388754308434608323572321932525829053749717518971559392424305543000771252570324936304245796093264312330252152665565422453988263652289291198040962472937502142539851253275488364752430367684586984889104244404852306419556306282459764120630056752939916406116588367427092629878752274314559846485532536521758636704121770762460599990456292995840183257029341721695890639415465618598368601210002558659248709763658709363901696005337336856446948611362349487508662468328964801764216303476258800948875941295144733436723809322429049684944003412006740918718438444099431701117725095105432922291930492321661815791613778423593014161842746818516606118442691377707931218608588037180720660834373568902351147703462927233655148845958497205574859048266715009592066886052182370199125104629588273470644914535686244044848985281398872370961863752054010974301657141445326506737483179204147591610800659869057988022176559731043828288406658533419498774595066222560316914312556093055044996694444543149514358356157047280846430542382695802989667062734659833419606435635469213878854111209423327656835512725840509028742394770121487546552604387036283819634167197243588605897681832051278172549169849282582341350761065269087138201579376780010275198137177800133130877432958600819330923833540488934131056271179209783871297997162491281889009212868896209360250698948246653231995752573152593428869665412075902604537594004253684817488052071334825400979442830174316187010453790779435442715795088080140961055925184895102020113807938946326352937812046313203695368268424491461622963407945770377399340451965785439626297082090563393959809348287403242743557958436577114066267276195224991836513028085929022251170301401237984526061911432820737258304290198122019006970489222086245715643837868369201933232495012174456340763797040889246946741045130790970646269539337197173644549953095531499506276476948083081789642213486004611006994511133111660213634357061100937831121072783518206404787228327201234123890468574788110053498654698221738566015089893375135288477162052068720311132479994548351025516983063760114473530978246241485268349062523611816066999863177702848906869046183127268209714401702060274727809385503123664699129983284931870504908557053805724223804888441198011279837843849505324595913815121563004789352469703112205870573186197635530067988492416245258893892178605581861466514851123078205276668383794545268865291386036669598787186029882646805359568608953808759892326840012414201300395733164335942748876411347446374440283387477722935369994409195061457159848664682778062862514128292212686548550972114161580131219551294027798687843075548810746471502810497637162138432145566580920325215698653056265309767680845032132724554159929588540721804904709459020018785040878288463344544102516542911839629889538257994927639250113235712311747305199755088200966509301213336630735792696055859104871604136876597325476153229429028388606534999514727787056866543707632179670949389490525608377717836667025591784819874354643063438373198521288328781420467280428181463864538470589360043849072604470337437454801501283147675819308002027738958577517975491034949303377699952920358291610165768567740567978356074410351703677328166902923862023233197919768131543124074739468994946662547656519562718644160382795456033135175082268170865573834693590004684197108238776170873593183612924991201300134045923309092134219930029711879813786628154154076082496970300895725510496950297065606429460130867511795311569880911759283206231655734898021242958508846791926608649271238012046848807463452145145524540629568674371180568176504360963017015431749277949293396317976688216722938280173938924419296305551815469608660762079635769293211764371669224250940615805473476357850712260506636283919127991342967871258378570207502000023975207636318395340545489772104939314689719843908698846498428096291037103592386937398327343536649617283393541761406911014413311300544468640137982568932109199336118754072870063610611743418311646272329770062069045501332523537696835580223612849721838417508400262263773939714364679480638417882278345839804065820739990942451525039616498983928072825202292695277161080260165840503262939152755740689452037268647554752305330140991106973476035764844201956489912225033210038735236980330958660817486330751849757204759782947316995481993683099179869510096851706688196713087941293319881931792878309916897429082391253442735487836443276499521414310484299212015258716820984369808164980299317231675895566120417229707891983912313030436599083938826604501055645855210338180213000321723240000979992390148296151632252660711089222198449491402674240066741145681135303976173971437618868459083892733231187058925801037611622467611595626870911986465303574688805428876371812925687283054955612883916571520935189166104478714916038251611282072878086786997631842706045378236307514687319551238743862398436639489398491712487785555373333537472225890310531666594259608781809592257402554051494610430727683516844883090840642690451751292292016489065366815256159780878766578626869915420884829690930367763912026088186491309948519583077355201102841413869259631189746246955907514383232310780500834552698356066683107094282367947091638804881069080013878056063192285475605492314979081159414662685369957898706953665541860973526989584578250451659820035126315338949723159915475590954107123670995428358075269318669824176810684347869283578798491457227042494389813706374939315712352299179827272303887052125744889038946504277764561906702031369062935281197650688873313459486973806092979428386224000584822393299996986560104828818760758385981995867586886600382232504819370078680344674241717169681378516934397641884405919044221823915509568695105214974723365920083084099725300324546498330670104200464003165985880244323828652592296949994026574626754794194734935207459814880784981627555233983334079607425029446928152042170810306189510491211552154552132315007344633654000550944484672998323620625895491345248321838656512221724222086276305979128200483441775180920689490213071958767104334027512272854625466595692210051876910873324145081549488050165026889578346879228171375450336199632698153881546255115357502041655301566125512734592488222445087912439735269902472458805653908767576062143624424582424222584866909588864737855139320483034513471009546955235085164365334373977580000000001/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "1.0000000000000000000000008460033771229948394090793449596742709034793487223473886877343107354510973661828275580558591037596691757144573987266140865685300749452187541445703091638008924873257750488823720464317188939226508842360868762403986214916575604650250326106486138860344221544853614888687866288671765495231006980013203458485694325714596845884753815479227764560886892449971706957269073782376285061648383949727189080642943783966380662877320428476741124153546350356940229341523760021222772005530434669755213325179486986130527771062599949459230432293132250497430120087396874362568262844151462728566690677419399407165987588252507798412053869056292755534307382109069761150758892753932679774625116882962524315452488491395230914666863227061104550898802920324999979279697312974166664592981603875903386622550916116592246026170370417596891416442931126169481609640821575199081864045460309597709304732928953060122743557118910635754143047140530285106993590553911740151142365057750999500721289024049295136062102418493448384108885859761029132258526163215601200827319563153569563076986011949994335537467029582683625180789792625216772298668055396762149907464330642135485944351620132628745281091899879382118398225804518394056749438742510549785326650680519057195974004001245116216478207181173744310167225731497653865701116900254433875775203985607775029521386085946192944782126961176845955549938988538747781453777468852196871513814641568617134176747005585032618049292473547870610885745634269889810111027975884802239019410391455680035430056850929636711499406389769155275349174218275415220780614766453303003241202340507928253193801240432906284981423206236227767374609587893205410406372621136365170963466198264175685848925974167331192942818114106178285768444477361840696770683986948682090688177985363652673941808831173433400933016479328419201306325521424201060129004130335357475829542864743235958695007996041434580873903137639661231307522337400932086696172289455833851630140955686910950527373448527785784567939433734558743671530154755353821117196180662756354196707860189064590368019712891753121456573127123342669973073134650595788724702653528790920454327804344227905935435876181572177670789385688131770310535061236056853580779708061374969179124174240849025092973236843242866279238825204858132618933616064401672294116401248187854544138363216068202271303162614091593428766825652711024501373664497589597482031470358250115372912273265561917482043407569213997688295107812954016485567726923049152962656054279465403464568426419278968220753426641320221463165738409938930117342180206357411927631155915955960234416082614968080575897474415136795841724524334077529837829634799684773359042539057717585404756937681481152368333719296449466613499527150718180958566208083008482524614921154748430357956481170828744158294369987815985868232403211705283255455966027699825403274223554163986101658994543679329924056246173647596114365420565346841091466166042254180417664829098779097838359106417041584956233482910429399839571223207884237595531376193900576487759581269535747929714824889043297579607729121054294897105412139798183928646107127760576233726916416895838965757824121648232433396356278704871463390786802139919070648658406675244888735929528123575088825596586243032041050617883316728966907852546470983334259419226709065623179762190681019268640925793745661886608862353013129612309978073935916238417879118565038243607143875164239725716893117984646207180196805890329737811824745732029917986754233096236113483840135735929601254258003584434512012745366521003392183511176064315009810728372879861209724804699209842813867797212961355981925547404237395056362901155348052052080046435687302411790338131463791245270574476309306004082655481610254995996809628081735907512786847717973163455093937794434125360679153855878630996246531352886762273643085534373284404536623558574274739977717086354524814830101064643533668525964165885459529689739252354250224356183759972655614112053716874986799034961513971186472443016011081725377953540689599844432782790346314410099549736252873892525596927239403865781096707581506261371206378884732087652964137507063273800181110441185708371636071637962561588926660906620575591492939633917336526899750237172686300286764051966304977864927329434098536664131165204823529234975522034725092177847221504878553598850314332729245152047032565746796017654899598984640327774992057145208659344183704332824166039057194893680616470753385111337757134127991048444150955358872375833122787729329403432590102500034292916816949361577488990592335840438276550373466162959103723363583700291433110780205500937153013248868364074293001666119538432822649707827013318364831929971863949464916328853792499820616795753380767542466401115365956089054546634532374621377635877563959448616598075614684523269652983778744560932898649383274584097405394417492201787072438449821610697560282009545798642768536607578290811924134137318231653861677872054778527724998463883493396621785061853600852327258245433579077273070136671396848332211423331632454339396543519817215108510895483038969294575550929551173653260874382143503203983573492594445029201207023052152374417970184399067314948024537566348713662612678546468765624174748537567484729757134406504254469834702715637154845084407262669494100302633471857648584674398224554305950163046119576822724133596357454286149692749694045924266808187121914657204578047722766408653052733596267960049011901337360939592275831404730689133578908922564642938737138769456509283811210412505410220319637986655696431112722643398722364268006536464312565058923213932439162917491338428409313440207502748124997931866011438878195250523091468696303720437625992122919736481621881265181099166450533781931206811338494323736622807220647831245841399546640036806349134872315025098467054007730438878785152609593399667338381543443500661331631609849320991978015533234361339877311083036204443472678014916974557792231629680779456213144872256266696093952876493829789820778657154540072990579110671677207559576804813201377457967500734957423570961607254082240023190811693381330389394549986205128364544835955571042252452058926709724166829279932478125074849267171810251921054392994327300735509925797116267870171040436465942090385789652886704349791890126003236395995433836338808611282723410753128245105818885110948761822410089835491136920528419438296117767796249808592163486079724909437605990499567375624968479091066160615583136249004638552914416140340972210806543497819566815577177246914609306777871207062026631283343066122949881481018194802261734123027981195579416174831398897028572091614660811590968908818745255724541919304549509729692323634667784790626069393627754406437805261848941035356019055205891812595181294190289282066011815899478373590673767148421661399496962197247980461981993844717536893134527913745903170701389838564730389555521796690278210104752895812625415031688127544649404051844843391252890522005586625352046711018336250898573426391142705428915333142012398423448484784545313517652750865869675546803084931211038451541952556521920624560296021941937219240539847462915122932104775333593488378304602458623648458481056733266572387929698423871593752314117025776484328912915064525031050236890464852137559740412177705033991240014531147464804984372828293103438526724682778168544739497270650284690610142322026931654635529569637113284910275475604920911603168937409351411947405957405124100424325770177090176394528725421278890564168434693594627500058708880425212355534611339918627979617018508891308416224388486407728007885094504224122068512741450764658999070890089133971036624762809889253642736306237404248258986544968358212213189748010572622550931153467164563089072458834345962098930647819368291425867031503247379707591308609763811588334549903008764577162435955969867640051881690230547285961584997486575857320015840726137273105934016585112373623951522369941091399109692594353655039965732930538818488301035160154180211316963987503393655508614459022340893076792360063087424922939921965280373902661397948203349460081066794852457414192520007382699673026296733150861439219301975850242989706310975441150589237986517908552651380267389316907515033948174851000664744982814304300755441096631915387802766877217597453285317682914684488671617200229313834268081521812901449490471225524311216550387197084167887845088924697979166719027603085637564524906861269849960984276514481432509412737805394383095458323263481396213145359457853435623073655137036142304501261024960712304107886122759838979642959803146759351557904690957867480156908603844516067878665851081101907699178204288170192939637255358480563251757872736751862193517569153432773159953793830218943206703710000587897027423457728218212583417439031657773343673880540683557909943094020051275365090709093239528827089926272142660825233454242756054939263033890843935149839786121029150268121254406983066024538737280955053300120149885278725508717680535492773207394981960031075279959024176989431109059705130943347210155632082539335728867050657725314098358842339183422264039871367508225830360618981385486623057149200721199186395055911103874978240635332877486813133247201840069452992762703619157991096874241635691889521225583989270574140522477513752508763972234739189145942509806830468963157999142609649748452598080768238763530543351001117832446077452318534332795678182573746879563958783663306613362072369035550680835771559399971988176484361667831922838328030784025332950706500784876125639355328648899425583909388690723658191763809292648893800162796184799682130168334805555582523914216792639800714643075117197218702289028247172465515034927044430618420958870792053410898106364150231090762266334756325783140837220750783136836935427065316199146313855867082588480774417747340585411178760323274660606978182381544491332817228344265072574196747580898671284539562937605481815614001597761603065437372364698128017859638199317910592594320863496686575234454051517112763231395042670863717260886936079699450322926299884142980080362505508733515530804476203776239366827215738430709776954572303364201443181521488519095991459488903791378004331462190775015944544777022294461893676205098737235049327738178582461756224555770476835575575001784071465296837743922108221916353569958935184404001371645148028866385241596539245437343484516222139833194480403741541857292917538638899996855211216797675777769717489476082032912590028539294843576128054145750879384477198419488978176876319312606406116573839916055181725418666575931924721165634698311390966409024518800342459016835925243364662326139961862656350801352963565665485238693119931600522123268858114088239020219392639350047587577062542195999281191631612296987267872069644567513430419759978862325080248621684825847621439519349902457003365354208539604795302873050817518595412058633236338038062025333525327495005050302835656595637022105541513724882208227459520651456033469191901326982022162682749567114518978967860363033003955453982539306445126231478454823698579929828551188838955917805077468671681675732813448536821420724084575827716356225980293707161388778249893535219545269028662099406498259615627351440559327084999124423893148787622573639351889033400585934643439659944538971187241949025778537755253041455646208974678277515145800411429070010115088113281016585249331862305184144883833860203773567102123303886777243938414428729831070768306675277845775293965715804619107363276428985350053728902593135437573006972831006927853487564015054664794141238914414898828050140820347068408929609254975485079044205103319480020397329000868443441285501245202491529180476321552042560385748933550426698353621391612655319837402242650215862265455439853472250328166417391092728070712399357318560158937342441840719222986332313870118600515463621182785456868058034197957142996161023334750576005298892739888708821384538347933550808139002450282257277227017034540672642736068307542499035536523580262845568082410560468560278410164970323375449174863567051256602851738899623169181719276094701312240572411281492365074116356916022134883776322072285461208767085761254976004091697749305729726945157719230992853864491715414984635910637341679694416480594681086915626752817943175151413903076979361980482772646181292418474554493656122061288764567188429039787081943177595774650574565697706056744863642729353225070417677607641228577203680237551881770814183381563892246803193581794516898384715278037685696750244167679038727253788450720379407721293829758368798581043744822843116682613750116631334101748051277037262904712196375660623670952468958407602657893558094241741928123291700258559425948975672303335687512379738483399032600575370953639761724171405762555384082103253608075071472068203130123172113589368235284340394563575822902458471764265172334971650480032365112448584655827675527525296465093589080574715971145143089319116025941139223604668533466895394512986065143501955866012793044011322824924723990646963118654274203507317002522971760141220817202249070941510603360044167279112903050867026223796890364919871934538196684431453294623911606102240376990077000548576490548303562738361694378663761892762259697932347322464397109026958146719702239581603123368972220134332483965493919909587017394034237913651080292293417415513382621147917623019792015938237230959272945374261583237907760128120306480460354197992721353505301574644148793567384675897453471342773746839232714803299580747094405471860850208469498376437632211093507296902902881133358060481927736745064841832288180935703958042680626207750094542126948582507442740717396484055971150872017592206303207893953328004460250813684850326207551378917591225111169332751321223604624258263129492513967334941551782413509919534246665952618127488114432001691149829287771265126453707127944611505002177753624950914961591603838153358171732062847799631237869048488661443651090098985751311109299047894574681964158782337189543800237383899733598436569667751002129663549761693238979349243076509121946089933128506579179115199922671082442642000947029996452482122988188768638169376337296047315688727177556202382300275129809787916414868745509882999859211203291534824539070950632803891136472171701107144229038385818474886518523491990760899800538586864545750617761980498310405789433293800795381670203247723704898159271121232544002354094221242898519996028464358628220567854426182516155107987867446951665001459686022776551701770103468467272002217466011827810057821861138854158476244574556200320342768674996901349319005023531231158665663235839906581289656555787835715317583670145423592013018366622014183864411831460913863080100728083202962843528561758353291953548786101933154134768768657392310061159805680343591877334255324744800003289860703029428687048293342828358763103099273395229205901830608348388405571566973309489830268722425500078741363471556787127277206664716819166185522412038043407518514242538263664271583085509896689367734225857545150756442533961056037607845275882948489302126857556561411063396635690203460314507264692019292981267460281039063527117859263704553695599067581201809764239760396784898322824304076380428078335678045132483482915721049960669299486745856500818243460724268715213518517999058121187252365213424582930487646289417426696756523975281123967515781776860846208812691934344829134368341384001009414648696026548686197365365972705675634996999590133861840344412398829300645536681804553053760473559319387426485816789539391382603374181325300385293477103097559924506263723662078803204188396817918233420219663100751151114309517025314499012256145472718194678945080585415300886479980836127278131485980731301847063148155404331025631643080032411882761163607598006120601550207742149898969469984736861959296217896669989115269768373660493277452000613074949006549582528210971214643327662506488609694164477598926681896645828156172266146090681345479761571566920836972582403980249051254251445389132521222349121183929749844526271374547700328210409583019251416902350057907232930420857206045580267677323366624181694888106914727638655762215284504957474671973778845695571066581511613147637708288990848372013752117206552997388595236924487064270071671024131967887402570881089844692938552001389812219194142245784821736865731415598642657105756343031839687528292585790117092328222971252288893161908525857305847981309518994056383722859469914290619545383929677462530356002226512614526569482189059042421846461340732409539085017009976963846078461668127592560079397965096324856670265179912835542087151204610290738920472481335178074784057883380503450672206022428076290384328027499525863173451558377588360144954439086115515104343058171304756481463324343297070666913814109695879193354878787336684185879088805275036037919491459747735526482552744012647158432319651447367956749078624285590763273130085628699478473743577359270186324937114736205226821784468231908027978529747325133086042400298810339566739905738128418830952058009622036583029228105272989234588171904153618360316233533933918068401003411186815231021036087465000122255575480466635353016036988754628540530651530282215830601327080363561931885953694000757227066836230892428780167551370810199115784981120593686841115727039205055964330362426703238898313251558861212311895265510176213511639942941288963018788621563516867808372504800814335427116687153972322759855373495773087484675728693498774075373558303570275579455933210285750304992459326800825980270691416003794804099735689102099219226753671003102272371138146707464853469563301487081244852618693712276981767656757135609377952364977644290333021436625427436156129152804070714604576222778097591212284315766032012761209276174567929845200595391545345107119555997827382559059835944282823915114458514339728081869436832638918560728236016408758123374266008960987654203754046996929632659878317078516561679162763245632326331281958717653482209528981056166402909743511079735791415978612922250760271057098360793721796744399202363812641710120015551245803723354271688286830369319216593506127952534358286431686536382034726246705813875604580441945527509259244139259388889631128922273626133345221496381765810432316185728387283449809505207203180862142579569836052757091413493700868662593495638430427658225231222717467205245964289477539343088004178655561332901477410705399936371742163132229961411939329266899277722565406828885720832845254168163910932327414430000770270483779843272606330575657264436266112751045481502381457602478936858467338957688431855729836826485642699615939806381574251595463376664651621079316894453810856200254036685157252224001071003962751624738832473468083054753295858037454995322602393843747264792454347736733914558943908943233376997959491903874526771436560387149278675454122448324011647543559750386532109012121852062873128059777275976956256070798432687884965603444051911518047681561931522732354501617978154921794261153923502888996857363866344275739817025930376614897000584385821330306713861165796574863242293446260292037279726083061567389559362119164776307592358504048078638343981304889509048882249887271353183993588355880240600832068874777853435344960180078177787198620532335793980669943806269910918456053671553235811942972025517677624705194143552949840619056863897246574918331138828251378356024621999799399387735384541941385781631030811518025487796319432942664298339168357623132083215844106790038412652284639509962981282450540003851554927034572800056435384272605336765147842692223622246578202261646697442036657311947081631559585401812975509890639962510783656750186263141803573218336857981365153452284459106152795045498764978813110444234095861305730094381835223801354590621530073992288575752641704383320040743436363115357051291593324593613559843480429667656080391046309594699885333453644095288426307313355480376893874238379890019697724956328223175988051889819892709188259893988393468520914018772298255495319856558461966045137511239965483170588496152675704392031037722639237986159300230053626830341517279932077714257542647316775705048071126844091318520558073494679151874282310827460241640068427362901833853970678976083700855929274534068294514145472043408139001818165973503666192802222114930499132569560816598052646556590332649326653445263626491436215627959054905350355055973906222576508524294282847596235163597989468354477918205908976385997354761492837987887870901819421324697240559119463979481988215275590626273821321988494695812806493694463088467989331186366742422431572539887006515290271724023693459710220533291739233145318615842808199310646553765825708192017144541174314367547659639212937023703212196061098477639675548777918949001521828803850950304771231261361234236275508875321546419640920762948465402057397317667069597390077358324369736836788405868376579988459984543943620153060938610379864182110264344297144846673877123319382015524565712104909794080504713203774166952321716629611118487920012877945615732219918763395876814744741957254927607820540923449366360061828847786173179466440832523554526343905430619967121064715195179576262819031652495572465685714492826239594515228370850625829057142890701211955799562951650152590115848024290294812089967548366174824099995746331642747136998896461801180266351478296161625245143103667795723745931120881207691217134618028364538468305064264780710502001711240368457766434644511519717687332317707011977853141826073042842208812997712125072033966097316604623946726712569231018303419445870066593873699262552593871718002448837221399051524851913073926598330239680590265327320814982757395762659602479192849751584855071862679148318645966273267845351606939581045980624154233660437510740577845495368682709175527951035664256164217110163999317346367213055455665852943332433857668175656843431409843331535118985387500242728552404351135435375517029912976057330164351528184495120460877121250486703561598346386685421974246824524854288050198940382838004745296880463445949987052382949544780403559225815662988007988790316358543909364445133529308046807975601501953696302560983269043485518170851606245674154626545251737602993611602633382501334466820383518522899013890425815915741222835697266571235302934066148953390312447447905579161760247646961025112174633176436823817732557306656259613173803864703378860856376329188413641075477325831977495122922156600830010400842919682370295645748191437795729286346459429720274869597845271542807970915215411544612502267941326956437282320058317638075097219984484936000654718465213353896869575345834927494959778205137584389870982017333218641477817051347228659830168328641468974831552362143643244212306339462638513678115320605269765450012101228017487749851593140733154794058240583788518551747521418724038908265385074725722907836511517249541708448812113686052129806218560262368380741294752557890269284374677115329983751564410869462774521962023552425258723436295642438075893752414244553646512170133205806676618111604487515686016083293972048073739479876124033441025058165306165130171453460948882639096524257547292521365502250572411388210891091686814657794774252538877477091328891047834889030318217533645589189044047983976181878956473097908434521761761720136096242118452381214048317137518151737958338575941028752761653831732608812652767750254294532507557576295046584529729431539617966075759120735462651981379186965735899052980290772129658162239644724706911549346080833451046299195716206092961951201516081419547383473099010819439447948287248488638129639173668869851162546963857612583480983906264253626420355020291616221585162147762082498511168607591694496774518044419709829254943831946745962789500786606363593489909925256445721899790662038207835725126270886749748604367967049690980727454283167679330988274418855938617087418871186926078112820476467014365383346476310016259504110680159438795328414412615895515982172056611594901545415575620291844882086117275301014004632294756871382353051936242884524791989283921225363865493495670140905992765108780540547546303576377761600385770161118035765368375571563494457930538903022600901708417267717320847925900451773490602033155428772585080091073340463945878231830451958379635453939421716693971688399117365109003638275441555017233738433294289287730103316214998870075886237569697222172003085010281299745216983184373057249321008610662261689815953054609157164792163849891750008570159405013101953459009721470738347939556416977619409225678225225129839056482520227011759665624466353469708370519515009097258239385942130146087034546816487083049842399961825171983360733028117366886783562557661862474393474404840010234636994839054634837455606784021349347425787794445449397950034649873315859207056865213905035203795503765180578933746895237289716198739776013648026963674873753776397726804470900380421731689167721969286647263166455113694372056647370987274066424473770765510831724874434352148722882643337494275609404590813851708934620595383833988822299436193066860038368267544208729480796500418518353093882579658142744976179395941125595489483847455008216043897206628565781306026949932716816590366443202639476231952088706238924175313153626634133677995098380264890241267657250224372220179986777778172598057433424628189123385722169530783211958668250938639333678425742541876855515416444837693310627342050903362036114969579080485950186210417548145135278536668788974354423590727328205112690196679397130329365403044261076348552806317507120041100792548711200532523509731834403277323695334161955736524225084716839135485191988649965127556036851475584837441002795792986612927983010292610373715478661648303610418150376017014739269952208285339301603917771320697264748041815163117741770863180352320563844223700739580408080455231755785305411751248185252814781473073697965846491853631783081509597361807863141758505188328362253575839237393149612970974231833746308456265069104780899967346052112343716089004681205604951938104247645731282949033217160792488076027881956888344982862575351473476807732929980048697825363055188163556987786964180523163882585078157348788694578199812382125998025105907792332327158568853944018444027978044532446640854537428244403751324484291134072825619148913308804936495561874299152440213994618792886954264060359573500541153908648208274881244529919978193404102067932255040457894123912984965941073396250094447264267999452710811395627476184732509072838857606808241098911237542012494658796519933139727482019634228215222896895219553764792045119351375398021298383655260486252019157409878812448823482292744790542120271953969664981035575568714422327445866059404492312821106673535178181075461165544146678395148744119530587221438274435815235039569307360049656805201582932657343770995505645389785497761133549910891741479977636780245828639394658731112251450056513168850746194203888456646320524878205176111194751372302195242985886011241990548648553728582266323681300862794612225061239070723380128530898216639718354162887219618837836080075140163513153853378176410066171647358519558153031979710557000452942849246989220799020352803866037204853346522943170784223436419486416547506389301904612917716113554426139998058911148227466174830528718683797557962102433510871346668102367139279497418572253753492794085153315125681869121712725855458153882357440175396290417881349749819206005132590703277232008110955834310071901964139797213510799811681433166440663074270962271913424297641406814709312667611695448092932791679072526172496298957875979786650190626078250874576641531181824132540700329072683462295338774360018736788432955104683494372734451699964805200536183693236368536879720118847519255146512616616304329987881203582902041987801188262425717840523470047181246279523647037132824926622939592084971834035387167706434597084952048187395229853808580582098162518274697484722272706017443852068061726997111797173585271906752866891753120695755697677185222207261878434643048318543077172847057486676897003762463221893905431402849042026545135676511965371871485033514280830008000095900830545273581362181959088419757258758879375634795385993712385164148414369547749593309374146598469133574167045627644057653245202177874560551930275728436797344475016291480254442446973673246585089319080248276182005330094150787342320894451398887353670033601049055095758857458717922553671529113383359216263282959963769806100158465995935712291300809170781108644321040663362013051756611022962757808149074590219009221320563964427893904143059376807825959648900132840154940947921323834643269945323007399028819039131789267981927974732396719478040387406826752786852351765173279527727171513239667589716329565013770941951345773105998085657241937196848061034867283937479232659921197268926703582264481668918831567935649252121746396335755306418004222583420841352720852001286892960003919969560593184606529010642844356888793797965610696960266964582724541215904695885750475473836335570932924748235703204150446489870446382507483647945861214298755221715505487251702749132219822451535666286083740756664417914859664153006445128291512347147990527370824181512945230058749278204954975449593746557957593966849951142221493334149888903561242126666377038435127238369029610216205978441722910734067379532363362570761807005169168065956261467261024639123515066314507479661683539318763721471055648104352745965239794078332309420804411365655477038524758984987823630057532929243122003338210793424266732428377129471788366555219524276320055512224252769141902421969259916324637658650741479831594827814662167443894107958338313001806639280140505261355798892639661902363816428494683981713432301077274679296707242737391477134315193965828908169977559254825499757262849409196719309089215548208502979556155786017111058247626808125476251741124790602755493253837947895224371917713544896002339289573199987946240419315275043033543927983470347546401528930019277480314721378696966868678725514067737590567537623676176887295662038274780420859898893463680332336398901201298185993322680416801856012663943520977295314610369187799976106298507019176778939740829839259523139926510220935933336318429700117787712608168683241224758041964846208618208529260029378534616002203777938691993294482503581965380993287354626048886896888345105223916512801933767100723682757960852287835068417336110049091418501866382768840207507643493296580326197952200660107558313387516912685501801344798530792615526185020461430008166621206264502050938369952889780351649758941079609889835222615635070304248574497698329696890339467638355458951420557281932138053884038187820940340657461337495910320000000004E-30022" + }, + "global_coordinate_router_above_kappa": { + "rational": "251679754956625544521335670993920703/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "5.03359509913251089042671341987841406E-30011" + }, + "fused_gaussian_above_kappa": { + "rational": "4983202450441244554786643290060792976345025328422461295568095087197557031776095115417605415158007330515883230246371206685418943278197518817858430490449605649263975562089140656084277318728506693654943312866617790348237891704419881631770651571802989661187431703487687744579864604145258166158640211166515899716503824121423255235009902593864270744285947634413565361609420823420665169337478780217951805336782213796236287962295391810482207837974785497157990321357555843115159762767705172006142820015917079004147826002316409993884615239597895828296949962094422824219849187873072590065547655771926197133113597046425018008064549555374490691189380848809040401792219566650730536581802320863069169565449509830968837662221893236589366368546423186000147420295828413174102190243749984459772984730624998444736202906927539966913187087444184519627777813197668562332198344627111207230616181399311398034095232198281978549696714795092057667839182976815607285355397713830245192915433805113356773793313249625540966768036971352046576813870086288081664394820771849193894622411700900620489672365177172307739508962495751653100272187012718885592344468912579224001041547571612430598247981601614458263715099471558960818924909536588798669353388795542562079056882912338994988010389292896980503000933837162358655385880308232625419298623240399275837675190825406831402989205831272141039564459644708586595220882634466662454241404060836090333101639147653635360981176462850632560254188774463536969355160902958164309225702417357583270981913601679264557793591760026572542638197227533624554792326866456511880663706561415585461074839977252430901755380946189895350930324679713736067404677170825530957190919904057804779465852273878222599648698131764386694480625498394707113585579633714326333358021380522578012990211511568016133489022739505456356623380075050699762359496314400979744141068150795096753097751518106872157148557426969021255997031075935655427353229745923480641753050699065022129217091875388722605716765183212895530086395839338425954575300919057753647616066515365837897135497067265647530895141798442776014784668814841092429845342507002479804850987946841543526990146593190340745853258170929451576907136179133253092039266098827732901295927042640185584781046031226884343130680636768819729927632432149709429118903643599464200212048301254220587300936140890908103772412051151703477371960568695071575119239533268376030248373192198111523602768687586529684204949171438111532555676910498266221330859715512364175795192286864721992040709599052598426319814459226165565069980990166097374303807454197588006635154768058945723366936966970175812061961226060431923105811352596881293393250558147378372226099763580019281904293288189053567703261110864276250289472337099960124645363038635718924656062256361893461190866061322768467360878121558118720777490861989401174302408778962441591974520774869052455667665622989576244245907759497443042184630235697085774065424010130818599624531690635313248621824084323378769329812781188717175112182822049879678417405913178196648532145425432365819685952151810947286118666782473184705796840790721172829059104848637946484580345820432175295187312671879224318368091236174325047267209028653597543090101604939302986493805006433666551947146092681316619197439682274030787963412487546725180889409853237500694564420031799217384821643010764451480694345309246414956646764759847209232483555451937178813409338923778682705357906373179794287669838488484655385147604417747303358868559299022438490065674822177085112880101801947200940693502688325884009559024890752544137633382048236257358046279659895907293603524407382110400847909721016986444160553178046292272175866511039039060034826765476808842753598597843433952930857231979503061991611207691246997607221061301930634590135788479872591320453345825594020509365391908973247184898514665071705232314150779963303402467668930706054983287814765893611122575798482650251394473124414094647267304439265687668267137819979491710584040287656240099276221135478389854332262008311294033465155517199883324587092759735807574662302189655419394197695429552899335822530686129696028404784163549065739723103130297455350135832830889281278727053728471921191694995679965431693619704725438002395174812677879514725215073038974728733398695497075573902498098373903617646926231641526043819133385416128658915199137735749546933864035274424310097013241174699238480245831244042858906494508137778249618124529292896170260462353065038833503317850595993286333113216519154281874842090796997052574442576875025719687612712021183116742944251880328707412780099622219327792522687775218574833085154125702864759936651273055719751249589653824616987280870259988773623947478897962098687246640344374865462596815035575656849800836524467066790909975899280966033226908172969586462448556711013392452239737834058420699673987037455938073054045813119151340304328837366208023170211507159348982076402455683718108943100602988673740396258404041083895793748847912620047466338796390200639245443684075184307954802602503547636249158567498724340754547407639862911331383171612279226970931663197163380239945655786607627402987680119445833771900905267289114280813477638299300486211018403174761535246959508909851574218131061403175613547317850804878190852376027036727866133813305447002120575226975103893236438505798668415729462622284589682617043100197268090714612269562270534443200106140341435992903433535792074806489789550197200970036758926003020704694206873553548016850184181691923482204052854077092381962858407809379057665239728489991772323334541982549041773201004902348234423794192410449329372188118503821306985080155627061093748448899508579158646437892318601522227790328219494092189802361216410948885824374837900336448405108503870742802467105415485873434381049659980027604761851154236268823850290505797829159088864457195049750503786157582625495998723707386990743983511649925771004907983312277153332604508511187730918344173722260584592159858654192200022070464657370372342365583992865905054742934333003757905669682603609901033093475625551218067678221205440561680017393108770035997792045912489653846273408626966678281689339044195032293125121959949358593806136950378857688940790794745745475551632444347837200902628280327349456567789342239665028262343917594502427296996575377254106458462042558064846183829364163833211571366807567376618352690396314578722088325847187356444122614559793682078204492874675531718726359318299620461687352186753478914685812105255729158104907623364675111682882935185956980083403405296519973462507299592212411110763646101696300592270985896684562131123549172771429068710995608693226681614058941793406439478412132297269242726000838592969552045220815804828353946386705776517014291404418859446385970642716961549508861924608780193005325361316246049622721647935985346486495383538152669850895935309427378026042378923547792166641347517708657578564671859469061273766095658487053038883632543439667891504189969014035033263752188173930069793357029071686499856509298817586363588408985138239563149402256660102313698408278838656464417391440468420222016456452914430404885597186342199078581500195116283728451843967736343860792549949929290947273817903695314235587769332363246684686298393773287677667848639103169805309133278775493430010898360598603738279621219827578895043512083626408554622952987713517957606741520198740976647177227834963682706606703690683702376703057013558960554468053843075318244327632817632295896544065959167923126326020195970625044031660318909266650958504938970984712763881668481312168291364805796005913820878168091551384556088073494249303167566850478277468572107416940232052229678053186194239908726268659159892311007929466913198365100373422316804344125759471574197985864526218569400273627435534780693481457322858691250912427256573432871826966977400730038911267672910464471188748114931892990011880544602954829450512438834280217963641777455818549332269445765241279974299697904113866225776370115635158487722990627545241631460844266755669807594270047315568692204941473960280426996048461152512095060800096139343060644390005537024754769722549863146079414476481887682242279733231580862941928489888431414488535200541987680636275461131138250498558737110728225566580822473936540852075157913198089963988262186013366503712900171985375701061141359676087117853419143233412412790397813125915883816693523484375039270702314228173393680145952387470738207385861074382059553354045787321593742447611047159859019593390076717305241352777106728375945768720534228080914592069879234732219852360069513668428518218400610117681452883387050908999388310826430774383653216127644704727941518860422438818404552563896645138176865074579869965345372664207405027782500440922770567593296163659437563079273743330007755410405512668432457320515038456523818031819929646620317444704106995618925090682067041204447275418132951362379839590771862701090940805237299518404052960716289975090112413959044131538260401619579905546236470023306459969268132742073331794778848207510407616724061904501796650287993293985573769131754387566698029903525631169372770464236039114967292861900540899389796291933327906233680476499658115109849935401380052089744572027714368493322655681226768917140919187991952930605391858135314381572979176054391859456882355122851722368499356957237311339448560576179072647907513250838374334558089238900749596758636930310159672969087747479960021554276776663010626828669549978991132363271250873942128746023088018999713029875588657094229516496486674569187932041518042743643822856969486670350122097138599761597626251104166686892935662594479850535982306337897914026716771185379349136276195283322963815719153094040058173579773112673318071699751067244337355627915563087352627701570298987149359735391900311941360580813310505439058384070242455995455233636786158368499612921258198804430647560685674003463404672203204111361710501198321202299078029273523596013394728649488432944445740647622514931425840538637834572423546282003147787945665202059774587742194724913107235060271879131550136648103357152832179525120411803823032332715929227523151082386141116389321993594616677843533503248596643081261958408582766720846420257153824052926286995803633936846317168416827857626681681251338053598972628307941581166437265177469201388303001028733861021649788931197404434078007613387166604874895860302806156392969688153979174997641408412598256833327288117107061524684442521404471132682096040609313159538357898814616733632657239484454804587430379937041386294063999931948943540874226023733543224806768389100256844262626943932523496744604971396992263101014722674249113929019839948700391592451643585566179265164544479512535690682796906646999460893723709222740450904052233425635072814819984146743810186466263619385716079639512426842752524015656404703596477154788113138946559043974927253528546519000143995621253787727126742446727766579156135293661656170594640488592025101893925995236516622012062175335889234225895272274752966590486904479833844673608841117773934947371413391629216938353808101503761256799610086402616065543063431870787267169485220280371041583687420151414658951771496574554873694711720513580419495313749343317919861590716930229513916775050439450982579744958404228390431461769333903316439781091734656731008708136359350308571802507586316084960762438936998896728888108662875395152830175326592477915082932953810821547373303076230006458384331470474286853464330522457321739012540296676944851578179755229623255195890115673011290998595605929185811174121037605615260301306697206941231613809283153827489610015297996750651332580964125933901868646885357241164031920289311700162820023765216043709491489878051681987661896699091579890104187746124813043319546053034299517988920119203006831380539417239749235402588950386597715887089092651043525648467857247120767501062932003974169554916531616038403760950163106104251837711692957920262775905504482052051230656874276652392685197134176061807920351420208807623727742531586881147675288442452138804174717376886289457071025984180429308461119273805587267687016601162832241554214095906575314320941232003068773311979297295208868289423244640398368786561238476932978006259770812360446010815186720064613457381363560427307734521485362079484635969313855915870242091545966573425391321779840311457383196830987930924273279542558647732047014918802813258205730921432902760178163911328110637536172919185102395186345887673788536458528264272562683125759279045440341338040284555790970372318776598935782808617132337511960312587473500576311038457777947178534147281745467753214351718805701993420168570681306446092468775193919569461731754227501765634284803862549274450431528215229821293128554321916538061577440206056303604051152347592379085192026176463255295922681867176843853823198879251228737860024273834336438491870756645643972348820191810431036978358857316989337019455854417703501400100171545884739548857626466899509594783008492118693542992985222338990705652630487751892228820105915612901686803206132952520033125459334677288150269667847667773689903950903647513323589970967933704576680282742557750411432367911227672053771270783997821419571694773449260491848297831770218610039776679686202342526729165100749362974120439932190263045525678435238310219220063061635036965860938217264844011953677923219454709030696187428430820096090229860345265648494541015128976180983111595175538506923090103507080310129424536102474685560320804103895637656352123782328224158320130472677177160850018545361445802558798631374216135701777968532010469655812570906595211436880582055538047363041978363154013194154727405920464996003345188110263637744655663534188193418833376999563490917703468193697347119385475501206163836810132439650684999464463595616085824001268362371965828448844840280345958458628751633315218713186221193702878615018628799047135849723428401786366496082738317574239313483331974285920931011473119086752892157850178037924800198827427250813251597247662321269929234511932307381841459567449846379934384336399942003311831981500710272497339361592241141576478627032252972035486766545383167151786725206347357340937311151559132412249894408402468651118404303212974602918352354128775830358171778789363856164888892618993070674850403940148409312963321485373732804342074970350596536252652435792778673619453340924408001765570665932173889997021348268971165425890819636887116330990900585213748751094764517082413776327577601350454001663099508870857543366395854140618857183430917150240257076506247676011989253767648423368999247426879929935967242416840876786488187752609067694009763774966510637898308873595685397310075546062402222132646421318764968965161589576449865601076576493044232545869854260257693908000691493558600002467395527272071515286220007121269072327324455046421904426372956261291304178675229982117372701541819125059056022603667590345457904998537614374639141809028532555638885681903697748203687314132422517025800669393158863067331900470792028205883956912211366976595143167421058297547476767652595235880448519014469735950595210779297645338394447778415271699300685901357323179820297588673742118228057285321058751758533849362612186790787470501974615059392375613682595543201536410138888499293590890439273910068437197865734717063070022567392981460842975636836332645634656609518950758621850776256038000757060986522019911514648024024479529256726247749692600396380258309299121975484152511353414790320355169489540569864362592154543536952530635993975288970107827323169943379697792746559102403141297613438675065164747325563363335732137768985874259192109104538646009208810439061475664859985627095458598614485548476385297361116553248269223732310024308912070872705698504590451162655806612424227102488552646469472163422502491836452326280245369958089000459806211754912186896158228410982495746879866457270623358199195011422484371117129199609568011009109821178675190627729436802985186788440688584041849390916761840887947312383394703530910775246157807187264438562676762543430424697815642904534185200757992524968136271166080186045728991821661463378718106003980334134271678299936133709860728281216743136279010314087904914748041446427693365298202553753268098975915551928160817383519703914001042359164395606684338616302649298561698981992829317257273879765646219439342587819246167228439216669871431394392979385985982139245542287792144602435717964659037947258096897767001669884460894927111641794281816384846005549307154313762757482722884558846251095694420059548473822243642502698884934626656565363403457718054190354361001383556088043412535377588004154516821057217788246020624644397380088668783191270108715829314586636328257293628478567361097493257472803000185360582271909395016159090502513139409316603956277028439618594810801644861914558009485368824239738585525967561808968214193072454847564221524608855307683019452639743702836052153920116338351173931020983897310493849814531800224107754675054929303596314123214043507216527437271921078954741925941128928115213770237175150450438551300752558390111423265777065598750091691681610349976514762027741565971405397988647711661872950995310272671448914465270500567920300127173169321585125663528107649336838735840445265130836795279403791973247771820027429173734938669145909233921449132632160133729957205966722264091466172637650856279378600610751570337515365479242069891530121829815613506796520124080556530168727677706684591949907714312728744344495100619485203018562002846103074801766826574414420065253252326704278353610030598640102172476115310933639464020284207736325742567851707033464273733233217749766077469070577117096864603053035953432167083573193409213236824524009570906957130925947383900446543659008830339666998370536919294876958212117936335843885754796061402077624479188920546177012306568592530699506720740740652815535247697224494908737808887421259372072434224244748461469038240111657146735792124802182307633309801843561983959691688070203292823770595291347558299401772859481282590011663434352792515703766215122776989412445129595964400768714823764902286526044685029360406703435331459145631944433104444541667223346691705219600008916122286324357824237139296290462587357128905402385646606934677377039567818560120275651496945121728822820743668923417038100403934473217108154507316003133991670999676108058029049952278806622349172471058954496950174458291924055121664290624633940626122933199245560822500577702862834882454454747931742948327199584563284111126786093201859202643850504218266323891797377619864232024711954854786180688696597532498488715809487670840358142150190527513867939168000803252972063718554124355101062291064971893528091246491951795382810448594340760802550435919207931707425032748469618927905895078577420290361959006590591836243008735657669812789899081759091389047154846044832956982717192053098824515913724202583038933638535761171448642049265876213483616191345695865442627166747643022899758206804862769447782461172750438289365997730035395874347431147431720084695219027959794562296175542169521589373582230694268878036058978757985978667131786661687415453514887995191266910180450624051656083390076508720135058633340398965399251845485502457854702433188842040253664926858957229019138258218528895607664712380464292647922934931188748354121188533767018466499849549540801538406456039336223273108638519115847239574706998223754376268217349062411883080092528809489213479632472235961837905002888666195275929600042326538204454002573860882019167716684933651696235023081527492983960311223669689051359731632417979971883087742562639697356352679913752643486023865089213344329614596284124073734109832833175571895979297570786376417851015942966147555494216431814481278287490030557577272336517788468694993445210169882610322250742060293284732196024914000090233071466319730485016610282670405678784917514773293717246167381991038917364919531891194920491295101390685514079223691621489892418846474533853133429974112377941372114506778294023278291979428489619475172540220122756137959949058285693156985487581778786053345133068488890418555121009363905711733120595181230051320522176375390478009232062775641946955900551220885609104032556104251363624480127749644601666586197874349427170612448539484917442749486994990083947719868577161720969291179012766291980429666932381393220712135697176372698492101265858438654431732289498016071119628490915903176364565993522930419339597984611491161456692969705365991491371021859604870270847316350991998389775056816823679404915254886467703793017770094782665399968804424858988961882106149482984915324369281144012858405880735775660744729409702767777409147045823858229756661583439211751141371602888212728578423446020925677206631656491159814730690572211349051543047988250302198042558018743277302627591304401282434991344988407957715114795703957784898136582698258222858635005407842489536511643424284078682345560378534902830625214241287472208338865940009658459211799164939072546907611058556467941195705865405692587024770046371635839629884599830624392665894757929072964975340798536396384682197114273739371679349264285869619679695886421278137969371792857168025908966849672213737614442586886018217721109067475661274631118074996809748732060352749172346350885199763608722121218933857327750846792809448340660905768412850963521273403851228798198585532876501283430276343324825983383639788265499238280258983389856369554782131656609748284093804025474572987453467960045034426923263727564584402549945405274446914445403788501836627916049288643638934805444948747679760442698995490611237068046821994701859394637313688641303897009361238984474704950884013705204685784485468115675245328133055433384121526512031881645963276748192123162832622999488009775409791591749389707499325393251131742632573557382498651339239040625182046414303263351576531637772434732042997623263646138371340345657840937865027671198759790014066480685118393640716037649205287128503558972660347584462490289287212158585302669419361747241005991592737268907932023333850146981035105981701126465272226920737451782614138628138704684255615969908938803202245208701975036876000850115287638892174260417819361936805917126772949928426477200549611715042734335585929184371320185735220768834130974882327617863299417979992194709880352898527534145642282246891310230806607994373983121342191617450622507800632189761777721734311143578346796964759844572290206152198383953657105978186411558658459376700955995217327961740043738228556322914988363702000491038848910015422652181509376195621219833653853188292403236512999913981108362788510421494872626246481101731123664271607732433159229754596978885258586490453952324087509075921013115812388694855549866095543680437841388913810641064043029181199038806044292180877383637937156281336609085264539097354663920196776285555971064418417701963281007836497487813673308152097080891471517664318944042577221731828556920314310683415234884127599904355007463583703365636764512062470479036055304609907093025080768793623979623847628590095711661979322393193160469391024126687929308541158168318765110993346080689404158107818496668285876166772738663150234191891783035987982136409217354823431325891321321290102072181588839285910536237853138613803468753931955771564571240373799456609489575812690720899380668182221284938397297073654713474556819340551596988986034390224301924289735218079097243621679733543530183662009560625088284724396787154569721463401137061064660537604824258114579585961215436366478597229380251652388371910222893209437610737929698190219815266265218712166188871610821561873883376455693770872580888533314782371941207873960059472092125589954772695117432443942334291424842996528655876793844703165062311453275975287268235545590712375759498241205814141953962815564153390194558584615357350260774037509857232512194628083010119579096496310809461921636986629042458696176159061681715218883661564587956475760503474221067653536764788952182163393593991962940919022899120121752605679494573831585405410659727682283321200289327620838526824026281678672620843447904177266950676281312950787990635944425338830117951524866571579438810068305005347959408673872838968784726590454566287520478766299338023831752728706581166262925303824970716965797577487161249152556914678177272916629002313757710974808912737388279792936990756457996696267361964790956867873594122887418812506427619553759826465094257291103053760954667312733214556919258668918847379292361890170258819749218349765102281277889636256822943679539456597609565275910112365312287381799971368878987520549771088025165087671918246396855795105803630007675977746129290976128091705088016012010569340845834087048462525987404986894405292648910428776402846627823885434200310171427967287149054832010236020222756155315332298295103353175285316298766875791476964985447374841335270779042485528240455549818355328074133123793655825764111542161982503120706707053443110388781700965446537875491616724577144800145028776200658156547110597375313888764820411934743607058732134546955844196617112885591256162032922904971424335979520212449537612442774832401979607173964066529679193131484865219975600258496323785198667680950742937668279165134990083333629448543075068471141842539291627148087408969001188203979500258819306906407641636562333628269982970506538177521527086227184310364462639657813161108851458902501591730765817693045496153834517647509547847747024052283195807261414604738130340030825594411533400399392632298875802457992771500621466802393168813537629351613893991487473845667027638606688628080752096844739959695987257719457780286608996236227707813612782012761054452464156214004476202938328490522948561031361372338306328147385264240422883167775554685306060341423816838979058813436138939611086104805273474384868890223837311132198021355897356318878891246271690181879428044862209728230673875309731342198801828585674975509539084257787066753510904203713953578185734298462211774912870594366057020911467666258737146931513605107605799697485036523369022291391122667740840223135392372911938808618011591520933649859286594498518829430844249245368926640458013833020983533399334980640903071183302813493363218350554619214361684981603702371671405724364330160495964094665215698045269680125405865431486156206160933397439983645053076550949191280343420592934738724455805047187570835448200999589533108546720607138549381804629143205106180824183428156509370994097389949854795611514725671161417172671414665323594033839513531548515973787741445364689014368057409109336617611719558592906590203965477248735776681676535816745584399544553369234615830005151383635806595874158110008796361558089647940416078705826861426279676980520037242603901187199493007828246629234042339123320850162433168806109983227585184371479545994048334188587542384876638059645652916342484740393658653882083396063529226646432239414508431492911486415296436699742760975647095959168795929303042535096398173662479788765622165414714128377060056355122634865390033632307549628735518889668614773984782917750339707136935241915599265264602899527903640009892207378088167577314614812410629791976428459688287085165819604998544183361170599631122896539012848168471576825133153510001076775354459623063929190315119595563864986344261401841284544391593615411768080131547217813411012312364404503849443027457924006083216875732553926473104847910133099858761074874830497305703221703935068223231055111031984500708771586069699593759304394629372224218406984839987642969558688155932481148386368099405525246804512596721504080770014052591324716328512620779550838774973603900402137769927276402659790089135639441359884462462228247490910902687176531490850891196819288380392602535385934709642735277849618694967204694063728875526540375779825947813714036140546422390356435436573621888706023113541704529513082889051046295247833847880188953930064650168814840521816773257888916655446408825982286238907307879635293115007672752821847416420429073552136781519908851757383974028903613775135710622506000071925622908955186021636469316314817944069159531726096539495284288873111310777160812194982030609948851850180625284220733043239933901633405920413947706796327598008356262218610190831835230254934938816989310186207136503997570613090506740670838549165515252525200786791321819143094038441915253646835037519412197462219972827354575118849496951784218475606878085831483240780497521509788817458267222068356111805942664256915990422973320920428107294532605869469736675099630116205710940992875982452458992255549271614279348841950986445981049297539608530290555120064590139263823879959645795378634929750692287247173760328206463509329829498564242931452897636045776150462953109424494940897951695027686698361251689123675951736939091309797251816479813503166937565631014540639000965169720002939977170444888454896757982133267666595348474208022720200223437043405911928521914312856605377251678199693561176777403112834867402834786880612735959395910724066416286629115438777061849164866838651749714562805567498313436144748114754833846218634260360992895528118136134708922544061958653716231587195309918468195475137463356666120000612416677670931594999782778826345428776772207662154483831292183050550534649272521928071355253876876049467196100445768479342636299735880609746262654489072791103291736078264559473929845558749232065603308524241607778893569238740867722543149696932341502503658095068200049321282847103841274916414643207240041634168189576856426816476944937243478243988056109873696120860996625582920580968753734751354979460105378946016849169479746426772862321371012986285074225807956009472530432053043607850736395474371681127483169441119124817947137056897539481816911661156377234667116839512833293685720106094107188805843592952066619940378460921418278938285158672001754467179899990959680314486456282275157945987602760659801146697514458110236041034022725151509044135550803192925653217757132665471746528706085315644924170097760249252299175900973639494992010312601392009497957640732971485957776890849982079723880264382584204805622379444642354944882665701950002238822275088340784456126512430918568531473634656463656396945022033900962001652833454018994970861877686474035744965515969536665172666258828917937384601450325325542762068470639215876301313002082536818563876399787076630155630732619972435244648464150495080668735040637684514126351008598898094461644638765346072506124965904698376538203777464667335263737319205809707417376416961726302728186430873273747272667754600728766594213565417961449103540413028640865705255493096003121932740000000003/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "1.9932809801764978219146573160243171905380101313689845182272380348790228127104380461670421660632029322063532920985484826741675773112790075271433721961798422597055902248356562624337109274914026774619773251466471161392951566817679526527082606287211958644749726813950750978319458416581032664634560844666063598866015296485693020940039610375457082977143790537654261446437683293682660677349915120871807221347128855184945151849181567241928831351899141988631961285430223372460639051070820688024571280063668316016591304009265639975538460958391583313187799848377691296879396751492290360262190623087704788532454388185700072032258198221497962764757523395236161607168878266602922146327209283452276678261798039323875350648887572946357465474185692744000589681183313652696408760974999937839091938922499993778944811627710159867652748349776738078511111252790674249328793378508444828922464725597245592136380928793127914198786859180368230671356731907262429141421590855320980771661735220453427095173252998502163867072147885408186307255480345152326657579283087396775578489646803602481958689460708689230958035849983006612401088748050875542369377875650316896004166190286449722392991926406457833054860397886235843275699638146355194677413555182170248316227531649355979952041557171587922012003735348649434621543521232930501677194492961597103350700763301627325611956823325088564158257838578834346380883530537866649816965616243344361332406556590614541443924705851402530241016755097854147877420643611832657236902809669430333083927654406717058231174367040106290170552788910134498219169307465826047522654826245662341844299359909009723607021523784759581403721298718854944269618708683302123828763679616231219117863409095512890398594792527057546777922501993578828454342318534857305333432085522090312051960846046272064533956090958021825426493520300202799049437985257603918976564272603180387012391006072427488628594229707876085023988124303742621709412918983693922567012202796260088516868367501554890422867060732851582120345583357353703818301203676231014590464266061463351588541988269062590123580567193771104059138675259364369719381370028009919219403951787366174107960586372761362983413032683717806307628544716533012368157064395310931605183708170560742339124184124907537372522722547075278919710529728598837716475614574397856800848193205016882349203744563563632415089648204606813909487842274780286300476958133073504120993492768792446094411074750346118736819796685752446130222707641993064885323438862049456703180769147458887968162838396210393705279257836904662260279923960664389497215229816790352026540619072235782893467747867880703248247844904241727692423245410387525173573002232589513488904399054320077127617173152756214270813044443457105001157889348399840498581452154542875698624249025447573844763464245291073869443512486232474883109963447957604697209635115849766367898083099476209822670662491958304976983631037989772168738520942788343096261696040523274398498126762541252994487296337293515077319251124754868700448731288199518713669623652712786594128581701729463278743808607243789144474667129892738823187363162884691316236419394551785938321383281728701180749250687516897273472364944697300189068836114614390172360406419757211945975220025734666207788584370725266476789758729096123151853649950186900723557639412950002778257680127196869539286572043057805922777381236985659826587059039388836929934221807748715253637355695114730821431625492719177150679353953938621540590417670989213435474237196089753960262699288708340451520407207788803762774010753303536038236099563010176550533528192945029432185118639583629174414097629528441603391638884067945776642212712185169088703466044156156240139307061907235371014394391373735811723428927918012247966444830764987990428884245207722538360543153919490365281813383302376082037461567635892988739594058660286820929256603119853213609870675722824219933151259063574444490303193930601005577892497656378589069217757062750673068551279917966842336161150624960397104884541913559417329048033245176133860622068799533298348371038943230298649208758621677576790781718211597343290122744518784113619136654196262958892412521189821400543331323557125114908214913887684766779982719861726774478818901752009580699250711518058900860292155898914933594781988302295609992393495614470587704926566104175276533541664514635660796550942998187735456141097697240388052964698796953920983324976171435625978032551112998472498117171584681041849412260155334013271402383973145332452866076617127499368363187988210297770307500102878750450848084732466971777007521314829651120398488877311170090751100874299332340616502811459039746605092222879004998358615298467949123481039955094495789915591848394748986561377499461850387260142302627399203346097868267163639903597123864132907632691878345849794226844053569808958951336233682798695948149823752292216183252476605361217315349464832092680846028637395928305609822734872435772402411954694961585033616164335583174995391650480189865355185560802556981774736300737231819210410014190544996634269994897363018189630559451645325532686449116907883726652788653520959782623146430509611950720477783335087603621069156457123253910553197201944844073612699046140987838035639406296872524245612702454189271403219512763409504108146911464535253221788008482300907900415572945754023194673662917850489138358730468172400789072362858449078249082137772800424561365743971613734143168299225959158200788803880147035704012082818776827494214192067400736726767693928816211416308369527851433631237516230660958913959967089293338167930196167092804019609392937695176769641797317488752474015285227940320622508244374993795598034316634585751569274406088911161312877976368759209444865643795543297499351601345793620434015482971209868421661943493737524198639920110419047404616945075295401162023191316636355457828780199002015144630330501983994894829547962975934046599703084019631933249108613330418034044750923673376694889042338368639434616768800088281858629481489369462335971463620218971737332015031622678730414439604132373902502204872270712884821762246720069572435080143991168183649958615385093634507866713126757356176780129172500487839797434375224547801515430755763163178982981902206529777391348803610513121309397826271157368958660113049375670378009709187986301509016425833848170232259384735317456655332846285467230269506473410761585258314888353303388749425776490458239174728312817971498702126874905437273198481846749408747013915658743248421022916632419630493458700446731531740743827920333613621186079893850029198368849644443054584406785202369083943586738248524494196691085716274843982434772906726456235767173625757913648529189076970904003354371878208180883263219313415785546823106068057165617675437785543882570867846198035447698435120772021301445264984198490886591743941385945981534152610679403583741237709512104169515694191168666565390070834630314258687437876245095064382633948212155534530173758671566016759876056140133055008752695720279173428116286745999426037195270345454353635940552958252597609026640409254793633115354625857669565761873680888065825811657721619542388745368796314326000780465134913807375870945375443170199799717163789095271614781256942351077329452986738745193575093150710671394556412679221236533115101973720043593442394414953118484879310315580174048334505634218491811950854071830426966080794963906588708911339854730826426814762734809506812228054235842217872215372301272977310531270529183586176263836671692505304080783882500176126641275637066603834019755883938851055526673925248673165459223184023655283512672366205538224352293976997212670267401913109874288429667760928208918712212744776959634905074636639569244031717867652793460401493689267217376503037886296791943458104874277601094509742139122773925829291434765003649709026293731487307867909602920155645070691641857884754992459727571960047522178411819317802049755337120871854567109823274197329077783060965119897198791616455464903105480462540633950891962510180966525843377067022679230377080189262274768819765895841121707984193844610048380243200384557372242577560022148099019078890199452584317657905927550728969118932926323451767713959553725657954140802167950722545101844524553001994234948442912902266323289895746163408300631652792359855953048744053466014851600687941502804244565438704348471413676572933649651161591252503663535266774093937500157082809256912693574720583809549882952829543444297528238213416183149286374969790444188639436078373560306869220965411108426913503783074882136912323658368279516938928879409440278054673714072873602440470725811533548203635997553243305723097534612864510578818911766075441689755273618210255586580552707460298319479861381490656829620111130001763691082270373184654637750252317094973320031021641622050673729829282060153826095272127279718586481269778816427982475700362728268164817789101672531805449519358363087450804363763220949198073616211842865159900360449655836176526153041606478319622184945880093225839877072530968293327179115392830041630466896247618007186601151973175942295076527017550266792119614102524677491081856944156459869171447602163597559185167733311624934721905998632460439399741605520208358978288110857473973290622724907075668563676751967811722421567432541257526291916704217567437827529420491406889473997427828949245357794242304716290591630053003353497338232356955602998387034547721240638691876350989919840086217107106652042507314678199915964529453085003495768514984092352075998852119502354628376918065985946698276751728166072170974575291427877946681400488388554399046390505004416666747571742650377919402143929225351591656106867084741517396545104781133291855262876612376160232694319092450693272286799004268977349422511662252349410510806281195948597438941567601247765442323253242021756233536280969823981820934547144633473998451685032795217722590242742696013853618688812816445446842004793284809196312117094094384053578914597953731777782962590490059725703362154551338289694185128012591151782660808239098350968778899652428940241087516526200546592413428611328718100481647215292129330863716910092604329544564465557287974378466711374134012994386572325047833634331066883385681028615296211705147983214535747385268673667311430506726725005352214395890513231766324665749060709876805553212004114935444086599155724789617736312030453548666419499583441211224625571878752615916699990565633650393027333309152468428246098737770085617884530728384162437252638153431595258466934530628957937819218349721519748165545176255999727795774163496904094934172899227073556401027377050507775730093986978419885587969052404058890696996455716079359794801566369806574342264717060658177918050142762731187626587997843574894836890961803616208933702540291259279936586975240745865054477542864318558049707371010096062625618814385908619152452555786236175899709014114186076000575982485015150908506969786911066316624541174646624682378561954368100407575703980946066488048248701343556936903581089099011866361947617919335378694435364471095739789485653566516867753415232406015045027198440345610464262172253727483149068677940881121484166334749680605658635807085986298219494778846882054321677981254997373271679446362867720918055667100201757803930318979833616913561725847077335613265759124366938626924034832545437401234287210030345264339843049755747995586915552434651501580611320701306369911660331731815243286189493212304920025833537325881897147413857322089829286956050161186707779406312719020918493020783560462692045163994382423716743244696484150422461041205226788827764926455237132615309958440061191987002605330323856503735607474587541428964656127681157246800651280095060864174837965959512206727950647586796366319560416750984499252173278184212137198071955680476812027325522157668958996941610355801546390863548356370604174102593871428988483070004251728015896678219666126464153615043800652424417007350846771831681051103622017928208204922627497106609570740788536704247231681405680835230494910970126347524590701153769808555216698869507545157828284103936721717233844477095222349070748066404651328966216856383626301257283764928012275093247917189180835473157692978561593475146244953907731912025039083249441784043260746880258453829525454241709230938085941448317938543877255423663480968366183866293701565287119361245829532787323951723697093118170234590928188059675211253032822923685731611040712655645312442550144691676740409580745383550695154145834113057090250732503037116181761365352161138223163881489275106395743131234468529350047841250349894002305244153831111788714136589126981871012857406875222807973680674282725225784369875100775678277846927016910007062537139215450197097801726112860919285172514217287666152246309760824225214416204609390369516340768104705853021183690727468707375415292795517004914951440097095337345753967483026582575889395280767241724147913435429267957348077823417670814005600400686183538958195430505867598038379132033968474774171971940889355962822610521951007568915280423662451606747212824531810080132501837338709152601078671390671094759615803614590053294359883871734818306721130970231001645729471644910688215085083135991285678286779093797041967393191327080874440159106718744809370106916660402997451896481759728761052182102713740953240876880252246540147863443752869059376047814711692877818836122784749713723280384360919441381062593978164060515904723932446380702154027692360414028321240517698144409898742241283216415582550625408495129312896633280521890708708643400074181445783210235194525496864542807111874128041878623250283626380845747522328222152189452167913452616052776618909623681859984013380752441054550978622654136752773675333507998253963670813872774789388477541902004824655347240529758602739997857854382464343296005073449487863313795379361121383833834515006533260874852744884774811514460074515196188543398893713607145465984330953270296957253933327897143683724045892476347011568631400712151699200795309709003253006388990649285079716938047729229527365838269799385519737537345599768013247327926002841089989357446368964566305914508129011888141947066181532668607146900825389429363749244606236529648999577633609874604473617212851898411673409416515103321432687115157455424659555570475972282699401615760593637251853285941494931217368299881402386145010609743171114694477813363697632007062282663728695559988085393075884661703563278547548465323963602340854995004379058068329655105310310405401816006652398035483430173465583416562475428733723668600961028306024990704047957015070593693475996989707519719743868969667363507145952751010436270776039055099866042551593235494382741589240302184249608888530585685275059875860646358305799462404306305972176930183479417041030775632002765974234400009869582109088286061144880028485076289309297820185687617705491825045165216714700919928469490806167276500236224090414670361381831619994150457498556567236114130222555542727614790992814749256529690068103202677572635452269327601883168112823535827648845467906380572669684233190189907070610380943521794076057878943802380843117190581353577791113661086797202743605429292719281190354694968472912229141284235007034135397450448747163149882007898460237569502454730382172806145640555553997174363561757095640273748791462938868252280090269571925843371902547345330582538626438075803034487403105024152003028243946088079646058592096097918117026904990998770401585521033237196487901936610045413659161281420677958162279457450368618174147810122543975901155880431309292679773518791170986236409612565190453754700260658989302253453342928551075943497036768436418154584036835241756245902659439942508381834394457942193905541189444466212993076894929240097235648283490822794018361804650623226449696908409954210585877888653690009967345809305120981479832356001839224847019648747584632913643929982987519465829082493432796780045689937484468516798438272044036439284714700762510917747211940747153762754336167397563667047363551789249533578814123643100984631228749057754250707050173721698791262571618136740803031970099872545084664320744182915967286645853514872424015921336537086713199744534839442913124866972545116041256351619658992165785710773461192810215013072395903662207712643269534078815656004169436657582426737354465210597194246795927971317269029095519062584877757370351276984668913756866679485725577571917543943928556982169151168578409742871858636151789032387591068006679537843579708446567177127265539384022197228617255051029930891538235385004382777680238193895288974570010795539738506626261453613830872216761417444005534224352173650141510352016618067284228871152984082498577589520354675132765080434863317258346545313029174513914269444389973029891212000741442329087637580064636362010052557637266415825108113758474379243206579447658232037941475296958954342103870247235872856772289819390256886098435421230732077810558974811344208615680465353404695724083935589241975399258127200896431018700219717214385256492856174028866109749087684315818967703764515712460855080948700601801754205203010233560445693063108262395000366766726441399906059048110966263885621591954590846647491803981241090685795657861082002271681200508692677286340502654112430597347354943361781060523347181117615167892991087280109716694939754676583636935685796530528640534919828823866889056365864690550603425117514402443006281350061461916968279566120487319262454027186080496322226120674910710826738367799630857250914977377980402477940812074248011384412299207067306297657680261013009306817113414440122394560408689904461243734557856081136830945302970271406828133857094932932870999064309876282308468387458412212143813728668334292773636852947298096038283627828523703789535601786174636035321358667993482147677179507832848471745343375543019184245608310497916755682184708049226274370122798026882962962611262140990788897979634951235549685037488289736896978993845876152960446628586943168499208729230533239207374247935838766752280813171295082381165390233197607091437925130360046653737411170062815064860491107957649780518383857603074859295059609146104178740117441626813741325836582527777732417778166668893386766820878400035664489145297431296948557185161850349428515621609542586427738709508158271274240481102605987780486915291282974675693668152401615737892868432618029264012535966683998704432232116199809115226489396689884235817987800697833167696220486657162498535762504491732796982243290002310811451339529817818991726971793308798338253136444507144372807436810575402016873065295567189510479456928098847819419144722754786390129993954863237950683361432568600762110055471756672003213011888254874216497420404249164259887574112364985967807181531241794377363043210201743676831726829700130993878475711623580314309681161447836026362367344972034942630679251159596327036365556188619384179331827930868768212395298063654896810332155734554143044685794568197063504853934464765382783461770508666990572091599032827219451077791129844691001753157463990920141583497389724589726880338780876111839178249184702168678086357494328922777075512144235915031943914668527146646749661814059551980765067640721802496206624333560306034880540234533361595861597007381942009831418809732755368161014659707435828916076553032874115582430658849521857170591691739724754993416484754135068073865999398198163206153625824157344893092434554076463388958298827992895017505072869396249647532320370115237956853918529888943847351620011554664781103718400169306152817816010295443528076670866739734606784940092326109971935841244894678756205438926529671919887532350970250558789425410719655010573944095460356853377318458385136496294936439331332702287583917190283145505671404063771864590221976865727257925113149960122230309089346071153874779973780840679530441289002968241173138928784099656000360932285865278921940066441130681622715139670059093174868984669527964155669459678127564779681965180405562742056316894766485959569675385898135412533719896449511765488458027113176093113167917713958477900690160880491024551839796233142772627941950327115144213380532273955561674220484037455622846932482380724920205282088705501561912036928251102567787823602204883542436416130224417005454497920510998578406666344791497397708682449794157939669770997947979960335790879474308646883877164716051065167921718667729525572882848542788705490793968405063433754617726929157992064284478513963663612705458263974091721677358391938445964645826771878821463965965484087438419481083389265403967993559100227267294717619661019545870815172071080379130661599875217699435955847528424597931939661297477124576051433623522943102642978917638811071109636588183295432919026646333756847004565486411552850914313693784083702708826526625964639258922762288845396206172191953001208792170232074973109210510365217605129739965379953631830860459182815831139592546330793032891434540021631369958146046573697136314729382241514139611322500856965149888833355463760038633836847196659756290187630444234225871764782823461622770348099080185486543358519538399322497570663579031716291859901363194145585538728788457094957486717397057143478478718783545685112551877487171428672103635867398688854950457770347544072870884436269902645098524472299987238994928241410996689385403540799054434888484875735429311003387171237793362643623073651403854085093615404915192794342131506005133721105373299303933534559153061996953121035933559425478219128526626438993136375216101898291949813871840180137707693054910258337610199781621097787657781615154007346511664197154574555739221779794990719041770795981962444948272187287978807437578549254754565215588037444955937898819803536054820818743137941872462700981312532221733536486106048127526583853106992768492651330491997952039101639166366997558829997301573004526970530294229529994605356956162500728185657213053406306126551089738928171990493054584553485361382631363751460110684795039160056265922740473574562864150596821148514014235890641390337849961157148848634341210677677446988964023966370949075631728093335400587924140423926804505861088907682949807130456554512554818737022463879635755212808980834807900147504003400461150555568697041671277447747223668507091799713705908802198446860170937342343716737485280742940883075336523899529310471453197671919968778839521411594110136582569128987565240923226431977495932485368766469802490031202528759047110886937244574313387187859039378289160824608793535814628423912745646234633837506803823980869311846960174952914225291659953454808001964155395640061690608726037504782484879334615412753169612946051999655924433451154041685979490504985924406924494657086430929732636919018387915541034345961815809296350036303684052463249554779422199464382174721751365555655242564256172116724796155224177168723509534551748625125346436341058156389418655680787105142223884257673670807853124031345989951254693232608388323565886070657275776170308886927314227681257242733660939536510399617420029854334813462547058048249881916144221218439628372100323075174495918495390514360382846647917289572772641877564096506751717234164632673275060443973384322757616632431273986673143504667090954652600936767567132143951928545636869419293725303565285285160408288726355357143642144951412554455213875015727823086258284961495197826437958303250762883597522672728885139753589188294618853898227277362206387955944137560897207697158940872316388974486718934174120734648038242500353138897587148618278885853604548244258642150419297032458318343844861745465914388917521006609553487640891572837750442951718792760879261065060874848664755486443286247495533505822775083490323554133259129487764831495840237888368502359819090780469729775769337165699371986114623507175378812660249245813103901149072942182362849503037992964823256567815851262256613560778234338461429401043096150039428930048778512332040478316385985243237847686547946516169834784704636246726860875534646258351825903042013896884270614147059155808728653574375967851763676091596480487010422717978295326341621642638910729133284801157310483354107296105126714690483373791616709067802705125251803151962543777701355320471806099466286317755240273220021391837634695491355875138906361818265150081915065197352095327010914826324665051701215299882867863190309948644996610227658712709091666516009255030843899235650949553119171747963025831986785069447859163827471494376491549675250025710478215039305860377029164412215043818669250932858227677034675675389517169447560681035278996873399060409125111558545027291774718157826390438261103640449461249149527199885475515950082199084352100660350687672985587423180423214520030703910984517163904512366820352064048042277363383336348193850103949619947577621170595641715105611386511295541736801240685711869148596219328040944080891024621261329193180413412701141265195067503165907859941789499365341083116169942112961822199273421312296532495174623303056446168647930012482826828213772441555126803861786151501966466898308579200580115104802632626188442389501255555059281647738974428234928538187823376786468451542365024648131691619885697343918080849798150449771099329607918428695856266118716772525939460879902401033985295140794670723802971750673116660539960333334517794172300273884567370157166508592349635876004752815918001035277227625630566546249334513079931882026152710086108344908737241457850558631252644435405835610006366923063270772181984615338070590038191390988096209132783229045658418952521360123302377646133601597570529195503209831971086002485867209572675254150517406455575965949895382668110554426754512323008387378959838783949030877831121146435984944910831254451128051044217809856624856017904811753313962091794244125445489353225312589541056961691532671102218741224241365695267355916235253744555758444344419221093897539475560895349244528792085423589425275515564985086760727517712179448838912922695501238925368795207314342699902038156337031148267014043616814855814312742937193848847099651482377464228083645870665034948587726054420430423198789940146093476089165564490670963360892541569491647755234472046366083734599437146377994075317723376996981475706561832055332083934133597339922563612284733211253973452873402218476857446739926414809486685622897457320641983856378660862792181078720501623461725944624824643733589759934580212306203796765121373682371738954897823220188750283341792803998358132434186882428554197527218516572820424723296733712626037483976389559799419182446058902684645668690685658661294376135358054126194063895150965781458756057472229636437346470446878234371626360815861908994943106726706143266982337598178213476938463320020605534543226383496632440035185446232358591761664314823307445705118707922080148970415604748797972031312986516936169356493283400649732675224439932910340737485918183976193336754350169539506552238582611665369938961574634615528333584254116906585728957658033725971645945661185746798971043902588383836675183717212170140385592694649919155062488661658856513508240225420490539461560134529230198514942075558674459095939131671001358828547740967662397061058411598111614560039568829512352670309258459249642519167905713838753148340663278419994176733444682398524491586156051392673886307300532614040004307101417838492255716761260478382255459945377045607365138177566374461647072320526188871253644049249457618015397772109831696024332867502930215705892419391640532399435044299499321989222812886815740272892924220444127938002835086344278798375037217578517488896873627939359950571878234752623729924593545472397622100987218050386886016323080056210365298865314050483118203355099894415601608551079709105610639160356542557765439537849848912989963643610748706125963403564787277153521570410141543738838570941111398474779868818776254915502106161503119303791254856144562185689561425741746294487554824092454166818118052331556204185180991335391520755815720258600675259362087267093031555666621785635303929144955629231518541172460030691011287389665681716294208547126079635407029535896115614455100542842490024000287702491635820744086545877265259271776276638126904386157981137155492445243108643248779928122439795407400722501136882932172959735606533623681655790827185310392033425048874440763327340921019739755267957240744828546015990282452362026962683354196662061010100803147165287276572376153767661014587340150077648789848879891309418300475397987807136873902427512343325932963121990086039155269833068888273424447223770657027663961691893283681712429178130423477878946700398520464822843763971503929809835969022197086457117395367803945783924197190158434121162220480258360557055295519838583181514539719002769148988695041312825854037319317994256971725811590544183104601851812437697979763591806780110746793445006756494703806947756365239189007265919254012667750262524058162556003860678880011759908681779553819587031928533070666381393896832090880800893748173623647714087657251426421509006712798774244707109612451339469611339147522450943837583642896265665146516461755108247396659467354606998858251222269993253744578992459019335384874537041443971582112472544538835690176247834614864926348781239673872781900549853426664480002449666710683726379999131115305381715107088830648617935325168732202202138597090087712285421015507504197868784401783073917370545198943522438985050617956291164413166944313058237895719382234996928262413234096966431115574276954963470890172598787729366010014632380272800197285131388415365099665658572828960166536672758307425707265907779748973912975952224439494784483443986502331682323875014939005419917840421515784067396677918985707091449285484051945140296903231824037890121728212174431402945581897486724509932677764476499271788548227590157927267646644625508938668467358051333174742880424376428755223374371808266479761513843685673115753140634688007017868719599963838721257945825129100631783950411042639204586790057832440944164136090900606036176542203212771702612871028530661886986114824341262579696680391040997009196703603894557979968041250405568037991830562931885943831107563399928318895521057530336819222489517778569419779530662807800008955289100353363137824506049723674274125894538625854625587780088135603848006611333816075979883447510745896142979862063878146660690665035315671749538405801301302171048273882556863505205252008330147274255505599148306520622522930479889740978593856601980322674940162550738056505404034395592377846578555061384290024499863618793506152815109858669341054949276823238829669505667846905210912745723493094989090671018402915066376854261671845796414161652114563462821021972384012487730960000000012E-30010" + }, + "group_bit_router_above_kappa": { + "rational": "24932809801764978219146573160243171905380101313689845182272380348790228127104380461670421660632029322063532920985484826741675773112790075271433721961798422597055902248356562624337109274914026774619773251466471161392951566817679526527082606287211958644749726813950750978319458416581032664634560844666063598866015296485693020940039610375457082977143790537654261446437683293682660677349915120871807221347128855184945151849181567241928831351899141988631961285430223372460639051070820688024571280063668316016591304009265639975538460958391583313187799848377691296879396751492290360262190623087704788532454388185700072032258198221497962764757523395236161607168878266602922146327209283452276678261798039323875350648887572946357465474185692744000589681183313652696408760974999937839091938922499993778944811627710159867652748349776738078511111252790674249328793378508444828922464725597245592136380928793127914198786859180368230671356731907262429141421590855320980771661735220453427095173252998502163867072147885408186307255480345152326657579283087396775578489646803602481958689460708689230958035849983006612401088748050875542369377875650316896004166190286449722392991926406457833054860397886235843275699638146355194677413555182170248316227531649355979952041557171587922012003735348649434621543521232930501677194492961597103350700763301627325611956823325088564158257838578834346380883530537866649816965616243344361332406556590614541443924705851402530241016755097854147877420643611832657236902809669430333083927654406717058231174367040106290170552788910134498219169307465826047522654826245662341844299359909009723607021523784759581403721298718854944269618708683302123828763679616231219117863409095512890398594792527057546777922501993578828454342318534857305333432085522090312051960846046272064533956090958021825426493520300202799049437985257603918976564272603180387012391006072427488628594229707876085023988124303742621709412918983693922567012202796260088516868367501554890422867060732851582120345583357353703818301203676231014590464266061463351588541988269062590123580567193771104059138675259364369719381370028009919219403951787366174107960586372761362983413032683717806307628544716533012368157064395310931605183708170560742339124184124907537372522722547075278919710529728598837716475614574397856800848193205016882349203744563563632415089648204606813909487842274780286300476958133073504120993492768792446094411074750346118736819796685752446130222707641993064885323438862049456703180769147458887968162838396210393705279257836904662260279923960664389497215229816790352026540619072235782893467747867880703248247844904241727692423245410387525173573002232589513488904399054320077127617173152756214270813044443457105001157889348399840498581452154542875698624249025447573844763464245291073869443512486232474883109963447957604697209635115849766367898083099476209822670662491958304976983631037989772168738520942788343096261696040523274398498126762541252994487296337293515077319251124754868700448731288199518713669623652712786594128581701729463278743808607243789144474667129892738823187363162884691316236419394551785938321383281728701180749250687516897273472364944697300189068836114614390172360406419757211945975220025734666207788584370725266476789758729096123151853649950186900723557639412950002778257680127196869539286572043057805922777381236985659826587059039388836929934221807748715253637355695114730821431625492719177150679353953938621540590417670989213435474237196089753960262699288708340451520407207788803762774010753303536038236099563010176550533528192945029432185118639583629174414097629528441603391638884067945776642212712185169088703466044156156240139307061907235371014394391373735811723428927918012247966444830764987990428884245207722538360543153919490365281813383302376082037461567635892988739594058660286820929256603119853213609870675722824219933151259063574444490303193930601005577892497656378589069217757062750673068551279917966842336161150624960397104884541913559417329048033245176133860622068799533298348371038943230298649208758621677576790781718211597343290122744518784113619136654196262958892412521189821400543331323557125114908214913887684766779982719861726774478818901752009580699250711518058900860292155898914933594781988302295609992393495614470587704926566104175276533541664514635660796550942998187735456141097697240388052964698796953920983324976171435625978032551112998472498117171584681041849412260155334013271402383973145332452866076617127499368363187988210297770307500102878750450848084732466971777007521314829651120398488877311170090751100874299332340616502811459039746605092222879004998358615298467949123481039955094495789915591848394748986561377499461850387260142302627399203346097868267163639903597123864132907632691878345849794226844053569808958951336233682798695948149823752292216183252476605361217315349464832092680846028637395928305609822734872435772402411954694961585033616164335583174995391650480189865355185560802556981774736300737231819210410014190544996634269994897363018189630559451645325532686449116907883726652788653520959782623146430509611950720477783335087603621069156457123253910553197201944844073612699046140987838035639406296872524245612702454189271403219512763409504108146911464535253221788008482300907900415572945754023194673662917850489138358730468172400789072362858449078249082137772800424561365743971613734143168299225959158200788803880147035704012082818776827494214192067400736726767693928816211416308369527851433631237516230660958913959967089293338167930196167092804019609392937695176769641797317488752474015285227940320622508244374993795598034316634585751569274406088911161312877976368759209444865643795543297499351601345793620434015482971209868421661943493737524198639920110419047404616945075295401162023191316636355457828780199002015144630330501983994894829547962975934046599703084019631933249108613330418034044750923673376694889042338368639434616768800088281858629481489369462335971463620218971737332015031622678730414439604132373902502204872270712884821762246720069572435080143991168183649958615385093634507866713126757356176780129172500487839797434375224547801515430755763163178982981902206529777391348803610513121309397826271157368958660113049375670378009709187986301509016425833848170232259384735317456655332846285467230269506473410761585258314888353303388749425776490458239174728312817971498702126874905437273198481846749408747013915658743248421022916632419630493458700446731531740743827920333613621186079893850029198368849644443054584406785202369083943586738248524494196691085716274843982434772906726456235767173625757913648529189076970904003354371878208180883263219313415785546823106068057165617675437785543882570867846198035447698435120772021301445264984198490886591743941385945981534152610679403583741237709512104169515694191168666565390070834630314258687437876245095064382633948212155534530173758671566016759876056140133055008752695720279173428116286745999426037195270345454353635940552958252597609026640409254793633115354625857669565761873680888065825811657721619542388745368796314326000780465134913807375870945375443170199799717163789095271614781256942351077329452986738745193575093150710671394556412679221236533115101973720043593442394414953118484879310315580174048334505634218491811950854071830426966080794963906588708911339854730826426814762734809506812228054235842217872215372301272977310531270529183586176263836671692505304080783882500176126641275637066603834019755883938851055526673925248673165459223184023655283512672366205538224352293976997212670267401913109874288429667760928208918712212744776959634905074636639569244031717867652793460401493689267217376503037886296791943458104874277601094509742139122773925829291434765003649709026293731487307867909602920155645070691641857884754992459727571960047522178411819317802049755337120871854567109823274197329077783060965119897198791616455464903105480462540633950891962510180966525843377067022679230377080189262274768819765895841121707984193844610048380243200384557372242577560022148099019078890199452584317657905927550728969118932926323451767713959553725657954140802167950722545101844524553001994234948442912902266323289895746163408300631652792359855953048744053466014851600687941502804244565438704348471413676572933649651161591252503663535266774093937500157082809256912693574720583809549882952829543444297528238213416183149286374969790444188639436078373560306869220965411108426913503783074882136912323658368279516938928879409440278054673714072873602440470725811533548203635997553243305723097534612864510578818911766075441689755273618210255586580552707460298319479861381490656829620111130001763691082270373184654637750252317094973320031021641622050673729829282060153826095272127279718586481269778816427982475700362728268164817789101672531805449519358363087450804363763220949198073616211842865159900360449655836176526153041606478319622184945880093225839877072530968293327179115392830041630466896247618007186601151973175942295076527017550266792119614102524677491081856944156459869171447602163597559185167733311624934721905998632460439399741605520208358978288110857473973290622724907075668563676751967811722421567432541257526291916704217567437827529420491406889473997427828949245357794242304716290591630053003353497338232356955602998387034547721240638691876350989919840086217107106652042507314678199915964529453085003495768514984092352075998852119502354628376918065985946698276751728166072170974575291427877946681400488388554399046390505004416666747571742650377919402143929225351591656106867084741517396545104781133291855262876612376160232694319092450693272286799004268977349422511662252349410510806281195948597438941567601247765442323253242021756233536280969823981820934547144633473998451685032795217722590242742696013853618688812816445446842004793284809196312117094094384053578914597953731777782962590490059725703362154551338289694185128012591151782660808239098350968778899652428940241087516526200546592413428611328718100481647215292129330863716910092604329544564465557287974378466711374134012994386572325047833634331066883385681028615296211705147983214535747385268673667311430506726725005352214395890513231766324665749060709876805553212004114935444086599155724789617736312030453548666419499583441211224625571878752615916699990565633650393027333309152468428246098737770085617884530728384162437252638153431595258466934530628957937819218349721519748165545176255999727795774163496904094934172899227073556401027377050507775730093986978419885587969052404058890696996455716079359794801566369806574342264717060658177918050142762731187626587997843574894836890961803616208933702540291259279936586975240745865054477542864318558049707371010096062625618814385908619152452555786236175899709014114186076000575982485015150908506969786911066316624541174646624682378561954368100407575703980946066488048248701343556936903581089099011866361947617919335378694435364471095739789485653566516867753415232406015045027198440345610464262172253727483149068677940881121484166334749680605658635807085986298219494778846882054321677981254997373271679446362867720918055667100201757803930318979833616913561725847077335613265759124366938626924034832545437401234287210030345264339843049755747995586915552434651501580611320701306369911660331731815243286189493212304920025833537325881897147413857322089829286956050161186707779406312719020918493020783560462692045163994382423716743244696484150422461041205226788827764926455237132615309958440061191987002605330323856503735607474587541428964656127681157246800651280095060864174837965959512206727950647586796366319560416750984499252173278184212137198071955680476812027325522157668958996941610355801546390863548356370604174102593871428988483070004251728015896678219666126464153615043800652424417007350846771831681051103622017928208204922627497106609570740788536704247231681405680835230494910970126347524590701153769808555216698869507545157828284103936721717233844477095222349070748066404651328966216856383626301257283764928012275093247917189180835473157692978561593475146244953907731912025039083249441784043260746880258453829525454241709230938085941448317938543877255423663480968366183866293701565287119361245829532787323951723697093118170234590928188059675211253032822923685731611040712655645312442550144691676740409580745383550695154145834113057090250732503037116181761365352161138223163881489275106395743131234468529350047841250349894002305244153831111788714136589126981871012857406875222807973680674282725225784369875100775678277846927016910007062537139215450197097801726112860919285172514217287666152246309760824225214416204609390369516340768104705853021183690727468707375415292795517004914951440097095337345753967483026582575889395280767241724147913435429267957348077823417670814005600400686183538958195430505867598038379132033968474774171971940889355962822610521951007568915280423662451606747212824531810080132501837338709152601078671390671094759615803614590053294359883871734818306721130970231001645729471644910688215085083135991285678286779093797041967393191327080874440159106718744809370106916660402997451896481759728761052182102713740953240876880252246540147863443752869059376047814711692877818836122784749713723280384360919441381062593978164060515904723932446380702154027692360414028321240517698144409898742241283216415582550625408495129312896633280521890708708643400074181445783210235194525496864542807111874128041878623250283626380845747522328222152189452167913452616052776618909623681859984013380752441054550978622654136752773675333507998253963670813872774789388477541902004824655347240529758602739997857854382464343296005073449487863313795379361121383833834515006533260874852744884774811514460074515196188543398893713607145465984330953270296957253933327897143683724045892476347011568631400712151699200795309709003253006388990649285079716938047729229527365838269799385519737537345599768013247327926002841089989357446368964566305914508129011888141947066181532668607146900825389429363749244606236529648999577633609874604473617212851898411673409416515103321432687115157455424659555570475972282699401615760593637251853285941494931217368299881402386145010609743171114694477813363697632007062282663728695559988085393075884661703563278547548465323963602340854995004379058068329655105310310405401816006652398035483430173465583416562475428733723668600961028306024990704047957015070593693475996989707519719743868969667363507145952751010436270776039055099866042551593235494382741589240302184249608888530585685275059875860646358305799462404306305972176930183479417041030775632002765974234400009869582109088286061144880028485076289309297820185687617705491825045165216714700919928469490806167276500236224090414670361381831619994150457498556567236114130222555542727614790992814749256529690068103202677572635452269327601883168112823535827648845467906380572669684233190189907070610380943521794076057878943802380843117190581353577791113661086797202743605429292719281190354694968472912229141284235007034135397450448747163149882007898460237569502454730382172806145640555553997174363561757095640273748791462938868252280090269571925843371902547345330582538626438075803034487403105024152003028243946088079646058592096097918117026904990998770401585521033237196487901936610045413659161281420677958162279457450368618174147810122543975901155880431309292679773518791170986236409612565190453754700260658989302253453342928551075943497036768436418154584036835241756245902659439942508381834394457942193905541189444466212993076894929240097235648283490822794018361804650623226449696908409954210585877888653690009967345809305120981479832356001839224847019648747584632913643929982987519465829082493432796780045689937484468516798438272044036439284714700762510917747211940747153762754336167397563667047363551789249533578814123643100984631228749057754250707050173721698791262571618136740803031970099872545084664320744182915967286645853514872424015921336537086713199744534839442913124866972545116041256351619658992165785710773461192810215013072395903662207712643269534078815656004169436657582426737354465210597194246795927971317269029095519062584877757370351276984668913756866679485725577571917543943928556982169151168578409742871858636151789032387591068006679537843579708446567177127265539384022197228617255051029930891538235385004382777680238193895288974570010795539738506626261453613830872216761417444005534224352173650141510352016618067284228871152984082498577589520354675132765080434863317258346545313029174513914269444389973029891212000741442329087637580064636362010052557637266415825108113758474379243206579447658232037941475296958954342103870247235872856772289819390256886098435421230732077810558974811344208615680465353404695724083935589241975399258127200896431018700219717214385256492856174028866109749087684315818967703764515712460855080948700601801754205203010233560445693063108262395000366766726441399906059048110966263885621591954590846647491803981241090685795657861082002271681200508692677286340502654112430597347354943361781060523347181117615167892991087280109716694939754676583636935685796530528640534919828823866889056365864690550603425117514402443006281350061461916968279566120487319262454027186080496322226120674910710826738367799630857250914977377980402477940812074248011384412299207067306297657680261013009306817113414440122394560408689904461243734557856081136830945302970271406828133857094932932870999064309876282308468387458412212143813728668334292773636852947298096038283627828523703789535601786174636035321358667993482147677179507832848471745343375543019184245608310497916755682184708049226274370122798026882962962611262140990788897979634951235549685037488289736896978993845876152960446628586943168499208729230533239207374247935838766752280813171295082381165390233197607091437925130360046653737411170062815064860491107957649780518383857603074859295059609146104178740117441626813741325836582527777732417778166668893386766820878400035664489145297431296948557185161850349428515621609542586427738709508158271274240481102605987780486915291282974675693668152401615737892868432618029264012535966683998704432232116199809115226489396689884235817987800697833167696220486657162498535762504491732796982243290002310811451339529817818991726971793308798338253136444507144372807436810575402016873065295567189510479456928098847819419144722754786390129993954863237950683361432568600762110055471756672003213011888254874216497420404249164259887574112364985967807181531241794377363043210201743676831726829700130993878475711623580314309681161447836026362367344972034942630679251159596327036365556188619384179331827930868768212395298063654896810332155734554143044685794568197063504853934464765382783461770508666990572091599032827219451077791129844691001753157463990920141583497389724589726880338780876111839178249184702168678086357494328922777075512144235915031943914668527146646749661814059551980765067640721802496206624333560306034880540234533361595861597007381942009831418809732755368161014659707435828916076553032874115582430658849521857170591691739724754993416484754135068073865999398198163206153625824157344893092434554076463388958298827992895017505072869396249647532320370115237956853918529888943847351620011554664781103718400169306152817816010295443528076670866739734606784940092326109971935841244894678756205438926529671919887532350970250558789425410719655010573944095460356853377318458385136496294936439331332702287583917190283145505671404063771864590221976865727257925113149960122230309089346071153874779973780840679530441289002968241173138928784099656000360932285865278921940066441130681622715139670059093174868984669527964155669459678127564779681965180405562742056316894766485959569675385898135412533719896449511765488458027113176093113167917713958477900690160880491024551839796233142772627941950327115144213380532273955561674220484037455622846932482380724920205282088705501561912036928251102567787823602204883542436416130224417005454497920510998578406666344791497397708682449794157939669770997947979960335790879474308646883877164716051065167921718667729525572882848542788705490793968405063433754617726929157992064284478513963663612705458263974091721677358391938445964645826771878821463965965484087438419481083389265403967993559100227267294717619661019545870815172071080379130661599875217699435955847528424597931939661297477124576051433623522943102642978917638811071109636588183295432919026646333756847004565486411552850914313693784083702708826526625964639258922762288845396206172191953001208792170232074973109210510365217605129739965379953631830860459182815831139592546330793032891434540021631369958146046573697136314729382241514139611322500856965149888833355463760038633836847196659756290187630444234225871764782823461622770348099080185486543358519538399322497570663579031716291859901363194145585538728788457094957486717397057143478478718783545685112551877487171428672103635867398688854950457770347544072870884436269902645098524472299987238994928241410996689385403540799054434888484875735429311003387171237793362643623073651403854085093615404915192794342131506005133721105373299303933534559153061996953121035933559425478219128526626438993136375216101898291949813871840180137707693054910258337610199781621097787657781615154007346511664197154574555739221779794990719041770795981962444948272187287978807437578549254754565215588037444955937898819803536054820818743137941872462700981312532221733536486106048127526583853106992768492651330491997952039101639166366997558829997301573004526970530294229529994605356956162500728185657213053406306126551089738928171990493054584553485361382631363751460110684795039160056265922740473574562864150596821148514014235890641390337849961157148848634341210677677446988964023966370949075631728093335400587924140423926804505861088907682949807130456554512554818737022463879635755212808980834807900147504003400461150555568697041671277447747223668507091799713705908802198446860170937342343716737485280742940883075336523899529310471453197671919968778839521411594110136582569128987565240923226431977495932485368766469802490031202528759047110886937244574313387187859039378289160824608793535814628423912745646234633837506803823980869311846960174952914225291659953454808001964155395640061690608726037504782484879334615412753169612946051999655924433451154041685979490504985924406924494657086430929732636919018387915541034345961815809296350036303684052463249554779422199464382174721751365555655242564256172116724796155224177168723509534551748625125346436341058156389418655680787105142223884257673670807853124031345989951254693232608388323565886070657275776170308886927314227681257242733660939536510399617420029854334813462547058048249881916144221218439628372100323075174495918495390514360382846647917289572772641877564096506751717234164632673275060443973384322757616632431273986673143504667090954652600936767567132143951928545636869419293725303565285285160408288726355357143642144951412554455213875015727823086258284961495197826437958303250762883597522672728885139753589188294618853898227277362206387955944137560897207697158940872316388974486718934174120734648038242500353138897587148618278885853604548244258642150419297032458318343844861745465914388917521006609553487640891572837750442951718792760879261065060874848664755486443286247495533505822775083490323554133259129487764831495840237888368502359819090780469729775769337165699371986114623507175378812660249245813103901149072942182362849503037992964823256567815851262256613560778234338461429401043096150039428930048778512332040478316385985243237847686547946516169834784704636246726860875534646258351825903042013896884270614147059155808728653574375967851763676091596480487010422717978295326341621642638910729133284801157310483354107296105126714690483373791616709067802705125251803151962543777701355320471806099466286317755240273220021391837634695491355875138906361818265150081915065197352095327010914826324665051701215299882867863190309948644996610227658712709091666516009255030843899235650949553119171747963025831986785069447859163827471494376491549675250025710478215039305860377029164412215043818669250932858227677034675675389517169447560681035278996873399060409125111558545027291774718157826390438261103640449461249149527199885475515950082199084352100660350687672985587423180423214520030703910984517163904512366820352064048042277363383336348193850103949619947577621170595641715105611386511295541736801240685711869148596219328040944080891024621261329193180413412701141265195067503165907859941789499365341083116169942112961822199273421312296532495174623303056446168647930012482826828213772441555126803861786151501966466898308579200580115104802632626188442389501255555059281647738974428234928538187823376786468451542365024648131691619885697343918080849798150449771099329607918428695856266118716772525939460879902401033985295140794670723802971750673116660539960333334517794172300273884567370157166508592349635876004752815918001035277227625630566546249334513079931882026152710086108344908737241457850558631252644435405835610006366923063270772181984615338070590038191390988096209132783229045658418952521360123302377646133601597570529195503209831971086002485867209572675254150517406455575965949895382668110554426754512323008387378959838783949030877831121146435984944910831254451128051044217809856624856017904811753313962091794244125445489353225312589541056961691532671102218741224241365695267355916235253744555758444344419221093897539475560895349244528792085423589425275515564985086760727517712179448838912922695501238925368795207314342699902038156337031148267014043616814855814312742937193848847099651482377464228083645870665034948587726054420430423198789940146093476089165564490670963360892541569491647755234472046366083734599437146377994075317723376996981475706561832055332083934133597339922563612284733211253973452873402218476857446739926414809486685622897457320641983856378660862792181078720501623461725944624824643733589759934580212306203796765121373682371738954897823220188750283341792803998358132434186882428554197527218516572820424723296733712626037483976389559799419182446058902684645668690685658661294376135358054126194063895150965781458756057472229636437346470446878234371626360815861908994943106726706143266982337598178213476938463320020605534543226383496632440035185446232358591761664314823307445705118707922080148970415604748797972031312986516936169356493283400649732675224439932910340737485918183976193336754350169539506552238582611665369938961574634615528333584254116906585728957658033725971645945661185746798971043902588383836675183717212170140385592694649919155062488661658856513508240225420490539461560134529230198514942075558674459095939131671001358828547740967662397061058411598111614560039568829512352670309258459249642519167905713838753148340663278419994176733444682398524491586156051392673886307300532614040004307101417838492255716761260478382255459945377045607365138177566374461647072320526188871253644049249457618015397772109831696024332867502930215705892419391640532399435044299499321989222812886815740272892924220444127938002835086344278798375037217578517488896873627939359950571878234752623729924593545472397622100987218050386886016323080056210365298865314050483118203355099894415601608551079709105610639160356542557765439537849848912989963643610748706125963403564787277153521570410141543738838570941111398474779868818776254915502106161503119303791254856144562185689561425741746294487554824092454166818118052331556204185180991335391520755815720258600675259362087267093031555666621785635303929144955629231518541172460030691011287389665681716294208547126079635407029535896115614455100542842490024000287702491635820744086545877265259271776276638126904386157981137155492445243108643248779928122439795407400722501136882932172959735606533623681655790827185310392033425048874440763327340921019739755267957240744828546015990282452362026962683354196662061010100803147165287276572376153767661014587340150077648789848879891309418300475397987807136873902427512343325932963121990086039155269833068888273424447223770657027663961691893283681712429178130423477878946700398520464822843763971503929809835969022197086457117395367803945783924197190158434121162220480258360557055295519838583181514539719002769148988695041312825854037319317994256971725811590544183104601851812437697979763591806780110746793445006756494703806947756365239189007265919254012667750262524058162556003860678880011759908681779553819587031928533070666381393896832090880800893748173623647714087657251426421509006712798774244707109612451339469611339147522450943837583642896265665146516461755108247396659467354606998858251222269993253744578992459019335384874537041443971582112472544538835690176247834614864926348781239673872781900549853426664480002449666710683726379999131115305381715107088830648617935325168732202202138597090087712285421015507504197868784401783073917370545198943522438985050617956291164413166944313058237895719382234996928262413234096966431115574276954963470890172598787729366010014632380272800197285131388415365099665658572828960166536672758307425707265907779748973912975952224439494784483443986502331682323875014939005419917840421515784067396677918985707091449285484051945140296903231824037890121728212174431402945581897486724509932677764476499271788548227590157927267646644625508938668467358051333174742880424376428755223374371808266479761513843685673115753140634688007017868719599963838721257945825129100631783950411042639204586790057832440944164136090900606036176542203212771702612871028530661886986114824341262579696680391040997009196703603894557979968041250405568037991830562931885943831107563399928318895521057530336819222489517778569419779530662807800008955289100353363137824506049723674274125894538625854625587780088135603848006611333816075979883447510745896142979862063878146660690665035315671749538405801301302171048273882556863505205252008330147274255505599148306520622522930479889740978593856601980322674940162550738056505404034395592377846578555061384290024499863618793506152815109858669341054949276823238829669505667846905210912745723493094989090671018402915066376854261671845796414161652114563462821021972384012487730960000000009/100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "2.4932809801764978219146573160243171905380101313689845182272380348790228127104380461670421660632029322063532920985484826741675773112790075271433721961798422597055902248356562624337109274914026774619773251466471161392951566817679526527082606287211958644749726813950750978319458416581032664634560844666063598866015296485693020940039610375457082977143790537654261446437683293682660677349915120871807221347128855184945151849181567241928831351899141988631961285430223372460639051070820688024571280063668316016591304009265639975538460958391583313187799848377691296879396751492290360262190623087704788532454388185700072032258198221497962764757523395236161607168878266602922146327209283452276678261798039323875350648887572946357465474185692744000589681183313652696408760974999937839091938922499993778944811627710159867652748349776738078511111252790674249328793378508444828922464725597245592136380928793127914198786859180368230671356731907262429141421590855320980771661735220453427095173252998502163867072147885408186307255480345152326657579283087396775578489646803602481958689460708689230958035849983006612401088748050875542369377875650316896004166190286449722392991926406457833054860397886235843275699638146355194677413555182170248316227531649355979952041557171587922012003735348649434621543521232930501677194492961597103350700763301627325611956823325088564158257838578834346380883530537866649816965616243344361332406556590614541443924705851402530241016755097854147877420643611832657236902809669430333083927654406717058231174367040106290170552788910134498219169307465826047522654826245662341844299359909009723607021523784759581403721298718854944269618708683302123828763679616231219117863409095512890398594792527057546777922501993578828454342318534857305333432085522090312051960846046272064533956090958021825426493520300202799049437985257603918976564272603180387012391006072427488628594229707876085023988124303742621709412918983693922567012202796260088516868367501554890422867060732851582120345583357353703818301203676231014590464266061463351588541988269062590123580567193771104059138675259364369719381370028009919219403951787366174107960586372761362983413032683717806307628544716533012368157064395310931605183708170560742339124184124907537372522722547075278919710529728598837716475614574397856800848193205016882349203744563563632415089648204606813909487842274780286300476958133073504120993492768792446094411074750346118736819796685752446130222707641993064885323438862049456703180769147458887968162838396210393705279257836904662260279923960664389497215229816790352026540619072235782893467747867880703248247844904241727692423245410387525173573002232589513488904399054320077127617173152756214270813044443457105001157889348399840498581452154542875698624249025447573844763464245291073869443512486232474883109963447957604697209635115849766367898083099476209822670662491958304976983631037989772168738520942788343096261696040523274398498126762541252994487296337293515077319251124754868700448731288199518713669623652712786594128581701729463278743808607243789144474667129892738823187363162884691316236419394551785938321383281728701180749250687516897273472364944697300189068836114614390172360406419757211945975220025734666207788584370725266476789758729096123151853649950186900723557639412950002778257680127196869539286572043057805922777381236985659826587059039388836929934221807748715253637355695114730821431625492719177150679353953938621540590417670989213435474237196089753960262699288708340451520407207788803762774010753303536038236099563010176550533528192945029432185118639583629174414097629528441603391638884067945776642212712185169088703466044156156240139307061907235371014394391373735811723428927918012247966444830764987990428884245207722538360543153919490365281813383302376082037461567635892988739594058660286820929256603119853213609870675722824219933151259063574444490303193930601005577892497656378589069217757062750673068551279917966842336161150624960397104884541913559417329048033245176133860622068799533298348371038943230298649208758621677576790781718211597343290122744518784113619136654196262958892412521189821400543331323557125114908214913887684766779982719861726774478818901752009580699250711518058900860292155898914933594781988302295609992393495614470587704926566104175276533541664514635660796550942998187735456141097697240388052964698796953920983324976171435625978032551112998472498117171584681041849412260155334013271402383973145332452866076617127499368363187988210297770307500102878750450848084732466971777007521314829651120398488877311170090751100874299332340616502811459039746605092222879004998358615298467949123481039955094495789915591848394748986561377499461850387260142302627399203346097868267163639903597123864132907632691878345849794226844053569808958951336233682798695948149823752292216183252476605361217315349464832092680846028637395928305609822734872435772402411954694961585033616164335583174995391650480189865355185560802556981774736300737231819210410014190544996634269994897363018189630559451645325532686449116907883726652788653520959782623146430509611950720477783335087603621069156457123253910553197201944844073612699046140987838035639406296872524245612702454189271403219512763409504108146911464535253221788008482300907900415572945754023194673662917850489138358730468172400789072362858449078249082137772800424561365743971613734143168299225959158200788803880147035704012082818776827494214192067400736726767693928816211416308369527851433631237516230660958913959967089293338167930196167092804019609392937695176769641797317488752474015285227940320622508244374993795598034316634585751569274406088911161312877976368759209444865643795543297499351601345793620434015482971209868421661943493737524198639920110419047404616945075295401162023191316636355457828780199002015144630330501983994894829547962975934046599703084019631933249108613330418034044750923673376694889042338368639434616768800088281858629481489369462335971463620218971737332015031622678730414439604132373902502204872270712884821762246720069572435080143991168183649958615385093634507866713126757356176780129172500487839797434375224547801515430755763163178982981902206529777391348803610513121309397826271157368958660113049375670378009709187986301509016425833848170232259384735317456655332846285467230269506473410761585258314888353303388749425776490458239174728312817971498702126874905437273198481846749408747013915658743248421022916632419630493458700446731531740743827920333613621186079893850029198368849644443054584406785202369083943586738248524494196691085716274843982434772906726456235767173625757913648529189076970904003354371878208180883263219313415785546823106068057165617675437785543882570867846198035447698435120772021301445264984198490886591743941385945981534152610679403583741237709512104169515694191168666565390070834630314258687437876245095064382633948212155534530173758671566016759876056140133055008752695720279173428116286745999426037195270345454353635940552958252597609026640409254793633115354625857669565761873680888065825811657721619542388745368796314326000780465134913807375870945375443170199799717163789095271614781256942351077329452986738745193575093150710671394556412679221236533115101973720043593442394414953118484879310315580174048334505634218491811950854071830426966080794963906588708911339854730826426814762734809506812228054235842217872215372301272977310531270529183586176263836671692505304080783882500176126641275637066603834019755883938851055526673925248673165459223184023655283512672366205538224352293976997212670267401913109874288429667760928208918712212744776959634905074636639569244031717867652793460401493689267217376503037886296791943458104874277601094509742139122773925829291434765003649709026293731487307867909602920155645070691641857884754992459727571960047522178411819317802049755337120871854567109823274197329077783060965119897198791616455464903105480462540633950891962510180966525843377067022679230377080189262274768819765895841121707984193844610048380243200384557372242577560022148099019078890199452584317657905927550728969118932926323451767713959553725657954140802167950722545101844524553001994234948442912902266323289895746163408300631652792359855953048744053466014851600687941502804244565438704348471413676572933649651161591252503663535266774093937500157082809256912693574720583809549882952829543444297528238213416183149286374969790444188639436078373560306869220965411108426913503783074882136912323658368279516938928879409440278054673714072873602440470725811533548203635997553243305723097534612864510578818911766075441689755273618210255586580552707460298319479861381490656829620111130001763691082270373184654637750252317094973320031021641622050673729829282060153826095272127279718586481269778816427982475700362728268164817789101672531805449519358363087450804363763220949198073616211842865159900360449655836176526153041606478319622184945880093225839877072530968293327179115392830041630466896247618007186601151973175942295076527017550266792119614102524677491081856944156459869171447602163597559185167733311624934721905998632460439399741605520208358978288110857473973290622724907075668563676751967811722421567432541257526291916704217567437827529420491406889473997427828949245357794242304716290591630053003353497338232356955602998387034547721240638691876350989919840086217107106652042507314678199915964529453085003495768514984092352075998852119502354628376918065985946698276751728166072170974575291427877946681400488388554399046390505004416666747571742650377919402143929225351591656106867084741517396545104781133291855262876612376160232694319092450693272286799004268977349422511662252349410510806281195948597438941567601247765442323253242021756233536280969823981820934547144633473998451685032795217722590242742696013853618688812816445446842004793284809196312117094094384053578914597953731777782962590490059725703362154551338289694185128012591151782660808239098350968778899652428940241087516526200546592413428611328718100481647215292129330863716910092604329544564465557287974378466711374134012994386572325047833634331066883385681028615296211705147983214535747385268673667311430506726725005352214395890513231766324665749060709876805553212004114935444086599155724789617736312030453548666419499583441211224625571878752615916699990565633650393027333309152468428246098737770085617884530728384162437252638153431595258466934530628957937819218349721519748165545176255999727795774163496904094934172899227073556401027377050507775730093986978419885587969052404058890696996455716079359794801566369806574342264717060658177918050142762731187626587997843574894836890961803616208933702540291259279936586975240745865054477542864318558049707371010096062625618814385908619152452555786236175899709014114186076000575982485015150908506969786911066316624541174646624682378561954368100407575703980946066488048248701343556936903581089099011866361947617919335378694435364471095739789485653566516867753415232406015045027198440345610464262172253727483149068677940881121484166334749680605658635807085986298219494778846882054321677981254997373271679446362867720918055667100201757803930318979833616913561725847077335613265759124366938626924034832545437401234287210030345264339843049755747995586915552434651501580611320701306369911660331731815243286189493212304920025833537325881897147413857322089829286956050161186707779406312719020918493020783560462692045163994382423716743244696484150422461041205226788827764926455237132615309958440061191987002605330323856503735607474587541428964656127681157246800651280095060864174837965959512206727950647586796366319560416750984499252173278184212137198071955680476812027325522157668958996941610355801546390863548356370604174102593871428988483070004251728015896678219666126464153615043800652424417007350846771831681051103622017928208204922627497106609570740788536704247231681405680835230494910970126347524590701153769808555216698869507545157828284103936721717233844477095222349070748066404651328966216856383626301257283764928012275093247917189180835473157692978561593475146244953907731912025039083249441784043260746880258453829525454241709230938085941448317938543877255423663480968366183866293701565287119361245829532787323951723697093118170234590928188059675211253032822923685731611040712655645312442550144691676740409580745383550695154145834113057090250732503037116181761365352161138223163881489275106395743131234468529350047841250349894002305244153831111788714136589126981871012857406875222807973680674282725225784369875100775678277846927016910007062537139215450197097801726112860919285172514217287666152246309760824225214416204609390369516340768104705853021183690727468707375415292795517004914951440097095337345753967483026582575889395280767241724147913435429267957348077823417670814005600400686183538958195430505867598038379132033968474774171971940889355962822610521951007568915280423662451606747212824531810080132501837338709152601078671390671094759615803614590053294359883871734818306721130970231001645729471644910688215085083135991285678286779093797041967393191327080874440159106718744809370106916660402997451896481759728761052182102713740953240876880252246540147863443752869059376047814711692877818836122784749713723280384360919441381062593978164060515904723932446380702154027692360414028321240517698144409898742241283216415582550625408495129312896633280521890708708643400074181445783210235194525496864542807111874128041878623250283626380845747522328222152189452167913452616052776618909623681859984013380752441054550978622654136752773675333507998253963670813872774789388477541902004824655347240529758602739997857854382464343296005073449487863313795379361121383833834515006533260874852744884774811514460074515196188543398893713607145465984330953270296957253933327897143683724045892476347011568631400712151699200795309709003253006388990649285079716938047729229527365838269799385519737537345599768013247327926002841089989357446368964566305914508129011888141947066181532668607146900825389429363749244606236529648999577633609874604473617212851898411673409416515103321432687115157455424659555570475972282699401615760593637251853285941494931217368299881402386145010609743171114694477813363697632007062282663728695559988085393075884661703563278547548465323963602340854995004379058068329655105310310405401816006652398035483430173465583416562475428733723668600961028306024990704047957015070593693475996989707519719743868969667363507145952751010436270776039055099866042551593235494382741589240302184249608888530585685275059875860646358305799462404306305972176930183479417041030775632002765974234400009869582109088286061144880028485076289309297820185687617705491825045165216714700919928469490806167276500236224090414670361381831619994150457498556567236114130222555542727614790992814749256529690068103202677572635452269327601883168112823535827648845467906380572669684233190189907070610380943521794076057878943802380843117190581353577791113661086797202743605429292719281190354694968472912229141284235007034135397450448747163149882007898460237569502454730382172806145640555553997174363561757095640273748791462938868252280090269571925843371902547345330582538626438075803034487403105024152003028243946088079646058592096097918117026904990998770401585521033237196487901936610045413659161281420677958162279457450368618174147810122543975901155880431309292679773518791170986236409612565190453754700260658989302253453342928551075943497036768436418154584036835241756245902659439942508381834394457942193905541189444466212993076894929240097235648283490822794018361804650623226449696908409954210585877888653690009967345809305120981479832356001839224847019648747584632913643929982987519465829082493432796780045689937484468516798438272044036439284714700762510917747211940747153762754336167397563667047363551789249533578814123643100984631228749057754250707050173721698791262571618136740803031970099872545084664320744182915967286645853514872424015921336537086713199744534839442913124866972545116041256351619658992165785710773461192810215013072395903662207712643269534078815656004169436657582426737354465210597194246795927971317269029095519062584877757370351276984668913756866679485725577571917543943928556982169151168578409742871858636151789032387591068006679537843579708446567177127265539384022197228617255051029930891538235385004382777680238193895288974570010795539738506626261453613830872216761417444005534224352173650141510352016618067284228871152984082498577589520354675132765080434863317258346545313029174513914269444389973029891212000741442329087637580064636362010052557637266415825108113758474379243206579447658232037941475296958954342103870247235872856772289819390256886098435421230732077810558974811344208615680465353404695724083935589241975399258127200896431018700219717214385256492856174028866109749087684315818967703764515712460855080948700601801754205203010233560445693063108262395000366766726441399906059048110966263885621591954590846647491803981241090685795657861082002271681200508692677286340502654112430597347354943361781060523347181117615167892991087280109716694939754676583636935685796530528640534919828823866889056365864690550603425117514402443006281350061461916968279566120487319262454027186080496322226120674910710826738367799630857250914977377980402477940812074248011384412299207067306297657680261013009306817113414440122394560408689904461243734557856081136830945302970271406828133857094932932870999064309876282308468387458412212143813728668334292773636852947298096038283627828523703789535601786174636035321358667993482147677179507832848471745343375543019184245608310497916755682184708049226274370122798026882962962611262140990788897979634951235549685037488289736896978993845876152960446628586943168499208729230533239207374247935838766752280813171295082381165390233197607091437925130360046653737411170062815064860491107957649780518383857603074859295059609146104178740117441626813741325836582527777732417778166668893386766820878400035664489145297431296948557185161850349428515621609542586427738709508158271274240481102605987780486915291282974675693668152401615737892868432618029264012535966683998704432232116199809115226489396689884235817987800697833167696220486657162498535762504491732796982243290002310811451339529817818991726971793308798338253136444507144372807436810575402016873065295567189510479456928098847819419144722754786390129993954863237950683361432568600762110055471756672003213011888254874216497420404249164259887574112364985967807181531241794377363043210201743676831726829700130993878475711623580314309681161447836026362367344972034942630679251159596327036365556188619384179331827930868768212395298063654896810332155734554143044685794568197063504853934464765382783461770508666990572091599032827219451077791129844691001753157463990920141583497389724589726880338780876111839178249184702168678086357494328922777075512144235915031943914668527146646749661814059551980765067640721802496206624333560306034880540234533361595861597007381942009831418809732755368161014659707435828916076553032874115582430658849521857170591691739724754993416484754135068073865999398198163206153625824157344893092434554076463388958298827992895017505072869396249647532320370115237956853918529888943847351620011554664781103718400169306152817816010295443528076670866739734606784940092326109971935841244894678756205438926529671919887532350970250558789425410719655010573944095460356853377318458385136496294936439331332702287583917190283145505671404063771864590221976865727257925113149960122230309089346071153874779973780840679530441289002968241173138928784099656000360932285865278921940066441130681622715139670059093174868984669527964155669459678127564779681965180405562742056316894766485959569675385898135412533719896449511765488458027113176093113167917713958477900690160880491024551839796233142772627941950327115144213380532273955561674220484037455622846932482380724920205282088705501561912036928251102567787823602204883542436416130224417005454497920510998578406666344791497397708682449794157939669770997947979960335790879474308646883877164716051065167921718667729525572882848542788705490793968405063433754617726929157992064284478513963663612705458263974091721677358391938445964645826771878821463965965484087438419481083389265403967993559100227267294717619661019545870815172071080379130661599875217699435955847528424597931939661297477124576051433623522943102642978917638811071109636588183295432919026646333756847004565486411552850914313693784083702708826526625964639258922762288845396206172191953001208792170232074973109210510365217605129739965379953631830860459182815831139592546330793032891434540021631369958146046573697136314729382241514139611322500856965149888833355463760038633836847196659756290187630444234225871764782823461622770348099080185486543358519538399322497570663579031716291859901363194145585538728788457094957486717397057143478478718783545685112551877487171428672103635867398688854950457770347544072870884436269902645098524472299987238994928241410996689385403540799054434888484875735429311003387171237793362643623073651403854085093615404915192794342131506005133721105373299303933534559153061996953121035933559425478219128526626438993136375216101898291949813871840180137707693054910258337610199781621097787657781615154007346511664197154574555739221779794990719041770795981962444948272187287978807437578549254754565215588037444955937898819803536054820818743137941872462700981312532221733536486106048127526583853106992768492651330491997952039101639166366997558829997301573004526970530294229529994605356956162500728185657213053406306126551089738928171990493054584553485361382631363751460110684795039160056265922740473574562864150596821148514014235890641390337849961157148848634341210677677446988964023966370949075631728093335400587924140423926804505861088907682949807130456554512554818737022463879635755212808980834807900147504003400461150555568697041671277447747223668507091799713705908802198446860170937342343716737485280742940883075336523899529310471453197671919968778839521411594110136582569128987565240923226431977495932485368766469802490031202528759047110886937244574313387187859039378289160824608793535814628423912745646234633837506803823980869311846960174952914225291659953454808001964155395640061690608726037504782484879334615412753169612946051999655924433451154041685979490504985924406924494657086430929732636919018387915541034345961815809296350036303684052463249554779422199464382174721751365555655242564256172116724796155224177168723509534551748625125346436341058156389418655680787105142223884257673670807853124031345989951254693232608388323565886070657275776170308886927314227681257242733660939536510399617420029854334813462547058048249881916144221218439628372100323075174495918495390514360382846647917289572772641877564096506751717234164632673275060443973384322757616632431273986673143504667090954652600936767567132143951928545636869419293725303565285285160408288726355357143642144951412554455213875015727823086258284961495197826437958303250762883597522672728885139753589188294618853898227277362206387955944137560897207697158940872316388974486718934174120734648038242500353138897587148618278885853604548244258642150419297032458318343844861745465914388917521006609553487640891572837750442951718792760879261065060874848664755486443286247495533505822775083490323554133259129487764831495840237888368502359819090780469729775769337165699371986114623507175378812660249245813103901149072942182362849503037992964823256567815851262256613560778234338461429401043096150039428930048778512332040478316385985243237847686547946516169834784704636246726860875534646258351825903042013896884270614147059155808728653574375967851763676091596480487010422717978295326341621642638910729133284801157310483354107296105126714690483373791616709067802705125251803151962543777701355320471806099466286317755240273220021391837634695491355875138906361818265150081915065197352095327010914826324665051701215299882867863190309948644996610227658712709091666516009255030843899235650949553119171747963025831986785069447859163827471494376491549675250025710478215039305860377029164412215043818669250932858227677034675675389517169447560681035278996873399060409125111558545027291774718157826390438261103640449461249149527199885475515950082199084352100660350687672985587423180423214520030703910984517163904512366820352064048042277363383336348193850103949619947577621170595641715105611386511295541736801240685711869148596219328040944080891024621261329193180413412701141265195067503165907859941789499365341083116169942112961822199273421312296532495174623303056446168647930012482826828213772441555126803861786151501966466898308579200580115104802632626188442389501255555059281647738974428234928538187823376786468451542365024648131691619885697343918080849798150449771099329607918428695856266118716772525939460879902401033985295140794670723802971750673116660539960333334517794172300273884567370157166508592349635876004752815918001035277227625630566546249334513079931882026152710086108344908737241457850558631252644435405835610006366923063270772181984615338070590038191390988096209132783229045658418952521360123302377646133601597570529195503209831971086002485867209572675254150517406455575965949895382668110554426754512323008387378959838783949030877831121146435984944910831254451128051044217809856624856017904811753313962091794244125445489353225312589541056961691532671102218741224241365695267355916235253744555758444344419221093897539475560895349244528792085423589425275515564985086760727517712179448838912922695501238925368795207314342699902038156337031148267014043616814855814312742937193848847099651482377464228083645870665034948587726054420430423198789940146093476089165564490670963360892541569491647755234472046366083734599437146377994075317723376996981475706561832055332083934133597339922563612284733211253973452873402218476857446739926414809486685622897457320641983856378660862792181078720501623461725944624824643733589759934580212306203796765121373682371738954897823220188750283341792803998358132434186882428554197527218516572820424723296733712626037483976389559799419182446058902684645668690685658661294376135358054126194063895150965781458756057472229636437346470446878234371626360815861908994943106726706143266982337598178213476938463320020605534543226383496632440035185446232358591761664314823307445705118707922080148970415604748797972031312986516936169356493283400649732675224439932910340737485918183976193336754350169539506552238582611665369938961574634615528333584254116906585728957658033725971645945661185746798971043902588383836675183717212170140385592694649919155062488661658856513508240225420490539461560134529230198514942075558674459095939131671001358828547740967662397061058411598111614560039568829512352670309258459249642519167905713838753148340663278419994176733444682398524491586156051392673886307300532614040004307101417838492255716761260478382255459945377045607365138177566374461647072320526188871253644049249457618015397772109831696024332867502930215705892419391640532399435044299499321989222812886815740272892924220444127938002835086344278798375037217578517488896873627939359950571878234752623729924593545472397622100987218050386886016323080056210365298865314050483118203355099894415601608551079709105610639160356542557765439537849848912989963643610748706125963403564787277153521570410141543738838570941111398474779868818776254915502106161503119303791254856144562185689561425741746294487554824092454166818118052331556204185180991335391520755815720258600675259362087267093031555666621785635303929144955629231518541172460030691011287389665681716294208547126079635407029535896115614455100542842490024000287702491635820744086545877265259271776276638126904386157981137155492445243108643248779928122439795407400722501136882932172959735606533623681655790827185310392033425048874440763327340921019739755267957240744828546015990282452362026962683354196662061010100803147165287276572376153767661014587340150077648789848879891309418300475397987807136873902427512343325932963121990086039155269833068888273424447223770657027663961691893283681712429178130423477878946700398520464822843763971503929809835969022197086457117395367803945783924197190158434121162220480258360557055295519838583181514539719002769148988695041312825854037319317994256971725811590544183104601851812437697979763591806780110746793445006756494703806947756365239189007265919254012667750262524058162556003860678880011759908681779553819587031928533070666381393896832090880800893748173623647714087657251426421509006712798774244707109612451339469611339147522450943837583642896265665146516461755108247396659467354606998858251222269993253744578992459019335384874537041443971582112472544538835690176247834614864926348781239673872781900549853426664480002449666710683726379999131115305381715107088830648617935325168732202202138597090087712285421015507504197868784401783073917370545198943522438985050617956291164413166944313058237895719382234996928262413234096966431115574276954963470890172598787729366010014632380272800197285131388415365099665658572828960166536672758307425707265907779748973912975952224439494784483443986502331682323875014939005419917840421515784067396677918985707091449285484051945140296903231824037890121728212174431402945581897486724509932677764476499271788548227590157927267646644625508938668467358051333174742880424376428755223374371808266479761513843685673115753140634688007017868719599963838721257945825129100631783950411042639204586790057832440944164136090900606036176542203212771702612871028530661886986114824341262579696680391040997009196703603894557979968041250405568037991830562931885943831107563399928318895521057530336819222489517778569419779530662807800008955289100353363137824506049723674274125894538625854625587780088135603848006611333816075979883447510745896142979862063878146660690665035315671749538405801301302171048273882556863505205252008330147274255505599148306520622522930479889740978593856601980322674940162550738056505404034395592377846578555061384290024499863618793506152815109858669341054949276823238829669505667846905210912745723493094989090671018402915066376854261671845796414161652114563462821021972384012487730960000000009E-30010" + }, + "group_scans_above_kappa": { + "rational": "4991601225219372277393321645030396487115008442807487098522698362399185677258698371805868471719335776838627743415457068895139647759399172939286143496816535216421325187363046885361425772909502231218314437622205930116079297234806627210590217190600996553729143901162562581526621534715086055386213403722171966572167941373807751745003300864621423581428649211471188453869806941140221723112492926739317268445594071265412095987431797270160735945991595165719330107119185281038386587589235057335380940005305693001382608667438803331294871746532631942765649987364807608073283062624357530021849218590642065711037865682141672669354849851791496897063126949603013467264073188883576845527267440287689723188483169943656279220740631078863122122848807728666715806765276137724700730081249994819924328243541666148245400968975846655637729029148061506542592604399222854110732781542370402410205393799770466011365077399427326183232238265030685889279727658938535761785132571276748397638477935037785591264437749875180322256012323784015525604623362096027221464940257283064631540803900300206829890788392390769246502987498583884366757395670906295197448156304193074667013849190537476866082660533871486087905033157186320272974969845529599556451129598514187359685627637446331662670129764298993501000311279054119551795293436077541806432874413466425279225063608468943800996401943757380346521486548236195531740294211488887484747134686945363444367213049217878453660392154283544186751396258154512323118386967652721436408567472452527756993971200559754852597863920008857514212732409177874851597442288818837293554568853805195153691613325750810300585126982063298450310108226571245355801559056941843652396973301352601593155284091292740866549566043921462231493541832798235704528526544571442111119340460174192670996737170522672044496340913168485452207793358350233254119832104800326581380356050265032251032583839368957385716185808989673751999010358645218475784409915307826880584350233021674043072363958462907535238921727737631843362131946446141984858433639685917882538688838455279299045165689088549176965047266147592004928222938280364143281780835667493268283662648947181175663382197730113581951086056976483858969045393044417697346422032942577633765309014213395194927015343742294781043560212256273243309210810716569809706301214533154733404016100418073529100312046963636034590804017050567825790653522898357191706413177756125343416124397399370507867589562528843228068316390479370510851892303499422073776953238504121391931730762288240664013569866350866142106604819742055188356660330055365791434602484732529335545051589352981907788978988990058604020653742020143974368603784198960431131083519382459457408699921193339760634764429396351189234420370288092083429824112366653374881787679545239641552020752120631153730288687107589489120292707186039573592496953996467058100802926320813863991506924956350818555888540996525414748635919832481014061543411899028591355141336710272866541510563545104416207274694774459589776604260396239058370727607349959892805801971059398882844048475144121939895317383936982428706222260824394901932280263573724276353034949545982161526781940144058431729104223959741439456030412058108349089069676217865847696700534979767662164601668811222183982382030893772206399146560758010262654470829182241726963136617745833564854806677266405794940547670254817160231448436415471652215588253282403077494518483979059604469779641259560901785968791059931429223279496161551795049201472582434452956186433007479496688558274059028370960033933982400313564500896108628003186341630250848045877794016078752452682093219965302431201174802460703466949303240338995481386851059348764090725288837013013020011608921825602947584532865947811317643619077326501020663870402563748999202407020433976878196711929493290863773484448608531340169788463969657749061632838221690568410771383593321101134155889643568684994429271588631203707525266160883417131491041471364882422434813088562556089045939993163903528013429218746699758740378492796618110754002770431344488385172399961108195697586578602524887434063218473131399231809850966445274176895376565342801594721183021913241034376765818450045277610296427092909017909490640397231665226655143897873234908479334131724937559293171575071691012991576244466231832358524634166032791301205882308743880508681273044461805376219638399712578583182311288011758141436699004413724899746160081943748014286302164836045926083206041509764298723420154117688346277834439283531997762111037738839718093958280696932332350858147525625008573229204237340394372247648083960109569137593366540739775930840895925072858277695051375234288253312217091018573250416529884608205662426956753329591207982492965987366229082213448124955154198938345191885616600278841489022263636658633093655344408969390989862154149518903671130817413245944686140233224662345818646024351348604373050446768109612455402674390070502386449660692134151894572702981033534329557913465419468013694631931249615970873349155446265463400213081814561358394769318267534167849212083052855832908113584849135879954303777127723870759742323643887732387793413315218595535875800995893373148611257300301755763038093604492546099766828737006134391587178415653169636617191406043687134391871182439283601626063617458675678909288711271101815667373525075658367964412146168599556138576487540761529894205681033399089363571537423187423511481066702046780478664301144511930691602163263183399066990012252975334340234898068957851182672283394727230641160734684284692364127320952802603126352555079909496663924107778180660849680591067001634116078141264730803483109790729372834607102328360051875687031249482966502859719548812630772867174075930109406498030729934120405470316295274791612633445482801702834623580934155701805161957811460349886660009201587283718078756274616763501932609719696288152398349916834595385860875165332907902462330247994503883308590334969327770759051110868169503729243639448057907420194864053286218064066674023488219123457447455194664288635018247644777667919301889894201203300344364491875183739355892740401813520560005797702923345332597348637496551282091136208988892760563113014731677431041707319983119531268712316792952562980263598248581825183877481449279066967542760109116485522596447413221676087447972531500809098998858459084702152820680852688282061276454721277737190455602522458872784230132104859574029441949062452148040871519931227359401497624891843906242119772766540153895784062251159638228604035085243052701635874454891703894294311728652326694467801765506657820835766530737470370254548700565433530756995298894854043707849724257143022903665202897742227204686313931135479826137377432423080908666946197656517348406938601609451315462235258839004763801472953148795323547572320516502953974869593397668441787105415349874240549311995115495498461179384223283631978436475792675347459641182597388880449172569552526188223953156353757922031886162351012961210847813222630501396656338011677754584062724643356597785676357228833285503099605862121196136328379413187716467418886700771232802759612885488139130480156140074005485484304810134961865728780733026193833398372094576150614655912114620264183316643096982424605967898438078529256444121082228228766131257762559222616213034389935103044426258497810003632786866201246093207073275859631681170694542136184874317662571172652535580506732913658882392409278321227568868901230227900792234352337852986851489351281025106081442544272544098632181355319722641042108673398656875014677220106303088883652834979656994904254627222827104056097121601932001971273626056030517128185362691164749767722522283492759156190702472313410684076559351062064746636242089553053297437002643155637732788366791140772268114708586490524732661954842072856466757875811844926897827152440952897083637475752191144290608988992466910012970422557636821490396249371643964330003960181534318276483504146278093405987880592485272849777423148588413759991433232634704622075258790038545052829240996875848413877153614755585223269198090015771856230734980491320093475665349487050837365020266698713114353548130001845674918256574183287715359804825493962560747426577743860287647309496629477138162845066847329226878758487043712750166186245703576075188860274157978846950691719304399363321329420728671122167904300057328458567020380453225362372617806381077804137596799271041971961272231174494791679756900771409391131226715317462490246069128620358127353184451348595773864580815870349053286339864463358905768413784259035576125315256240178076026971530689959744910739950786689837889476172739466870039227150961129016969666462770275476924794551072042548234909313839620140812939468184187965548379392288358193289988448457554735801675927500146974256855864432054553145854359757914443335918470135170889477485773505012818841272677273309882206772481568035665206308363560689013734815758472710983787459946530257287567030313601745766506134684320238763325030037471319681377179420133873193301848745490007768819989756044247357777264926282735836802538908020634833932216762664431328524589710584795855566009967841877056457590154745346371655764287300180299796598763977775968744560158833219371703283311800460017363248190675904789497774218560408922972380306395997317643535130619378438127190993058684797286485627451707617240789499785652412437113149520192059690882635837750279458111519363079633583198919545643436719890989695915826653340518092258887670208942889849992997044121090416957980709582007696006333237676625196219031409838832162224856395977347172680914547940952323162223450040699046199920532542083701388895630978554198159950178660768779299304675572257061793116378758731761107654605239717698013352724526591037557772690566583689081445785209305187695784209233856766329049786578463966770647120193604436835146352794690080818665151744545595386122833204307086066268143549186895224667821134890734401370453903500399440400766359343091174532004464909549829477648148580215874171643808613512879278190807848760667715929315221734019924862580731574971035745020090626377183378882701119050944059841706803934607677444238643075841050360795380372129773997864872225947844501082865547693753986136194255573615473419051274684308762331934544645615439056138942619208893893750446017866324209435980527055479088392489733796101000342911287007216596310399134811359335871129055534958298620100935385464323229384659724999213802804199418944442429372369020508228147507134823710894032013536437719846119299604872244544219079828151601529143459979013795431354666643982981180291408674577847741602256129700085614754208981310841165581534990465664087700338240891416371309673279982900130530817214528522059755054848159837511896894265635548999820297907903074246816968017411141878357604939994715581270062155421206461905359879837475614250841338552134901198825718262704379648853014658309084509515506333381331873751262575708914148909255526385378431220552056864880162864008367297975331745505540670687391778629744741965090758250988863495634826611281557869613705924644982457137797209738979451269367167920418933203362134205355181021143956929089056495073426790347194562473383804886317257165524851624564903906837860139831771249781105973287196905643409837972258350146483660859914986134742796810487256444634438813260363911552243669569378786450102857267502528772028320254146312332965576296036220958465050943391775530825971694310984603607182457767692076668819461443823491428951154776840819107246337513432225648283859393251743207751731963371891003763666198535309728603724707012535205086767102232402313743871269761051275829870005099332250217110860321375311300622882295119080388010640096437233387606674588405347903163829959350560662553965566363859963368062582041604347773182017678099839329640039734335610460179805746583078467529650128865905295696364217014508549489285749040255833687644001324723184972177205346134586983387702034750612570564319306754258635168160684017076885624758884130895065711392020602640117140069602541242580843862293715891762814150712934724905792295429819023675328060143102820373091268529089229005533720944080518071365302191771440313744001022924437326432431736289429807748213466122928853746158977659335419923604120148670271728906688204485793787853475769244840495120693161545323104618638623414030515322191141797107259946770485794398943662643641424426514186215910682338306267604419401910307144300920059387970442703545845390973061700798395448629224596178819509421424187561041919759681813447112680094851930323457439592199645260936205710779170653437529157833525437012819259315726178049093915155917738117239601900664473389523560435482030822925064639856487243918075833921878094934620849758150143842738409940431042851440638846020525813402018767868017050782530793028397342058821085098640893955725614617941066293083742912620008091278112146163956918881881324116273397270143678992786285772329779006485284805901167133366723848628246516285875488966503198261002830706231180997661740779663568550876829250630742940035305204300562267735377650840011041819778225762716756555949222591229967983634549171107863323655977901525560094247519250137144122637075890684590423594665940473190564924483086830616099277256739536679925559895400780842243055033583120991373479977396754348508559478412770073073354353878345655286979405754948003984559307739818236343565395809476940032030076620115088549498180338376325393661037198391846168974363367835693436709808178700824895186773601367965212552117374594109408052773376824225725720283339515120481934186266210458072045233925989510670156551937523635531737145626860685179349121013992787718004398051575801973488332001115062703421212581551887844729397806277792333187830305901156064565782373128491833735387945603377479883561666488154531872028608000422787457321942816281613426781986152876250544438406237728740397900959538339542933015711949907809467262122165360912772524746437827777324761973643670491039695584297385950059345974933399609142416937750532415887440423309744837310769127280486522483282126644794778799980667770610660500236757499113120530747047192159542344084324011828922181794389050595575068782452446979103717186377470749964802800822883706134767737658200972784118042925276786057259596454618721629630872997690224950134646716136437654440495124577601447358323450198845417550811930926224539817780308136000588523555310724629999007116089657055141963606545629038776996966861737916250364921505694137925442525867116818000554366502956952514455465284713539619061143639050080085692168749225337329751255882807789666415808959976645322414138946958928829395917536355898003254591655503545966102957865228465770025182020800740710882140439588322988387196525483288533692192164348077515289951420085897969333563831186200000822465175757357171762073335707089690775774818348807301475457652087097101392891743327372457567180606375019685340867889196781819301666179204791546380603009510851879628560634565916067895771377474172341933556464386287689110633490264009401961318970737122325531714389140352765849158922550865078626816173004823245316865070259765881779464815926138423899766895300452441059940099196224580706076019095107019583919511283120870728930262490167324871686464125204560865181067178803379629499764530296813091303356145732621911572354356674189130993820280991878945444215211552203172983586207283592085346000252353662174006637171549341341493176418908749249897533465460086103099707325161384170451138263440118389829846856621454197384847845650843545331325096323369275774389981126565930915519700801047099204479558355054915775187787778577379256328624753064036368179548669736270146353825221619995209031819532871495182825461765787038851082756407910770008102970690290901899501530150387551935537474742367496184215489824054474167497278817442093415123319363000153268737251637395632052742803660831915626622152423541119399731670474161457039043066536522670336369940392891730209243145600995062262813562861347283130305587280295982437461131567843636925082052602395754812854225587514476808232605214301511395066919330841656045423722026728681909663940553821126239368667993444711423892766645377903286909427072247712093003438029301638249347148809231121766067517917756032991971850642720272461173234638000347453054798535561446205434216432853899660664276439085757959921882073146447529273082055742813072223290477131464326461995327379748514095930714867478572654886345982419365632589000556628153631642370547264760605461615335183102384771254252494240961519615417031898140019849491274081214167566294978208885521787801152572684730118120333794518696014470845125862668051505607019072596082006874881465793362889594397090036238609771528878776085764542826189120365831085824267666728453527423969798338719696834171046469772201318759009479872864936933881620638186003161789608079912861841989187269656071397690818282521407174869618435894339817546581234278684051306705446117057977006994632436831283271510600074702584891684976434532104707738014502405509145757307026318247308647042976038404590079058383483479517100250852796703807755259021866250030563893870116658838254009247188657135132662882570553957650331770090890482971488423500189306766709057723107195041887842702549778946245280148421710278931759801263991082590606675809724578312889715303077973816377544053377909985735322240754697155390879216952093126200203583856779171788493080689963843373943271871168932173374693518843389575892568894863983302571437576248114831700206495067672854000948701024933922275524804806688417750775568092784536676866213367390825371770311213154673428069245441914189283902344488091244411072583255359156356859039032288201017678651144055694524397803071078941508003190302319043641982461300148847886336276779888999456845639764958986070705978778614628584932020467359208159729640182059004102189530843566502240246913550938511749232408164969579269629140419790690811408081582820489679413370552382245264041600727435877769933947853994653230562690067764274590198430449186099800590953160427530003887811450930838567922071707592329804148376531988133589571607921634095508681561676453468901145110486381877314811034814847222407782230568406533336305374095441452608079046432096820862452376301800795215535644892459013189272853373425217165648373909607606914556307805679366801311491072369384835772001044663890333225369352676349984092935540783057490352984832316724819430641351707221430208211313542040977733081853607500192567620944960818151582643914316109066528187761370375595364400619734214616834739422107963932459206621410674903984951595393562898865844166162905269829223613452714050063509171289313056000267750990687906184708118367020763688323964509363748830650598460936816198113586934183478639735977235808344249489872975968631692859140096787319668863530612081002911885889937596633027253030463015718282014944318994239064017699608171971241400861012977879511920390482880683088625404494538730448565288480875722249214340966586068934954256482594153724250146096455332576678465291449143715810573361565073009319931520765391847389840529791194076898089626012019659585995326222377262220562471817838295998397088970060150208017218694463358836240045019544446799655133083948495167485951567477729614013417888308952985743006379419406176298535888237460154764215974311643729582784707062844589006155499949849846933846135485346445407757702879506371949079858235666074584792089405783020803961026697509603163071159877490745320612635000962888731758643200014108846068151334191286960673055905561644550565411674360509164327986770407889896350453243877472659990627695914187546565785450893304584214495341288363071114776538198761374691244703277611058523965326432523595458805950338647655382518498072143938160426095830010185859090778839262822898331148403389960870107416914020097761577398674971333363411023822106576828338870094223468559594972504924431239082055793997012972454973177297064973497098367130228504693074563873829964139615491511284377809991370792647124038168926098007759430659809496539825057513406707585379319983019428564385661829193926262017781711022829630139518373669787968570577706865060410017106840725458463492669744020925213982318633517073628536368010852034750454541493375916548200555528732624783142390204149513161639147583162331663361315906622859053906989763726337588763993476555644127131073570711899058790899497367088619479551477244096499338690373209496971967725454855331174310139779865994870497053818897656568455330497123673953201623423615772116997332796591685605607893134971751628822567931005923364927555133322934808286329653960702049827661638441456427048004286135293578591886914909803234255925803049015274619409918887194479737250380457200962737576192807815340308559068877218830386604910230190737116350514349329416767399347519339581092434209197101467094144997114996135985905038265234652594966045527566086074286211668469280829845503881141428026227448520126178300943541738080429157402779621980003219486403933054979690848969203686185489313731901955135230862341590015457211946543294866610208130888631585976357654991780266178798794894065704757913123893116421428623206559898628807092712656457264285722675302988949890737912538147528962006072573703022491887091543706024998936582910686784249724115450295066587869574040406311285775916948930936482780220301922804283654507091134617076266066195177625500427810092114441608661127879929421833079426752994463285456518260710552203249428031268008491524329151155986681678142307754575854861467516648468424815638148467929500612209305349762881212978268481649582559920147566331830203745689348940664900619798212437896213767965669787079661491568316961337901734895261495156038558415109377685144461373842170677293881987758916064041054277540999829336591803263863916463235833108464417043914210857852460832883779746346875060682138101087783858843879257478244014332541087882046123780115219280312621675890399586596671355493561706131213572012549735095709501186324220115861487496763095737386195100889806453915747001997197579089635977341111283382327011701993900375488424075640245817260871379542712901561418538656636312934400748402900658345625333616705095879630724753472606453978935305708924316642808825733516537238347578111861976394790440061911740256278043658294109205954433139326664064903293450966175844715214094082297103410268869331457994373780730539150207502600210729920592573911437047859448932321586614857430068717399461317885701992728803852886153125566985331739109320580014579409518774304996121234000163679616303338474217393836458731873739944551284396097467745504333304660369454262836807164957542082160367243707888090535910811053076584865659628419528830151317441362503025307004371937462898285183288698514560145947129637936880354681009727066346268681430726959127879312385427112203028421513032451554640065592095185323688139472567321093669278832495937891102717365693630490505888106314680859073910609518973438103561138411628042533301451669154527901121878921504020823493012018434869969031008360256264541326541282542863365237220659774131064386823130341375562643102847052722772921703664448693563134719369272832222761958722257579554383411397297261011995994045469739118274477108630440440430034024060529613095303512079284379537934489584643985257188190413457933152203163191937563573633126889394073761646132432357884904491518939780183865662995344796741433974763245072693032414540559911181176727887336520208362761574798929051523240487800379020354886845868274752704859861987071812122159532409793417217462790636740964403145870245976566063406605088755072904055396290536940520624627792151897923624193629511104927457313735957986686490697375196651590898372477481314111430474947665509551958931281567721687437151091991762422745181863570791919832747068604713984654271854717796731519528205119116753591345836619077504064876027670039859698832103603153973878995543014152898725386353893905072961220521529318825253501158073689217845588262984060721131197997320980306340966373373917535226498191277195135136886575894094440400096442540279508941342093892890873614482634725755650225427104316929330211981475112943372650508288857193146270022768335115986469557957612989594908863484855429173492922099779341277250909568860388754308434608323572321932525829053749717518971559392424305543000771252570324936304245796093264312330252152665565422453988263652289291198040962472937502142539851253275488364752430367684586984889104244404852306419556306282459764120630056752939916406116588367427092629878752274314559846485532536521758636704121770762460599990456292995840183257029341721695890639415465618598368601210002558659248709763658709363901696005337336856446948611362349487508662468328964801764216303476258800948875941295144733436723809322429049684944003412006740918718438444099431701117725095105432922291930492321661815791613778423593014161842746818516606118442691377707931218608588037180720660834373568902351147703462927233655148845958497205574859048266715009592066886052182370199125104629588273470644914535686244044848985281398872370961863752054010974301657141445326506737483179204147591610800659869057988022176559731043828288406658533419498774595066222560316914312556093055044996694444543149514358356157047280846430542382695802989667062734659833419606435635469213878854111209423327656835512725840509028742394770121487546552604387036283819634167197243588605897681832051278172549169849282582341350761065269087138201579376780010275198137177800133130877432958600819330923833540488934131056271179209783871297997162491281889009212868896209360250698948246653231995752573152593428869665412075902604537594004253684817488052071334825400979442830174316187010453790779435442715795088080140961055925184895102020113807938946326352937812046313203695368268424491461622963407945770377399340451965785439626297082090563393959809348287403242743557958436577114066267276195224991836513028085929022251170301401237984526061911432820737258304290198122019006970489222086245715643837868369201933232495012174456340763797040889246946741045130790970646269539337197173644549953095531499506276476948083081789642213486004611006994511133111660213634357061100937831121072783518206404787228327201234123890468574788110053498654698221738566015089893375135288477162052068720311132479994548351025516983063760114473530978246241485268349062523611816066999863177702848906869046183127268209714401702060274727809385503123664699129983284931870504908557053805724223804888441198011279837843849505324595913815121563004789352469703112205870573186197635530067988492416245258893892178605581861466514851123078205276668383794545268865291386036669598787186029882646805359568608953808759892326840012414201300395733164335942748876411347446374440283387477722935369994409195061457159848664682778062862514128292212686548550972114161580131219551294027798687843075548810746471502810497637162138432145566580920325215698653056265309767680845032132724554159929588540721804904709459020018785040878288463344544102516542911839629889538257994927639250113235712311747305199755088200966509301213336630735792696055859104871604136876597325476153229429028388606534999514727787056866543707632179670949389490525608377717836667025591784819874354643063438373198521288328781420467280428181463864538470589360043849072604470337437454801501283147675819308002027738958577517975491034949303377699952920358291610165768567740567978356074410351703677328166902923862023233197919768131543124074739468994946662547656519562718644160382795456033135175082268170865573834693590004684197108238776170873593183612924991201300134045923309092134219930029711879813786628154154076082496970300895725510496950297065606429460130867511795311569880911759283206231655734898021242958508846791926608649271238012046848807463452145145524540629568674371180568176504360963017015431749277949293396317976688216722938280173938924419296305551815469608660762079635769293211764371669224250940615805473476357850712260506636283919127991342967871258378570207502000023975207636318395340545489772104939314689719843908698846498428096291037103592386937398327343536649617283393541761406911014413311300544468640137982568932109199336118754072870063610611743418311646272329770062069045501332523537696835580223612849721838417508400262263773939714364679480638417882278345839804065820739990942451525039616498983928072825202292695277161080260165840503262939152755740689452037268647554752305330140991106973476035764844201956489912225033210038735236980330958660817486330751849757204759782947316995481993683099179869510096851706688196713087941293319881931792878309916897429082391253442735487836443276499521414310484299212015258716820984369808164980299317231675895566120417229707891983912313030436599083938826604501055645855210338180213000321723240000979992390148296151632252660711089222198449491402674240066741145681135303976173971437618868459083892733231187058925801037611622467611595626870911986465303574688805428876371812925687283054955612883916571520935189166104478714916038251611282072878086786997631842706045378236307514687319551238743862398436639489398491712487785555373333537472225890310531666594259608781809592257402554051494610430727683516844883090840642690451751292292016489065366815256159780878766578626869915420884829690930367763912026088186491309948519583077355201102841413869259631189746246955907514383232310780500834552698356066683107094282367947091638804881069080013878056063192285475605492314979081159414662685369957898706953665541860973526989584578250451659820035126315338949723159915475590954107123670995428358075269318669824176810684347869283578798491457227042494389813706374939315712352299179827272303887052125744889038946504277764561906702031369062935281197650688873313459486973806092979428386224000584822393299996986560104828818760758385981995867586886600382232504819370078680344674241717169681378516934397641884405919044221823915509568695105214974723365920083084099725300324546498330670104200464003165985880244323828652592296949994026574626754794194734935207459814880784981627555233983334079607425029446928152042170810306189510491211552154552132315007344633654000550944484672998323620625895491345248321838656512221724222086276305979128200483441775180920689490213071958767104334027512272854625466595692210051876910873324145081549488050165026889578346879228171375450336199632698153881546255115357502041655301566125512734592488222445087912439735269902472458805653908767576062143624424582424222584866909588864737855139320483034513471009546955235085164365334373977579999999999001679754956625544521335670993920703/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.9983202450438744554786643290060792974230016885614974197045396724798371354517396743611736943438671553677255486830914137790279295518798345878572286993633070432842650374726093770722851545819004462436628875244411860232158594469613254421180434381201993107458287802325125163053243069430172110772426807444343933144335882747615503490006601729242847162857298422942376907739613882280443446224985853478634536891188142530824191974863594540321471891983190331438660214238370562076773175178470114670761880010611386002765217334877606662589743493065263885531299974729615216146566125248715060043698437181284131422075731364283345338709699703582993794126253899206026934528146377767153691054534880575379446376966339887312558441481262157726244245697615457333431613530552275449401460162499989639848656487083332296490801937951693311275458058296123013085185208798445708221465563084740804820410787599540932022730154798854652366464476530061371778559455317877071523570265142553496795276955870075571182528875499750360644512024647568031051209246724192054442929880514566129263081607800600413659781576784781538493005974997167768733514791341812590394896312608386149334027698381074953732165321067742972175810066314372640545949939691059199112902259197028374719371255274892663325340259528597987002000622558108239103590586872155083612865748826932850558450127216937887601992803887514760693042973096472391063480588422977774969494269373890726888734426098435756907320784308567088373502792516309024646236773935305442872817134944905055513987942401119509705195727840017715028425464818355749703194884577637674587109137707610390307383226651501620601170253964126596900620216453142490711603118113883687304793946602705203186310568182585481733099132087842924462987083665596471409057053089142884222238680920348385341993474341045344088992681826336970904415586716700466508239664209600653162760712100530064502065167678737914771432371617979347503998020717290436951568819830615653761168700466043348086144727916925815070477843455475263686724263892892283969716867279371835765077377676910558598090331378177098353930094532295184009856445876560728286563561671334986536567325297894362351326764395460227163902172113952967717938090786088835394692844065885155267530618028426790389854030687484589562087120424512546486618421621433139619412602429066309466808032200836147058200624093927272069181608034101135651581307045796714383412826355512250686832248794798741015735179125057686456136632780958741021703784606998844147553906477008242783863461524576481328027139732701732284213209639484110376713320660110731582869204969465058671090103178705963815577957977980117208041307484040287948737207568397920862262167038764918914817399842386679521269528858792702378468840740576184166859648224733306749763575359090479283104041504241262307460577374215178978240585414372079147184993907992934116201605852641627727983013849912701637111777081993050829497271839664962028123086823798057182710282673420545733083021127090208832414549389548919179553208520792478116741455214699919785611603942118797765688096950288243879790634767873964857412444521648789803864560527147448552706069899091964323053563880288116863458208447919482878912060824116216698178139352435731695393401069959535324329203337622444367964764061787544412798293121516020525308941658364483453926273235491667129709613354532811589881095340509634320462896872830943304431176506564806154989036967958119208939559282519121803571937582119862858446558992323103590098402945164868905912372866014958993377116548118056741920067867964800627129001792217256006372683260501696091755588032157504905364186439930604862402349604921406933898606480677990962773702118697528181450577674026026040023217843651205895169065731895622635287238154653002041327740805127497998404814040867953756393423858986581727546968897217062680339576927939315498123265676443381136821542767186642202268311779287137369988858543177262407415050532321766834262982082942729764844869626177125112178091879986327807056026858437493399517480756985593236221508005540862688976770344799922216391395173157205049774868126436946262798463619701932890548353790753130685603189442366043826482068753531636900090555220592854185818035818981280794463330453310287795746469816958668263449875118586343150143382025983152488932463664717049268332065582602411764617487761017362546088923610752439276799425157166364622576023516282873398008827449799492320163887496028572604329672091852166412083019528597446840308235376692555668878567063995524222075477679436187916561393864664701716295051250017146458408474680788744495296167920219138275186733081479551861681791850145716555390102750468576506624434182037146500833059769216411324853913506659182415964985931974732458164426896249910308397876690383771233200557682978044527273317266187310688817938781979724308299037807342261634826491889372280466449324691637292048702697208746100893536219224910805348780141004772899321384268303789145405962067068659115826930838936027389263862499231941746698310892530926800426163629122716789538636535068335698424166105711665816227169698271759908607554255447741519484647287775464775586826630437191071751601991786746297222514600603511526076187208985092199533657474012268783174356831306339273234382812087374268783742364878567203252127234917351357818577422542203631334747050151316735928824292337199112277152975081523059788411362066798178727143074846374847022962133404093560957328602289023861383204326526366798133980024505950668680469796137915702365344566789454461282321469368569384728254641905605206252705110159818993327848215556361321699361182134003268232156282529461606966219581458745669214204656720103751374062498965933005719439097625261545734348151860218812996061459868240810940632590549583225266890965603405669247161868311403610323915622920699773320018403174567436157512549233527003865219439392576304796699833669190771721750330665815804924660495989007766617180669938655541518102221736339007458487278896115814840389728106572436128133348046976438246914894910389328577270036495289555335838603779788402406600688728983750367478711785480803627041120011595405846690665194697274993102564182272417977785521126226029463354862083414639966239062537424633585905125960527196497163650367754962898558133935085520218232971045192894826443352174895945063001618197997716918169404305641361705376564122552909442555474380911205044917745568460264209719148058883898124904296081743039862454718802995249783687812484239545533080307791568124502319276457208070170486105403271748909783407788588623457304653388935603531013315641671533061474940740509097401130867061513990597789708087415699448514286045807330405795484454409372627862270959652274754864846161817333892395313034696813877203218902630924470517678009527602945906297590647095144641033005907949739186795336883574210830699748481098623990230990996922358768446567263956872951585350694919282365194777760898345139105052376447906312707515844063772324702025922421695626445261002793312676023355509168125449286713195571352714457666571006199211724242392272656758826375432934837773401542465605519225770976278260960312280148010970968609620269923731457561466052387666796744189152301229311824229240528366633286193964849211935796876157058512888242164456457532262515525118445232426068779870206088852516995620007265573732402492186414146551719263362341389084272369748635325142345305071161013465827317764784818556642455137737802460455801584468704675705973702978702562050212162885088545088197264362710639445282084217346797313750029354440212606177767305669959313989808509254445654208112194243203864003942547252112061034256370725382329499535445044566985518312381404944626821368153118702124129493272484179106106594874005286311275465576733582281544536229417172981049465323909684145712933515751623689853795654304881905794167274951504382288581217977984933820025940845115273642980792498743287928660007920363068636552967008292556186811975761184970545699554846297176827519982866465269409244150517580077090105658481993751696827754307229511170446538396180031543712461469960982640186951330698974101674730040533397426228707096260003691349836513148366575430719609650987925121494853155487720575294618993258954276325690133694658453757516974087425500332372491407152150377720548315957693901383438608798726642658841457342244335808600114656917134040760906450724745235612762155608275193598542083943922544462348989583359513801542818782262453430634924980492138257240716254706368902697191547729161631740698106572679728926717811536827568518071152250630512480356152053943061379919489821479901573379675778952345478933740078454301922258033939332925540550953849589102144085096469818627679240281625878936368375931096758784576716386579976896915109471603351855000293948513711728864109106291708719515828886671836940270341778954971547010025637682545354546619764413544963136071330412616727121378027469631516945421967574919893060514575134060627203491533012269368640477526650060074942639362754358840267746386603697490980015537639979512088494715554529852565471673605077816041269667864433525328862657049179421169591711132019935683754112915180309490692743311528574600360599593197527955551937489120317666438743406566623600920034726496381351809578995548437120817845944760612791994635287070261238756876254381986117369594572971254903415234481578999571304824874226299040384119381765271675500558916223038726159267166397839091286873439781979391831653306681036184517775340417885779699985994088242180833915961419164015392012666475353250392438062819677664324449712791954694345361829095881904646324446900081398092399841065084167402777791261957108396319900357321537558598609351144514123586232757517463522215309210479435396026705449053182075115545381133167378162891570418610375391568418467713532658099573156927933541294240387208873670292705589380161637330303489091190772245666408614172132536287098373790449335642269781468802740907807000798880801532718686182349064008929819099658955296297160431748343287617227025758556381615697521335431858630443468039849725161463149942071490040181252754366757765402238101888119683413607869215354888477286151682100721590760744259547995729744451895689002165731095387507972272388511147230946838102549368617524663869089291230878112277885238417787787500892035732648418871961054110958176784979467592202000685822574014433192620798269622718671742258111069916597240201870770928646458769319449998427605608398837888884858744738041016456295014269647421788064027072875439692238599209744489088438159656303203058286919958027590862709333287965962360582817349155695483204512259400171229508417962621682331163069980931328175400676481782832742619346559965800261061634429057044119510109696319675023793788531271097999640595815806148493633936034822283756715209879989431162540124310842412923810719759674951228501682677104269802397651436525408759297706029316618169019031012666762663747502525151417828297818511052770756862441104113729760325728016734595950663491011081341374783557259489483930181516501977726991269653222563115739227411849289964914275594419477958902538734335840837866406724268410710362042287913858178112990146853580694389124946767609772634514331049703249129807813675720279663542499562211946574393811286819675944516700292967321719829972269485593620974512889268877626520727823104487339138757572900205714535005057544056640508292624665931152592072441916930101886783551061651943388621969207214364915535384153337638922887646982857902309553681638214492675026864451296567718786503486415503463926743782007527332397070619457207449414025070410173534204464804627487742539522102551659740010198664500434221720642750622601245764590238160776021280192874466775213349176810695806327659918701121325107931132727719926736125164083208695546364035356199678659280079468671220920359611493166156935059300257731810591392728434029017098978571498080511667375288002649446369944354410692269173966775404069501225141128638613508517270336321368034153771249517768261790131422784041205280234280139205082485161687724587431783525628301425869449811584590859638047350656120286205640746182537058178458011067441888161036142730604383542880627488002045848874652864863472578859615496426932245857707492317955318670839847208240297340543457813376408971587575706951538489680990241386323090646209237277246828061030644382283594214519893540971588797887325287282848853028372431821364676612535208838803820614288601840118775940885407091690781946123401596790897258449192357639018842848375122083839519363626894225360189703860646914879184399290521872411421558341306875058315667050874025638518631452356098187830311835476234479203801328946779047120870964061645850129279712974487836151667843756189869241699516300287685476819880862085702881277692041051626804037535736034101565061586056794684117642170197281787911451229235882132586167485825240016182556224292327913837763762648232546794540287357985572571544659558012970569611802334266733447697256493032571750977933006396522005661412462361995323481559327137101753658501261485880070610408601124535470755301680022083639556451525433513111898445182459935967269098342215726647311955803051120188495038500274288245274151781369180847189331880946381129848966173661232198554513479073359851119790801561684486110067166241982746959954793508697017118956825540146146708707756691310573958811509896007969118615479636472687130791618953880064060153240230177098996360676752650787322074396783692337948726735671386873419616357401649790373547202735930425104234749188218816105546753648451451440566679030240963868372532420916144090467851979021340313103875047271063474291253721370358698242027985575436008796103151603946976664002230125406842425163103775689458795612555584666375660611802312129131564746256983667470775891206754959767123332976309063744057216000845574914643885632563226853563972305752501088876812475457480795801919076679085866031423899815618934524244330721825545049492875655554649523947287340982079391168594771900118691949866799218284833875501064831774880846619489674621538254560973044966564253289589557599961335541221321000473514998226241061494094384319084688168648023657844363588778101191150137564904893958207434372754941499929605601645767412269535475316401945568236085850553572114519192909237443259261745995380449900269293432272875308880990249155202894716646900397690835101623861852449079635560616272001177047110621449259998014232179314110283927213091258077553993933723475832500729843011388275850885051734233636001108733005913905028910930569427079238122287278100160171384337498450674659502511765615579332831617919953290644828277893917857658791835072711796006509183311007091932205915730456931540050364041601481421764280879176645976774393050966577067384384328696155030579902840171795938667127662372400001644930351514714343524146671414179381551549636697614602950915304174194202785783486654744915134361212750039370681735778393563638603332358409583092761206019021703759257121269131832135791542754948344683867112928772575378221266980528018803922637941474244651063428778280705531698317845101730157253632346009646490633730140519531763558929631852276847799533790600904882119880198392449161412152038190214039167839022566241741457860524980334649743372928250409121730362134357606759258999529060593626182606712291465243823144708713348378261987640561983757890888430423104406345967172414567184170692000504707324348013274343098682682986352837817498499795066930920172206199414650322768340902276526880236779659693713242908394769695691301687090662650192646738551548779962253131861831039401602094198408959116710109831550375575557154758512657249506128072736359097339472540292707650443239990418063639065742990365650923531574077702165512815821540016205941380581803799003060300775103871074949484734992368430979648108948334994557634884186830246638726000306537474503274791264105485607321663831253244304847082238799463340948322914078086133073045340672739880785783460418486291201990124525627125722694566260611174560591964874922263135687273850164105204791509625708451175028953616465210428603022790133838661683312090847444053457363819327881107642252478737335986889422847785533290755806573818854144495424186006876058603276498694297618462243532135035835512065983943701285440544922346469276000694906109597071122892410868432865707799321328552878171515919843764146292895058546164111485626144446580954262928652923990654759497028191861429734957145309772691964838731265178001113256307263284741094529521210923230670366204769542508504988481923039230834063796280039698982548162428335132589956417771043575602305145369460236240667589037392028941690251725336103011214038145192164013749762931586725779188794180072477219543057757552171529085652378240731662171648535333456907054847939596677439393668342092939544402637518018959745729873867763241276372006323579216159825723683978374539312142795381636565042814349739236871788679635093162468557368102613410892234115954013989264873662566543021200149405169783369952869064209415476029004811018291514614052636494617294085952076809180158116766966959034200501705593407615510518043732500061127787740233317676508018494377314270265325765141107915300663540181780965942976847000378613533418115446214390083775685405099557892490560296843420557863519602527982165181213351619449156625779430606155947632755088106755819971470644481509394310781758433904186252400407167713558343576986161379927686747886543742337864346749387037686779151785137789727966605142875152496229663400412990135345708001897402049867844551049609613376835501551136185569073353732426734781650743540622426309346856138490883828378567804688976182488822145166510718312713718078064576402035357302288111389048795606142157883016006380604638087283964922600297695772672553559777998913691279529917972141411957557229257169864040934718416319459280364118008204379061687133004480493827101877023498464816329939158539258280839581381622816163165640979358826741104764490528083201454871755539867895707989306461125380135528549180396860898372199601181906320855060007775622901861677135844143415184659608296753063976267179143215843268191017363123352906937802290220972763754629622069629694444815564461136813066672610748190882905216158092864193641724904752603601590431071289784918026378545706746850434331296747819215213829112615611358733602622982144738769671544002089327780666450738705352699968185871081566114980705969664633449638861282703414442860416422627084081955466163707215000385135241889921636303165287828632218133056375522740751190728801239468429233669478844215927864918413242821349807969903190787125797731688332325810539658447226905428100127018342578626112000535501981375812369416236734041527376647929018727497661301196921873632396227173868366957279471954471616688498979745951937263385718280193574639337727061224162005823771779875193266054506060926031436564029888637988478128035399216343942482801722025955759023840780965761366177250808989077460897130576961751444498428681933172137869908512965188307448500292192910665153356930582898287431621146723130146018639863041530783694779681059582388153796179252024039319171990652444754524441124943635676591996794177940120300416034437388926717672480090039088893599310266167896990334971903134955459228026835776617905971486012758838812352597071776474920309528431948623287459165569414125689178012310999899699693867692270970692890815515405759012743898159716471332149169584178811566041607922053395019206326142319754981490641225270001925777463517286400028217692136302668382573921346111811123289101130823348721018328655973540815779792700906487754945319981255391828375093131570901786609168428990682576726142229553076397522749382489406555222117047930652865047190917611900677295310765036996144287876320852191660020371718181557678525645796662296806779921740214833828040195523154797349942666726822047644213153656677740188446937119189945009848862478164111587994025944909946354594129946994196734260457009386149127747659928279230983022568755619982741585294248076337852196015518861319618993079650115026813415170758639966038857128771323658387852524035563422045659260279036747339575937141155413730120820034213681450916926985339488041850427964637267034147257072736021704069500909082986751833096401111057465249566284780408299026323278295166324663326722631813245718107813979527452675177527986953111288254262147141423798117581798994734177238959102954488192998677380746418993943935450909710662348620279559731989740994107637795313136910660994247347906403246847231544233994665593183371211215786269943503257645135862011846729855110266645869616572659307921404099655323276882912854096008572270587157183773829819606468511851606098030549238819837774388959474500760914401925475152385615630680617118137754437660773209820460381474232701028698658833534798695038679162184868418394202934188289994229992271971810076530469305189932091055132172148572423336938561659691007762282856052454897040252356601887083476160858314805559243960006438972807866109959381697938407372370978627463803910270461724683180030914423893086589733220416261777263171952715309983560532357597589788131409515826247786232842857246413119797257614185425312914528571445350605977899781475825076295057924012145147406044983774183087412049997873165821373568499448230900590133175739148080812622571551833897861872965560440603845608567309014182269234152532132390355251000855620184228883217322255759858843666158853505988926570913036521421104406498856062536016983048658302311973363356284615509151709722935033296936849631276296935859001224418610699525762425956536963299165119840295132663660407491378697881329801239596424875792427535931339574159322983136633922675803469790522990312077116830218755370288922747684341354587763975517832128082108555081999658673183606527727832926471666216928834087828421715704921665767559492693750121364276202175567717687758514956488028665082175764092247560230438560625243351780799173193342710987123412262427144025099470191419002372648440231722974993526191474772390201779612907831494003994395158179271954682222566764654023403987800750976848151280491634521742759085425803122837077313272625868801496805801316691250667233410191759261449506945212907957870611417848633285617651467033074476695156223723952789580880123823480512556087316588218411908866278653328129806586901932351689430428188164594206820537738662915988747561461078300415005200421459841185147822874095718897864643173229714860137434798922635771403985457607705772306251133970663478218641160029158819037548609992242468000327359232606676948434787672917463747479889102568792194935491008666609320738908525673614329915084164320734487415776181071821622106153169731319256839057660302634882725006050614008743874925796570366577397029120291894259275873760709362019454132692537362861453918255758624770854224406056843026064903109280131184190370647376278945134642187338557664991875782205434731387260981011776212629361718147821219037946876207122276823256085066602903338309055802243757843008041646986024036869739938062016720512529082653082565085726730474441319548262128773646260682751125286205694105445545843407328897387126269438738545664445523917444515159108766822794594522023991988090939478236548954217260880880860068048121059226190607024158568759075868979169287970514376380826915866304406326383875127147266253778788147523292264864715769808983037879560367731325990689593482867949526490145386064829081119822362353455774673040416725523149597858103046480975600758040709773691736549505409719723974143624244319064819586834434925581273481928806291740491953132126813210177510145808110792581073881041249255584303795847248387259022209854914627471915973372981394750393303181796744954962628222860949895331019103917862563135443374874302183983524845490363727141583839665494137209427969308543709435593463039056410238233507182691673238155008129752055340079719397664207206307947757991086028305797450772707787810145922441043058637650507002316147378435691176525968121442262395994641960612681932746747835070452996382554390270273773151788188880800192885080559017882684187785781747228965269451511300450854208633858660423962950225886745301016577714386292540045536670231972939115915225979189817726969710858346985844199558682554501819137720777508616869216647144643865051658107499435037943118784848611086001542505140649872608491592186528624660504305331130844907976527304578582396081924945875004285079702506550976729504860735369173969778208488809704612839112612564919528241260113505879832812233176734854185259757504548629119692971065073043517273408243541524921199980912585991680366514058683443391781278830931237196737202420005117318497419527317418727803392010674673712893897222724698975017324936657929603528432606952517601897751882590289466873447618644858099369888006824013481837436876888198863402235450190210865844583860984643323631583227556847186028323685493637033212236885382755415862437217176074361441321668747137804702295406925854467310297691916994411149718096533430019184133772104364740398250209259176546941289829071372488089697970562797744741923727504108021948603314282890653013474966358408295183221601319738115976044353119462087656576813317066838997549190132445120633828625112186110089993388889086299028716712314094561692861084765391605979334125469319666839212871270938427757708222418846655313671025451681018057484789540242975093105208774072567639268334394487177211795363664102556345098339698565164682701522130538174276403158753560020550396274355600266261754865917201638661847667080977868262112542358419567742595994324982563778018425737792418720501397896493306463991505146305186857739330824151805209075188008507369634976104142669650801958885660348632374020907581558870885431590176160281922111850369790204040227615877892652705875624092626407390736536848982923245926815891540754798680903931570879252594164181126787919618696574806485487115916873154228132534552390449983673026056171858044502340602802475969052123822865641474516608580396244038013940978444172491431287675736738403866464990024348912681527594081778493893482090261581941292539078674394347289099906191062999012552953896166163579284426972009222013989022266223320427268714122201875662242145567036412809574456654402468247780937149576220106997309396443477132030179786750270576954324104137440622264959989096702051033966127520228947061956492482970536698125047223632133999726355405697813738092366254536419428803404120549455618771006247329398259966569863741009817114107611448447609776882396022559675687699010649191827630243126009578704939406224411741146372395271060135976984832490517787784357211163722933029702246156410553336767589090537730582772073339197574372059765293610719137217907617519784653680024828402600791466328671885497752822694892748880566774955445870739988818390122914319697329365556125725028256584425373097101944228323160262439102588055597375686151097621492943005620995274324276864291133161840650431397306112530619535361690064265449108319859177081443609809418918040037570081756576926689088205033085823679259779076515989855278500226471424623494610399510176401933018602426673261471585392111718209743208273753194650952306458858056777213069999029455574113733087415264359341898778981051216755435673334051183569639748709286126876746397042576657562840934560856362927729076941178720087698145208940674874909603002566295351638616004055477917155035950982069898606755399905840716583220331537135481135956712148820703407354656333805847724046466395839536263086248149478937989893325095313039125437288320765590912066270350164536341731147669387180009368394216477552341747186367225849982402600268091846618184268439860059423759627573256308308152164993940601791451020993900594131212858920261735023590623139761823518566412463311469796042485917017693583853217298542476024093697614926904290291049081259137348742361136353008721926034030863498555898586792635953376433445876560347877848838592611103630939217321524159271538586423528743338448501881231610946952715701424521013272567838255982685935742516757140415004000047950415272636790681090979544209878629379439687817397692996856192582074207184773874796654687073299234566787083522813822028826622601088937280275965137864218398672237508145740127221223486836623292544659540124138091002665047075393671160447225699443676835016800524527547879428729358961276835764556691679608131641479981884903050079232997967856145650404585390554322160520331681006525878305511481378904074537295109504610660281982213946952071529688403912979824450066420077470473960661917321634972661503699514409519565894633990963987366198359739020193703413376393426175882586639763863585756619833794858164782506885470975672886552999042828620968598424030517433641968739616329960598634463351791132240834459415783967824626060873198167877653209002111291710420676360426000643446480001959984780296592303264505321422178444396898982805348480133482291362270607952347942875237736918167785466462374117851602075223244935223191253741823972930607149377610857752743625851374566109911225767833143041870378332208957429832076503222564145756173573995263685412090756472615029374639102477487724796873278978796983424975571110746667074944451780621063333188519217563619184514805108102989220861455367033689766181681285380903502584584032978130733630512319561757533157253739830841769659381860735527824052176372982619897039166154710402205682827738519262379492493911815028766464621561001669105396712133366214188564735894183277609762138160027756112126384570951210984629958162318829325370739915797413907331083721947053979169156500903319640070252630677899446319830951181908214247341990856716150538637339648353621368695738567157596982914454084988779627412749878631424704598359654544607774104251489778077893008555529123813404062738125870562395301377746626918973947612185958856772448001169644786599993973120209657637521516771963991735173773200764465009638740157360689348483434339362757033868795283768811838088443647831019137390210429949446731840166168199450600649092996661340208400928006331971760488647657305184593899988053149253509588389469870414919629761569963255110467966668159214850058893856304084341620612379020982423104309104264630014689267308001101888969345996647241251790982690496643677313024443448444172552611958256400966883550361841378980426143917534208668055024545709250933191384420103753821746648290163098976100330053779156693758456342750900672399265396307763092510230715004083310603132251025469184976444890175824879470539804944917611307817535152124287248849164848445169733819177729475710278640966069026942019093910470170328730668747955159999999998003359509913251089042671341987841406" + }, + "boundary_algebraic_matrix_above_kappa": { + "rational": "2500000000002500000000000000000000002115008442807487098522698362399185677258698371805868471719335776838627743415457068895139647759399172939286143496816535216421325187363046885361425772909502231218314437622205930116079297234806627210590217190600996553729143901162562581526621534715086055386213403722171966572167941373807751745003300864621423581428649211471188453869806941140221723112492926739317268445594071265412095987431797270160735945991595165719330107119185281038386587589235057335380940005305693001382608667438803331294871746532631942765649987364807608073283062624357530021849218590642065711037865682141672669354849851791496897063126949603013467264073188883576845527267440287689723188483169943656279220740631078863122122848807728666715806765276137724700730081249994819924328243541666148245400968975846655637729029148061506542592604399222854110732781542370402410205393799770466011365077399427326183232238265030685889279727658938535761785132571276748397638477935037785591264437749875180322256012323784015525604623362096027221464940257283064631540803900300206829890788392390769246502987498583884366757395670906295197448156304193074667013849190537476866082660533871486087905033157186320272974969845529599556451129598514187359685627637446331662670129764298993501000311279054119551795293436077541806432874413466425279225063608468943800996401943757380346521486548236195531740294211488887484747134686945363444367213049217878453660392154283544186751396258154512323118386967652721436408567472452527756993971200559754852597863920008857514212732409177874851597442288818837293554568853805195153691613325750810300585126982063298450310108226571245355801559056941843652396973301352601593155284091292740866549566043921462231493541832798235704528526544571442111119340460174192670996737170522672044496340913168485452207793358350233254119832104800326581380356050265032251032583839368957385716185808989673751999010358645218475784409915307826880584350233021674043072363958462907535238921727737631843362131946446141984858433639685917882538688838455279299045165689088549176965047266147592004928222938280364143281780835667493268283662648947181175663382197730113581951086056976483858969045393044417697346422032942577633765309014213395194927015343742294781043560212256273243309210810716569809706301214533154733404016100418073529100312046963636034590804017050567825790653522898357191706413177756125343416124397399370507867589562528843228068316390479370510851892303499422073776953238504121391931730762288240664013569866350866142106604819742055188356660330055365791434602484732529335545051589352981907788978988990058604020653742020143974368603784198960431131083519382459457408699921193339760634764429396351189234420370288092083429824112366653374881787679545239641552020752120631153730288687107589489120292707186039573592496953996467058100802926320813863991506924956350818555888540996525414748635919832481014061543411899028591355141336710272866541510563545104416207274694774459589776604260396239058370727607349959892805801971059398882844048475144121939895317383936982428706222260824394901932280263573724276353034949545982161526781940144058431729104223959741439456030412058108349089069676217865847696700534979767662164601668811222183982382030893772206399146560758010262654470829182241726963136617745833564854806677266405794940547670254817160231448436415471652215588253282403077494518483979059604469779641259560901785968791059931429223279496161551795049201472582434452956186433007479496688558274059028370960033933982400313564500896108628003186341630250848045877794016078752452682093219965302431201174802460703466949303240338995481386851059348764090725288837013013020011608921825602947584532865947811317643619077326501020663870402563748999202407020433976878196711929493290863773484448608531340169788463969657749061632838221690568410771383593321101134155889643568684994429271588631203707525266160883417131491041471364882422434813088562556089045939993163903528013429218746699758740378492796618110754002770431344488385172399961108195697586578602524887434063218473131399231809850966445274176895376565342801594721183021913241034376765818450045277610296427092909017909490640397231665226655143897873234908479334131724937559293171575071691012991576244466231832358524634166032791301205882308743880508681273044461805376219638399712578583182311288011758141436699004413724899746160081943748014286302164836045926083206041509764298723420154117688346277834439283531997762111037738839718093958280696932332350858147525625008573229204237340394372247648083960109569137593366540739775930840895925072858277695051375234288253312217091018573250416529884608205662426956753329591207982492965987366229082213448124955154198938345191885616600278841489022263636658633093655344408969390989862154149518903671130817413245944686140233224662345818646024351348604373050446768109612455402674390070502386449660692134151894572702981033534329557913465419468013694631931249615970873349155446265463400213081814561358394769318267534167849212083052855832908113584849135879954303777127723870759742323643887732387793413315218595535875800995893373148611257300301755763038093604492546099766828737006134391587178415653169636617191406043687134391871182439283601626063617458675678909288711271101815667373525075658367964412146168599556138576487540761529894205681033399089363571537423187423511481066702046780478664301144511930691602163263183399066990012252975334340234898068957851182672283394727230641160734684284692364127320952802603126352555079909496663924107778180660849680591067001634116078141264730803483109790729372834607102328360051875687031249482966502859719548812630772867174075930109406498030729934120405470316295274791612633445482801702834623580934155701805161957811460349886660009201587283718078756274616763501932609719696288152398349916834595385860875165332907902462330247994503883308590334969327770759051110868169503729243639448057907420194864053286218064066674023488219123457447455194664288635018247644777667919301889894201203300344364491875183739355892740401813520560005797702923345332597348637496551282091136208988892760563113014731677431041707319983119531268712316792952562980263598248581825183877481449279066967542760109116485522596447413221676087447972531500809098998858459084702152820680852688282061276454721277737190455602522458872784230132104859574029441949062452148040871519931227359401497624891843906242119772766540153895784062251159638228604035085243052701635874454891703894294311728652326694467801765506657820835766530737470370254548700565433530756995298894854043707849724257143022903665202897742227204686313931135479826137377432423080908666946197656517348406938601609451315462235258839004763801472953148795323547572320516502953974869593397668441787105415349874240549311995115495498461179384223283631978436475792675347459641182597388880449172569552526188223953156353757922031886162351012961210847813222630501396656338011677754584062724643356597785676357228833285503099605862121196136328379413187716467418886700771232802759612885488139130480156140074005485484304810134961865728780733026193833398372094576150614655912114620264183316643096982424605967898438078529256444121082228228766131257762559222616213034389935103044426258497810003632786866201246093207073275859631681170694542136184874317662571172652535580506732913658882392409278321227568868901230227900792234352337852986851489351281025106081442544272544098632181355319722641042108673398656875014677220106303088883652834979656994904254627222827104056097121601932001971273626056030517128185362691164749767722522283492759156190702472313410684076559351062064746636242089553053297437002643155637732788366791140772268114708586490524732661954842072856466757875811844926897827152440952897083637475752191144290608988992466910012970422557636821490396249371643964330003960181534318276483504146278093405987880592485272849777423148588413759991433232634704622075258790038545052829240996875848413877153614755585223269198090015771856230734980491320093475665349487050837365020266698713114353548130001845674918256574183287715359804825493962560747426577743860287647309496629477138162845066847329226878758487043712750166186245703576075188860274157978846950691719304399363321329420728671122167904300057328458567020380453225362372617806381077804137596799271041971961272231174494791679756900771409391131226715317462490246069128620358127353184451348595773864580815870349053286339864463358905768413784259035576125315256240178076026971530689959744910739950786689837889476172739466870039227150961129016969666462770275476924794551072042548234909313839620140812939468184187965548379392288358193289988448457554735801675927500146974256855864432054553145854359757914443335918470135170889477485773505012818841272677273309882206772481568035665206308363560689013734815758472710983787459946530257287567030313601745766506134684320238763325030037471319681377179420133873193301848745490007768819989756044247357777264926282735836802538908020634833932216762664431328524589710584795855566009967841877056457590154745346371655764287300180299796598763977775968744560158833219371703283311800460017363248190675904789497774218560408922972380306395997317643535130619378438127190993058684797286485627451707617240789499785652412437113149520192059690882635837750279458111519363079633583198919545643436719890989695915826653340518092258887670208942889849992997044121090416957980709582007696006333237676625196219031409838832162224856395977347172680914547940952323162223450040699046199920532542083701388895630978554198159950178660768779299304675572257061793116378758731761107654605239717698013352724526591037557772690566583689081445785209305187695784209233856766329049786578463966770647120193604436835146352794690080818665151744545595386122833204307086066268143549186895224667821134890734401370453903500399440400766359343091174532004464909549829477648148580215874171643808613512879278190807848760667715929315221734019924862580731574971035745020090626377183378882701119050944059841706803934607677444238643075841050360795380372129773997864872225947844501082865547693753986136194255573615473419051274684308762331934544645615439056138942619208893893750446017866324209435980527055479088392489733796101000342911287007216596310399134811359335871129055534958298620100935385464323229384659724999213802804199418944442429372369020508228147507134823710894032013536437719846119299604872244544219079828151601529143459979013795431354666643982981180291408674577847741602256129700085614754208981310841165581534990465664087700338240891416371309673279982900130530817214528522059755054848159837511896894265635548999820297907903074246816968017411141878357604939994715581270062155421206461905359879837475614250841338552134901198825718262704379648853014658309084509515506333381331873751262575708914148909255526385378431220552056864880162864008367297975331745505540670687391778629744741965090758250988863495634826611281557869613705924644982457137797209738979451269367167920418933203362134205355181021143956929089056495073426790347194562473383804886317257165524851624564903906837860139831771249781105973287196905643409837972258350146483660859914986134742796810487256444634438813260363911552243669569378786450102857267502528772028320254146312332965576296036220958465050943391775530825971694310984603607182457767692076668819461443823491428951154776840819107246337513432225648283859393251743207751731963371891003763666198535309728603724707012535205086767102232402313743871269761051275829870005099332250217110860321375311300622882295119080388010640096437233387606674588405347903163829959350560662553965566363859963368062582041604347773182017678099839329640039734335610460179805746583078467529650128865905295696364217014508549489285749040255833687644001324723184972177205346134586983387702034750612570564319306754258635168160684017076885624758884130895065711392020602640117140069602541242580843862293715891762814150712934724905792295429819023675328060143102820373091268529089229005533720944080518071365302191771440313744001022924437326432431736289429807748213466122928853746158977659335419923604120148670271728906688204485793787853475769244840495120693161545323104618638623414030515322191141797107259946770485794398943662643641424426514186215910682338306267604419401910307144300920059387970442703545845390973061700798395448629224596178819509421424187561041919759681813447112680094851930323457439592199645260936205710779170653437529157833525437012819259315726178049093915155917738117239601900664473389523560435482030822925064639856487243918075833921878094934620849758150143842738409940431042851440638846020525813402018767868017050782530793028397342058821085098640893955725614617941066293083742912620008091278112146163956918881881324116273397270143678992786285772329779006485284805901167133366723848628246516285875488966503198261002830706231180997661740779663568550876829250630742940035305204300562267735377650840011041819778225762716756555949222591229967983634549171107863323655977901525560094247519250137144122637075890684590423594665940473190564924483086830616099277256739536679925559895400780842243055033583120991373479977396754348508559478412770073073354353878345655286979405754948003984559307739818236343565395809476940032030076620115088549498180338376325393661037198391846168974363367835693436709808178700824895186773601367965212552117374594109408052773376824225725720283339515120481934186266210458072045233925989510670156551937523635531737145626860685179349121013992787718004398051575801973488332001115062703421212581551887844729397806277792333187830305901156064565782373128491833735387945603377479883561666488154531872028608000422787457321942816281613426781986152876250544438406237728740397900959538339542933015711949907809467262122165360912772524746437827777324761973643670491039695584297385950059345974933399609142416937750532415887440423309744837310769127280486522483282126644794778799980667770610660500236757499113120530747047192159542344084324011828922181794389050595575068782452446979103717186377470749964802800822883706134767737658200972784118042925276786057259596454618721629630872997690224950134646716136437654440495124577601447358323450198845417550811930926224539817780308136000588523555310724629999007116089657055141963606545629038776996966861737916250364921505694137925442525867116818000554366502956952514455465284713539619061143639050080085692168749225337329751255882807789666415808959976645322414138946958928829395917536355898003254591655503545966102957865228465770025182020800740710882140439588322988387196525483288533692192164348077515289951420085897969333563831186200000822465175757357171762073335707089690775774818348807301475457652087097101392891743327372457567180606375019685340867889196781819301666179204791546380603009510851879628560634565916067895771377474172341933556464386287689110633490264009401961318970737122325531714389140352765849158922550865078626816173004823245316865070259765881779464815926138423899766895300452441059940099196224580706076019095107019583919511283120870728930262490167324871686464125204560865181067178803379629499764530296813091303356145732621911572354356674189130993820280991878945444215211552203172983586207283592085346000252353662174006637171549341341493176418908749249897533465460086103099707325161384170451138263440118389829846856621454197384847845650843545331325096323369275774389981126565930915519700801047099204479558355054915775187787778577379256328624753064036368179548669736270146353825221619995209031819532871495182825461765787038851082756407910770008102970690290901899501530150387551935537474742367496184215489824054474167497278817442093415123319363000153268737251637395632052742803660831915626622152423541119399731670474161457039043066536522670336369940392891730209243145600995062262813562861347283130305587280295982437461131567843636925082052602395754812854225587514476808232605214301511395066919330841656045423722026728681909663940553821126239368667993444711423892766645377903286909427072247712093003438029301638249347148809231121766067517917756032991971850642720272461173234638000347453054798535561446205434216432853899660664276439085757959921882073146447529273082055742813072223290477131464326461995327379748514095930714867478572654886345982419365632589000556628153631642370547264760605461615335183102384771254252494240961519615417031898140019849491274081214167566294978208885521787801152572684730118120333794518696014470845125862668051505607019072596082006874881465793362889594397090036238609771528878776085764542826189120365831085824267666728453527423969798338719696834171046469772201318759009479872864936933881620638186003161789608079912861841989187269656071397690818282521407174869618435894339817546581234278684051306705446117057977006994632436831283271510600074702584891684976434532104707738014502405509145757307026318247308647042976038404590079058383483479517100250852796703807755259021866250030563893870116658838254009247188657135132662882570553957650331770090890482971488423500189306766709057723107195041887842702549778946245280148421710278931759801263991082590606675809724578312889715303077973816377544053377909985735322240754697155390879216952093126200203583856779171788493080689963843373943271871168932173374693518843389575892568894863983302571437576248114831700206495067672854000948701024933922275524804806688417750775568092784536676866213367390825371770311213154673428069245441914189283902344488091244411072583255359156356859039032288201017678651144055694524397803071078941508003190302319043641982461300148847886336276779888999456845639764958986070705978778614628584932020467359208159729640182059004102189530843566502240246913550938511749232408164969579269629140419790690811408081582820489679413370552382245264041600727435877769933947853994653230562690067764274590198430449186099800590953160427530003887811450930838567922071707592329804148376531988133589571607921634095508681561676453468901145110486381877314811034814847222407782230568406533336305374095441452608079046432096820862452376301800795215535644892459013189272853373425217165648373909607606914556307805679366801311491072369384835772001044663890333225369352676349984092935540783057490352984832316724819430641351707221430208211313542040977733081853607500192567620944960818151582643914316109066528187761370375595364400619734214616834739422107963932459206621410674903984951595393562898865844166162905269829223613452714050063509171289313056000267750990687906184708118367020763688323964509363748830650598460936816198113586934183478639735977235808344249489872975968631692859140096787319668863530612081002911885889937596633027253030463015718282014944318994239064017699608171971241400861012977879511920390482880683088625404494538730448565288480875722249214340966586068934954256482594153724250146096455332576678465291449143715810573361565073009319931520765391847389840529791194076898089626012019659585995326222377262220562471817838295998397088970060150208017218694463358836240045019544446799655133083948495167485951567477729614013417888308952985743006379419406176298535888237460154764215974311643729582784707062844589006155499949849846933846135485346445407757702879506371949079858235666074584792089405783020803961026697509603163071159877490745320612635000962888731758643200014108846068151334191286960673055905561644550565411674360509164327986770407889896350453243877472659990627695914187546565785450893304584214495341288363071114776538198761374691244703277611058523965326432523595458805950338647655382518498072143938160426095830010185859090778839262822898331148403389960870107416914020097761577398674971333363411023822106576828338870094223468559594972504924431239082055793997012972454973177297064973497098367130228504693074563873829964139615491511284377809991370792647124038168926098007759430659809496539825057513406707585379319983019428564385661829193926262017781711022829630139518373669787968570577706865060410017106840725458463492669744020925213982318633517073628536368010852034750454541493375916548200555528732624783142390204149513161639147583162331663361315906622859053906989763726337588763993476555644127131073570711899058790899497367088619479551477244096499338690373209496971967725454855331174310139779865994870497053818897656568455330497123673953201623423615772116997332796591685605607893134971751628822567931005923364927555133322934808286329653960702049827661638441456427048004286135293578591886914909803234255925803049015274619409918887194479737250380457200962737576192807815340308559068877218830386604910230190737116350514349329416767399347519339581092434209197101467094144997114996135985905038265234652594966045527566086074286211668469280829845503881141428026227448520126178300943541738080429157402779621980003219486403933054979690848969203686185489313731901955135230862341590015457211946543294866610208130888631585976357654991780266178798794894065704757913123893116421428623206559898628807092712656457264285722675302988949890737912538147528962006072573703022491887091543706024998936582910686784249724115450295066587869574040406311285775916948930936482780220301922804283654507091134617076266066195177625500427810092114441608661127879929421833079426752994463285456518260710552203249428031268008491524329151155986681678142307754575854861467516648468424815638148467929500612209305349762881212978268481649582559920147566331830203745689348940664900619798212437896213767965669787079661491568316961337901734895261495156038558415109377685144461373842170677293881987758916064041054277540999829336591803263863916463235833108464417043914210857852460832883779746346875060682138101087783858843879257478244014332541087882046123780115219280312621675890399586596671355493561706131213572012549735095709501186324220115861487496763095737386195100889806453915747001997197579089635977341111283382327011701993900375488424075640245817260871379542712901561418538656636312934400748402900658345625333616705095879630724753472606453978935305708924316642808825733516537238347578111861976394790440061911740256278043658294109205954433139326664064903293450966175844715214094082297103410268869331457994373780730539150207502600210729920592573911437047859448932321586614857430068717399461317885701992728803852886153125566985331739109320580014579409518774304996121234000163679616303338474217393836458731873739944551284396097467745504333304660369454262836807164957542082160367243707888090535910811053076584865659628419528830151317441362503025307004371937462898285183288698514560145947129637936880354681009727066346268681430726959127879312385427112203028421513032451554640065592095185323688139472567321093669278832495937891102717365693630490505888106314680859073910609518973438103561138411628042533301451669154527901121878921504020823493012018434869969031008360256264541326541282542863365237220659774131064386823130341375562643102847052722772921703664448693563134719369272832222761958722257579554383411397297261011995994045469739118274477108630440440430034024060529613095303512079284379537934489584643985257188190413457933152203163191937563573633126889394073761646132432357884904491518939780183865662995344796741433974763245072693032414540559911181176727887336520208362761574798929051523240487800379020354886845868274752704859861987071812122159532409793417217462790636740964403145870245976566063406605088755072904055396290536940520624627792151897923624193629511104927457313735957986686490697375196651590898372477481314111430474947665509551958931281567721687437151091991762422745181863570791919832747068604713984654271854717796731519528205119116753591345836619077504064876027670039859698832103603153973878995543014152898725386353893905072961220521529318825253501158073689217845588262984060721131197997320980306340966373373917535226498191277195135136886575894094440400096442540279508941342093892890873614482634725755650225427104316929330211981475112943372650508288857193146270022768335115986469557957612989594908863484855429173492922099779341277250909568860388754308434608323572321932525829053749717518971559392424305543000771252570324936304245796093264312330252152665565422453988263652289291198040962472937502142539851253275488364752430367684586984889104244404852306419556306282459764120630056752939916406116588367427092629878752274314559846485532536521758636704121770762460599990456292995840183257029341721695890639415465618598368601210002558659248709763658709363901696005337336856446948611362349487508662468328964801764216303476258800948875941295144733436723809322429049684944003412006740918718438444099431701117725095105432922291930492321661815791613778423593014161842746818516606118442691377707931218608588037180720660834373568902351147703462927233655148845958497205574859048266715009592066886052182370199125104629588273470644914535686244044848985281398872370961863752054010974301657141445326506737483179204147591610800659869057988022176559731043828288406658533419498774595066222560316914312556093055044996694444543149514358356157047280846430542382695802989667062734659833419606435635469213878854111209423327656835512725840509028742394770121487546552604387036283819634167197243588605897681832051278172549169849282582341350761065269087138201579376780010275198137177800133130877432958600819330923833540488934131056271179209783871297997162491281889009212868896209360250698948246653231995752573152593428869665412075902604537594004253684817488052071334825400979442830174316187010453790779435442715795088080140961055925184895102020113807938946326352937812046313203695368268424491461622963407945770377399340451965785439626297082090563393959809348287403242743557958436577114066267276195224991836513028085929022251170301401237984526061911432820737258304290198122019006970489222086245715643837868369201933232495012174456340763797040889246946741045130790970646269539337197173644549953095531499506276476948083081789642213486004611006994511133111660213634357061100937831121072783518206404787228327201234123890468574788110053498654698221738566015089893375135288477162052068720311132479994548351025516983063760114473530978246241485268349062523611816066999863177702848906869046183127268209714401702060274727809385503123664699129983284931870504908557053805724223804888441198011279837843849505324595913815121563004789352469703112205870573186197635530067988492416245258893892178605581861466514851123078205276668383794545268865291386036669598787186029882646805359568608953808759892326840012414201300395733164335942748876411347446374440283387477722935369994409195061457159848664682778062862514128292212686548550972114161580131219551294027798687843075548810746471502810497637162138432145566580920325215698653056265309767680845032132724554159929588540721804904709459020018785040878288463344544102516542911839629889538257994927639250113235712311747305199755088200966509301213336630735792696055859104871604136876597325476153229429028388606534999514727787056866543707632179670949389490525608377717836667025591784819874354643063438373198521288328781420467280428181463864538470589360043849072604470337437454801501283147675819308002027738958577517975491034949303377699952920358291610165768567740567978356074410351703677328166902923862023233197919768131543124074739468994946662547656519562718644160382795456033135175082268170865573834693590004684197108238776170873593183612924991201300134045923309092134219930029711879813786628154154076082496970300895725510496950297065606429460130867511795311569880911759283206231655734898021242958508846791926608649271238012046848807463452145145524540629568674371180568176504360963017015431749277949293396317976688216722938280173938924419296305551815469608660762079635769293211764371669224250940615805473476357850712260506636283919127991342967871258378570207502000023975207636318395340545489772104939314689719843908698846498428096291037103592386937398327343536649617283393541761406911014413311300544468640137982568932109199336118754072870063610611743418311646272329770062069045501332523537696835580223612849721838417508400262263773939714364679480638417882278345839804065820739990942451525039616498983928072825202292695277161080260165840503262939152755740689452037268647554752305330140991106973476035764844201956489912225033210038735236980330958660817486330751849757204759782947316995481993683099179869510096851706688196713087941293319881931792878309916897429082391253442735487836443276499521414310484299212015258716820984369808164980299317231675895566120417229707891983912313030436599083938826604501055645855210338180213000321723240000979992390148296151632252660711089222198449491402674240066741145681135303976173971437618868459083892733231187058925801037611622467611595626870911986465303574688805428876371812925687283054955612883916571520935189166104478714916038251611282072878086786997631842706045378236307514687319551238743862398436639489398491712487785555373333537472225890310531666594259608781809592257402554051494610430727683516844883090840642690451751292292016489065366815256159780878766578626869915420884829690930367763912026088186491309948519583077355201102841413869259631189746246955907514383232310780500834552698356066683107094282367947091638804881069080013878056063192285475605492314979081159414662685369957898706953665541860973526989584578250451659820035126315338949723159915475590954107123670995428358075269318669824176810684347869283578798491457227042494389813706374939315712352299179827272303887052125744889038946504277764561906702031369062935281197650688873313459486973806092979428386224000584822393299996986560104828818760758385981995867586886600382232504819370078680344674241717169681378516934397641884405919044221823915509568695105214974723365920083084099725300324546498330670104200464003165985880244323828652592296949994026574626754794194734935207459814880784981627555233983334079607425029446928152042170810306189510491211552154552132315007344633654000550944484672998323620625895491345248321838656512221724222086276305979128200483441775180920689490213071958767104334027512272854625466595692210051876910873324145081549488050165026889578346879228171375450336199632698153881546255115357502041655301566125512734592488222445087912439735269902472458805653908767576062143624424582424222584866909588864737855139320483034513471009546955235085164365334373977580000000001/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "1.0000000000010000000000000000000000008460033771229948394090793449596742709034793487223473886877343107354510973661828275580558591037596691757144573987266140865685300749452187541445703091638008924873257750488823720464317188939226508842360868762403986214916575604650250326106486138860344221544853614888687866288671765495231006980013203458485694325714596845884753815479227764560886892449971706957269073782376285061648383949727189080642943783966380662877320428476741124153546350356940229341523760021222772005530434669755213325179486986130527771062599949459230432293132250497430120087396874362568262844151462728566690677419399407165987588252507798412053869056292755534307382109069761150758892753932679774625116882962524315452488491395230914666863227061104550898802920324999979279697312974166664592981603875903386622550916116592246026170370417596891416442931126169481609640821575199081864045460309597709304732928953060122743557118910635754143047140530285106993590553911740151142365057750999500721289024049295136062102418493448384108885859761029132258526163215601200827319563153569563076986011949994335537467029582683625180789792625216772298668055396762149907464330642135485944351620132628745281091899879382118398225804518394056749438742510549785326650680519057195974004001245116216478207181173744310167225731497653865701116900254433875775203985607775029521386085946192944782126961176845955549938988538747781453777468852196871513814641568617134176747005585032618049292473547870610885745634269889810111027975884802239019410391455680035430056850929636711499406389769155275349174218275415220780614766453303003241202340507928253193801240432906284981423206236227767374609587893205410406372621136365170963466198264175685848925974167331192942818114106178285768444477361840696770683986948682090688177985363652673941808831173433400933016479328419201306325521424201060129004130335357475829542864743235958695007996041434580873903137639661231307522337400932086696172289455833851630140955686910950527373448527785784567939433734558743671530154755353821117196180662756354196707860189064590368019712891753121456573127123342669973073134650595788724702653528790920454327804344227905935435876181572177670789385688131770310535061236056853580779708061374969179124174240849025092973236843242866279238825204858132618933616064401672294116401248187854544138363216068202271303162614091593428766825652711024501373664497589597482031470358250115372912273265561917482043407569213997688295107812954016485567726923049152962656054279465403464568426419278968220753426641320221463165738409938930117342180206357411927631155915955960234416082614968080575897474415136795841724524334077529837829634799684773359042539057717585404756937681481152368333719296449466613499527150718180958566208083008482524614921154748430357956481170828744158294369987815985868232403211705283255455966027699825403274223554163986101658994543679329924056246173647596114365420565346841091466166042254180417664829098779097838359106417041584956233482910429399839571223207884237595531376193900576487759581269535747929714824889043297579607729121054294897105412139798183928646107127760576233726916416895838965757824121648232433396356278704871463390786802139919070648658406675244888735929528123575088825596586243032041050617883316728966907852546470983334259419226709065623179762190681019268640925793745661886608862353013129612309978073935916238417879118565038243607143875164239725716893117984646207180196805890329737811824745732029917986754233096236113483840135735929601254258003584434512012745366521003392183511176064315009810728372879861209724804699209842813867797212961355981925547404237395056362901155348052052080046435687302411790338131463791245270574476309306004082655481610254995996809628081735907512786847717973163455093937794434125360679153855878630996246531352886762273643085534373284404536623558574274739977717086354524814830101064643533668525964165885459529689739252354250224356183759972655614112053716874986799034961513971186472443016011081725377953540689599844432782790346314410099549736252873892525596927239403865781096707581506261371206378884732087652964137507063273800181110441185708371636071637962561588926660906620575591492939633917336526899750237172686300286764051966304977864927329434098536664131165204823529234975522034725092177847221504878553598850314332729245152047032565746796017654899598984640327774992057145208659344183704332824166039057194893680616470753385111337757134127991048444150955358872375833122787729329403432590102500034292916816949361577488990592335840438276550373466162959103723363583700291433110780205500937153013248868364074293001666119538432822649707827013318364831929971863949464916328853792499820616795753380767542466401115365956089054546634532374621377635877563959448616598075614684523269652983778744560932898649383274584097405394417492201787072438449821610697560282009545798642768536607578290811924134137318231653861677872054778527724998463883493396621785061853600852327258245433579077273070136671396848332211423331632454339396543519817215108510895483038969294575550929551173653260874382143503203983573492594445029201207023052152374417970184399067314948024537566348713662612678546468765624174748537567484729757134406504254469834702715637154845084407262669494100302633471857648584674398224554305950163046119576822724133596357454286149692749694045924266808187121914657204578047722766408653052733596267960049011901337360939592275831404730689133578908922564642938737138769456509283811210412505410220319637986655696431112722643398722364268006536464312565058923213932439162917491338428409313440207502748124997931866011438878195250523091468696303720437625992122919736481621881265181099166450533781931206811338494323736622807220647831245841399546640036806349134872315025098467054007730438878785152609593399667338381543443500661331631609849320991978015533234361339877311083036204443472678014916974557792231629680779456213144872256266696093952876493829789820778657154540072990579110671677207559576804813201377457967500734957423570961607254082240023190811693381330389394549986205128364544835955571042252452058926709724166829279932478125074849267171810251921054392994327300735509925797116267870171040436465942090385789652886704349791890126003236395995433836338808611282723410753128245105818885110948761822410089835491136920528419438296117767796249808592163486079724909437605990499567375624968479091066160615583136249004638552914416140340972210806543497819566815577177246914609306777871207062026631283343066122949881481018194802261734123027981195579416174831398897028572091614660811590968908818745255724541919304549509729692323634667784790626069393627754406437805261848941035356019055205891812595181294190289282066011815899478373590673767148421661399496962197247980461981993844717536893134527913745903170701389838564730389555521796690278210104752895812625415031688127544649404051844843391252890522005586625352046711018336250898573426391142705428915333142012398423448484784545313517652750865869675546803084931211038451541952556521920624560296021941937219240539847462915122932104775333593488378304602458623648458481056733266572387929698423871593752314117025776484328912915064525031050236890464852137559740412177705033991240014531147464804984372828293103438526724682778168544739497270650284690610142322026931654635529569637113284910275475604920911603168937409351411947405957405124100424325770177090176394528725421278890564168434693594627500058708880425212355534611339918627979617018508891308416224388486407728007885094504224122068512741450764658999070890089133971036624762809889253642736306237404248258986544968358212213189748010572622550931153467164563089072458834345962098930647819368291425867031503247379707591308609763811588334549903008764577162435955969867640051881690230547285961584997486575857320015840726137273105934016585112373623951522369941091399109692594353655039965732930538818488301035160154180211316963987503393655508614459022340893076792360063087424922939921965280373902661397948203349460081066794852457414192520007382699673026296733150861439219301975850242989706310975441150589237986517908552651380267389316907515033948174851000664744982814304300755441096631915387802766877217597453285317682914684488671617200229313834268081521812901449490471225524311216550387197084167887845088924697979166719027603085637564524906861269849960984276514481432509412737805394383095458323263481396213145359457853435623073655137036142304501261024960712304107886122759838979642959803146759351557904690957867480156908603844516067878665851081101907699178204288170192939637255358480563251757872736751862193517569153432773159953793830218943206703710000587897027423457728218212583417439031657773343673880540683557909943094020051275365090709093239528827089926272142660825233454242756054939263033890843935149839786121029150268121254406983066024538737280955053300120149885278725508717680535492773207394981960031075279959024176989431109059705130943347210155632082539335728867050657725314098358842339183422264039871367508225830360618981385486623057149200721199186395055911103874978240635332877486813133247201840069452992762703619157991096874241635691889521225583989270574140522477513752508763972234739189145942509806830468963157999142609649748452598080768238763530543351001117832446077452318534332795678182573746879563958783663306613362072369035550680835771559399971988176484361667831922838328030784025332950706500784876125639355328648899425583909388690723658191763809292648893800162796184799682130168334805555582523914216792639800714643075117197218702289028247172465515034927044430618420958870792053410898106364150231090762266334756325783140837220750783136836935427065316199146313855867082588480774417747340585411178760323274660606978182381544491332817228344265072574196747580898671284539562937605481815614001597761603065437372364698128017859638199317910592594320863496686575234454051517112763231395042670863717260886936079699450322926299884142980080362505508733515530804476203776239366827215738430709776954572303364201443181521488519095991459488903791378004331462190775015944544777022294461893676205098737235049327738178582461756224555770476835575575001784071465296837743922108221916353569958935184404001371645148028866385241596539245437343484516222139833194480403741541857292917538638899996855211216797675777769717489476082032912590028539294843576128054145750879384477198419488978176876319312606406116573839916055181725418666575931924721165634698311390966409024518800342459016835925243364662326139961862656350801352963565665485238693119931600522123268858114088239020219392639350047587577062542195999281191631612296987267872069644567513430419759978862325080248621684825847621439519349902457003365354208539604795302873050817518595412058633236338038062025333525327495005050302835656595637022105541513724882208227459520651456033469191901326982022162682749567114518978967860363033003955453982539306445126231478454823698579929828551188838955917805077468671681675732813448536821420724084575827716356225980293707161388778249893535219545269028662099406498259615627351440559327084999124423893148787622573639351889033400585934643439659944538971187241949025778537755253041455646208974678277515145800411429070010115088113281016585249331862305184144883833860203773567102123303886777243938414428729831070768306675277845775293965715804619107363276428985350053728902593135437573006972831006927853487564015054664794141238914414898828050140820347068408929609254975485079044205103319480020397329000868443441285501245202491529180476321552042560385748933550426698353621391612655319837402242650215862265455439853472250328166417391092728070712399357318560158937342441840719222986332313870118600515463621182785456868058034197957142996161023334750576005298892739888708821384538347933550808139002450282257277227017034540672642736068307542499035536523580262845568082410560468560278410164970323375449174863567051256602851738899623169181719276094701312240572411281492365074116356916022134883776322072285461208767085761254976004091697749305729726945157719230992853864491715414984635910637341679694416480594681086915626752817943175151413903076979361980482772646181292418474554493656122061288764567188429039787081943177595774650574565697706056744863642729353225070417677607641228577203680237551881770814183381563892246803193581794516898384715278037685696750244167679038727253788450720379407721293829758368798581043744822843116682613750116631334101748051277037262904712196375660623670952468958407602657893558094241741928123291700258559425948975672303335687512379738483399032600575370953639761724171405762555384082103253608075071472068203130123172113589368235284340394563575822902458471764265172334971650480032365112448584655827675527525296465093589080574715971145143089319116025941139223604668533466895394512986065143501955866012793044011322824924723990646963118654274203507317002522971760141220817202249070941510603360044167279112903050867026223796890364919871934538196684431453294623911606102240376990077000548576490548303562738361694378663761892762259697932347322464397109026958146719702239581603123368972220134332483965493919909587017394034237913651080292293417415513382621147917623019792015938237230959272945374261583237907760128120306480460354197992721353505301574644148793567384675897453471342773746839232714803299580747094405471860850208469498376437632211093507296902902881133358060481927736745064841832288180935703958042680626207750094542126948582507442740717396484055971150872017592206303207893953328004460250813684850326207551378917591225111169332751321223604624258263129492513967334941551782413509919534246665952618127488114432001691149829287771265126453707127944611505002177753624950914961591603838153358171732062847799631237869048488661443651090098985751311109299047894574681964158782337189543800237383899733598436569667751002129663549761693238979349243076509121946089933128506579179115199922671082442642000947029996452482122988188768638169376337296047315688727177556202382300275129809787916414868745509882999859211203291534824539070950632803891136472171701107144229038385818474886518523491990760899800538586864545750617761980498310405789433293800795381670203247723704898159271121232544002354094221242898519996028464358628220567854426182516155107987867446951665001459686022776551701770103468467272002217466011827810057821861138854158476244574556200320342768674996901349319005023531231158665663235839906581289656555787835715317583670145423592013018366622014183864411831460913863080100728083202962843528561758353291953548786101933154134768768657392310061159805680343591877334255324744800003289860703029428687048293342828358763103099273395229205901830608348388405571566973309489830268722425500078741363471556787127277206664716819166185522412038043407518514242538263664271583085509896689367734225857545150756442533961056037607845275882948489302126857556561411063396635690203460314507264692019292981267460281039063527117859263704553695599067581201809764239760396784898322824304076380428078335678045132483482915721049960669299486745856500818243460724268715213518517999058121187252365213424582930487646289417426696756523975281123967515781776860846208812691934344829134368341384001009414648696026548686197365365972705675634996999590133861840344412398829300645536681804553053760473559319387426485816789539391382603374181325300385293477103097559924506263723662078803204188396817918233420219663100751151114309517025314499012256145472718194678945080585415300886479980836127278131485980731301847063148155404331025631643080032411882761163607598006120601550207742149898969469984736861959296217896669989115269768373660493277452000613074949006549582528210971214643327662506488609694164477598926681896645828156172266146090681345479761571566920836972582403980249051254251445389132521222349121183929749844526271374547700328210409583019251416902350057907232930420857206045580267677323366624181694888106914727638655762215284504957474671973778845695571066581511613147637708288990848372013752117206552997388595236924487064270071671024131967887402570881089844692938552001389812219194142245784821736865731415598642657105756343031839687528292585790117092328222971252288893161908525857305847981309518994056383722859469914290619545383929677462530356002226512614526569482189059042421846461340732409539085017009976963846078461668127592560079397965096324856670265179912835542087151204610290738920472481335178074784057883380503450672206022428076290384328027499525863173451558377588360144954439086115515104343058171304756481463324343297070666913814109695879193354878787336684185879088805275036037919491459747735526482552744012647158432319651447367956749078624285590763273130085628699478473743577359270186324937114736205226821784468231908027978529747325133086042400298810339566739905738128418830952058009622036583029228105272989234588171904153618360316233533933918068401003411186815231021036087465000122255575480466635353016036988754628540530651530282215830601327080363561931885953694000757227066836230892428780167551370810199115784981120593686841115727039205055964330362426703238898313251558861212311895265510176213511639942941288963018788621563516867808372504800814335427116687153972322759855373495773087484675728693498774075373558303570275579455933210285750304992459326800825980270691416003794804099735689102099219226753671003102272371138146707464853469563301487081244852618693712276981767656757135609377952364977644290333021436625427436156129152804070714604576222778097591212284315766032012761209276174567929845200595391545345107119555997827382559059835944282823915114458514339728081869436832638918560728236016408758123374266008960987654203754046996929632659878317078516561679162763245632326331281958717653482209528981056166402909743511079735791415978612922250760271057098360793721796744399202363812641710120015551245803723354271688286830369319216593506127952534358286431686536382034726246705813875604580441945527509259244139259388889631128922273626133345221496381765810432316185728387283449809505207203180862142579569836052757091413493700868662593495638430427658225231222717467205245964289477539343088004178655561332901477410705399936371742163132229961411939329266899277722565406828885720832845254168163910932327414430000770270483779843272606330575657264436266112751045481502381457602478936858467338957688431855729836826485642699615939806381574251595463376664651621079316894453810856200254036685157252224001071003962751624738832473468083054753295858037454995322602393843747264792454347736733914558943908943233376997959491903874526771436560387149278675454122448324011647543559750386532109012121852062873128059777275976956256070798432687884965603444051911518047681561931522732354501617978154921794261153923502888996857363866344275739817025930376614897000584385821330306713861165796574863242293446260292037279726083061567389559362119164776307592358504048078638343981304889509048882249887271353183993588355880240600832068874777853435344960180078177787198620532335793980669943806269910918456053671553235811942972025517677624705194143552949840619056863897246574918331138828251378356024621999799399387735384541941385781631030811518025487796319432942664298339168357623132083215844106790038412652284639509962981282450540003851554927034572800056435384272605336765147842692223622246578202261646697442036657311947081631559585401812975509890639962510783656750186263141803573218336857981365153452284459106152795045498764978813110444234095861305730094381835223801354590621530073992288575752641704383320040743436363115357051291593324593613559843480429667656080391046309594699885333453644095288426307313355480376893874238379890019697724956328223175988051889819892709188259893988393468520914018772298255495319856558461966045137511239965483170588496152675704392031037722639237986159300230053626830341517279932077714257542647316775705048071126844091318520558073494679151874282310827460241640068427362901833853970678976083700855929274534068294514145472043408139001818165973503666192802222114930499132569560816598052646556590332649326653445263626491436215627959054905350355055973906222576508524294282847596235163597989468354477918205908976385997354761492837987887870901819421324697240559119463979481988215275590626273821321988494695812806493694463088467989331186366742422431572539887006515290271724023693459710220533291739233145318615842808199310646553765825708192017144541174314367547659639212937023703212196061098477639675548777918949001521828803850950304771231261361234236275508875321546419640920762948465402057397317667069597390077358324369736836788405868376579988459984543943620153060938610379864182110264344297144846673877123319382015524565712104909794080504713203774166952321716629611118487920012877945615732219918763395876814744741957254927607820540923449366360061828847786173179466440832523554526343905430619967121064715195179576262819031652495572465685714492826239594515228370850625829057142890701211955799562951650152590115848024290294812089967548366174824099995746331642747136998896461801180266351478296161625245143103667795723745931120881207691217134618028364538468305064264780710502001711240368457766434644511519717687332317707011977853141826073042842208812997712125072033966097316604623946726712569231018303419445870066593873699262552593871718002448837221399051524851913073926598330239680590265327320814982757395762659602479192849751584855071862679148318645966273267845351606939581045980624154233660437510740577845495368682709175527951035664256164217110163999317346367213055455665852943332433857668175656843431409843331535118985387500242728552404351135435375517029912976057330164351528184495120460877121250486703561598346386685421974246824524854288050198940382838004745296880463445949987052382949544780403559225815662988007988790316358543909364445133529308046807975601501953696302560983269043485518170851606245674154626545251737602993611602633382501334466820383518522899013890425815915741222835697266571235302934066148953390312447447905579161760247646961025112174633176436823817732557306656259613173803864703378860856376329188413641075477325831977495122922156600830010400842919682370295645748191437795729286346459429720274869597845271542807970915215411544612502267941326956437282320058317638075097219984484936000654718465213353896869575345834927494959778205137584389870982017333218641477817051347228659830168328641468974831552362143643244212306339462638513678115320605269765450012101228017487749851593140733154794058240583788518551747521418724038908265385074725722907836511517249541708448812113686052129806218560262368380741294752557890269284374677115329983751564410869462774521962023552425258723436295642438075893752414244553646512170133205806676618111604487515686016083293972048073739479876124033441025058165306165130171453460948882639096524257547292521365502250572411388210891091686814657794774252538877477091328891047834889030318217533645589189044047983976181878956473097908434521761761720136096242118452381214048317137518151737958338575941028752761653831732608812652767750254294532507557576295046584529729431539617966075759120735462651981379186965735899052980290772129658162239644724706911549346080833451046299195716206092961951201516081419547383473099010819439447948287248488638129639173668869851162546963857612583480983906264253626420355020291616221585162147762082498511168607591694496774518044419709829254943831946745962789500786606363593489909925256445721899790662038207835725126270886749748604367967049690980727454283167679330988274418855938617087418871186926078112820476467014365383346476310016259504110680159438795328414412615895515982172056611594901545415575620291844882086117275301014004632294756871382353051936242884524791989283921225363865493495670140905992765108780540547546303576377761600385770161118035765368375571563494457930538903022600901708417267717320847925900451773490602033155428772585080091073340463945878231830451958379635453939421716693971688399117365109003638275441555017233738433294289287730103316214998870075886237569697222172003085010281299745216983184373057249321008610662261689815953054609157164792163849891750008570159405013101953459009721470738347939556416977619409225678225225129839056482520227011759665624466353469708370519515009097258239385942130146087034546816487083049842399961825171983360733028117366886783562557661862474393474404840010234636994839054634837455606784021349347425787794445449397950034649873315859207056865213905035203795503765180578933746895237289716198739776013648026963674873753776397726804470900380421731689167721969286647263166455113694372056647370987274066424473770765510831724874434352148722882643337494275609404590813851708934620595383833988822299436193066860038368267544208729480796500418518353093882579658142744976179395941125595489483847455008216043897206628565781306026949932716816590366443202639476231952088706238924175313153626634133677995098380264890241267657250224372220179986777778172598057433424628189123385722169530783211958668250938639333678425742541876855515416444837693310627342050903362036114969579080485950186210417548145135278536668788974354423590727328205112690196679397130329365403044261076348552806317507120041100792548711200532523509731834403277323695334161955736524225084716839135485191988649965127556036851475584837441002795792986612927983010292610373715478661648303610418150376017014739269952208285339301603917771320697264748041815163117741770863180352320563844223700739580408080455231755785305411751248185252814781473073697965846491853631783081509597361807863141758505188328362253575839237393149612970974231833746308456265069104780899967346052112343716089004681205604951938104247645731282949033217160792488076027881956888344982862575351473476807732929980048697825363055188163556987786964180523163882585078157348788694578199812382125998025105907792332327158568853944018444027978044532446640854537428244403751324484291134072825619148913308804936495561874299152440213994618792886954264060359573500541153908648208274881244529919978193404102067932255040457894123912984965941073396250094447264267999452710811395627476184732509072838857606808241098911237542012494658796519933139727482019634228215222896895219553764792045119351375398021298383655260486252019157409878812448823482292744790542120271953969664981035575568714422327445866059404492312821106673535178181075461165544146678395148744119530587221438274435815235039569307360049656805201582932657343770995505645389785497761133549910891741479977636780245828639394658731112251450056513168850746194203888456646320524878205176111194751372302195242985886011241990548648553728582266323681300862794612225061239070723380128530898216639718354162887219618837836080075140163513153853378176410066171647358519558153031979710557000452942849246989220799020352803866037204853346522943170784223436419486416547506389301904612917716113554426139998058911148227466174830528718683797557962102433510871346668102367139279497418572253753492794085153315125681869121712725855458153882357440175396290417881349749819206005132590703277232008110955834310071901964139797213510799811681433166440663074270962271913424297641406814709312667611695448092932791679072526172496298957875979786650190626078250874576641531181824132540700329072683462295338774360018736788432955104683494372734451699964805200536183693236368536879720118847519255146512616616304329987881203582902041987801188262425717840523470047181246279523647037132824926622939592084971834035387167706434597084952048187395229853808580582098162518274697484722272706017443852068061726997111797173585271906752866891753120695755697677185222207261878434643048318543077172847057486676897003762463221893905431402849042026545135676511965371871485033514280830008000095900830545273581362181959088419757258758879375634795385993712385164148414369547749593309374146598469133574167045627644057653245202177874560551930275728436797344475016291480254442446973673246585089319080248276182005330094150787342320894451398887353670033601049055095758857458717922553671529113383359216263282959963769806100158465995935712291300809170781108644321040663362013051756611022962757808149074590219009221320563964427893904143059376807825959648900132840154940947921323834643269945323007399028819039131789267981927974732396719478040387406826752786852351765173279527727171513239667589716329565013770941951345773105998085657241937196848061034867283937479232659921197268926703582264481668918831567935649252121746396335755306418004222583420841352720852001286892960003919969560593184606529010642844356888793797965610696960266964582724541215904695885750475473836335570932924748235703204150446489870446382507483647945861214298755221715505487251702749132219822451535666286083740756664417914859664153006445128291512347147990527370824181512945230058749278204954975449593746557957593966849951142221493334149888903561242126666377038435127238369029610216205978441722910734067379532363362570761807005169168065956261467261024639123515066314507479661683539318763721471055648104352745965239794078332309420804411365655477038524758984987823630057532929243122003338210793424266732428377129471788366555219524276320055512224252769141902421969259916324637658650741479831594827814662167443894107958338313001806639280140505261355798892639661902363816428494683981713432301077274679296707242737391477134315193965828908169977559254825499757262849409196719309089215548208502979556155786017111058247626808125476251741124790602755493253837947895224371917713544896002339289573199987946240419315275043033543927983470347546401528930019277480314721378696966868678725514067737590567537623676176887295662038274780420859898893463680332336398901201298185993322680416801856012663943520977295314610369187799976106298507019176778939740829839259523139926510220935933336318429700117787712608168683241224758041964846208618208529260029378534616002203777938691993294482503581965380993287354626048886896888345105223916512801933767100723682757960852287835068417336110049091418501866382768840207507643493296580326197952200660107558313387516912685501801344798530792615526185020461430008166621206264502050938369952889780351649758941079609889835222615635070304248574497698329696890339467638355458951420557281932138053884038187820940340657461337495910320000000004E-30010" + }, + "sparse_union_movement_above_kappa": { + "rational": "10156250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002500000000002500000000000000000000002115008442807487098522698362399185677258698371805868471719335776838627743415457068895139647759399172939286143496816535216421325187363046885361425772909502231218314437622205930116079297234806627210590217190600996553729143901162562581526621534715086055386213403722171966572167941373807751745003300864621423581428649211471188453869806941140221723112492926739317268445594071265412095987431797270160735945991595165719330107119185281038386587589235057335380940005305693001382608667438803331294871746532631942765649987364807608073283062624357530021849218590642065711037865682141672669354849851791496897063126949603013467264073188883576845527267440287689723188483169943656279220740631078863122122848807728666715806765276137724700730081249994819924328243541666148245400968975846655637729029148061506542592604399222854110732781542370402410205393799770466011365077399427326183232238265030685889279727658938535761785132571276748397638477935037785591264437749875180322256012323784015525604623362096027221464940257283064631540803900300206829890788392390769246502987498583884366757395670906295197448156304193074667013849190537476866082660533871486087905033157186320272974969845529599556451129598514187359685627637446331662670129764298993501000311279054119551795293436077541806432874413466425279225063608468943800996401943757380346521486548236195531740294211488887484747134686945363444367213049217878453660392154283544186751396258154512323118386967652721436408567472452527756993971200559754852597863920008857514212732409177874851597442288818837293554568853805195153691613325750810300585126982063298450310108226571245355801559056941843652396973301352601593155284091292740866549566043921462231493541832798235704528526544571442111119340460174192670996737170522672044496340913168485452207793358350233254119832104800326581380356050265032251032583839368957385716185808989673751999010358645218475784409915307826880584350233021674043072363958462907535238921727737631843362131946446141984858433639685917882538688838455279299045165689088549176965047266147592004928222938280364143281780835667493268283662648947181175663382197730113581951086056976483858969045393044417697346422032942577633765309014213395194927015343742294781043560212256273243309210810716569809706301214533154733404016100418073529100312046963636034590804017050567825790653522898357191706413177756125343416124397399370507867589562528843228068316390479370510851892303499422073776953238504121391931730762288240664013569866350866142106604819742055188356660330055365791434602484732529335545051589352981907788978988990058604020653742020143974368603784198960431131083519382459457408699921193339760634764429396351189234420370288092083429824112366653374881787679545239641552020752120631153730288687107589489120292707186039573592496953996467058100802926320813863991506924956350818555888540996525414748635919832481014061543411899028591355141336710272866541510563545104416207274694774459589776604260396239058370727607349959892805801971059398882844048475144121939895317383936982428706222260824394901932280263573724276353034949545982161526781940144058431729104223959741439456030412058108349089069676217865847696700534979767662164601668811222183982382030893772206399146560758010262654470829182241726963136617745833564854806677266405794940547670254817160231448436415471652215588253282403077494518483979059604469779641259560901785968791059931429223279496161551795049201472582434452956186433007479496688558274059028370960033933982400313564500896108628003186341630250848045877794016078752452682093219965302431201174802460703466949303240338995481386851059348764090725288837013013020011608921825602947584532865947811317643619077326501020663870402563748999202407020433976878196711929493290863773484448608531340169788463969657749061632838221690568410771383593321101134155889643568684994429271588631203707525266160883417131491041471364882422434813088562556089045939993163903528013429218746699758740378492796618110754002770431344488385172399961108195697586578602524887434063218473131399231809850966445274176895376565342801594721183021913241034376765818450045277610296427092909017909490640397231665226655143897873234908479334131724937559293171575071691012991576244466231832358524634166032791301205882308743880508681273044461805376219638399712578583182311288011758141436699004413724899746160081943748014286302164836045926083206041509764298723420154117688346277834439283531997762111037738839718093958280696932332350858147525625008573229204237340394372247648083960109569137593366540739775930840895925072858277695051375234288253312217091018573250416529884608205662426956753329591207982492965987366229082213448124955154198938345191885616600278841489022263636658633093655344408969390989862154149518903671130817413245944686140233224662345818646024351348604373050446768109612455402674390070502386449660692134151894572702981033534329557913465419468013694631931249615970873349155446265463400213081814561358394769318267534167849212083052855832908113584849135879954303777127723870759742323643887732387793413315218595535875800995893373148611257300301755763038093604492546099766828737006134391587178415653169636617191406043687134391871182439283601626063617458675678909288711271101815667373525075658367964412146168599556138576487540761529894205681033399089363571537423187423511481066702046780478664301144511930691602163263183399066990012252975334340234898068957851182672283394727230641160734684284692364127320952802603126352555079909496663924107778180660849680591067001634116078141264730803483109790729372834607102328360051875687031249482966502859719548812630772867174075930109406498030729934120405470316295274791612633445482801702834623580934155701805161957811460349886660009201587283718078756274616763501932609719696288152398349916834595385860875165332907902462330247994503883308590334969327770759051110868169503729243639448057907420194864053286218064066674023488219123457447455194664288635018247644777667919301889894201203300344364491875183739355892740401813520560005797702923345332597348637496551282091136208988892760563113014731677431041707319983119531268712316792952562980263598248581825183877481449279066967542760109116485522596447413221676087447972531500809098998858459084702152820680852688282061276454721277737190455602522458872784230132104859574029441949062452148040871519931227359401497624891843906242119772766540153895784062251159638228604035085243052701635874454891703894294311728652326694467801765506657820835766530737470370254548700565433530756995298894854043707849724257143022903665202897742227204686313931135479826137377432423080908666946197656517348406938601609451315462235258839004763801472953148795323547572320516502953974869593397668441787105415349874240549311995115495498461179384223283631978436475792675347459641182597388880449172569552526188223953156353757922031886162351012961210847813222630501396656338011677754584062724643356597785676357228833285503099605862121196136328379413187716467418886700771232802759612885488139130480156140074005485484304810134961865728780733026193833398372094576150614655912114620264183316643096982424605967898438078529256444121082228228766131257762559222616213034389935103044426258497810003632786866201246093207073275859631681170694542136184874317662571172652535580506732913658882392409278321227568868901230227900792234352337852986851489351281025106081442544272544098632181355319722641042108673398656875014677220106303088883652834979656994904254627222827104056097121601932001971273626056030517128185362691164749767722522283492759156190702472313410684076559351062064746636242089553053297437002643155637732788366791140772268114708586490524732661954842072856466757875811844926897827152440952897083637475752191144290608988992466910012970422557636821490396249371643964330003960181534318276483504146278093405987880592485272849777423148588413759991433232634704622075258790038545052829240996875848413877153614755585223269198090015771856230734980491320093475665349487050837365020266698713114353548130001845674918256574183287715359804825493962560747426577743860287647309496629477138162845066847329226878758487043712750166186245703576075188860274157978846950691719304399363321329420728671122167904300057328458567020380453225362372617806381077804137596799271041971961272231174494791679756900771409391131226715317462490246069128620358127353184451348595773864580815870349053286339864463358905768413784259035576125315256240178076026971530689959744910739950786689837889476172739466870039227150961129016969666462770275476924794551072042548234909313839620140812939468184187965548379392288358193289988448457554735801675927500146974256855864432054553145854359757914443335918470135170889477485773505012818841272677273309882206772481568035665206308363560689013734815758472710983787459946530257287567030313601745766506134684320238763325030037471319681377179420133873193301848745490007768819989756044247357777264926282735836802538908020634833932216762664431328524589710584795855566009967841877056457590154745346371655764287300180299796598763977775968744560158833219371703283311800460017363248190675904789497774218560408922972380306395997317643535130619378438127190993058684797286485627451707617240789499785652412437113149520192059690882635837750279458111519363079633583198919545643436719890989695915826653340518092258887670208942889849992997044121090416957980709582007696006333237676625196219031409838832162224856395977347172680914547940952323162223450040699046199920532542083701388895630978554198159950178660768779299304675572257061793116378758731761107654605239717698013352724526591037557772690566583689081445785209305187695784209233856766329049786578463966770647120193604436835146352794690080818665151744545595386122833204307086066268143549186895224667821134890734401370453903500399440400766359343091174532004464909549829477648148580215874171643808613512879278190807848760667715929315221734019924862580731574971035745020090626377183378882701119050944059841706803934607677444238643075841050360795380372129773997864872225947844501082865547693753986136194255573615473419051274684308762331934544645615439056138942619208893893750446017866324209435980527055479088392489733796101000342911287007216596310399134811359335871129055534958298620100935385464323229384659724999213802804199418944442429372369020508228147507134823710894032013536437719846119299604872244544219079828151601529143459979013795431354666643982981180291408674577847741602256129700085614754208981310841165581534990465664087700338240891416371309673279982900130530817214528522059755054848159837511896894265635548999820297907903074246816968017411141878357604939994715581270062155421206461905359879837475614250841338552134901198825718262704379648853014658309084509515506333381331873751262575708914148909255526385378431220552056864880162864008367297975331745505540670687391778629744741965090758250988863495634826611281557869613705924644982457137797209738979451269367167920418933203362134205355181021143956929089056495073426790347194562473383804886317257165524851624564903906837860139831771249781105973287196905643409837972258350146483660859914986134742796810487256444634438813260363911552243669569378786450102857267502528772028320254146312332965576296036220958465050943391775530825971694310984603607182457767692076668819461443823491428951154776840819107246337513432225648283859393251743207751731963371891003763666198535309728603724707012535205086767102232402313743871269761051275829870005099332250217110860321375311300622882295119080388010640096437233387606674588405347903163829959350560662553965566363859963368062582041604347773182017678099839329640039734335610460179805746583078467529650128865905295696364217014508549489285749040255833687644001324723184972177205346134586983387702034750612570564319306754258635168160684017076885624758884130895065711392020602640117140069602541242580843862293715891762814150712934724905792295429819023675328060143102820373091268529089229005533720944080518071365302191771440313744001022924437326432431736289429807748213466122928853746158977659335419923604120148670271728906688204485793787853475769244840495120693161545323104618638623414030515322191141797107259946770485794398943662643641424426514186215910682338306267604419401910307144300920059387970442703545845390973061700798395448629224596178819509421424187561041919759681813447112680094851930323457439592199645260936205710779170653437529157833525437012819259315726178049093915155917738117239601900664473389523560435482030822925064639856487243918075833921878094934620849758150143842738409940431042851440638846020525813402018767868017050782530793028397342058821085098640893955725614617941066293083742912620008091278112146163956918881881324116273397270143678992786285772329779006485284805901167133366723848628246516285875488966503198261002830706231180997661740779663568550876829250630742940035305204300562267735377650840011041819778225762716756555949222591229967983634549171107863323655977901525560094247519250137144122637075890684590423594665940473190564924483086830616099277256739536679925559895400780842243055033583120991373479977396754348508559478412770073073354353878345655286979405754948003984559307739818236343565395809476940032030076620115088549498180338376325393661037198391846168974363367835693436709808178700824895186773601367965212552117374594109408052773376824225725720283339515120481934186266210458072045233925989510670156551937523635531737145626860685179349121013992787718004398051575801973488332001115062703421212581551887844729397806277792333187830305901156064565782373128491833735387945603377479883561666488154531872028608000422787457321942816281613426781986152876250544438406237728740397900959538339542933015711949907809467262122165360912772524746437827777324761973643670491039695584297385950059345974933399609142416937750532415887440423309744837310769127280486522483282126644794778799980667770610660500236757499113120530747047192159542344084324011828922181794389050595575068782452446979103717186377470749964802800822883706134767737658200972784118042925276786057259596454618721629630872997690224950134646716136437654440495124577601447358323450198845417550811930926224539817780308136000588523555310724629999007116089657055141963606545629038776996966861737916250364921505694137925442525867116818000554366502956952514455465284713539619061143639050080085692168749225337329751255882807789666415808959976645322414138946958928829395917536355898003254591655503545966102957865228465770025182020800740710882140439588322988387196525483288533692192164348077515289951420085897969333563831186200000822465175757357171762073335707089690775774818348807301475457652087097101392891743327372457567180606375019685340867889196781819301666179204791546380603009510851879628560634565916067895771377474172341933556464386287689110633490264009401961318970737122325531714389140352765849158922550865078626816173004823245316865070259765881779464815926138423899766895300452441059940099196224580706076019095107019583919511283120870728930262490167324871686464125204560865181067178803379629499764530296813091303356145732621911572354356674189130993820280991878945444215211552203172983586207283592085346000252353662174006637171549341341493176418908749249897533465460086103099707325161384170451138263440118389829846856621454197384847845650843545331325096323369275774389981126565930915519700801047099204479558355054915775187787778577379256328624753064036368179548669736270146353825221619995209031819532871495182825461765787038851082756407910770008102970690290901899501530150387551935537474742367496184215489824054474167497278817442093415123319363000153268737251637395632052742803660831915626622152423541119399731670474161457039043066536522670336369940392891730209243145600995062262813562861347283130305587280295982437461131567843636925082052602395754812854225587514476808232605214301511395066919330841656045423722026728681909663940553821126239368667993444711423892766645377903286909427072247712093003438029301638249347148809231121766067517917756032991971850642720272461173234638000347453054798535561446205434216432853899660664276439085757959921882073146447529273082055742813072223290477131464326461995327379748514095930714867478572654886345982419365632589000556628153631642370547264760605461615335183102384771254252494240961519615417031898140019849491274081214167566294978208885521787801152572684730118120333794518696014470845125862668051505607019072596082006874881465793362889594397090036238609771528878776085764542826189120365831085824267666728453527423969798338719696834171046469772201318759009479872864936933881620638186003161789608079912861841989187269656071397690818282521407174869618435894339817546581234278684051306705446117057977006994632436831283271510600074702584891684976434532104707738014502405509145757307026318247308647042976038404590079058383483479517100250852796703807755259021866250030563893870116658838254009247188657135132662882570553957650331770090890482971488423500189306766709057723107195041887842702549778946245280148421710278931759801263991082590606675809724578312889715303077973816377544053377909985735322240754697155390879216952093126200203583856779171788493080689963843373943271871168932173374693518843389575892568894863983302571437576248114831700206495067672854000948701024933922275524804806688417750775568092784536676866213367390825371770311213154673428069245441914189283902344488091244411072583255359156356859039032288201017678651144055694524397803071078941508003190302319043641982461300148847886336276779888999456845639764958986070705978778614628584932020467359208159729640182059004102189530843566502240246913550938511749232408164969579269629140419790690811408081582820489679413370552382245264041600727435877769933947853994653230562690067764274590198430449186099800590953160427530003887811450930838567922071707592329804148376531988133589571607921634095508681561676453468901145110486381877314811034814847222407782230568406533336305374095441452608079046432096820862452376301800795215535644892459013189272853373425217165648373909607606914556307805679366801311491072369384835772001044663890333225369352676349984092935540783057490352984832316724819430641351707221430208211313542040977733081853607500192567620944960818151582643914316109066528187761370375595364400619734214616834739422107963932459206621410674903984951595393562898865844166162905269829223613452714050063509171289313056000267750990687906184708118367020763688323964509363748830650598460936816198113586934183478639735977235808344249489872975968631692859140096787319668863530612081002911885889937596633027253030463015718282014944318994239064017699608171971241400861012977879511920390482880683088625404494538730448565288480875722249214340966586068934954256482594153724250146096455332576678465291449143715810573361565073009319931520765391847389840529791194076898089626012019659585995326222377262220562471817838295998397088970060150208017218694463358836240045019544446799655133083948495167485951567477729614013417888308952985743006379419406176298535888237460154764215974311643729582784707062844589006155499949849846933846135485346445407757702879506371949079858235666074584792089405783020803961026697509603163071159877490745320612635000962888731758643200014108846068151334191286960673055905561644550565411674360509164327986770407889896350453243877472659990627695914187546565785450893304584214495341288363071114776538198761374691244703277611058523965326432523595458805950338647655382518498072143938160426095830010185859090778839262822898331148403389960870107416914020097761577398674971333363411023822106576828338870094223468559594972504924431239082055793997012972454973177297064973497098367130228504693074563873829964139615491511284377809991370792647124038168926098007759430659809496539825057513406707585379319983019428564385661829193926262017781711022829630139518373669787968570577706865060410017106840725458463492669744020925213982318633517073628536368010852034750454541493375916548200555528732624783142390204149513161639147583162331663361315906622859053906989763726337588763993476555644127131073570711899058790899497367088619479551477244096499338690373209496971967725454855331174310139779865994870497053818897656568455330497123673953201623423615772116997332796591685605607893134971751628822567931005923364927555133322934808286329653960702049827661638441456427048004286135293578591886914909803234255925803049015274619409918887194479737250380457200962737576192807815340308559068877218830386604910230190737116350514349329416767399347519339581092434209197101467094144997114996135985905038265234652594966045527566086074286211668469280829845503881141428026227448520126178300943541738080429157402779621980003219486403933054979690848969203686185489313731901955135230862341590015457211946543294866610208130888631585976357654991780266178798794894065704757913123893116421428623206559898628807092712656457264285722675302988949890737912538147528962006072573703022491887091543706024998936582910686784249724115450295066587869574040406311285775916948930936482780220301922804283654507091134617076266066195177625500427810092114441608661127879929421833079426752994463285456518260710552203249428031268008491524329151155986681678142307754575854861467516648468424815638148467929500612209305349762881212978268481649582559920147566331830203745689348940664900619798212437896213767965669787079661491568316961337901734895261495156038558415109377685144461373842170677293881987758916064041054277540999829336591803263863916463235833108464417043914210857852460832883779746346875060682138101087783858843879257478244014332541087882046123780115219280312621675890399586596671355493561706131213572012549735095709501186324220115861487496763095737386195100889806453915747001997197579089635977341111283382327011701993900375488424075640245817260871379542712901561418538656636312934400748402900658345625333616705095879630724753472606453978935305708924316642808825733516537238347578111861976394790440061911740256278043658294109205954433139326664064903293450966175844715214094082297103410268869331457994373780730539150207502600210729920592573911437047859448932321586614857430068717399461317885701992728803852886153125566985331739109320580014579409518774304996121234000163679616303338474217393836458731873739944551284396097467745504333304660369454262836807164957542082160367243707888090535910811053076584865659628419528830151317441362503025307004371937462898285183288698514560145947129637936880354681009727066346268681430726959127879312385427112203028421513032451554640065592095185323688139472567321093669278832495937891102717365693630490505888106314680859073910609518973438103561138411628042533301451669154527901121878921504020823493012018434869969031008360256264541326541282542863365237220659774131064386823130341375562643102847052722772921703664448693563134719369272832222761958722257579554383411397297261011995994045469739118274477108630440440430034024060529613095303512079284379537934489584643985257188190413457933152203163191937563573633126889394073761646132432357884904491518939780183865662995344796741433974763245072693032414540559911181176727887336520208362761574798929051523240487800379020354886845868274752704859861987071812122159532409793417217462790636740964403145870245976566063406605088755072904055396290536940520624627792151897923624193629511104927457313735957986686490697375196651590898372477481314111430474947665509551958931281567721687437151091991762422745181863570791919832747068604713984654271854717796731519528205119116753591345836619077504064876027670039859698832103603153973878995543014152898725386353893905072961220521529318825253501158073689217845588262984060721131197997320980306340966373373917535226498191277195135136886575894094440400096442540279508941342093892890873614482634725755650225427104316929330211981475112943372650508288857193146270022768335115986469557957612989594908863484855429173492922099779341277250909568860388754308434608323572321932525829053749717518971559392424305543000771252570324936304245796093264312330252152665565422453988263652289291198040962472937502142539851253275488364752430367684586984889104244404852306419556306282459764120630056752939916406116588367427092629878752274314559846485532536521758636704121770762460599990456292995840183257029341721695890639415465618598368601210002558659248709763658709363901696005337336856446948611362349487508662468328964801764216303476258800948875941295144733436723809322429049684944003412006740918718438444099431701117725095105432922291930492321661815791613778423593014161842746818516606118442691377707931218608588037180720660834373568902351147703462927233655148845958497205574859048266715009592066886052182370199125104629588273470644914535686244044848985281398872370961863752054010974301657141445326506737483179204147591610800659869057988022176559731043828288406658533419498774595066222560316914312556093055044996694444543149514358356157047280846430542382695802989667062734659833419606435635469213878854111209423327656835512725840509028742394770121487546552604387036283819634167197243588605897681832051278172549169849282582341350761065269087138201579376780010275198137177800133130877432958600819330923833540488934131056271179209783871297997162491281889009212868896209360250698948246653231995752573152593428869665412075902604537594004253684817488052071334825400979442830174316187010453790779435442715795088080140961055925184895102020113807938946326352937812046313203695368268424491461622963407945770377399340451965785439626297082090563393959809348287403242743557958436577114066267276195224991836513028085929022251170301401237984526061911432820737258304290198122019006970489222086245715643837868369201933232495012174456340763797040889246946741045130790970646269539337197173644549953095531499506276476948083081789642213486004611006994511133111660213634357061100937831121072783518206404787228327201234123890468574788110053498654698221738566015089893375135288477162052068720311132479994548351025516983063760114473530978246241485268349062523611816066999863177702848906869046183127268209714401702060274727809385503123664699129983284931870504908557053805724223804888441198011279837843849505324595913815121563004789352469703112205870573186197635530067988492416245258893892178605581861466514851123078205276668383794545268865291386036669598787186029882646805359568608953808759892326840012414201300395733164335942748876411347446374440283387477722935369994409195061457159848664682778062862514128292212686548550972114161580131219551294027798687843075548810746471502810497637162138432145566580920325215698653056265309767680845032132724554159929588540721804904709459020018785040878288463344544102516542911839629889538257994927639250113235712311747305199755088200966509301213336630735792696055859104871604136876597325476153229429028388606534999514727787056866543707632179670949389490525608377717836667025591784819874354643063438373198521288328781420467280428181463864538470589360043849072604470337437454801501283147675819308002027738958577517975491034949303377699952920358291610165768567740567978356074410351703677328166902923862023233197919768131543124074739468994946662547656519562718644160382795456033135175082268170865573834693590004684197108238776170873593183612924991201300134045923309092134219930029711879813786628154154076082496970300895725510496950297065606429460130867511795311569880911759283206231655734898021242958508846791926608649271238012046848807463452145145524540629568674371180568176504360963017015431749277949293396317976688216722938280173938924419296305551815469608660762079635769293211764371669224250940615805473476357850712260506636283919127991342967871258378570207502000023975207636318395340545489772104939314689719843908698846498428096291037103592386937398327343536649617283393541761406911014413311300544468640137982568932109199336118754072870063610611743418311646272329770062069045501332523537696835580223612849721838417508400262263773939714364679480638417882278345839804065820739990942451525039616498983928072825202292695277161080260165840503262939152755740689452037268647554752305330140991106973476035764844201956489912225033210038735236980330958660817486330751849757204759782947316995481993683099179869510096851706688196713087941293319881931792878309916897429082391253442735487836443276499521414310484299212015258716820984369808164980299317231675895566120417229707891983912313030436599083938826604501055645855210338180213000321723240000979992390148296151632252660711089222198449491402674240066741145681135303976173971437618868459083892733231187058925801037611622467611595626870911986465303574688805428876371812925687283054955612883916571520935189166104478714916038251611282072878086786997631842706045378236307514687319551238743862398436639489398491712487785555373333537472225890310531666594259608781809592257402554051494610430727683516844883090840642690451751292292016489065366815256159780878766578626869915420884829690930367763912026088186491309948519583077355201102841413869259631189746246955907514383232310780500834552698356066683107094282367947091638804881069080013878056063192285475605492314979081159414662685369957898706953665541860973526989584578250451659820035126315338949723159915475590954107123670995428358075269318669824176810684347869283578798491457227042494389813706374939315712352299179827272303887052125744889038946504277764561906702031369062935281197650688873313459486973806092979428386224000584822393299996986560104828818760758385981995867586886600382232504819370078680344674241717169681378516934397641884405919044221823915509568695105214974723365920083084099725300324546498330670104200464003165985880244323828652592296949994026574626754794194734935207459814880784981627555233983334079607425029446928152042170810306189510491211552154552132315007344633654000550944484672998323620625895491345248321838656512221724222086276305979128200483441775180920689490213071958767104334027512272854625466595692210051876910873324145081549488050165026889578346879228171375450336199632698153881546255115357502041655301566125512734592488222445087912439735269902472458805653908767576062143624424582424222584866909588864737855139320483034513471009546955235085164365334373977580000000001/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.40625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000010000000000000000000000008460033771229948394090793449596742709034793487223473886877343107354510973661828275580558591037596691757144573987266140865685300749452187541445703091638009" + }, + "polynomial_products_above_kappa": { + "rational": "4991601225219372277393321645030396487115008442807487098522698362399185677258698371805868471719335776838627743415457068895139647759399172939286143496816535216421325187363046885361425772909502231218314437622205930116079297234806627210590217190600996553729143901162562581526621534715086055386213403722171966572167941373807751745003300864621423581428649211471188453869806941140221723112492926739317268445594071265412095987431797270160735945991595165719330107119185281038386587589235057335380940005305693001382608667438803331294871746532631942765649987364807608073283062624357530021849218590642065711037865682141672669354849851791496897063126949603013467264073188883576845527267440287689723188483169943656279220740631078863122122848807728666715806765276137724700730081249994819924328243541666148245400968975846655637729029148061506542592604399222854110732781542370402410205393799770466011365077399427326183232238265030685889279727658938535761785132571276748397638477935037785591264437749875180322256012323784015525604623362096027221464940257283064631540803900300206829890788392390769246502987498583884366757395670906295197448156304193074667013849190537476866082660533871486087905033157186320272974969845529599556451129598514187359685627637446331662670129764298993501000311279054119551795293436077541806432874413466425279225063608468943800996401943757380346521486548236195531740294211488887484747134686945363444367213049217878453660392154283544186751396258154512323118386967652721436408567472452527756993971200559754852597863920008857514212732409177874851597442288818837293554568853805195153691613325750810300585126982063298450310108226571245355801559056941843652396973301352601593155284091292740866549566043921462231493541832798235704528526544571442111119340460174192670996737170522672044496340913168485452207793358350233254119832104800326581380356050265032251032583839368957385716185808989673751999010358645218475784409915307826880584350233021674043072363958462907535238921727737631843362131946446141984858433639685917882538688838455279299045165689088549176965047266147592004928222938280364143281780835667493268283662648947181175663382197730113581951086056976483858969045393044417697346422032942577633765309014213395194927015343742294781043560212256273243309210810716569809706301214533154733404016100418073529100312046963636034590804017050567825790653522898357191706413177756125343416124397399370507867589562528843228068316390479370510851892303499422073776953238504121391931730762288240664013569866350866142106604819742055188356660330055365791434602484732529335545051589352981907788978988990058604020653742020143974368603784198960431131083519382459457408699921193339760634764429396351189234420370288092083429824112366653374881787679545239641552020752120631153730288687107589489120292707186039573592496953996467058100802926320813863991506924956350818555888540996525414748635919832481014061543411899028591355141336710272866541510563545104416207274694774459589776604260396239058370727607349959892805801971059398882844048475144121939895317383936982428706222260824394901932280263573724276353034949545982161526781940144058431729104223959741439456030412058108349089069676217865847696700534979767662164601668811222183982382030893772206399146560758010262654470829182241726963136617745833564854806677266405794940547670254817160231448436415471652215588253282403077494518483979059604469779641259560901785968791059931429223279496161551795049201472582434452956186433007479496688558274059028370960033933982400313564500896108628003186341630250848045877794016078752452682093219965302431201174802460703466949303240338995481386851059348764090725288837013013020011608921825602947584532865947811317643619077326501020663870402563748999202407020433976878196711929493290863773484448608531340169788463969657749061632838221690568410771383593321101134155889643568684994429271588631203707525266160883417131491041471364882422434813088562556089045939993163903528013429218746699758740378492796618110754002770431344488385172399961108195697586578602524887434063218473131399231809850966445274176895376565342801594721183021913241034376765818450045277610296427092909017909490640397231665226655143897873234908479334131724937559293171575071691012991576244466231832358524634166032791301205882308743880508681273044461805376219638399712578583182311288011758141436699004413724899746160081943748014286302164836045926083206041509764298723420154117688346277834439283531997762111037738839718093958280696932332350858147525625008573229204237340394372247648083960109569137593366540739775930840895925072858277695051375234288253312217091018573250416529884608205662426956753329591207982492965987366229082213448124955154198938345191885616600278841489022263636658633093655344408969390989862154149518903671130817413245944686140233224662345818646024351348604373050446768109612455402674390070502386449660692134151894572702981033534329557913465419468013694631931249615970873349155446265463400213081814561358394769318267534167849212083052855832908113584849135879954303777127723870759742323643887732387793413315218595535875800995893373148611257300301755763038093604492546099766828737006134391587178415653169636617191406043687134391871182439283601626063617458675678909288711271101815667373525075658367964412146168599556138576487540761529894205681033399089363571537423187423511481066702046780478664301144511930691602163263183399066990012252975334340234898068957851182672283394727230641160734684284692364127320952802603126352555079909496663924107778180660849680591067001634116078141264730803483109790729372834607102328360051875687031249482966502859719548812630772867174075930109406498030729934120405470316295274791612633445482801702834623580934155701805161957811460349886660009201587283718078756274616763501932609719696288152398349916834595385860875165332907902462330247994503883308590334969327770759051110868169503729243639448057907420194864053286218064066674023488219123457447455194664288635018247644777667919301889894201203300344364491875183739355892740401813520560005797702923345332597348637496551282091136208988892760563113014731677431041707319983119531268712316792952562980263598248581825183877481449279066967542760109116485522596447413221676087447972531500809098998858459084702152820680852688282061276454721277737190455602522458872784230132104859574029441949062452148040871519931227359401497624891843906242119772766540153895784062251159638228604035085243052701635874454891703894294311728652326694467801765506657820835766530737470370254548700565433530756995298894854043707849724257143022903665202897742227204686313931135479826137377432423080908666946197656517348406938601609451315462235258839004763801472953148795323547572320516502953974869593397668441787105415349874240549311995115495498461179384223283631978436475792675347459641182597388880449172569552526188223953156353757922031886162351012961210847813222630501396656338011677754584062724643356597785676357228833285503099605862121196136328379413187716467418886700771232802759612885488139130480156140074005485484304810134961865728780733026193833398372094576150614655912114620264183316643096982424605967898438078529256444121082228228766131257762559222616213034389935103044426258497810003632786866201246093207073275859631681170694542136184874317662571172652535580506732913658882392409278321227568868901230227900792234352337852986851489351281025106081442544272544098632181355319722641042108673398656875014677220106303088883652834979656994904254627222827104056097121601932001971273626056030517128185362691164749767722522283492759156190702472313410684076559351062064746636242089553053297437002643155637732788366791140772268114708586490524732661954842072856466757875811844926897827152440952897083637475752191144290608988992466910012970422557636821490396249371643964330003960181534318276483504146278093405987880592485272849777423148588413759991433232634704622075258790038545052829240996875848413877153614755585223269198090015771856230734980491320093475665349487050837365020266698713114353548130001845674918256574183287715359804825493962560747426577743860287647309496629477138162845066847329226878758487043712750166186245703576075188860274157978846950691719304399363321329420728671122167904300057328458567020380453225362372617806381077804137596799271041971961272231174494791679756900771409391131226715317462490246069128620358127353184451348595773864580815870349053286339864463358905768413784259035576125315256240178076026971530689959744910739950786689837889476172739466870039227150961129016969666462770275476924794551072042548234909313839620140812939468184187965548379392288358193289988448457554735801675927500146974256855864432054553145854359757914443335918470135170889477485773505012818841272677273309882206772481568035665206308363560689013734815758472710983787459946530257287567030313601745766506134684320238763325030037471319681377179420133873193301848745490007768819989756044247357777264926282735836802538908020634833932216762664431328524589710584795855566009967841877056457590154745346371655764287300180299796598763977775968744560158833219371703283311800460017363248190675904789497774218560408922972380306395997317643535130619378438127190993058684797286485627451707617240789499785652412437113149520192059690882635837750279458111519363079633583198919545643436719890989695915826653340518092258887670208942889849992997044121090416957980709582007696006333237676625196219031409838832162224856395977347172680914547940952323162223450040699046199920532542083701388895630978554198159950178660768779299304675572257061793116378758731761107654605239717698013352724526591037557772690566583689081445785209305187695784209233856766329049786578463966770647120193604436835146352794690080818665151744545595386122833204307086066268143549186895224667821134890734401370453903500399440400766359343091174532004464909549829477648148580215874171643808613512879278190807848760667715929315221734019924862580731574971035745020090626377183378882701119050944059841706803934607677444238643075841050360795380372129773997864872225947844501082865547693753986136194255573615473419051274684308762331934544645615439056138942619208893893750446017866324209435980527055479088392489733796101000342911287007216596310399134811359335871129055534958298620100935385464323229384659724999213802804199418944442429372369020508228147507134823710894032013536437719846119299604872244544219079828151601529143459979013795431354666643982981180291408674577847741602256129700085614754208981310841165581534990465664087700338240891416371309673279982900130530817214528522059755054848159837511896894265635548999820297907903074246816968017411141878357604939994715581270062155421206461905359879837475614250841338552134901198825718262704379648853014658309084509515506333381331873751262575708914148909255526385378431220552056864880162864008367297975331745505540670687391778629744741965090758250988863495634826611281557869613705924644982457137797209738979451269367167920418933203362134205355181021143956929089056495073426790347194562473383804886317257165524851624564903906837860139831771249781105973287196905643409837972258350146483660859914986134742796810487256444634438813260363911552243669569378786450102857267502528772028320254146312332965576296036220958465050943391775530825971694310984603607182457767692076668819461443823491428951154776840819107246337513432225648283859393251743207751731963371891003763666198535309728603724707012535205086767102232402313743871269761051275829870005099332250217110860321375311300622882295119080388010640096437233387606674588405347903163829959350560662553965566363859963368062582041604347773182017678099839329640039734335610460179805746583078467529650128865905295696364217014508549489285749040255833687644001324723184972177205346134586983387702034750612570564319306754258635168160684017076885624758884130895065711392020602640117140069602541242580843862293715891762814150712934724905792295429819023675328060143102820373091268529089229005533720944080518071365302191771440313744001022924437326432431736289429807748213466122928853746158977659335419923604120148670271728906688204485793787853475769244840495120693161545323104618638623414030515322191141797107259946770485794398943662643641424426514186215910682338306267604419401910307144300920059387970442703545845390973061700798395448629224596178819509421424187561041919759681813447112680094851930323457439592199645260936205710779170653437529157833525437012819259315726178049093915155917738117239601900664473389523560435482030822925064639856487243918075833921878094934620849758150143842738409940431042851440638846020525813402018767868017050782530793028397342058821085098640893955725614617941066293083742912620008091278112146163956918881881324116273397270143678992786285772329779006485284805901167133366723848628246516285875488966503198261002830706231180997661740779663568550876829250630742940035305204300562267735377650840011041819778225762716756555949222591229967983634549171107863323655977901525560094247519250137144122637075890684590423594665940473190564924483086830616099277256739536679925559895400780842243055033583120991373479977396754348508559478412770073073354353878345655286979405754948003984559307739818236343565395809476940032030076620115088549498180338376325393661037198391846168974363367835693436709808178700824895186773601367965212552117374594109408052773376824225725720283339515120481934186266210458072045233925989510670156551937523635531737145626860685179349121013992787718004398051575801973488332001115062703421212581551887844729397806277792333187830305901156064565782373128491833735387945603377479883561666488154531872028608000422787457321942816281613426781986152876250544438406237728740397900959538339542933015711949907809467262122165360912772524746437827777324761973643670491039695584297385950059345974933399609142416937750532415887440423309744837310769127280486522483282126644794778799980667770610660500236757499113120530747047192159542344084324011828922181794389050595575068782452446979103717186377470749964802800822883706134767737658200972784118042925276786057259596454618721629630872997690224950134646716136437654440495124577601447358323450198845417550811930926224539817780308136000588523555310724629999007116089657055141963606545629038776996966861737916250364921505694137925442525867116818000554366502956952514455465284713539619061143639050080085692168749225337329751255882807789666415808959976645322414138946958928829395917536355898003254591655503545966102957865228465770025182020800740710882140439588322988387196525483288533692192164348077515289951420085897969333563831186200000822465175757357171762073335707089690775774818348807301475457652087097101392891743327372457567180606375019685340867889196781819301666179204791546380603009510851879628560634565916067895771377474172341933556464386287689110633490264009401961318970737122325531714389140352765849158922550865078626816173004823245316865070259765881779464815926138423899766895300452441059940099196224580706076019095107019583919511283120870728930262490167324871686464125204560865181067178803379629499764530296813091303356145732621911572354356674189130993820280991878945444215211552203172983586207283592085346000252353662174006637171549341341493176418908749249897533465460086103099707325161384170451138263440118389829846856621454197384847845650843545331325096323369275774389981126565930915519700801047099204479558355054915775187787778577379256328624753064036368179548669736270146353825221619995209031819532871495182825461765787038851082756407910770008102970690290901899501530150387551935537474742367496184215489824054474167497278817442093415123319363000153268737251637395632052742803660831915626622152423541119399731670474161457039043066536522670336369940392891730209243145600995062262813562861347283130305587280295982437461131567843636925082052602395754812854225587514476808232605214301511395066919330841656045423722026728681909663940553821126239368667993444711423892766645377903286909427072247712093003438029301638249347148809231121766067517917756032991971850642720272461173234638000347453054798535561446205434216432853899660664276439085757959921882073146447529273082055742813072223290477131464326461995327379748514095930714867478572654886345982419365632589000556628153631642370547264760605461615335183102384771254252494240961519615417031898140019849491274081214167566294978208885521787801152572684730118120333794518696014470845125862668051505607019072596082006874881465793362889594397090036238609771528878776085764542826189120365831085824267666728453527423969798338719696834171046469772201318759009479872864936933881620638186003161789608079912861841989187269656071397690818282521407174869618435894339817546581234278684051306705446117057977006994632436831283271510600074702584891684976434532104707738014502405509145757307026318247308647042976038404590079058383483479517100250852796703807755259021866250030563893870116658838254009247188657135132662882570553957650331770090890482971488423500189306766709057723107195041887842702549778946245280148421710278931759801263991082590606675809724578312889715303077973816377544053377909985735322240754697155390879216952093126200203583856779171788493080689963843373943271871168932173374693518843389575892568894863983302571437576248114831700206495067672854000948701024933922275524804806688417750775568092784536676866213367390825371770311213154673428069245441914189283902344488091244411072583255359156356859039032288201017678651144055694524397803071078941508003190302319043641982461300148847886336276779888999456845639764958986070705978778614628584932020467359208159729640182059004102189530843566502240246913550938511749232408164969579269629140419790690811408081582820489679413370552382245264041600727435877769933947853994653230562690067764274590198430449186099800590953160427530003887811450930838567922071707592329804148376531988133589571607921634095508681561676453468901145110486381877314811034814847222407782230568406533336305374095441452608079046432096820862452376301800795215535644892459013189272853373425217165648373909607606914556307805679366801311491072369384835772001044663890333225369352676349984092935540783057490352984832316724819430641351707221430208211313542040977733081853607500192567620944960818151582643914316109066528187761370375595364400619734214616834739422107963932459206621410674903984951595393562898865844166162905269829223613452714050063509171289313056000267750990687906184708118367020763688323964509363748830650598460936816198113586934183478639735977235808344249489872975968631692859140096787319668863530612081002911885889937596633027253030463015718282014944318994239064017699608171971241400861012977879511920390482880683088625404494538730448565288480875722249214340966586068934954256482594153724250146096455332576678465291449143715810573361565073009319931520765391847389840529791194076898089626012019659585995326222377262220562471817838295998397088970060150208017218694463358836240045019544446799655133083948495167485951567477729614013417888308952985743006379419406176298535888237460154764215974311643729582784707062844589006155499949849846933846135485346445407757702879506371949079858235666074584792089405783020803961026697509603163071159877490745320612635000962888731758643200014108846068151334191286960673055905561644550565411674360509164327986770407889896350453243877472659990627695914187546565785450893304584214495341288363071114776538198761374691244703277611058523965326432523595458805950338647655382518498072143938160426095830010185859090778839262822898331148403389960870107416914020097761577398674971333363411023822106576828338870094223468559594972504924431239082055793997012972454973177297064973497098367130228504693074563873829964139615491511284377809991370792647124038168926098007759430659809496539825057513406707585379319983019428564385661829193926262017781711022829630139518373669787968570577706865060410017106840725458463492669744020925213982318633517073628536368010852034750454541493375916548200555528732624783142390204149513161639147583162331663361315906622859053906989763726337588763993476555644127131073570711899058790899497367088619479551477244096499338690373209496971967725454855331174310139779865994870497053818897656568455330497123673953201623423615772116997332796591685605607893134971751628822567931005923364927555133322934808286329653960702049827661638441456427048004286135293578591886914909803234255925803049015274619409918887194479737250380457200962737576192807815340308559068877218830386604910230190737116350514349329416767399347519339581092434209197101467094144997114996135985905038265234652594966045527566086074286211668469280829845503881141428026227448520126178300943541738080429157402779621980003219486403933054979690848969203686185489313731901955135230862341590015457211946543294866610208130888631585976357654991780266178798794894065704757913123893116421428623206559898628807092712656457264285722675302988949890737912538147528962006072573703022491887091543706024998936582910686784249724115450295066587869574040406311285775916948930936482780220301922804283654507091134617076266066195177625500427810092114441608661127879929421833079426752994463285456518260710552203249428031268008491524329151155986681678142307754575854861467516648468424815638148467929500612209305349762881212978268481649582559920147566331830203745689348940664900619798212437896213767965669787079661491568316961337901734895261495156038558415109377685144461373842170677293881987758916064041054277540999829336591803263863916463235833108464417043914210857852460832883779746346875060682138101087783858843879257478244014332541087882046123780115219280312621675890399586596671355493561706131213572012549735095709501186324220115861487496763095737386195100889806453915747001997197579089635977341111283382327011701993900375488424075640245817260871379542712901561418538656636312934400748402900658345625333616705095879630724753472606453978935305708924316642808825733516537238347578111861976394790440061911740256278043658294109205954433139326664064903293450966175844715214094082297103410268869331457994373780730539150207502600210729920592573911437047859448932321586614857430068717399461317885701992728803852886153125566985331739109320580014579409518774304996121234000163679616303338474217393836458731873739944551284396097467745504333304660369454262836807164957542082160367243707888090535910811053076584865659628419528830151317441362503025307004371937462898285183288698514560145947129637936880354681009727066346268681430726959127879312385427112203028421513032451554640065592095185323688139472567321093669278832495937891102717365693630490505888106314680859073910609518973438103561138411628042533301451669154527901121878921504020823493012018434869969031008360256264541326541282542863365237220659774131064386823130341375562643102847052722772921703664448693563134719369272832222761958722257579554383411397297261011995994045469739118274477108630440440430034024060529613095303512079284379537934489584643985257188190413457933152203163191937563573633126889394073761646132432357884904491518939780183865662995344796741433974763245072693032414540559911181176727887336520208362761574798929051523240487800379020354886845868274752704859861987071812122159532409793417217462790636740964403145870245976566063406605088755072904055396290536940520624627792151897923624193629511104927457313735957986686490697375196651590898372477481314111430474947665509551958931281567721687437151091991762422745181863570791919832747068604713984654271854717796731519528205119116753591345836619077504064876027670039859698832103603153973878995543014152898725386353893905072961220521529318825253501158073689217845588262984060721131197997320980306340966373373917535226498191277195135136886575894094440400096442540279508941342093892890873614482634725755650225427104316929330211981475112943372650508288857193146270022768335115986469557957612989594908863484855429173492922099779341277250909568860388754308434608323572321932525829053749717518971559392424305543000771252570324936304245796093264312330252152665565422453988263652289291198040962472937502142539851253275488364752430367684586984889104244404852306419556306282459764120630056752939916406116588367427092629878752274314559846485532536521758636704121770762460599990456292995840183257029341721695890639415465618598368601210002558659248709763658709363901696005337336856446948611362349487508662468328964801764216303476258800948875941295144733436723809322429049684944003412006740918718438444099431701117725095105432922291930492321661815791613778423593014161842746818516606118442691377707931218608588037180720660834373568902351147703462927233655148845958497205574859048266715009592066886052182370199125104629588273470644914535686244044848985281398872370961863752054010974301657141445326506737483179204147591610800659869057988022176559731043828288406658533419498774595066222560316914312556093055044996694444543149514358356157047280846430542382695802989667062734659833419606435635469213878854111209423327656835512725840509028742394770121487546552604387036283819634167197243588605897681832051278172549169849282582341350761065269087138201579376780010275198137177800133130877432958600819330923833540488934131056271179209783871297997162491281889009212868896209360250698948246653231995752573152593428869665412075902604537594004253684817488052071334825400979442830174316187010453790779435442715795088080140961055925184895102020113807938946326352937812046313203695368268424491461622963407945770377399340451965785439626297082090563393959809348287403242743557958436577114066267276195224991836513028085929022251170301401237984526061911432820737258304290198122019006970489222086245715643837868369201933232495012174456340763797040889246946741045130790970646269539337197173644549953095531499506276476948083081789642213486004611006994511133111660213634357061100937831121072783518206404787228327201234123890468574788110053498654698221738566015089893375135288477162052068720311132479994548351025516983063760114473530978246241485268349062523611816066999863177702848906869046183127268209714401702060274727809385503123664699129983284931870504908557053805724223804888441198011279837843849505324595913815121563004789352469703112205870573186197635530067988492416245258893892178605581861466514851123078205276668383794545268865291386036669598787186029882646805359568608953808759892326840012414201300395733164335942748876411347446374440283387477722935369994409195061457159848664682778062862514128292212686548550972114161580131219551294027798687843075548810746471502810497637162138432145566580920325215698653056265309767680845032132724554159929588540721804904709459020018785040878288463344544102516542911839629889538257994927639250113235712311747305199755088200966509301213336630735792696055859104871604136876597325476153229429028388606534999514727787056866543707632179670949389490525608377717836667025591784819874354643063438373198521288328781420467280428181463864538470589360043849072604470337437454801501283147675819308002027738958577517975491034949303377699952920358291610165768567740567978356074410351703677328166902923862023233197919768131543124074739468994946662547656519562718644160382795456033135175082268170865573834693590004684197108238776170873593183612924991201300134045923309092134219930029711879813786628154154076082496970300895725510496950297065606429460130867511795311569880911759283206231655734898021242958508846791926608649271238012046848807463452145145524540629568674371180568176504360963017015431749277949293396317976688216722938280173938924419296305551815469608660762079635769293211764371669224250940615805473476357850712260506636283919127991342967871258378570207502000023975207636318395340545489772104939314689719843908698846498428096291037103592386937398327343536649617283393541761406911014413311300544468640137982568932109199336118754072870063610611743418311646272329770062069045501332523537696835580223612849721838417508400262263773939714364679480638417882278345839804065820739990942451525039616498983928072825202292695277161080260165840503262939152755740689452037268647554752305330140991106973476035764844201956489912225033210038735236980330958660817486330751849757204759782947316995481993683099179869510096851706688196713087941293319881931792878309916897429082391253442735487836443276499521414310484299212015258716820984369808164980299317231675895566120417229707891983912313030436599083938826604501055645855210338180213000321723240000979992390148296151632252660711089222198449491402674240066741145681135303976173971437618868459083892733231187058925801037611622467611595626870911986465303574688805428876371812925687283054955612883916571520935189166104478714916038251611282072878086786997631842706045378236307514687319551238743862398436639489398491712487785555373333537472225890310531666594259608781809592257402554051494610430727683516844883090840642690451751292292016489065366815256159780878766578626869915420884829690930367763912026088186491309948519583077355201102841413869259631189746246955907514383232310780500834552698356066683107094282367947091638804881069080013878056063192285475605492314979081159414662685369957898706953665541860973526989584578250451659820035126315338949723159915475590954107123670995428358075269318669824176810684347869283578798491457227042494389813706374939315712352299179827272303887052125744889038946504277764561906702031369062935281197650688873313459486973806092979428386224000584822393299996986560104828818760758385981995867586886600382232504819370078680344674241717169681378516934397641884405919044221823915509568695105214974723365920083084099725300324546498330670104200464003165985880244323828652592296949994026574626754794194734935207459814880784981627555233983334079607425029446928152042170810306189510491211552154552132315007344633654000550944484672998323620625895491345248321838656512221724222086276305979128200483441775180920689490213071958767104334027512272854625466595692210051876910873324145081549488050165026889578346879228171375450336199632698153881546255115357502041655301566125512734592488222445087912439735269902472458805653908767576062143624424582424222584866909588864737855139320483034513471009546955235085164365334373977580000000000001679754956625544521335670993920703/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.9983202450438744554786643290060792974230016885614974197045396724798371354517396743611736943438671553677255486830914137790279295518798345878572286993633070432842650374726093770722851545819004462436628875244411860232158594469613254421180434381201993107458287802325125163053243069430172110772426807444343933144335882747615503490006601729242847162857298422942376907739613882280443446224985853478634536891188142530824191974863594540321471891983190331438660214238370562076773175178470114670761880010611386002765217334877606662589743493065263885531299974729615216146566125248715060043698437181284131422075731364283345338709699703582993794126253899206026934528146377767153691054534880575379446376966339887312558441481262157726244245697615457333431613530552275449401460162499989639848656487083332296490801937951693311275458058296123013085185208798445708221465563084740804820410787599540932022730154798854652366464476530061371778559455317877071523570265142553496795276955870075571182528875499750360644512024647568031051209246724192054442929880514566129263081607800600413659781576784781538493005974997167768733514791341812590394896312608386149334027698381074953732165321067742972175810066314372640545949939691059199112902259197028374719371255274892663325340259528597987002000622558108239103590586872155083612865748826932850558450127216937887601992803887514760693042973096472391063480588422977774969494269373890726888734426098435756907320784308567088373502792516309024646236773935305442872817134944905055513987942401119509705195727840017715028425464818355749703194884577637674587109137707610390307383226651501620601170253964126596900620216453142490711603118113883687304793946602705203186310568182585481733099132087842924462987083665596471409057053089142884222238680920348385341993474341045344088992681826336970904415586716700466508239664209600653162760712100530064502065167678737914771432371617979347503998020717290436951568819830615653761168700466043348086144727916925815070477843455475263686724263892892283969716867279371835765077377676910558598090331378177098353930094532295184009856445876560728286563561671334986536567325297894362351326764395460227163902172113952967717938090786088835394692844065885155267530618028426790389854030687484589562087120424512546486618421621433139619412602429066309466808032200836147058200624093927272069181608034101135651581307045796714383412826355512250686832248794798741015735179125057686456136632780958741021703784606998844147553906477008242783863461524576481328027139732701732284213209639484110376713320660110731582869204969465058671090103178705963815577957977980117208041307484040287948737207568397920862262167038764918914817399842386679521269528858792702378468840740576184166859648224733306749763575359090479283104041504241262307460577374215178978240585414372079147184993907992934116201605852641627727983013849912701637111777081993050829497271839664962028123086823798057182710282673420545733083021127090208832414549389548919179553208520792478116741455214699919785611603942118797765688096950288243879790634767873964857412444521648789803864560527147448552706069899091964323053563880288116863458208447919482878912060824116216698178139352435731695393401069959535324329203337622444367964764061787544412798293121516020525308941658364483453926273235491667129709613354532811589881095340509634320462896872830943304431176506564806154989036967958119208939559282519121803571937582119862858446558992323103590098402945164868905912372866014958993377116548118056741920067867964800627129001792217256006372683260501696091755588032157504905364186439930604862402349604921406933898606480677990962773702118697528181450577674026026040023217843651205895169065731895622635287238154653002041327740805127497998404814040867953756393423858986581727546968897217062680339576927939315498123265676443381136821542767186642202268311779287137369988858543177262407415050532321766834262982082942729764844869626177125112178091879986327807056026858437493399517480756985593236221508005540862688976770344799922216391395173157205049774868126436946262798463619701932890548353790753130685603189442366043826482068753531636900090555220592854185818035818981280794463330453310287795746469816958668263449875118586343150143382025983152488932463664717049268332065582602411764617487761017362546088923610752439276799425157166364622576023516282873398008827449799492320163887496028572604329672091852166412083019528597446840308235376692555668878567063995524222075477679436187916561393864664701716295051250017146458408474680788744495296167920219138275186733081479551861681791850145716555390102750468576506624434182037146500833059769216411324853913506659182415964985931974732458164426896249910308397876690383771233200557682978044527273317266187310688817938781979724308299037807342261634826491889372280466449324691637292048702697208746100893536219224910805348780141004772899321384268303789145405962067068659115826930838936027389263862499231941746698310892530926800426163629122716789538636535068335698424166105711665816227169698271759908607554255447741519484647287775464775586826630437191071751601991786746297222514600603511526076187208985092199533657474012268783174356831306339273234382812087374268783742364878567203252127234917351357818577422542203631334747050151316735928824292337199112277152975081523059788411362066798178727143074846374847022962133404093560957328602289023861383204326526366798133980024505950668680469796137915702365344566789454461282321469368569384728254641905605206252705110159818993327848215556361321699361182134003268232156282529461606966219581458745669214204656720103751374062498965933005719439097625261545734348151860218812996061459868240810940632590549583225266890965603405669247161868311403610323915622920699773320018403174567436157512549233527003865219439392576304796699833669190771721750330665815804924660495989007766617180669938655541518102221736339007458487278896115814840389728106572436128133348046976438246914894910389328577270036495289555335838603779788402406600688728983750367478711785480803627041120011595405846690665194697274993102564182272417977785521126226029463354862083414639966239062537424633585905125960527196497163650367754962898558133935085520218232971045192894826443352174895945063001618197997716918169404305641361705376564122552909442555474380911205044917745568460264209719148058883898124904296081743039862454718802995249783687812484239545533080307791568124502319276457208070170486105403271748909783407788588623457304653388935603531013315641671533061474940740509097401130867061513990597789708087415699448514286045807330405795484454409372627862270959652274754864846161817333892395313034696813877203218902630924470517678009527602945906297590647095144641033005907949739186795336883574210830699748481098623990230990996922358768446567263956872951585350694919282365194777760898345139105052376447906312707515844063772324702025922421695626445261002793312676023355509168125449286713195571352714457666571006199211724242392272656758826375432934837773401542465605519225770976278260960312280148010970968609620269923731457561466052387666796744189152301229311824229240528366633286193964849211935796876157058512888242164456457532262515525118445232426068779870206088852516995620007265573732402492186414146551719263362341389084272369748635325142345305071161013465827317764784818556642455137737802460455801584468704675705973702978702562050212162885088545088197264362710639445282084217346797313750029354440212606177767305669959313989808509254445654208112194243203864003942547252112061034256370725382329499535445044566985518312381404944626821368153118702124129493272484179106106594874005286311275465576733582281544536229417172981049465323909684145712933515751623689853795654304881905794167274951504382288581217977984933820025940845115273642980792498743287928660007920363068636552967008292556186811975761184970545699554846297176827519982866465269409244150517580077090105658481993751696827754307229511170446538396180031543712461469960982640186951330698974101674730040533397426228707096260003691349836513148366575430719609650987925121494853155487720575294618993258954276325690133694658453757516974087425500332372491407152150377720548315957693901383438608798726642658841457342244335808600114656917134040760906450724745235612762155608275193598542083943922544462348989583359513801542818782262453430634924980492138257240716254706368902697191547729161631740698106572679728926717811536827568518071152250630512480356152053943061379919489821479901573379675778952345478933740078454301922258033939332925540550953849589102144085096469818627679240281625878936368375931096758784576716386579976896915109471603351855000293948513711728864109106291708719515828886671836940270341778954971547010025637682545354546619764413544963136071330412616727121378027469631516945421967574919893060514575134060627203491533012269368640477526650060074942639362754358840267746386603697490980015537639979512088494715554529852565471673605077816041269667864433525328862657049179421169591711132019935683754112915180309490692743311528574600360599593197527955551937489120317666438743406566623600920034726496381351809578995548437120817845944760612791994635287070261238756876254381986117369594572971254903415234481578999571304824874226299040384119381765271675500558916223038726159267166397839091286873439781979391831653306681036184517775340417885779699985994088242180833915961419164015392012666475353250392438062819677664324449712791954694345361829095881904646324446900081398092399841065084167402777791261957108396319900357321537558598609351144514123586232757517463522215309210479435396026705449053182075115545381133167378162891570418610375391568418467713532658099573156927933541294240387208873670292705589380161637330303489091190772245666408614172132536287098373790449335642269781468802740907807000798880801532718686182349064008929819099658955296297160431748343287617227025758556381615697521335431858630443468039849725161463149942071490040181252754366757765402238101888119683413607869215354888477286151682100721590760744259547995729744451895689002165731095387507972272388511147230946838102549368617524663869089291230878112277885238417787787500892035732648418871961054110958176784979467592202000685822574014433192620798269622718671742258111069916597240201870770928646458769319449998427605608398837888884858744738041016456295014269647421788064027072875439692238599209744489088438159656303203058286919958027590862709333287965962360582817349155695483204512259400171229508417962621682331163069980931328175400676481782832742619346559965800261061634429057044119510109696319675023793788531271097999640595815806148493633936034822283756715209879989431162540124310842412923810719759674951228501682677104269802397651436525408759297706029316618169019031012666762663747502525151417828297818511052770756862441104113729760325728016734595950663491011081341374783557259489483930181516501977726991269653222563115739227411849289964914275594419477958902538734335840837866406724268410710362042287913858178112990146853580694389124946767609772634514331049703249129807813675720279663542499562211946574393811286819675944516700292967321719829972269485593620974512889268877626520727823104487339138757572900205714535005057544056640508292624665931152592072441916930101886783551061651943388621969207214364915535384153337638922887646982857902309553681638214492675026864451296567718786503486415503463926743782007527332397070619457207449414025070410173534204464804627487742539522102551659740010198664500434221720642750622601245764590238160776021280192874466775213349176810695806327659918701121325107931132727719926736125164083208695546364035356199678659280079468671220920359611493166156935059300257731810591392728434029017098978571498080511667375288002649446369944354410692269173966775404069501225141128638613508517270336321368034153771249517768261790131422784041205280234280139205082485161687724587431783525628301425869449811584590859638047350656120286205640746182537058178458011067441888161036142730604383542880627488002045848874652864863472578859615496426932245857707492317955318670839847208240297340543457813376408971587575706951538489680990241386323090646209237277246828061030644382283594214519893540971588797887325287282848853028372431821364676612535208838803820614288601840118775940885407091690781946123401596790897258449192357639018842848375122083839519363626894225360189703860646914879184399290521872411421558341306875058315667050874025638518631452356098187830311835476234479203801328946779047120870964061645850129279712974487836151667843756189869241699516300287685476819880862085702881277692041051626804037535736034101565061586056794684117642170197281787911451229235882132586167485825240016182556224292327913837763762648232546794540287357985572571544659558012970569611802334266733447697256493032571750977933006396522005661412462361995323481559327137101753658501261485880070610408601124535470755301680022083639556451525433513111898445182459935967269098342215726647311955803051120188495038500274288245274151781369180847189331880946381129848966173661232198554513479073359851119790801561684486110067166241982746959954793508697017118956825540146146708707756691310573958811509896007969118615479636472687130791618953880064060153240230177098996360676752650787322074396783692337948726735671386873419616357401649790373547202735930425104234749188218816105546753648451451440566679030240963868372532420916144090467851979021340313103875047271063474291253721370358698242027985575436008796103151603946976664002230125406842425163103775689458795612555584666375660611802312129131564746256983667470775891206754959767123332976309063744057216000845574914643885632563226853563972305752501088876812475457480795801919076679085866031423899815618934524244330721825545049492875655554649523947287340982079391168594771900118691949866799218284833875501064831774880846619489674621538254560973044966564253289589557599961335541221321000473514998226241061494094384319084688168648023657844363588778101191150137564904893958207434372754941499929605601645767412269535475316401945568236085850553572114519192909237443259261745995380449900269293432272875308880990249155202894716646900397690835101623861852449079635560616272001177047110621449259998014232179314110283927213091258077553993933723475832500729843011388275850885051734233636001108733005913905028910930569427079238122287278100160171384337498450674659502511765615579332831617919953290644828277893917857658791835072711796006509183311007091932205915730456931540050364041601481421764280879176645976774393050966577067384384328696155030579902840171795938667127662372400001644930351514714343524146671414179381551549636697614602950915304174194202785783486654744915134361212750039370681735778393563638603332358409583092761206019021703759257121269131832135791542754948344683867112928772575378221266980528018803922637941474244651063428778280705531698317845101730157253632346009646490633730140519531763558929631852276847799533790600904882119880198392449161412152038190214039167839022566241741457860524980334649743372928250409121730362134357606759258999529060593626182606712291465243823144708713348378261987640561983757890888430423104406345967172414567184170692000504707324348013274343098682682986352837817498499795066930920172206199414650322768340902276526880236779659693713242908394769695691301687090662650192646738551548779962253131861831039401602094198408959116710109831550375575557154758512657249506128072736359097339472540292707650443239990418063639065742990365650923531574077702165512815821540016205941380581803799003060300775103871074949484734992368430979648108948334994557634884186830246638726000306537474503274791264105485607321663831253244304847082238799463340948322914078086133073045340672739880785783460418486291201990124525627125722694566260611174560591964874922263135687273850164105204791509625708451175028953616465210428603022790133838661683312090847444053457363819327881107642252478737335986889422847785533290755806573818854144495424186006876058603276498694297618462243532135035835512065983943701285440544922346469276000694906109597071122892410868432865707799321328552878171515919843764146292895058546164111485626144446580954262928652923990654759497028191861429734957145309772691964838731265178001113256307263284741094529521210923230670366204769542508504988481923039230834063796280039698982548162428335132589956417771043575602305145369460236240667589037392028941690251725336103011214038145192164013749762931586725779188794180072477219543057757552171529085652378240731662171648535333456907054847939596677439393668342092939544402637518018959745729873867763241276372006323579216159825723683978374539312142795381636565042814349739236871788679635093162468557368102613410892234115954013989264873662566543021200149405169783369952869064209415476029004811018291514614052636494617294085952076809180158116766966959034200501705593407615510518043732500061127787740233317676508018494377314270265325765141107915300663540181780965942976847000378613533418115446214390083775685405099557892490560296843420557863519602527982165181213351619449156625779430606155947632755088106755819971470644481509394310781758433904186252400407167713558343576986161379927686747886543742337864346749387037686779151785137789727966605142875152496229663400412990135345708001897402049867844551049609613376835501551136185569073353732426734781650743540622426309346856138490883828378567804688976182488822145166510718312713718078064576402035357302288111389048795606142157883016006380604638087283964922600297695772672553559777998913691279529917972141411957557229257169864040934718416319459280364118008204379061687133004480493827101877023498464816329939158539258280839581381622816163165640979358826741104764490528083201454871755539867895707989306461125380135528549180396860898372199601181906320855060007775622901861677135844143415184659608296753063976267179143215843268191017363123352906937802290220972763754629622069629694444815564461136813066672610748190882905216158092864193641724904752603601590431071289784918026378545706746850434331296747819215213829112615611358733602622982144738769671544002089327780666450738705352699968185871081566114980705969664633449638861282703414442860416422627084081955466163707215000385135241889921636303165287828632218133056375522740751190728801239468429233669478844215927864918413242821349807969903190787125797731688332325810539658447226905428100127018342578626112000535501981375812369416236734041527376647929018727497661301196921873632396227173868366957279471954471616688498979745951937263385718280193574639337727061224162005823771779875193266054506060926031436564029888637988478128035399216343942482801722025955759023840780965761366177250808989077460897130576961751444498428681933172137869908512965188307448500292192910665153356930582898287431621146723130146018639863041530783694779681059582388153796179252024039319171990652444754524441124943635676591996794177940120300416034437388926717672480090039088893599310266167896990334971903134955459228026835776617905971486012758838812352597071776474920309528431948623287459165569414125689178012310999899699693867692270970692890815515405759012743898159716471332149169584178811566041607922053395019206326142319754981490641225270001925777463517286400028217692136302668382573921346111811123289101130823348721018328655973540815779792700906487754945319981255391828375093131570901786609168428990682576726142229553076397522749382489406555222117047930652865047190917611900677295310765036996144287876320852191660020371718181557678525645796662296806779921740214833828040195523154797349942666726822047644213153656677740188446937119189945009848862478164111587994025944909946354594129946994196734260457009386149127747659928279230983022568755619982741585294248076337852196015518861319618993079650115026813415170758639966038857128771323658387852524035563422045659260279036747339575937141155413730120820034213681450916926985339488041850427964637267034147257072736021704069500909082986751833096401111057465249566284780408299026323278295166324663326722631813245718107813979527452675177527986953111288254262147141423798117581798994734177238959102954488192998677380746418993943935450909710662348620279559731989740994107637795313136910660994247347906403246847231544233994665593183371211215786269943503257645135862011846729855110266645869616572659307921404099655323276882912854096008572270587157183773829819606468511851606098030549238819837774388959474500760914401925475152385615630680617118137754437660773209820460381474232701028698658833534798695038679162184868418394202934188289994229992271971810076530469305189932091055132172148572423336938561659691007762282856052454897040252356601887083476160858314805559243960006438972807866109959381697938407372370978627463803910270461724683180030914423893086589733220416261777263171952715309983560532357597589788131409515826247786232842857246413119797257614185425312914528571445350605977899781475825076295057924012145147406044983774183087412049997873165821373568499448230900590133175739148080812622571551833897861872965560440603845608567309014182269234152532132390355251000855620184228883217322255759858843666158853505988926570913036521421104406498856062536016983048658302311973363356284615509151709722935033296936849631276296935859001224418610699525762425956536963299165119840295132663660407491378697881329801239596424875792427535931339574159322983136633922675803469790522990312077116830218755370288922747684341354587763975517832128082108555081999658673183606527727832926471666216928834087828421715704921665767559492693750121364276202175567717687758514956488028665082175764092247560230438560625243351780799173193342710987123412262427144025099470191419002372648440231722974993526191474772390201779612907831494003994395158179271954682222566764654023403987800750976848151280491634521742759085425803122837077313272625868801496805801316691250667233410191759261449506945212907957870611417848633285617651467033074476695156223723952789580880123823480512556087316588218411908866278653328129806586901932351689430428188164594206820537738662915988747561461078300415005200421459841185147822874095718897864643173229714860137434798922635771403985457607705772306251133970663478218641160029158819037548609992242468000327359232606676948434787672917463747479889102568792194935491008666609320738908525673614329915084164320734487415776181071821622106153169731319256839057660302634882725006050614008743874925796570366577397029120291894259275873760709362019454132692537362861453918255758624770854224406056843026064903109280131184190370647376278945134642187338557664991875782205434731387260981011776212629361718147821219037946876207122276823256085066602903338309055802243757843008041646986024036869739938062016720512529082653082565085726730474441319548262128773646260682751125286205694105445545843407328897387126269438738545664445523917444515159108766822794594522023991988090939478236548954217260880880860068048121059226190607024158568759075868979169287970514376380826915866304406326383875127147266253778788147523292264864715769808983037879560367731325990689593482867949526490145386064829081119822362353455774673040416725523149597858103046480975600758040709773691736549505409719723974143624244319064819586834434925581273481928806291740491953132126813210177510145808110792581073881041249255584303795847248387259022209854914627471915973372981394750393303181796744954962628222860949895331019103917862563135443374874302183983524845490363727141583839665494137209427969308543709435593463039056410238233507182691673238155008129752055340079719397664207206307947757991086028305797450772707787810145922441043058637650507002316147378435691176525968121442262395994641960612681932746747835070452996382554390270273773151788188880800192885080559017882684187785781747228965269451511300450854208633858660423962950225886745301016577714386292540045536670231972939115915225979189817726969710858346985844199558682554501819137720777508616869216647144643865051658107499435037943118784848611086001542505140649872608491592186528624660504305331130844907976527304578582396081924945875004285079702506550976729504860735369173969778208488809704612839112612564919528241260113505879832812233176734854185259757504548629119692971065073043517273408243541524921199980912585991680366514058683443391781278830931237196737202420005117318497419527317418727803392010674673712893897222724698975017324936657929603528432606952517601897751882590289466873447618644858099369888006824013481837436876888198863402235450190210865844583860984643323631583227556847186028323685493637033212236885382755415862437217176074361441321668747137804702295406925854467310297691916994411149718096533430019184133772104364740398250209259176546941289829071372488089697970562797744741923727504108021948603314282890653013474966358408295183221601319738115976044353119462087656576813317066838997549190132445120633828625112186110089993388889086299028716712314094561692861084765391605979334125469319666839212871270938427757708222418846655313671025451681018057484789540242975093105208774072567639268334394487177211795363664102556345098339698565164682701522130538174276403158753560020550396274355600266261754865917201638661847667080977868262112542358419567742595994324982563778018425737792418720501397896493306463991505146305186857739330824151805209075188008507369634976104142669650801958885660348632374020907581558870885431590176160281922111850369790204040227615877892652705875624092626407390736536848982923245926815891540754798680903931570879252594164181126787919618696574806485487115916873154228132534552390449983673026056171858044502340602802475969052123822865641474516608580396244038013940978444172491431287675736738403866464990024348912681527594081778493893482090261581941292539078674394347289099906191062999012552953896166163579284426972009222013989022266223320427268714122201875662242145567036412809574456654402468247780937149576220106997309396443477132030179786750270576954324104137440622264959989096702051033966127520228947061956492482970536698125047223632133999726355405697813738092366254536419428803404120549455618771006247329398259966569863741009817114107611448447609776882396022559675687699010649191827630243126009578704939406224411741146372395271060135976984832490517787784357211163722933029702246156410553336767589090537730582772073339197574372059765293610719137217907617519784653680024828402600791466328671885497752822694892748880566774955445870739988818390122914319697329365556125725028256584425373097101944228323160262439102588055597375686151097621492943005620995274324276864291133161840650431397306112530619535361690064265449108319859177081443609809418918040037570081756576926689088205033085823679259779076515989855278500226471424623494610399510176401933018602426673261471585392111718209743208273753194650952306458858056777213069999029455574113733087415264359341898778981051216755435673334051183569639748709286126876746397042576657562840934560856362927729076941178720087698145208940674874909603002566295351638616004055477917155035950982069898606755399905840716583220331537135481135956712148820703407354656333805847724046466395839536263086248149478937989893325095313039125437288320765590912066270350164536341731147669387180009368394216477552341747186367225849982402600268091846618184268439860059423759627573256308308152164993940601791451020993900594131212858920261735023590623139761823518566412463311469796042485917017693583853217298542476024093697614926904290291049081259137348742361136353008721926034030863498555898586792635953376433445876560347877848838592611103630939217321524159271538586423528743338448501881231610946952715701424521013272567838255982685935742516757140415004000047950415272636790681090979544209878629379439687817397692996856192582074207184773874796654687073299234566787083522813822028826622601088937280275965137864218398672237508145740127221223486836623292544659540124138091002665047075393671160447225699443676835016800524527547879428729358961276835764556691679608131641479981884903050079232997967856145650404585390554322160520331681006525878305511481378904074537295109504610660281982213946952071529688403912979824450066420077470473960661917321634972661503699514409519565894633990963987366198359739020193703413376393426175882586639763863585756619833794858164782506885470975672886552999042828620968598424030517433641968739616329960598634463351791132240834459415783967824626060873198167877653209002111291710420676360426000643446480001959984780296592303264505321422178444396898982805348480133482291362270607952347942875237736918167785466462374117851602075223244935223191253741823972930607149377610857752743625851374566109911225767833143041870378332208957429832076503222564145756173573995263685412090756472615029374639102477487724796873278978796983424975571110746667074944451780621063333188519217563619184514805108102989220861455367033689766181681285380903502584584032978130733630512319561757533157253739830841769659381860735527824052176372982619897039166154710402205682827738519262379492493911815028766464621561001669105396712133366214188564735894183277609762138160027756112126384570951210984629958162318829325370739915797413907331083721947053979169156500903319640070252630677899446319830951181908214247341990856716150538637339648353621368695738567157596982914454084988779627412749878631424704598359654544607774104251489778077893008555529123813404062738125870562395301377746626918973947612185958856772448001169644786599993973120209657637521516771963991735173773200764465009638740157360689348483434339362757033868795283768811838088443647831019137390210429949446731840166168199450600649092996661340208400928006331971760488647657305184593899988053149253509588389469870414919629761569963255110467966668159214850058893856304084341620612379020982423104309104264630014689267308001101888969345996647241251790982690496643677313024443448444172552611958256400966883550361841378980426143917534208668055024545709250933191384420103753821746648290163098976100330053779156693758456342750900672399265396307763092510230715004083310603132251025469184976444890175824879470539804944917611307817535152124287248849164848445169733819177729475710278640966069026942019093910470170328730668747955160000000000003359509913251089042671341987841406" + }, + "microbox_face_corrections_above_kappa": { + "rational": "384991601225219372277393321645030396487115008442807487098522698362399185677258698371805868471719335776838627743415457068895139647759399172939286143496816535216421325187363046885361425772909502231218314437622205930116079297234806627210590217190600996553729143901162562581526621534715086055386213403722171966572167941373807751745003300864621423581428649211471188453869806941140221723112492926739317268445594071265412095987431797270160735945991595165719330107119185281038386587589235057335380940005305693001382608667438803331294871746532631942765649987364807608073283062624357530021849218590642065711037865682141672669354849851791496897063126949603013467264073188883576845527267440287689723188483169943656279220740631078863122122848807728666715806765276137724700730081249994819924328243541666148245400968975846655637729029148061506542592604399222854110732781542370402410205393799770466011365077399427326183232238265030685889279727658938535761785132571276748397638477935037785591264437749875180322256012323784015525604623362096027221464940257283064631540803900300206829890788392390769246502987498583884366757395670906295197448156304193074667013849190537476866082660533871486087905033157186320272974969845529599556451129598514187359685627637446331662670129764298993501000311279054119551795293436077541806432874413466425279225063608468943800996401943757380346521486548236195531740294211488887484747134686945363444367213049217878453660392154283544186751396258154512323118386967652721436408567472452527756993971200559754852597863920008857514212732409177874851597442288818837293554568853805195153691613325750810300585126982063298450310108226571245355801559056941843652396973301352601593155284091292740866549566043921462231493541832798235704528526544571442111119340460174192670996737170522672044496340913168485452207793358350233254119832104800326581380356050265032251032583839368957385716185808989673751999010358645218475784409915307826880584350233021674043072363958462907535238921727737631843362131946446141984858433639685917882538688838455279299045165689088549176965047266147592004928222938280364143281780835667493268283662648947181175663382197730113581951086056976483858969045393044417697346422032942577633765309014213395194927015343742294781043560212256273243309210810716569809706301214533154733404016100418073529100312046963636034590804017050567825790653522898357191706413177756125343416124397399370507867589562528843228068316390479370510851892303499422073776953238504121391931730762288240664013569866350866142106604819742055188356660330055365791434602484732529335545051589352981907788978988990058604020653742020143974368603784198960431131083519382459457408699921193339760634764429396351189234420370288092083429824112366653374881787679545239641552020752120631153730288687107589489120292707186039573592496953996467058100802926320813863991506924956350818555888540996525414748635919832481014061543411899028591355141336710272866541510563545104416207274694774459589776604260396239058370727607349959892805801971059398882844048475144121939895317383936982428706222260824394901932280263573724276353034949545982161526781940144058431729104223959741439456030412058108349089069676217865847696700534979767662164601668811222183982382030893772206399146560758010262654470829182241726963136617745833564854806677266405794940547670254817160231448436415471652215588253282403077494518483979059604469779641259560901785968791059931429223279496161551795049201472582434452956186433007479496688558274059028370960033933982400313564500896108628003186341630250848045877794016078752452682093219965302431201174802460703466949303240338995481386851059348764090725288837013013020011608921825602947584532865947811317643619077326501020663870402563748999202407020433976878196711929493290863773484448608531340169788463969657749061632838221690568410771383593321101134155889643568684994429271588631203707525266160883417131491041471364882422434813088562556089045939993163903528013429218746699758740378492796618110754002770431344488385172399961108195697586578602524887434063218473131399231809850966445274176895376565342801594721183021913241034376765818450045277610296427092909017909490640397231665226655143897873234908479334131724937559293171575071691012991576244466231832358524634166032791301205882308743880508681273044461805376219638399712578583182311288011758141436699004413724899746160081943748014286302164836045926083206041509764298723420154117688346277834439283531997762111037738839718093958280696932332350858147525625008573229204237340394372247648083960109569137593366540739775930840895925072858277695051375234288253312217091018573250416529884608205662426956753329591207982492965987366229082213448124955154198938345191885616600278841489022263636658633093655344408969390989862154149518903671130817413245944686140233224662345818646024351348604373050446768109612455402674390070502386449660692134151894572702981033534329557913465419468013694631931249615970873349155446265463400213081814561358394769318267534167849212083052855832908113584849135879954303777127723870759742323643887732387793413315218595535875800995893373148611257300301755763038093604492546099766828737006134391587178415653169636617191406043687134391871182439283601626063617458675678909288711271101815667373525075658367964412146168599556138576487540761529894205681033399089363571537423187423511481066702046780478664301144511930691602163263183399066990012252975334340234898068957851182672283394727230641160734684284692364127320952802603126352555079909496663924107778180660849680591067001634116078141264730803483109790729372834607102328360051875687031249482966502859719548812630772867174075930109406498030729934120405470316295274791612633445482801702834623580934155701805161957811460349886660009201587283718078756274616763501932609719696288152398349916834595385860875165332907902462330247994503883308590334969327770759051110868169503729243639448057907420194864053286218064066674023488219123457447455194664288635018247644777667919301889894201203300344364491875183739355892740401813520560005797702923345332597348637496551282091136208988892760563113014731677431041707319983119531268712316792952562980263598248581825183877481449279066967542760109116485522596447413221676087447972531500809098998858459084702152820680852688282061276454721277737190455602522458872784230132104859574029441949062452148040871519931227359401497624891843906242119772766540153895784062251159638228604035085243052701635874454891703894294311728652326694467801765506657820835766530737470370254548700565433530756995298894854043707849724257143022903665202897742227204686313931135479826137377432423080908666946197656517348406938601609451315462235258839004763801472953148795323547572320516502953974869593397668441787105415349874240549311995115495498461179384223283631978436475792675347459641182597388880449172569552526188223953156353757922031886162351012961210847813222630501396656338011677754584062724643356597785676357228833285503099605862121196136328379413187716467418886700771232802759612885488139130480156140074005485484304810134961865728780733026193833398372094576150614655912114620264183316643096982424605967898438078529256444121082228228766131257762559222616213034389935103044426258497810003632786866201246093207073275859631681170694542136184874317662571172652535580506732913658882392409278321227568868901230227900792234352337852986851489351281025106081442544272544098632181355319722641042108673398656875014677220106303088883652834979656994904254627222827104056097121601932001971273626056030517128185362691164749767722522283492759156190702472313410684076559351062064746636242089553053297437002643155637732788366791140772268114708586490524732661954842072856466757875811844926897827152440952897083637475752191144290608988992466910012970422557636821490396249371643964330003960181534318276483504146278093405987880592485272849777423148588413759991433232634704622075258790038545052829240996875848413877153614755585223269198090015771856230734980491320093475665349487050837365020266698713114353548130001845674918256574183287715359804825493962560747426577743860287647309496629477138162845066847329226878758487043712750166186245703576075188860274157978846950691719304399363321329420728671122167904300057328458567020380453225362372617806381077804137596799271041971961272231174494791679756900771409391131226715317462490246069128620358127353184451348595773864580815870349053286339864463358905768413784259035576125315256240178076026971530689959744910739950786689837889476172739466870039227150961129016969666462770275476924794551072042548234909313839620140812939468184187965548379392288358193289988448457554735801675927500146974256855864432054553145854359757914443335918470135170889477485773505012818841272677273309882206772481568035665206308363560689013734815758472710983787459946530257287567030313601745766506134684320238763325030037471319681377179420133873193301848745490007768819989756044247357777264926282735836802538908020634833932216762664431328524589710584795855566009967841877056457590154745346371655764287300180299796598763977775968744560158833219371703283311800460017363248190675904789497774218560408922972380306395997317643535130619378438127190993058684797286485627451707617240789499785652412437113149520192059690882635837750279458111519363079633583198919545643436719890989695915826653340518092258887670208942889849992997044121090416957980709582007696006333237676625196219031409838832162224856395977347172680914547940952323162223450040699046199920532542083701388895630978554198159950178660768779299304675572257061793116378758731761107654605239717698013352724526591037557772690566583689081445785209305187695784209233856766329049786578463966770647120193604436835146352794690080818665151744545595386122833204307086066268143549186895224667821134890734401370453903500399440400766359343091174532004464909549829477648148580215874171643808613512879278190807848760667715929315221734019924862580731574971035745020090626377183378882701119050944059841706803934607677444238643075841050360795380372129773997864872225947844501082865547693753986136194255573615473419051274684308762331934544645615439056138942619208893893750446017866324209435980527055479088392489733796101000342911287007216596310399134811359335871129055534958298620100935385464323229384659724999213802804199418944442429372369020508228147507134823710894032013536437719846119299604872244544219079828151601529143459979013795431354666643982981180291408674577847741602256129700085614754208981310841165581534990465664087700338240891416371309673279982900130530817214528522059755054848159837511896894265635548999820297907903074246816968017411141878357604939994715581270062155421206461905359879837475614250841338552134901198825718262704379648853014658309084509515506333381331873751262575708914148909255526385378431220552056864880162864008367297975331745505540670687391778629744741965090758250988863495634826611281557869613705924644982457137797209738979451269367167920418933203362134205355181021143956929089056495073426790347194562473383804886317257165524851624564903906837860139831771249781105973287196905643409837972258350146483660859914986134742796810487256444634438813260363911552243669569378786450102857267502528772028320254146312332965576296036220958465050943391775530825971694310984603607182457767692076668819461443823491428951154776840819107246337513432225648283859393251743207751731963371891003763666198535309728603724707012535205086767102232402313743871269761051275829870005099332250217110860321375311300622882295119080388010640096437233387606674588405347903163829959350560662553965566363859963368062582041604347773182017678099839329640039734335610460179805746583078467529650128865905295696364217014508549489285749040255833687644001324723184972177205346134586983387702034750612570564319306754258635168160684017076885624758884130895065711392020602640117140069602541242580843862293715891762814150712934724905792295429819023675328060143102820373091268529089229005533720944080518071365302191771440313744001022924437326432431736289429807748213466122928853746158977659335419923604120148670271728906688204485793787853475769244840495120693161545323104618638623414030515322191141797107259946770485794398943662643641424426514186215910682338306267604419401910307144300920059387970442703545845390973061700798395448629224596178819509421424187561041919759681813447112680094851930323457439592199645260936205710779170653437529157833525437012819259315726178049093915155917738117239601900664473389523560435482030822925064639856487243918075833921878094934620849758150143842738409940431042851440638846020525813402018767868017050782530793028397342058821085098640893955725614617941066293083742912620008091278112146163956918881881324116273397270143678992786285772329779006485284805901167133366723848628246516285875488966503198261002830706231180997661740779663568550876829250630742940035305204300562267735377650840011041819778225762716756555949222591229967983634549171107863323655977901525560094247519250137144122637075890684590423594665940473190564924483086830616099277256739536679925559895400780842243055033583120991373479977396754348508559478412770073073354353878345655286979405754948003984559307739818236343565395809476940032030076620115088549498180338376325393661037198391846168974363367835693436709808178700824895186773601367965212552117374594109408052773376824225725720283339515120481934186266210458072045233925989510670156551937523635531737145626860685179349121013992787718004398051575801973488332001115062703421212581551887844729397806277792333187830305901156064565782373128491833735387945603377479883561666488154531872028608000422787457321942816281613426781986152876250544438406237728740397900959538339542933015711949907809467262122165360912772524746437827777324761973643670491039695584297385950059345974933399609142416937750532415887440423309744837310769127280486522483282126644794778799980667770610660500236757499113120530747047192159542344084324011828922181794389050595575068782452446979103717186377470749964802800822883706134767737658200972784118042925276786057259596454618721629630872997690224950134646716136437654440495124577601447358323450198845417550811930926224539817780308136000588523555310724629999007116089657055141963606545629038776996966861737916250364921505694137925442525867116818000554366502956952514455465284713539619061143639050080085692168749225337329751255882807789666415808959976645322414138946958928829395917536355898003254591655503545966102957865228465770025182020800740710882140439588322988387196525483288533692192164348077515289951420085897969333563831186200000822465175757357171762073335707089690775774818348807301475457652087097101392891743327372457567180606375019685340867889196781819301666179204791546380603009510851879628560634565916067895771377474172341933556464386287689110633490264009401961318970737122325531714389140352765849158922550865078626816173004823245316865070259765881779464815926138423899766895300452441059940099196224580706076019095107019583919511283120870728930262490167324871686464125204560865181067178803379629499764530296813091303356145732621911572354356674189130993820280991878945444215211552203172983586207283592085346000252353662174006637171549341341493176418908749249897533465460086103099707325161384170451138263440118389829846856621454197384847845650843545331325096323369275774389981126565930915519700801047099204479558355054915775187787778577379256328624753064036368179548669736270146353825221619995209031819532871495182825461765787038851082756407910770008102970690290901899501530150387551935537474742367496184215489824054474167497278817442093415123319363000153268737251637395632052742803660831915626622152423541119399731670474161457039043066536522670336369940392891730209243145600995062262813562861347283130305587280295982437461131567843636925082052602395754812854225587514476808232605214301511395066919330841656045423722026728681909663940553821126239368667993444711423892766645377903286909427072247712093003438029301638249347148809231121766067517917756032991971850642720272461173234638000347453054798535561446205434216432853899660664276439085757959921882073146447529273082055742813072223290477131464326461995327379748514095930714867478572654886345982419365632589000556628153631642370547264760605461615335183102384771254252494240961519615417031898140019849491274081214167566294978208885521787801152572684730118120333794518696014470845125862668051505607019072596082006874881465793362889594397090036238609771528878776085764542826189120365831085824267666728453527423969798338719696834171046469772201318759009479872864936933881620638186003161789608079912861841989187269656071397690818282521407174869618435894339817546581234278684051306705446117057977006994632436831283271510600074702584891684976434532104707738014502405509145757307026318247308647042976038404590079058383483479517100250852796703807755259021866250030563893870116658838254009247188657135132662882570553957650331770090890482971488423500189306766709057723107195041887842702549778946245280148421710278931759801263991082590606675809724578312889715303077973816377544053377909985735322240754697155390879216952093126200203583856779171788493080689963843373943271871168932173374693518843389575892568894863983302571437576248114831700206495067672854000948701024933922275524804806688417750775568092784536676866213367390825371770311213154673428069245441914189283902344488091244411072583255359156356859039032288201017678651144055694524397803071078941508003190302319043641982461300148847886336276779888999456845639764958986070705978778614628584932020467359208159729640182059004102189530843566502240246913550938511749232408164969579269629140419790690811408081582820489679413370552382245264041600727435877769933947853994653230562690067764274590198430449186099800590953160427530003887811450930838567922071707592329804148376531988133589571607921634095508681561676453468901145110486381877314811034814847222407782230568406533336305374095441452608079046432096820862452376301800795215535644892459013189272853373425217165648373909607606914556307805679366801311491072369384835772001044663890333225369352676349984092935540783057490352984832316724819430641351707221430208211313542040977733081853607500192567620944960818151582643914316109066528187761370375595364400619734214616834739422107963932459206621410674903984951595393562898865844166162905269829223613452714050063509171289313056000267750990687906184708118367020763688323964509363748830650598460936816198113586934183478639735977235808344249489872975968631692859140096787319668863530612081002911885889937596633027253030463015718282014944318994239064017699608171971241400861012977879511920390482880683088625404494538730448565288480875722249214340966586068934954256482594153724250146096455332576678465291449143715810573361565073009319931520765391847389840529791194076898089626012019659585995326222377262220562471817838295998397088970060150208017218694463358836240045019544446799655133083948495167485951567477729614013417888308952985743006379419406176298535888237460154764215974311643729582784707062844589006155499949849846933846135485346445407757702879506371949079858235666074584792089405783020803961026697509603163071159877490745320612635000962888731758643200014108846068151334191286960673055905561644550565411674360509164327986770407889896350453243877472659990627695914187546565785450893304584214495341288363071114776538198761374691244703277611058523965326432523595458805950338647655382518498072143938160426095830010185859090778839262822898331148403389960870107416914020097761577398674971333363411023822106576828338870094223468559594972504924431239082055793997012972454973177297064973497098367130228504693074563873829964139615491511284377809991370792647124038168926098007759430659809496539825057513406707585379319983019428564385661829193926262017781711022829630139518373669787968570577706865060410017106840725458463492669744020925213982318633517073628536368010852034750454541493375916548200555528732624783142390204149513161639147583162331663361315906622859053906989763726337588763993476555644127131073570711899058790899497367088619479551477244096499338690373209496971967725454855331174310139779865994870497053818897656568455330497123673953201623423615772116997332796591685605607893134971751628822567931005923364927555133322934808286329653960702049827661638441456427048004286135293578591886914909803234255925803049015274619409918887194479737250380457200962737576192807815340308559068877218830386604910230190737116350514349329416767399347519339581092434209197101467094144997114996135985905038265234652594966045527566086074286211668469280829845503881141428026227448520126178300943541738080429157402779621980003219486403933054979690848969203686185489313731901955135230862341590015457211946543294866610208130888631585976357654991780266178798794894065704757913123893116421428623206559898628807092712656457264285722675302988949890737912538147528962006072573703022491887091543706024998936582910686784249724115450295066587869574040406311285775916948930936482780220301922804283654507091134617076266066195177625500427810092114441608661127879929421833079426752994463285456518260710552203249428031268008491524329151155986681678142307754575854861467516648468424815638148467929500612209305349762881212978268481649582559920147566331830203745689348940664900619798212437896213767965669787079661491568316961337901734895261495156038558415109377685144461373842170677293881987758916064041054277540999829336591803263863916463235833108464417043914210857852460832883779746346875060682138101087783858843879257478244014332541087882046123780115219280312621675890399586596671355493561706131213572012549735095709501186324220115861487496763095737386195100889806453915747001997197579089635977341111283382327011701993900375488424075640245817260871379542712901561418538656636312934400748402900658345625333616705095879630724753472606453978935305708924316642808825733516537238347578111861976394790440061911740256278043658294109205954433139326664064903293450966175844715214094082297103410268869331457994373780730539150207502600210729920592573911437047859448932321586614857430068717399461317885701992728803852886153125566985331739109320580014579409518774304996121234000163679616303338474217393836458731873739944551284396097467745504333304660369454262836807164957542082160367243707888090535910811053076584865659628419528830151317441362503025307004371937462898285183288698514560145947129637936880354681009727066346268681430726959127879312385427112203028421513032451554640065592095185323688139472567321093669278832495937891102717365693630490505888106314680859073910609518973438103561138411628042533301451669154527901121878921504020823493012018434869969031008360256264541326541282542863365237220659774131064386823130341375562643102847052722772921703664448693563134719369272832222761958722257579554383411397297261011995994045469739118274477108630440440430034024060529613095303512079284379537934489584643985257188190413457933152203163191937563573633126889394073761646132432357884904491518939780183865662995344796741433974763245072693032414540559911181176727887336520208362761574798929051523240487800379020354886845868274752704859861987071812122159532409793417217462790636740964403145870245976566063406605088755072904055396290536940520624627792151897923624193629511104927457313735957986686490697375196651590898372477481314111430474947665509551958931281567721687437151091991762422745181863570791919832747068604713984654271854717796731519528205119116753591345836619077504064876027670039859698832103603153973878995543014152898725386353893905072961220521529318825253501158073689217845588262984060721131197997320980306340966373373917535226498191277195135136886575894094440400096442540279508941342093892890873614482634725755650225427104316929330211981475112943372650508288857193146270022768335115986469557957612989594908863484855429173492922099779341277250909568860388754308434608323572321932525829053749717518971559392424305543000771252570324936304245796093264312330252152665565422453988263652289291198040962472937502142539851253275488364752430367684586984889104244404852306419556306282459764120630056752939916406116588367427092629878752274314559846485532536521758636704121770762460599990456292995840183257029341721695890639415465618598368601210002558659248709763658709363901696005337336856446948611362349487508662468328964801764216303476258800948875941295144733436723809322429049684944003412006740918718438444099431701117725095105432922291930492321661815791613778423593014161842746818516606118442691377707931218608588037180720660834373568902351147703462927233655148845958497205574859048266715009592066886052182370199125104629588273470644914535686244044848985281398872370961863752054010974301657141445326506737483179204147591610800659869057988022176559731043828288406658533419498774595066222560316914312556093055044996694444543149514358356157047280846430542382695802989667062734659833419606435635469213878854111209423327656835512725840509028742394770121487546552604387036283819634167197243588605897681832051278172549169849282582341350761065269087138201579376780010275198137177800133130877432958600819330923833540488934131056271179209783871297997162491281889009212868896209360250698948246653231995752573152593428869665412075902604537594004253684817488052071334825400979442830174316187010453790779435442715795088080140961055925184895102020113807938946326352937812046313203695368268424491461622963407945770377399340451965785439626297082090563393959809348287403242743557958436577114066267276195224991836513028085929022251170301401237984526061911432820737258304290198122019006970489222086245715643837868369201933232495012174456340763797040889246946741045130790970646269539337197173644549953095531499506276476948083081789642213486004611006994511133111660213634357061100937831121072783518206404787228327201234123890468574788110053498654698221738566015089893375135288477162052068720311132479994548351025516983063760114473530978246241485268349062523611816066999863177702848906869046183127268209714401702060274727809385503123664699129983284931870504908557053805724223804888441198011279837843849505324595913815121563004789352469703112205870573186197635530067988492416245258893892178605581861466514851123078205276668383794545268865291386036669598787186029882646805359568608953808759892326840012414201300395733164335942748876411347446374440283387477722935369994409195061457159848664682778062862514128292212686548550972114161580131219551294027798687843075548810746471502810497637162138432145566580920325215698653056265309767680845032132724554159929588540721804904709459020018785040878288463344544102516542911839629889538257994927639250113235712311747305199755088200966509301213336630735792696055859104871604136876597325476153229429028388606534999514727787056866543707632179670949389490525608377717836667025591784819874354643063438373198521288328781420467280428181463864538470589360043849072604470337437454801501283147675819308002027738958577517975491034949303377699952920358291610165768567740567978356074410351703677328166902923862023233197919768131543124074739468994946662547656519562718644160382795456033135175082268170865573834693590004684197108238776170873593183612924991201300134045923309092134219930029711879813786628154154076082496970300895725510496950297065606429460130867511795311569880911759283206231655734898021242958508846791926608649271238012046848807463452145145524540629568674371180568176504360963017015431749277949293396317976688216722938280173938924419296305551815469608660762079635769293211764371669224250940615805473476357850712260506636283919127991342967871258378570207502000023975207636318395340545489772104939314689719843908698846498428096291037103592386937398327343536649617283393541761406911014413311300544468640137982568932109199336118754072870063610611743418311646272329770062069045501332523537696835580223612849721838417508400262263773939714364679480638417882278345839804065820739990942451525039616498983928072825202292695277161080260165840503262939152755740689452037268647554752305330140991106973476035764844201956489912225033210038735236980330958660817486330751849757204759782947316995481993683099179869510096851706688196713087941293319881931792878309916897429082391253442735487836443276499521414310484299212015258716820984369808164980299317231675895566120417229707891983912313030436599083938826604501055645855210338180213000321723240000979992390148296151632252660711089222198449491402674240066741145681135303976173971437618868459083892733231187058925801037611622467611595626870911986465303574688805428876371812925687283054955612883916571520935189166104478714916038251611282072878086786997631842706045378236307514687319551238743862398436639489398491712487785555373333537472225890310531666594259608781809592257402554051494610430727683516844883090840642690451751292292016489065366815256159780878766578626869915420884829690930367763912026088186491309948519583077355201102841413869259631189746246955907514383232310780500834552698356066683107094282367947091638804881069080013878056063192285475605492314979081159414662685369957898706953665541860973526989584578250451659820035126315338949723159915475590954107123670995428358075269318669824176810684347869283578798491457227042494389813706374939315712352299179827272303887052125744889038946504277764561906702031369062935281197650688873313459486973806092979428386224000584822393299996986560104828818760758385981995867586886600382232504819370078680344674241717169681378516934397641884405919044221823915509568695105214974723365920083084099725300324546498330670104200464003165985880244323828652592296949994026574626754794194734935207459814880784981627555233983334079607425029446928152042170810306189510491211552154552132315007344633654000550944484672998323620625895491345248321838656512221724222086276305979128200483441775180920689490213071958767104334027512272854625466595692210051876910873324145081549488050165026889578346879228171375450336199632698153881546255115357502041655301566125512734592488222445087912439735269902472458805653908767576062143624424582424222584866909588864737855139320483034513471009546955235085164365334373977580000000005001679754956625544521335670993920703/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "76.9983202450438744554786643290060792974230016885614974197045396724798371354517396743611736943438671553677255486830914137790279295518798345878572286993633070432842650374726093770722851545819004462436628875244411860232158594469613254421180434381201993107458287802325125163053243069430172110772426807444343933144335882747615503490006601729242847162857298422942376907739613882280443446224985853478634536891188142530824191974863594540321471891983190331438660214238370562076773175178470114670761880010611386002765217334877606662589743493065263885531299974729615216146566125248715060043698437181284131422075731364283345338709699703582993794126253899206026934528146377767153691054534880575379446376966339887312558441481262157726244245697615457333431613530552275449401460162499989639848656487083332296490801937951693311275458058296123013085185208798445708221465563084740804820410787599540932022730154798854652366464476530061371778559455317877071523570265142553496795276955870075571182528875499750360644512024647568031051209246724192054442929880514566129263081607800600413659781576784781538493005974997167768733514791341812590394896312608386149334027698381074953732165321067742972175810066314372640545949939691059199112902259197028374719371255274892663325340259528597987002000622558108239103590586872155083612865748826932850558450127216937887601992803887514760693042973096472391063480588422977774969494269373890726888734426098435756907320784308567088373502792516309024646236773935305442872817134944905055513987942401119509705195727840017715028425464818355749703194884577637674587109137707610390307383226651501620601170253964126596900620216453142490711603118113883687304793946602705203186310568182585481733099132087842924462987083665596471409057053089142884222238680920348385341993474341045344088992681826336970904415586716700466508239664209600653162760712100530064502065167678737914771432371617979347503998020717290436951568819830615653761168700466043348086144727916925815070477843455475263686724263892892283969716867279371835765077377676910558598090331378177098353930094532295184009856445876560728286563561671334986536567325297894362351326764395460227163902172113952967717938090786088835394692844065885155267530618028426790389854030687484589562087120424512546486618421621433139619412602429066309466808032200836147058200624093927272069181608034101135651581307045796714383412826355512250686832248794798741015735179125057686456136632780958741021703784606998844147553906477008242783863461524576481328027139732701732284213209639484110376713320660110731582869204969465058671090103178705963815577957977980117208041307484040287948737207568397920862262167038764918914817399842386679521269528858792702378468840740576184166859648224733306749763575359090479283104041504241262307460577374215178978240585414372079147184993907992934116201605852641627727983013849912701637111777081993050829497271839664962028123086823798057182710282673420545733083021127090208832414549389548919179553208520792478116741455214699919785611603942118797765688096950288243879790634767873964857412444521648789803864560527147448552706069899091964323053563880288116863458208447919482878912060824116216698178139352435731695393401069959535324329203337622444367964764061787544412798293121516020525308941658364483453926273235491667129709613354532811589881095340509634320462896872830943304431176506564806154989036967958119208939559282519121803571937582119862858446558992323103590098402945164868905912372866014958993377116548118056741920067867964800627129001792217256006372683260501696091755588032157504905364186439930604862402349604921406933898606480677990962773702118697528181450577674026026040023217843651205895169065731895622635287238154653002041327740805127497998404814040867953756393423858986581727546968897217062680339576927939315498123265676443381136821542767186642202268311779287137369988858543177262407415050532321766834262982082942729764844869626177125112178091879986327807056026858437493399517480756985593236221508005540862688976770344799922216391395173157205049774868126436946262798463619701932890548353790753130685603189442366043826482068753531636900090555220592854185818035818981280794463330453310287795746469816958668263449875118586343150143382025983152488932463664717049268332065582602411764617487761017362546088923610752439276799425157166364622576023516282873398008827449799492320163887496028572604329672091852166412083019528597446840308235376692555668878567063995524222075477679436187916561393864664701716295051250017146458408474680788744495296167920219138275186733081479551861681791850145716555390102750468576506624434182037146500833059769216411324853913506659182415964985931974732458164426896249910308397876690383771233200557682978044527273317266187310688817938781979724308299037807342261634826491889372280466449324691637292048702697208746100893536219224910805348780141004772899321384268303789145405962067068659115826930838936027389263862499231941746698310892530926800426163629122716789538636535068335698424166105711665816227169698271759908607554255447741519484647287775464775586826630437191071751601991786746297222514600603511526076187208985092199533657474012268783174356831306339273234382812087374268783742364878567203252127234917351357818577422542203631334747050151316735928824292337199112277152975081523059788411362066798178727143074846374847022962133404093560957328602289023861383204326526366798133980024505950668680469796137915702365344566789454461282321469368569384728254641905605206252705110159818993327848215556361321699361182134003268232156282529461606966219581458745669214204656720103751374062498965933005719439097625261545734348151860218812996061459868240810940632590549583225266890965603405669247161868311403610323915622920699773320018403174567436157512549233527003865219439392576304796699833669190771721750330665815804924660495989007766617180669938655541518102221736339007458487278896115814840389728106572436128133348046976438246914894910389328577270036495289555335838603779788402406600688728983750367478711785480803627041120011595405846690665194697274993102564182272417977785521126226029463354862083414639966239062537424633585905125960527196497163650367754962898558133935085520218232971045192894826443352174895945063001618197997716918169404305641361705376564122552909442555474380911205044917745568460264209719148058883898124904296081743039862454718802995249783687812484239545533080307791568124502319276457208070170486105403271748909783407788588623457304653388935603531013315641671533061474940740509097401130867061513990597789708087415699448514286045807330405795484454409372627862270959652274754864846161817333892395313034696813877203218902630924470517678009527602945906297590647095144641033005907949739186795336883574210830699748481098623990230990996922358768446567263956872951585350694919282365194777760898345139105052376447906312707515844063772324702025922421695626445261002793312676023355509168125449286713195571352714457666571006199211724242392272656758826375432934837773401542465605519225770976278260960312280148010970968609620269923731457561466052387666796744189152301229311824229240528366633286193964849211935796876157058512888242164456457532262515525118445232426068779870206088852516995620007265573732402492186414146551719263362341389084272369748635325142345305071161013465827317764784818556642455137737802460455801584468704675705973702978702562050212162885088545088197264362710639445282084217346797313750029354440212606177767305669959313989808509254445654208112194243203864003942547252112061034256370725382329499535445044566985518312381404944626821368153118702124129493272484179106106594874005286311275465576733582281544536229417172981049465323909684145712933515751623689853795654304881905794167274951504382288581217977984933820025940845115273642980792498743287928660007920363068636552967008292556186811975761184970545699554846297176827519982866465269409244150517580077090105658481993751696827754307229511170446538396180031543712461469960982640186951330698974101674730040533397426228707096260003691349836513148366575430719609650987925121494853155487720575294618993258954276325690133694658453757516974087425500332372491407152150377720548315957693901383438608798726642658841457342244335808600114656917134040760906450724745235612762155608275193598542083943922544462348989583359513801542818782262453430634924980492138257240716254706368902697191547729161631740698106572679728926717811536827568518071152250630512480356152053943061379919489821479901573379675778952345478933740078454301922258033939332925540550953849589102144085096469818627679240281625878936368375931096758784576716386579976896915109471603351855000293948513711728864109106291708719515828886671836940270341778954971547010025637682545354546619764413544963136071330412616727121378027469631516945421967574919893060514575134060627203491533012269368640477526650060074942639362754358840267746386603697490980015537639979512088494715554529852565471673605077816041269667864433525328862657049179421169591711132019935683754112915180309490692743311528574600360599593197527955551937489120317666438743406566623600920034726496381351809578995548437120817845944760612791994635287070261238756876254381986117369594572971254903415234481578999571304824874226299040384119381765271675500558916223038726159267166397839091286873439781979391831653306681036184517775340417885779699985994088242180833915961419164015392012666475353250392438062819677664324449712791954694345361829095881904646324446900081398092399841065084167402777791261957108396319900357321537558598609351144514123586232757517463522215309210479435396026705449053182075115545381133167378162891570418610375391568418467713532658099573156927933541294240387208873670292705589380161637330303489091190772245666408614172132536287098373790449335642269781468802740907807000798880801532718686182349064008929819099658955296297160431748343287617227025758556381615697521335431858630443468039849725161463149942071490040181252754366757765402238101888119683413607869215354888477286151682100721590760744259547995729744451895689002165731095387507972272388511147230946838102549368617524663869089291230878112277885238417787787500892035732648418871961054110958176784979467592202000685822574014433192620798269622718671742258111069916597240201870770928646458769319449998427605608398837888884858744738041016456295014269647421788064027072875439692238599209744489088438159656303203058286919958027590862709333287965962360582817349155695483204512259400171229508417962621682331163069980931328175400676481782832742619346559965800261061634429057044119510109696319675023793788531271097999640595815806148493633936034822283756715209879989431162540124310842412923810719759674951228501682677104269802397651436525408759297706029316618169019031012666762663747502525151417828297818511052770756862441104113729760325728016734595950663491011081341374783557259489483930181516501977726991269653222563115739227411849289964914275594419477958902538734335840837866406724268410710362042287913858178112990146853580694389124946767609772634514331049703249129807813675720279663542499562211946574393811286819675944516700292967321719829972269485593620974512889268877626520727823104487339138757572900205714535005057544056640508292624665931152592072441916930101886783551061651943388621969207214364915535384153337638922887646982857902309553681638214492675026864451296567718786503486415503463926743782007527332397070619457207449414025070410173534204464804627487742539522102551659740010198664500434221720642750622601245764590238160776021280192874466775213349176810695806327659918701121325107931132727719926736125164083208695546364035356199678659280079468671220920359611493166156935059300257731810591392728434029017098978571498080511667375288002649446369944354410692269173966775404069501225141128638613508517270336321368034153771249517768261790131422784041205280234280139205082485161687724587431783525628301425869449811584590859638047350656120286205640746182537058178458011067441888161036142730604383542880627488002045848874652864863472578859615496426932245857707492317955318670839847208240297340543457813376408971587575706951538489680990241386323090646209237277246828061030644382283594214519893540971588797887325287282848853028372431821364676612535208838803820614288601840118775940885407091690781946123401596790897258449192357639018842848375122083839519363626894225360189703860646914879184399290521872411421558341306875058315667050874025638518631452356098187830311835476234479203801328946779047120870964061645850129279712974487836151667843756189869241699516300287685476819880862085702881277692041051626804037535736034101565061586056794684117642170197281787911451229235882132586167485825240016182556224292327913837763762648232546794540287357985572571544659558012970569611802334266733447697256493032571750977933006396522005661412462361995323481559327137101753658501261485880070610408601124535470755301680022083639556451525433513111898445182459935967269098342215726647311955803051120188495038500274288245274151781369180847189331880946381129848966173661232198554513479073359851119790801561684486110067166241982746959954793508697017118956825540146146708707756691310573958811509896007969118615479636472687130791618953880064060153240230177098996360676752650787322074396783692337948726735671386873419616357401649790373547202735930425104234749188218816105546753648451451440566679030240963868372532420916144090467851979021340313103875047271063474291253721370358698242027985575436008796103151603946976664002230125406842425163103775689458795612555584666375660611802312129131564746256983667470775891206754959767123332976309063744057216000845574914643885632563226853563972305752501088876812475457480795801919076679085866031423899815618934524244330721825545049492875655554649523947287340982079391168594771900118691949866799218284833875501064831774880846619489674621538254560973044966564253289589557599961335541221321000473514998226241061494094384319084688168648023657844363588778101191150137564904893958207434372754941499929605601645767412269535475316401945568236085850553572114519192909237443259261745995380449900269293432272875308880990249155202894716646900397690835101623861852449079635560616272001177047110621449259998014232179314110283927213091258077553993933723475832500729843011388275850885051734233636001108733005913905028910930569427079238122287278100160171384337498450674659502511765615579332831617919953290644828277893917857658791835072711796006509183311007091932205915730456931540050364041601481421764280879176645976774393050966577067384384328696155030579902840171795938667127662372400001644930351514714343524146671414179381551549636697614602950915304174194202785783486654744915134361212750039370681735778393563638603332358409583092761206019021703759257121269131832135791542754948344683867112928772575378221266980528018803922637941474244651063428778280705531698317845101730157253632346009646490633730140519531763558929631852276847799533790600904882119880198392449161412152038190214039167839022566241741457860524980334649743372928250409121730362134357606759258999529060593626182606712291465243823144708713348378261987640561983757890888430423104406345967172414567184170692000504707324348013274343098682682986352837817498499795066930920172206199414650322768340902276526880236779659693713242908394769695691301687090662650192646738551548779962253131861831039401602094198408959116710109831550375575557154758512657249506128072736359097339472540292707650443239990418063639065742990365650923531574077702165512815821540016205941380581803799003060300775103871074949484734992368430979648108948334994557634884186830246638726000306537474503274791264105485607321663831253244304847082238799463340948322914078086133073045340672739880785783460418486291201990124525627125722694566260611174560591964874922263135687273850164105204791509625708451175028953616465210428603022790133838661683312090847444053457363819327881107642252478737335986889422847785533290755806573818854144495424186006876058603276498694297618462243532135035835512065983943701285440544922346469276000694906109597071122892410868432865707799321328552878171515919843764146292895058546164111485626144446580954262928652923990654759497028191861429734957145309772691964838731265178001113256307263284741094529521210923230670366204769542508504988481923039230834063796280039698982548162428335132589956417771043575602305145369460236240667589037392028941690251725336103011214038145192164013749762931586725779188794180072477219543057757552171529085652378240731662171648535333456907054847939596677439393668342092939544402637518018959745729873867763241276372006323579216159825723683978374539312142795381636565042814349739236871788679635093162468557368102613410892234115954013989264873662566543021200149405169783369952869064209415476029004811018291514614052636494617294085952076809180158116766966959034200501705593407615510518043732500061127787740233317676508018494377314270265325765141107915300663540181780965942976847000378613533418115446214390083775685405099557892490560296843420557863519602527982165181213351619449156625779430606155947632755088106755819971470644481509394310781758433904186252400407167713558343576986161379927686747886543742337864346749387037686779151785137789727966605142875152496229663400412990135345708001897402049867844551049609613376835501551136185569073353732426734781650743540622426309346856138490883828378567804688976182488822145166510718312713718078064576402035357302288111389048795606142157883016006380604638087283964922600297695772672553559777998913691279529917972141411957557229257169864040934718416319459280364118008204379061687133004480493827101877023498464816329939158539258280839581381622816163165640979358826741104764490528083201454871755539867895707989306461125380135528549180396860898372199601181906320855060007775622901861677135844143415184659608296753063976267179143215843268191017363123352906937802290220972763754629622069629694444815564461136813066672610748190882905216158092864193641724904752603601590431071289784918026378545706746850434331296747819215213829112615611358733602622982144738769671544002089327780666450738705352699968185871081566114980705969664633449638861282703414442860416422627084081955466163707215000385135241889921636303165287828632218133056375522740751190728801239468429233669478844215927864918413242821349807969903190787125797731688332325810539658447226905428100127018342578626112000535501981375812369416236734041527376647929018727497661301196921873632396227173868366957279471954471616688498979745951937263385718280193574639337727061224162005823771779875193266054506060926031436564029888637988478128035399216343942482801722025955759023840780965761366177250808989077460897130576961751444498428681933172137869908512965188307448500292192910665153356930582898287431621146723130146018639863041530783694779681059582388153796179252024039319171990652444754524441124943635676591996794177940120300416034437388926717672480090039088893599310266167896990334971903134955459228026835776617905971486012758838812352597071776474920309528431948623287459165569414125689178012310999899699693867692270970692890815515405759012743898159716471332149169584178811566041607922053395019206326142319754981490641225270001925777463517286400028217692136302668382573921346111811123289101130823348721018328655973540815779792700906487754945319981255391828375093131570901786609168428990682576726142229553076397522749382489406555222117047930652865047190917611900677295310765036996144287876320852191660020371718181557678525645796662296806779921740214833828040195523154797349942666726822047644213153656677740188446937119189945009848862478164111587994025944909946354594129946994196734260457009386149127747659928279230983022568755619982741585294248076337852196015518861319618993079650115026813415170758639966038857128771323658387852524035563422045659260279036747339575937141155413730120820034213681450916926985339488041850427964637267034147257072736021704069500909082986751833096401111057465249566284780408299026323278295166324663326722631813245718107813979527452675177527986953111288254262147141423798117581798994734177238959102954488192998677380746418993943935450909710662348620279559731989740994107637795313136910660994247347906403246847231544233994665593183371211215786269943503257645135862011846729855110266645869616572659307921404099655323276882912854096008572270587157183773829819606468511851606098030549238819837774388959474500760914401925475152385615630680617118137754437660773209820460381474232701028698658833534798695038679162184868418394202934188289994229992271971810076530469305189932091055132172148572423336938561659691007762282856052454897040252356601887083476160858314805559243960006438972807866109959381697938407372370978627463803910270461724683180030914423893086589733220416261777263171952715309983560532357597589788131409515826247786232842857246413119797257614185425312914528571445350605977899781475825076295057924012145147406044983774183087412049997873165821373568499448230900590133175739148080812622571551833897861872965560440603845608567309014182269234152532132390355251000855620184228883217322255759858843666158853505988926570913036521421104406498856062536016983048658302311973363356284615509151709722935033296936849631276296935859001224418610699525762425956536963299165119840295132663660407491378697881329801239596424875792427535931339574159322983136633922675803469790522990312077116830218755370288922747684341354587763975517832128082108555081999658673183606527727832926471666216928834087828421715704921665767559492693750121364276202175567717687758514956488028665082175764092247560230438560625243351780799173193342710987123412262427144025099470191419002372648440231722974993526191474772390201779612907831494003994395158179271954682222566764654023403987800750976848151280491634521742759085425803122837077313272625868801496805801316691250667233410191759261449506945212907957870611417848633285617651467033074476695156223723952789580880123823480512556087316588218411908866278653328129806586901932351689430428188164594206820537738662915988747561461078300415005200421459841185147822874095718897864643173229714860137434798922635771403985457607705772306251133970663478218641160029158819037548609992242468000327359232606676948434787672917463747479889102568792194935491008666609320738908525673614329915084164320734487415776181071821622106153169731319256839057660302634882725006050614008743874925796570366577397029120291894259275873760709362019454132692537362861453918255758624770854224406056843026064903109280131184190370647376278945134642187338557664991875782205434731387260981011776212629361718147821219037946876207122276823256085066602903338309055802243757843008041646986024036869739938062016720512529082653082565085726730474441319548262128773646260682751125286205694105445545843407328897387126269438738545664445523917444515159108766822794594522023991988090939478236548954217260880880860068048121059226190607024158568759075868979169287970514376380826915866304406326383875127147266253778788147523292264864715769808983037879560367731325990689593482867949526490145386064829081119822362353455774673040416725523149597858103046480975600758040709773691736549505409719723974143624244319064819586834434925581273481928806291740491953132126813210177510145808110792581073881041249255584303795847248387259022209854914627471915973372981394750393303181796744954962628222860949895331019103917862563135443374874302183983524845490363727141583839665494137209427969308543709435593463039056410238233507182691673238155008129752055340079719397664207206307947757991086028305797450772707787810145922441043058637650507002316147378435691176525968121442262395994641960612681932746747835070452996382554390270273773151788188880800192885080559017882684187785781747228965269451511300450854208633858660423962950225886745301016577714386292540045536670231972939115915225979189817726969710858346985844199558682554501819137720777508616869216647144643865051658107499435037943118784848611086001542505140649872608491592186528624660504305331130844907976527304578582396081924945875004285079702506550976729504860735369173969778208488809704612839112612564919528241260113505879832812233176734854185259757504548629119692971065073043517273408243541524921199980912585991680366514058683443391781278830931237196737202420005117318497419527317418727803392010674673712893897222724698975017324936657929603528432606952517601897751882590289466873447618644858099369888006824013481837436876888198863402235450190210865844583860984643323631583227556847186028323685493637033212236885382755415862437217176074361441321668747137804702295406925854467310297691916994411149718096533430019184133772104364740398250209259176546941289829071372488089697970562797744741923727504108021948603314282890653013474966358408295183221601319738115976044353119462087656576813317066838997549190132445120633828625112186110089993388889086299028716712314094561692861084765391605979334125469319666839212871270938427757708222418846655313671025451681018057484789540242975093105208774072567639268334394487177211795363664102556345098339698565164682701522130538174276403158753560020550396274355600266261754865917201638661847667080977868262112542358419567742595994324982563778018425737792418720501397896493306463991505146305186857739330824151805209075188008507369634976104142669650801958885660348632374020907581558870885431590176160281922111850369790204040227615877892652705875624092626407390736536848982923245926815891540754798680903931570879252594164181126787919618696574806485487115916873154228132534552390449983673026056171858044502340602802475969052123822865641474516608580396244038013940978444172491431287675736738403866464990024348912681527594081778493893482090261581941292539078674394347289099906191062999012552953896166163579284426972009222013989022266223320427268714122201875662242145567036412809574456654402468247780937149576220106997309396443477132030179786750270576954324104137440622264959989096702051033966127520228947061956492482970536698125047223632133999726355405697813738092366254536419428803404120549455618771006247329398259966569863741009817114107611448447609776882396022559675687699010649191827630243126009578704939406224411741146372395271060135976984832490517787784357211163722933029702246156410553336767589090537730582772073339197574372059765293610719137217907617519784653680024828402600791466328671885497752822694892748880566774955445870739988818390122914319697329365556125725028256584425373097101944228323160262439102588055597375686151097621492943005620995274324276864291133161840650431397306112530619535361690064265449108319859177081443609809418918040037570081756576926689088205033085823679259779076515989855278500226471424623494610399510176401933018602426673261471585392111718209743208273753194650952306458858056777213069999029455574113733087415264359341898778981051216755435673334051183569639748709286126876746397042576657562840934560856362927729076941178720087698145208940674874909603002566295351638616004055477917155035950982069898606755399905840716583220331537135481135956712148820703407354656333805847724046466395839536263086248149478937989893325095313039125437288320765590912066270350164536341731147669387180009368394216477552341747186367225849982402600268091846618184268439860059423759627573256308308152164993940601791451020993900594131212858920261735023590623139761823518566412463311469796042485917017693583853217298542476024093697614926904290291049081259137348742361136353008721926034030863498555898586792635953376433445876560347877848838592611103630939217321524159271538586423528743338448501881231610946952715701424521013272567838255982685935742516757140415004000047950415272636790681090979544209878629379439687817397692996856192582074207184773874796654687073299234566787083522813822028826622601088937280275965137864218398672237508145740127221223486836623292544659540124138091002665047075393671160447225699443676835016800524527547879428729358961276835764556691679608131641479981884903050079232997967856145650404585390554322160520331681006525878305511481378904074537295109504610660281982213946952071529688403912979824450066420077470473960661917321634972661503699514409519565894633990963987366198359739020193703413376393426175882586639763863585756619833794858164782506885470975672886552999042828620968598424030517433641968739616329960598634463351791132240834459415783967824626060873198167877653209002111291710420676360426000643446480001959984780296592303264505321422178444396898982805348480133482291362270607952347942875237736918167785466462374117851602075223244935223191253741823972930607149377610857752743625851374566109911225767833143041870378332208957429832076503222564145756173573995263685412090756472615029374639102477487724796873278978796983424975571110746667074944451780621063333188519217563619184514805108102989220861455367033689766181681285380903502584584032978130733630512319561757533157253739830841769659381860735527824052176372982619897039166154710402205682827738519262379492493911815028766464621561001669105396712133366214188564735894183277609762138160027756112126384570951210984629958162318829325370739915797413907331083721947053979169156500903319640070252630677899446319830951181908214247341990856716150538637339648353621368695738567157596982914454084988779627412749878631424704598359654544607774104251489778077893008555529123813404062738125870562395301377746626918973947612185958856772448001169644786599993973120209657637521516771963991735173773200764465009638740157360689348483434339362757033868795283768811838088443647831019137390210429949446731840166168199450600649092996661340208400928006331971760488647657305184593899988053149253509588389469870414919629761569963255110467966668159214850058893856304084341620612379020982423104309104264630014689267308001101888969345996647241251790982690496643677313024443448444172552611958256400966883550361841378980426143917534208668055024545709250933191384420103753821746648290163098976100330053779156693758456342750900672399265396307763092510230715004083310603132251025469184976444890175824879470539804944917611307817535152124287248849164848445169733819177729475710278640966069026942019093910470170328730668747955160000000010003359509913251089042671341987841406" + } + } + } + }, + "rejecting_controls": { + "struct_boundary_radix_union": { + "endpoint_equality": { + "complex_endpoint": { + "rational": "0", + "decimal": "0" + }, + "q_below_effective": { + "rational": "-1/20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-5E-30011" + }, + "q_below_internal": { + "rational": "-1/20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-5E-30011" + }, + "q_below_leaf": { + "rational": "-16797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999999/100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-1.6797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999999E-30019" + }, + "lambda_above_tau": { + "rational": "-1/40000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-2.5E-30011" + }, + "lambda_above_internal": { + "rational": "-1/40000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-2.5E-30011" + }, + "lambda_prime_above_lambda": { + "rational": "-1/40000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-2.5E-30011" + }, + "lambda_prime_above_leaf": { + "rational": "-16797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999999/100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-1.6797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999999E-30019" + }, + "global_coordinate_router_above_kappa": { + "rational": "-248320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-4.96640490086748910957328658012158594E-30011" + } + }, + "zero_layout_slack": { + "positive_layout_slack": { + "rational": "0", + "decimal": "0" + } + }, + "old_per_axis_scan": { + "old_per_axis_scan_above_kappa": { + "rational": "-8398774780627722606678354969603512884991557192512901477301637600814322741301628194131528280664223161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999997998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999995996640490086748910957328658012158594" + } + }, + "full_cell_gauge": { + "unrecentered_group_gauge": { + "rational": "-3999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999/2000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-1.9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999995" + } + }, + "full_key_sort": { + "unnecessary_full_key_sort_above_kappa": { + "rational": "-14843749999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999987499999999997499999999999999999999997884991557192512901477301637600814322741301628194131528280664223161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999999/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-0.59374999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999949999999999989999999999999999999999991539966228770051605909206550403257290965206512776526113122656892645489026338171724419441408962403308242855426012733859134314699250547812458554296908361991" + } + }, + "old_g_factor_union_row": { + "old_g_factor_union_row_above_kappa": { + "rational": "-14843749999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999982499999999997499999999999999999999997884991557192512901477301637600814322741301628194131528280664223161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999999/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-0.59374999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999929999999999989999999999999999999999991539966228770051605909206550403257290965206512776526113122656892645489026338171724419441408962403308242855426012733859134314699250547812458554296908361991" + } + }, + "old_theta_chirp_guard": { + "old_theta_chirp_guard": { + "rational": "-10198243873903138613033391774848017564424957785962564507386508188004071613706508140970657641403321115806861282922714655524301761203004135303569282515917323917893374063184765573192871135452488843908427811888970349419603513825966863947048914046995017231354280494187187092366892326424569723068932981389140167139160293130961241274983495676892882092856753942644057730650965294298891384437535366303413657772029643672939520062841013649196320270042024171403349464404073594808067062053824713323095299973471534993086956662805983343525641267336840286171750063175961959633584686878212349890753907046789671444810671589291636653225750741042515514684365251984932663679634055582115772363662798561551384057584150281718603896296844605684389385755961356666420966173619311376496349593750025900378358782291669258772995155120766721811354854259692467287036978003885729446336092288147987948973031001147669943174613002863369083838808674846570553601361705307321191074337143616258011807610324811072043677811250624098388719938381079922371976883189519863892675298713584676842295980498498965850546058038046153767485062507080578166213021645468524012759218479034626664930754047312615669586697330642569560474834214068398635125150772352002217744352007429063201571861812768341686649351178505032494998443604729402241023532819612290967835627932667873603874681957655280995017990281213098267392567258819022341298528942555562576264326565273182778163934753910607731698039228582279066243018709227438384408065161736392817957162637737361215030143997201225737010680399955712428936337954110625742012788555905813532227155730974024231541933371245948497074365089683507748449458867143773220992204715290781738015133493236992034223579543536295667252169780392688842532290836008821477357367277142789444403297699129036645016314147386639777518295434157572738961033208248833729400839475998367093098219748674838744837080803155213071419070955051631240004948206773907621077950423460865597078248834891629784638180207685462323805391361311840783189340267769290075707831801570410587306555807723603504774171554557254115174763669262039975358885308598179283591095821662533658581686755264094121683089011349432090244569715117580705154773034777911513267889835287111831173454928933024025364923281288526094782198938718633783453945946417150951468493927334226332979919497909632354498439765181819827045979914747160871046732385508214041467934111219373282919378013003147460662052187355783859658418047603147445740538482502889631115233807479393040341346188558796679932150668245669289466975901289724058216698349723171042826987576337353322274742053235090461055105055049706979896731289899280128156981079005197844344582403087702712956500394033301196826177853018244053827898148559539582850879438166733125591061602273801792239896239396844231348556564462052554398536464069802132037515230017664709495985368395930680042465375218245907220557295017372926256820400837594929692282940504857043224293316448635667292447182274477918963626526127702051116978698018804708146361963250200535970990144703005585779757624279390300523413080315087856468888695878025490338598682131378618234825252270089192366090299279707841354478880201292802719847939709458254554651618910670761516497325101161689176991655943889080088089845531138968004267196209948686727645854088791365184316911270832175725966613667971025297261648725914198842757817922641738922058733587984612527407580104701977651101793702195491070156044700342853883602519192241024753992637087827735219067834962602516557208629704858145199830330087998432177495519456859984068291848745759770611029919606237736589533900173487843994125987696482665253483798305022593065744703256179546373555814934934899941955390871985262077335670260943411781904613367494896680647987181255003987964897830115609016440352533545681132577756957343299151057680151711254691835808891547157946143082033394494329220551782156575027853642056843981462373669195582914342544792643175587887825934557187219554770300034180482359932853906266501206298107536016909446229986147843277558074138000194459021512067106987375562829683907634343003840950745167773629115523117173285992026394084890433794828116170907749773611948517864535454910452546798013841673866724280510633825457603329341375312203534142124641544935042118777668840838207376829169836043493970588456280597456593634777690973118901808001437107084088443559941209292816504977931375501269199590281259928568489175819770369583969792451178506382899229411558268610827803582340011189444811305801409530208596515338338245709262371874957133853978813298028138761759580199452154312033167296301120345795520374635708611524743123828558733438914544907133747917350576958971687865216233352043960087535170063168854588932759375224229005308274040571916998605792554888681816706834531723277955153045050689229252405481644345912933770276569298833876688270906769878243256978134747766159451937722986628049647488067751696539329240527136485094832328352210432672902659931526840343751920145633254222768672682998934590927193208026153408662329160753939584735720835459432075754320600228481114361380646201288381780561338061032933423907022320620995020533134256943713498491221184809531977537269501165856314969328042064107921734151816914042969781564328040644087803581991869681912706621605453556443644490921663132374621708160177939269157002219307117562296192350528971594833004553182142312884062882442594666489766097606678494277440346541989183684083004665049938735123328298825509655210744086638583026363846794196326578576538179363395235986984368237224600452516680379461109096695751597044664991829419609293676345982584451046353135826964488358199740621564843752585167485701402255936846135664129620349452967509846350329397972648418523626041936832772585991485826882095329221490974190210942698250566699953992063581409606218626916182490336951401518559238008250415827023070695624173335460487688348760027480583457048325153361146204744445659152481353781802759710462899025679733568909679666629882558904382712762724026678556824908761776111660403490550528993983498278177540624081303220536297990932397199971011485383273337013256812517243589544318955055536197184434926341612844791463400084402343656438416035237185098682008757090874080612592753604665162286199454417572387017762933891619562760137342495954505005707704576489235896595736558589693617726393611314047721987387705636078849339475702129852790254687739259795642400343863202992511875540780468789401136167299230521079688744201808856979824573784736491820627725541480528528441356738366527660991172466710895821167346312648148727256497172832346215023505525729781460751378714284885481673985511288863976568430344322600869313112837884595456665269011717413257965306991952743422688823705804976180992635234256023382262138397417485230125652033011657791064472923250628797253440024422522507694103078883581840107817621036623262701794087013055597754137152237369058880234218231210389840569188244935193945760933886847493016718309941611227079686376783217011071618213855833572484501970689394019318358102934061417662905566496143835986201935572559304347599219299629972572578475949325190671356096334869030833008139527119246926720439426898679083416784515087876970160507809607353717779394588858856169343711187203886918934828050324484777868707510949981836065668993769533964633620701841594146527289319075628411687144136737322097466335431705588037953608393862155655493848860496038828238310735065742553243594874469592787278637279506839093223401386794789456633006715624926613899468484555581735825101715025478726863885864479719514391990339990143631869719847414359073186544176251161387388582536204219046487638432946579617203244689676266818789552234733512814986784221811336058166044296138659426457067547376336690225789635717666210620940775365510864237795235514581812621239044278546955055037665449935147887211815892548018753141780178349980199092328408617582479268609532970060597037573635751112884257057931200042833836826476889623706049807274735853795015620757930614231926222073883654009549921140718846325097543399532621673252564745813174898666506434428232259349990771625408717129083561423200975872530187196262867111280698561763452516852614309185774665763353865606207564781436249169068771482119624055698629210105765246541403478003183393352896356644389160478499713357707164898097733873188136910968094610979312016003644790140193638844127526041601215496142953044343866423412687548769654356898209363234077743257021130677095920648254733568300677683205471157931078704822119373423718799109619865142346550201275446300246066550810552619136302665649803864245194354915151667686148622615376027244639787258825453430801899295935302659079060172258103038558209033550057757712226320991620362499265128715720677839727234270728201210427783320407649324145552612571132474935905793636613633450588966137592159821673968458182196554931325921207636445081062700267348713562164848431991271167469326578398806183374849812643401593114102899330634033490756272549961155900051219778763211113675368586320815987305459896825830338916186677843357377051447076020722169950160790614717712049226273268141721178563499098501017006180111120156277199205833903141483583440997699913183759046620476052511128907197955385138098468020013411782324346903107809364045034706576013567571862741461913796052501071737937814434252399039701545586820811248602709442403184601832084005402271782816400545051520420866733297409538705561648955285550750035014779394547915210096452089961519968333811616874018904842950805839188875718020113264136595427260295238384188882749796504769000397337289581493055521845107229009200249106696156103503476622138714691034418106206341194461726973801411509933236377367044812211136547167081554592771073953474061521078953830716168354751067107680166146764399031977815824268236026549595906674241277272023069385833978464569668659282254065523876660894325546327993147730482498002797996168203284544127339977675452250852611759257098920629141780956932435603609045960756196661420353423891329900375687096342125144821274899546868114083105586494404745279700791465980326961612778806784620794748196023098139351130010675638870260777494585672261531230069319028722131922632904743626578456188340327276771922804719305286903955530531247769910668378952820097364722604558037551331019494998285443564963917018448004325943203320644354722325208506899495323072678383853076701375003930985979002905277787853138154897458859262464325881445529839932317811400769403501975638777278904600859241992354282700104931022843226666780085094098542956627110761291988719351499571926228955093445794172092325047671679561498308795542918143451633600085499347345913927357389701224725759200812440515528671822255000898510460484628765915159912944290608211975300026422093649689222893967690473200600812621928745793307239325494005871408686478101755734926708454577452422468333093340631243687121455429255453722368073107843897239715675599185679958163510123341272472296646563041106851276290174546208745055682521825866943592210651931470376775087714311013951305102743653164160397905333983189328973224094894280215354554717524632866048264027187633080975568413714172375741877175480465810699300841143751094470133564015471782950810138708249267581695700425069326286015947563717776827805933698180442238781652153106067749485713662487356139858398729268438335172118519818895207674745283041122345870141528445076981964087711161539616655902692780882542855244226115795904463768312432838871758580703033741283961241340183140544981181669007323451356981376464937323974566164488837988431280643651194743620850649974503338748914445698393123443496885588524404598059946799517813833061966627057973260484180850203247196687230172168180700183159687089791978261134089911609500803351799801328321947699100971267084607662351749355670473521518178914927457252553571254798720831561779993376384075139113973269327065083061489826246937147178403466228706824159196579914615571876205579345524671443039896986799414299651987293787095780688531420541185929246435326375471038522850904881623359699284485898134543657354553854972331395279597409643173489041142798431279994885377813367837841318552850961258932669385355731269205111703322900381979399256648641355466558977571031060732621153775797524396534192273384476906806882929847423389044291014463700266147571028005281686781792877867429068920446588308468661977902990448464278495399703060147786482270773045134691496008022756853877019105902452892879062194790401201590932764436599525740348382712802039001773695318971446104146732812354210832372814935903703421369109754530424220411309413801990496677633052382197822589845885374676800717563780409620830390609525326895751209249280786307950297844785742796805769897370932989906160659914746087346034858013289705894574506795530221371926910294668534581285436899959543609439269180215405590593379418633013649281605036068571138351104967573575970494164333166380756858767418570622555167484008694985846468844095011691296101682157245615853746846285299823473978497188661323111745799944790901108871186416217220253887043850160081827254144460683381720110492372199528762403749314279386814620546577047882026670297634047175377584565846919503613716302316600372200522996095788784724832084395043132600113016228257457202607936149634633228230608271723565102971225259980077203461300908818282173020952615299839849616899424557252509098308118373031694814008040769155128183160821532816450959106495875524066131993160173937239413127029452959736133115878871371398583302424397590329068668947709639773830370052446649217240312381822341314271865696574103254394930036061409978009742120990132558339994424686482893937092240560776353010968611038334060848470494219677171088134357540831323060271983112600582191667559227340639856959997886062713390285918591932866090069235618747277807968811356298010495202308302285334921440250460952663689389173195436137376267810861113376190131781647544801522078513070249703270125333001954287915311247337920562797883451275813446154363597567387583589366776026106000096661146946697498816212504434397346264764039202288279578379940855389091028054747022124656087737765104481414068112646250175985995885581469326161311708995136079409785373616069713702017726906391851845635011548875249326766419317811727797524377111992763208382749005772912245940345368877300911098459319997057382223446376850004964419551714724290181967271854806115015165691310418748175392471529310372787370664415909997228167485215237427722673576432301904694281804749599571539156253873313351243720585961051667920955200116773387929305265205355853020412318220509983727041722482270169485210673857671149874089895996296445589297802058385058064017372583557331539039178259612423550242899570510153332180844068999995887674121213214141189633321464551546121125908255963492622711739564514493035541283363137712164096968124901573295660554016090903491669103976042268096984952445740601857196827170419660521143112629138290332217678068561554446832548679952990193405146314388372341428054298236170754205387245674606865919134975883773415674648701170591102675920369307880501165523497737794700299504018877096469619904524464902080402443584395646355348687549163375641567679373977195674094664105983101852501177348515934543483219271336890442138228216629054345030898595040605272778923942238984135082068963582039573269998738231689129966814142253293292534117905456253750512332672699569484501463374193079147744308682799408050850765716892729013075760771745782273343374518383153621128050094367170345422401495994764503977602208224725421124061061107113103718356876234679818159102256651318649268230873891900023954840902335642524085872691171064805744586217960446149959485146548545490502492349248062240322312626288162519078922550879727629162513605912789532924383403184999233656313741813021839736285981695840421866889237882294403001341647629192714804784667317386648318150298035541348953784271995024688685932185693263584348472063598520087812694342160781815374589736988021225935728872062427615958836973928492443024665403345791719772881389866356590451680297230894368803156660032776442880536166773110483565452864638761439534982809853491808753264255953844391169662410411219835040140746786398637694133826809998262734726007322192768972828917835730501696678617804571210200390589634267762353634589721285934638883547614342678367690023363101257429520346425662607136725568270087903171837054997216859231841788147263676196972691923324084488076143728737528795192401922914840509299900752543629593929162168525108955572391060994237136576349409398331027406519927645774370686659742471964904637019589965625592671033185552028014549818806951142355606119571177285869054398170844570878661666357732362880151008306401515829144767651138993406204952600635675315330591896809069984191051959600435690790054063651719643011545908587392964125651907820528300912267093828606579743466472769414710114965026837815843583642446999626487075541575117827339476461309927487972454271213464868408763456764785119807977049604708082582602414498745736016480961223704890668749847180530649416705808729953764056714324336685587147230211748341149545547585142557882499053466166454711384464024790560786487251105268773599257891448605341200993680044587046966620951377108435551423484610130918112279733110450071323388796226514223045603915239534368998982080716104141057534596550180783130283640644155339133126532405783052120537155525680083487142812118759425841498967524661635729995256494875330388622375975966557911246122159536077316615668933163045873141148443934226632859653772790429053580488277559543777944637083723204218215704804838558994911606744279721527378010984644605292459984048488404781790087693499255760568318616100555002715771801175205069646470106106926857075339897663203959201351799089704979489052345782167488798765432245307441253837959175152103651854297901046545942959592085897551602933147238088773679791996362820611150330260730026733847186549661178627049007847754069500997045234197862349980560942745345807160389641462038350979258117340059332052141960391829522456592191617732655494274447568090613425944825925763887961088847157967333318473129522792736959604767839515895687738118490996023922321775537704934053635733132873914171758130451961965427218460971603165993442544638153075821139994776680548333873153236618250079535322296084712548235075838416375902846793241463892848958943432289795111334590731962499037161895275195909242086780428419454667359061193148122023177996901328926915826302889460180337703966892946625480075242023032185505670779169185473650853881932736429749682454143553434719998661245046560469076459408164896181558380177453181255846747007695315919009432065329082606801320113820958278752550635120156841535704299516063401655682346939594985440570550312016834863734847684921408589925278405028804679911501959140143792995694935110602440398047585596584556872977527306347757173557595621388753928295167069655325228717587029231378749269517723337116607673542754281420947133192174634953400342396173040763050797351044029615509551869939901702070023368888113688897187640910808520008014555149699248959913906527683205818799774902277766001724334580257524162570242162611351929932910558455235071284968102902969118507320558812699226178920128441781352086076464685777054969222500250750765330769322573267772961211485602468140254600708821669627076039552971084895980194866512451984184644200612546273396936824995185556341206783999929455769659243329043565196634720472191777247172941628197454178360066147960550518247733780612636700046861520429062267171072745533477078927523293558184644426117309006193126543776483611944707380173367837382022705970248306761723087407509639280309197869520849949070704546105803685885508344257983050195649462915429899511192113006625143333182944880889467115858305649528882657202025137475377843804589721030014935137725134113514675132514508164348857476534627180630850179301922542443578110950043146036764379809155369509961202846700952517300874712432966462073103400084902857178071690854030368689911091444885851849302408131651060157147111465674697949914465796372707682536651279895373930088406832414631857318159945739826247727292533120417258997222356336876084288048979252434191804262084188341683193420466885704730465051181368312056180032617221779364344632146440504706045502513164556902602242613779517503306548133952515140161372725723344128449301100670025647514730905511717157723347514381630233991882881921139415013336017041571971960534325141241855887160344970383175362224333385325958568351730196489750861691807792717864759978569323532107040565425450983828720370984754923626902950405564027601313748097713995186312119035960923298457204655613905848066975448849046314418247428253352916163003262403302094537828954014492664529275014425019320070474808673826737025169772362169569628568941657653595850772480594292859868862757399369108495282291309597854212986101890099983902567980334725101545755153981569072553431340490224323845688292049922713940267283525666948959345556842070118211725041098669106006025529671476210434380534417892856883967200506855964536436717713678571386623485055250546310437309262355189969637131484887540564542281469875005317085446566078751379422748524667060652129797968443571120415255345317586098898490385978581727464544326914618669669024111872497860949539427791956694360600352890834602866235027683572717408696447238983752859843659957542378354244220066591609288461227120725692662416757657875921809257660352496938953473251185593935108657591752087200399262168340848981271553255296675496901008937810518931160171651064601692542158415193310491325523692524219807207924453111574277693130789146613530590061205419679794728612295000853317040983680680417683820834457677914780428945710737695835581101268265624696589309494561080705780603712608779928337294560589769381099423903598436891620548002067016643222532191469343932139937251324521452494068378899420692562516184521313069024495550967730421264990014012104551820113294443583088364941490030498122557879621798770913695643102286435492192907306716818435327996257985496708271873331916474520601846376232636967730105323471455378416785955871332417313808262109440690118026047799690441298718609781708529453970227834303366679675483532745169120776423929529588514482948655653342710028131096347304248962486998946350397037130442814760702755338392066925712849656413002693410571490036355980735569234372165073341304453397099927102952406128475019393829999181601918483307628913030817706340631300277243578019512661272478333476698152728685815964175212289589198163781460559547320445944734617075671701857902355849243412793187484873464978140312685508574083556507427199270264351810315598226594951364668268656592846365204360603438072864438984857892434837742226799672039524073381559302637163394531653605837520310544486413171531847547470559468426595704630446952405132809482194307941859787333492741654227360494390605392479895882534939907825650154844958198718677293367293587285683173813896701129344678065884348293122186784485764736386135391481677756532184326403153635838886190206388712102228082943013513694940020029772651304408627614456847797797849829879697351934523482439603578102310327552076780073714059047932710334238984184040312182131834365553029631191769337838210575477542405301099080671685023276016292830126183774636534837927297200444094116360563317398958186192126005354742383797560998104898225565770658626236475700690064640939389202337951032913912686046816295177984270648770117169682966974556224635479723018547315297396876861039240510381879031852444475362713431320210066567546513124016742045508137612593429442847625261672452240205343592161391562814244540041187886274090682146040400836264656976430076728640726411016342402358974404416232043270816904612479675619861649800701505839481984230130605022284929235506373068230530474635193897392353405873732494209631553910772058685079696394344010013395098468295168133130412323867509043614024324315567120529527797999517787298602455293289530535545631927586826371221748872864478415353348940092624435283136747458555714034268649886158324420067652210211935052025455682575722854132535389501103293613745452155698056228457826958382138390337370854731251412405142203037878472284996143737148375318478771019533678438348739236672172887730058681738553544009795187635312489287300743733622558176237848161577065075554478777975738467902218468587701179396849716235300417969417058162864536850606238628427200767572337317391206816479391146187697000047718535020799083714853291391520546802922671907008156993949987206703756451181706453180491519973313315717765256943188252562456687658355175991178918482618705995255620293524276332816380953387854751575279982939966295406407807779502841494411374524472835388540347538391690921041931107882034929190786265907416969407786543111460343906957059814096396695828132155488244261482685363831724255770207513972125704758666424952039665569739088149004374476852058632646775427321568779775755073593005638145190681239729945128491714292773367466312584103979262041945996700654710059889117201344780858557966707332902506127024668887198415428437219534724775016527777284252428208219214763595767847288086520985051664686326700832901967821822653930605729443952883361715822436370797454856288026149392562267236978064818580901829164013782056970511590839743609137254150753587088293246194673654564308992103116099948624009314110999334345612835206995903345380832297555329344718644103951080643510014187543590554953935655518953198746505258766733840021237134237032855651672939620486977312029978731575912559739643325872995102785849128419064947731046102822786421024559599295194720374075524489899430960305268368235310939768433981523158657877542691885182960271148113003297740171072801868514589547183030200953258562983786282210207817114429668663619023875040817434859570354888744148492993810077369690442835896313708478549009389904965147553889568771421780810658153990333837524939127718296181014795553765266294774346045146768652303314014131777250234522342502468617615259584591051788932569976944965027444334441698931828214694495310844394636082408967976063858363993829380547657126059449732506726508891307169924550533124323557614189739656398444337600027258244872415084681199427632345108768792573658254687381940919665000684111485755465654769084363658951427991489698626360953072484381676504350083575340647475457214730971378880975557794009943600810780752473377020430924392184976053237651484438970647134069011822349660057537918773705530539106972090692667425744384608973616658081027273655673543069816652006064069850586765973202156955230956200538365799937928993498021334178320286255617943262768127798583062611385323150027954024692714200756676586109685687429358538936567257245139429192099343902243529861006560784622255946267642485947511814189307839272167095398373921506734718673451161595774839336377229200352057296390975476452704899906074795608557683277279487417285440801850552308710025361803749433821438441263474001224558995167453493933316846321036519720704475641979315617013372619233852854858056967325002426361064715667281461839101645253052547371958111410816664872041075900628226784682808134007393558356092897663597859092680677307647053199780754636977648312812725992493584261620903459989861305207112410122544825253483111500235398208541949171157161297160108219627948241481613359165485380689883834010401159342284379626302655025266687261717402186406779198086022719834324124588659145672130826532049976579014458806119145632034081935375043993499329770383454539328900349851440600931066859229229619587515148495521372447515248514671967852699345662441023442150595441203583968841721325509893785207455766040366956753643809939765755962682739274272377296852156628144097159117478195184914922841253610253533018410116558916385308599130305377903518472240922651956696189601821153533941178141653878745296920972632618210746438697466818580404360043285160643708107148962489999880123961818408023297272551139475303426551400780456505767507859518544814482038065313008363282316751913583032291192965444927933443497277656799310087155339454003319406229635649681946941282908441768638351149689654772493337382311515822098881935751390807912457998688681130301428176602596807910588608270800979670896300045287742374801917505080359635873988536523614194598699170797483685304236221296552739813656762226238473349295044465132619821175778990217550438874833949806323815098345206695912568346240751213976201085263415022590031584504100652449515741466559016434560293533400590341035608450415512854588043732786322560817783617502392928447578503939923706415895078150959175098503413841620522169397913851460540080438434847817004580305866977494721770723948309098934998391383799995100038049258519241838736696444553889007752542986628799666294271594323480119130142811905657704580536333844064705370994811941887661942021865645440067673482126555972855618140935371563584725221935580417142395324054169477606425419808741943589635609566065011840786469773108818462426563402243806280688007816802553007541437561072223133332312638870548447341667028701956090952038712987229742526947846361582415775584545796786547741243538539917554673165923719201095606167106865650422895575851545348161180439869559067543450257402084613223994485792930653701844051268765220462428083838446097495827236508219666584464528588160264541805975594654599930609719684038572621972538425104594202926686573150210506465231672290695132365052077108747741700899824368423305251384200422622045229464381645022858209623653406650879115946578260653582106007542713864787528050931468125303421438238504100863638480564739371275554805267478611177190466489843154685323594011746555633432702565130969535102858068879997075888033500015067199475855906196208070090020662065566998088837475903149606598276628791414151593107415328011790577970404778890880422452156524473925126383170399584579501373498377267508346649478997679984170070598778380856737038515250029867126866226029026325323962700925596075091862223830083329601962874852765359239789145948469052447543942239227239338424963276831729997245277576635008381896870522543273758390806717438891378889568618470104358997582791124095396552548934640206164478329862438635726872667021538949740615445633379274592252559749174865552108265603859143122748319001836509230592268724423212489791723492169372436327037558887774560437801323650487637705971730456162119689281877877087878887075665452055676310724303397584827432644952265223824574178173328130112099999999988741601225219372277393321645030396487115008442807487098522698362399185677258698371805868471719335776838627743415457068895139647759399172939286143496816535216421325187363046885361425772909502231218314437622205930116079297234806627210590217190600996553729143901162562581526621534715086055386213403722171966572167941373807751745003300864621423581428649211471188453869806941140221723112492926739317268445594071265412095987431797270160735945991595165719330107119185281038386587589235057335380940005305693001382608667438803331294871746532631942765649987364807608073283062624357530021849218590642065711037865682141672669354849851791496897063126949603013467264073188883576845527267440287689723188483169943656279220740631078863122122848807728666715806765276137724700730081249994819924328243541666148245400968975846655637729029148061506542592604399222854110732781542370402410205393799770466011365077399427326183232238265030685889279727658938535761785132571276748397638477935037785591264437749875180322256012323784015525604623362096027221464940257283064631540803900300206829890788392390769246502987498583884366757395670906295197448156304193074667013849190537476866082660533871486087905033157186320272974969845529599556451129598514187359685627637446331662670129764298993501000311279054119551795293436077541806432874413466425279225063608468943800996401943757380346521486548236195531740294211488887484747134686945363444367213049217878453660392154283544186751396258154512323118386967652721436408567472452527756993971200559754852597863920008857514212732409177874851597442288818837293554568853805195153691613325750810300585126982063298450310108226571245355801559056941843652396973301352601593155284091292740866549566043921462231493541832798235704528526544571442111119340460174192670996737170522672044496340913168485452207793358350233254119832104800326581380356050265032251032583839368957385716185808989673751999010358645218475784409915307826880584350233021674043072363958462907535238921727737631843362131946446141984858433639685917882538688838455279299045165689088549176965047266147592004928222938280364143281780835667493268283662648947181175663382197730113581951086056976483858969045393044417697346422032942577633765309014213395194927015343742294781043560212256273243309210810716569809706301214533154733404016100418073529100312046963636034590804017050567825790653522898357191706413177756125343416124397399370507867589562528843228068316390479370510851892303499422073776953238504121391931730762288240664013569866350866142106604819742055188356660330055365791434602484732529335545051589352981907788978988990058604020653742020143974368603784198960431131083519382459457408699921193339760634764429396351189234420370288092083429824112366653374881787679545239641552020752120631153730288687107589489120292707186039573592496953996467058100802926320813863991506924956350818555888540996525414748635919832481014061543411899028591355141336710272866541510563545104416207274694774459589776604260396239058370727607349959892805801971059398882844048475144121939895317383936982428706222260824394901932280263573724276353034949545982161526781940144058431729104223959741439456030412058108349089069676217865847696700534979767662164601668811222183982382030893772206399146560758010262654470829182241726963136617745833564854806677266405794940547670254817160231448436415471652215588253282403077494518483979059604469779641259560901785968791059931429223279496161551795049201472582434452956186433007479496688558274059028370960033933982400313564500896108628003186341630250848045877794016078752452682093219965302431201174802460703466949303240338995481386851059348764090725288837013013020011608921825602947584532865947811317643619077326501020663870402563748999202407020433976878196711929493290863773484448608531340169788463969657749061632838221690568410771383593321101134155889643568684994429271588631203707525266160883417131491041471364882422434813088562556089045939993163903528013429218746699758740378492796618110754002770431344488385172399961108195697586578602524887434063218473131399231809850966445274176895376565342801594721183021913241034376765818450045277610296427092909017909490640397231665226655143897873234908479334131724937559293171575071691012991576244466231832358524634166032791301205882308743880508681273044461805376219638399712578583182311288011758141436699004413724899746160081943748014286302164836045926083206041509764298723420154117688346277834439283531997762111037738839718093958280696932332350858147525625008573229204237340394372247648083960109569137593366540739775930840895925072858277695051375234288253312217091018573250416529884608205662426956753329591207982492965987366229082213448124955154198938345191885616600278841489022263636658633093655344408969390989862154149518903671130817413245944686140233224662345818646024351348604373050446768109612455402674390070502386449660692134151894572702981033534329557913465419468013694631931249615970873349155446265463400213081814561358394769318267534167849212083052855832908113584849135879954303777127723870759742323643887732387793413315218595535875800995893373148611257300301755763038093604492546099766828737006134391587178415653169636617191406043687134391871182439283601626063617458675678909288711271101815667373525075658367964412146168599556138576487540761529894205681033399089363571537423187423511481066702046780478664301144511930691602163263183399066990012252975334340234898068957851182672283394727230641160734684284692364127320952802603126352555079909496663924107778180660849680591067001634116078141264730803483109790729372834607102328360051875687031249482966502859719548812630772867174075930109406498030729934120405470316295274791612633445482801702834623580934155701805161957811460349886660009201587283718078756274616763501932609719696288152398349916834595385860875165332907902462330247994503883308590334969327770759051110868169503729243639448057907420194864053286218064066674023488219123457447455194664288635018247644777667919301889894201203300344364491875183739355892740401813520560005797702923345332597348637496551282091136208988892760563113014731677431041707319983119531268712316792952562980263598248581825183877481449279066967542760109116485522596447413221676087447972531500809098998858459084702152820680852688282061276454721277737190455602522458872784230132104859574029441949062452148040871519931227359401497624891843906242119772766540153895784062251159638228604035085243052701635874454891703894294311728652326694467801765506657820835766530737470370254548700565433530756995298894854043707849724257143022903665202897742227204686313931135479826137377432423080908666946197656517348406938601609451315462235258839004763801472953148795323547572320516502953974869593397668441787105415349874240549311995115495498461179384223283631978436475792675347459641182597388880449172569552526188223953156353757922031886162351012961210847813222630501396656338011677754584062724643356597785676357228833285503099605862121196136328379413187716467418886700771232802759612885488139130480156140074005485484304810134961865728780733026193833398372094576150614655912114620264183316643096982424605967898438078529256444121082228228766131257762559222616213034389935103044426258497810003632786866201246093207073275859631681170694542136184874317662571172652535580506732913658882392409278321227568868901230227900792234352337852986851489351281025106081442544272544098632181355319722641042108673398656875014677220106303088883652834979656994904254627222827104056097121601932001971273626056030517128185362691164749767722522283492759156190702472313410684076559351062064746636242089553053297437002643155637732788366791140772268114708586490524732661954842072856466757875811844926897827152440952897083637475752191144290608988992466910012970422557636821490396249371643964330003960181534318276483504146278093405987880592485272849777423148588413759991433232634704622075258790038545052829240996875848413877153614755585223269198090015771856230734980491320093475665349487050837365020266698713114353548130001845674918256574183287715359804825493962560747426577743860287647309496629477138162845066847329226878758487043712750166186245703576075188860274157978846950691719304399363321329420728671122167904300057328458567020380453225362372617806381077804137596799271041971961272231174494791679756900771409391131226715317462490246069128620358127353184451348595773864580815870349053286339864463358905768413784259035576125315256240178076026971530689959744910739950786689837889476172739466870039227150961129016969666462770275476924794551072042548234909313839620140812939468184187965548379392288358193289988448457554735801675927500146974256855864432054553145854359757914443335918470135170889477485773505012818841272677273309882206772481568035665206308363560689013734815758472710983787459946530257287567030313601745766506134684320238763325030037471319681377179420133873193301848745490007768819989756044247357777264926282735836802538908020634833932216762664431328524589710584795855566009967841877056457590154745346371655764287300180299796598763977775968744560158833219371703283311800460017363248190675904789497774218560408922972380306395997317643535130619378438127190993058684797286485627451707617240789499785652412437113149520192059690882635837750279458111519363079633583198919545643436719890989695915826653340518092258887670208942889849992997044121090416957980709582007696006333237676625196219031409838832162224856395977347172680914547940952323162223450040699046199920532542083701388895630978554198159950178660768779299304675572257061793116378758731761107654605239717698013352724526591037557772690566583689081445785209305187695784209233856766329049786578463966770647120193604436835146352794690080818665151744545595386122833204307086066268143549186895224667821134890734401370453903500399440400766359343091174532004464909549829477648148580215874171643808613512879278190807848760667715929315221734019924862580731574971035745020090626377183378882701119050944059841706803934607677444238643075841050360795380372129773997864872225947844501082865547693753986136194255573615473419051274684308762331934544645615439056138942619208893893750446017866324209435980527055479088392489733796101000342911287007216596310399134811359335871129055534958298620100935385464323229384659724999213802804199418944442429372369020508228147507134823710894032013536437719846119299604872244544219079828151601529143459979013795431354666643982981180291408674577847741602256129700085614754208981310841165581534990465664087700338240891416371309673279982900130530817214528522059755054848159837511896894265635548999820297907903074246816968017411141878357604939994715581270062155421206461905359879837475614250841338552134901198825718262704379648853014658309084509515506333381331873751262575708914148909255526385378431220552056864880162864008367297975331745505540670687391778629744741965090758250988863495634826611281557869613705924644982457137797209738979451269367167920418933203362134205355181021143956929089056495073426790347194562473383804886317257165524851624564903906837860139831771249781105973287196905643409837972258350146483660859914986134742796810487256444634438813260363911552243669569378786450102857267502528772028320254146312332965576296036220958465050943391775530825971694310984603607182457767692076668819461443823491428951154776840819107246337513432225648283859393251743207751731963371891003763666198535309728603724707012535205086767102232402313743871269761051275829870005099332250217110860321375311300622882295119080388010640096437233387606674588405347903163829959350560662553965566363859963368062582041604347773182017678099839329640039734335610460179805746583078467529650128865905295696364217014508549489285749040255833687644001324723184972177205346134586983387702034750612570564319306754258635168160684017076885624758884130895065711392020602640117140069602541242580843862293715891762814150712934724905792295429819023675328060143102820373091268529089229005533720944080518071365302191771440313744001022924437326432431736289429807748213466122928853746158977659335419923604120148670271728906688204485793787853475769244840495120693161545323104618638623414030515322191141797107259946770485794398943662643641424426514186215910682338306267604419401910307144300920059387970442703545845390973061700798395448629224596178819509421424187561041919759681813447112680094851930323457439592199645260936205710779170653437529157833525437012819259315726178049093915155917738117239601900664473389523560435482030822925064639856487243918075833921878094934620849758150143842738409940431042851440638846020525813402018767868017050782530793028397342058821085098640893955725614617941066293083742912620008091278112146163956918881881324116273397270143678992786285772329779006485284805901167133366723848628246516285875488966503198261002830706231180997661740779663568550876829250630742940035305204300562267735377650840011041819778225762716756555949222591229967983634549171107863323655977901525560094247519250137144122637075890684590423594665940473190564924483086830616099277256739536679925559895400780842243055033583120991373479977396754348508559478412770073073354353878345655286979405754948003984559307739818236343565395809476940032030076620115088549498180338376325393661037198391846168974363367835693436709808178700824895186773601367965212552117374594109408052773376824225725720283339515120481934186266210458072045233925989510670156551937523635531737145626860685179349121013992787718004398051575801973488332001115062703421212581551887844729397806277792333187830305901156064565782373128491833735387945603377479883561666488154531872028608000422787457321942816281613426781986152876250544438406237728740397900959538339542933015711949907809467262122165360912772524746437827777324761973643670491039695584297385950059345974933399609142416937750532415887440423309744837310769127280486522483282126644794778799980667770610660500236757499113120530747047192159542344084324011828922181794389050595575068782452446979103717186377470749964802800822883706134767737658200972784118042925276786057259596454618721629630872997690224950134646716136437654440495124577601447358323450198845417550811930926224539817780308136000588523555310724629999007116089657055141963606545629038776996966861737916250364921505694137925442525867116818000554366502956952514455465284713539619061143639050080085692168749225337329751255882807789666415808959976645322414138946958928829395917536355898003254591655503545966102957865228465770025182020800740710882140439588322988387196525483288533692192164348077515289951420085897969333563831186200000822465175757357171762073335707089690775774818348807301475457652087097101392891743327372457567180606375019685340867889196781819301666179204791546380603009510851879628560634565916067895771377474172341933556464386287689110633490264009401961318970737122325531714389140352765849158922550865078626816173004823245316865070259765881779464815926138423899766895300452441059940099196224580706076019095107019583919511283120870728930262490167324871686464125204560865181067178803379629499764530296813091303356145732621911572354356674189130993820280991878945444215211552203172983586207283592085346000252353662174006637171549341341493176418908749249897533465460086103099707325161384170451138263440118389829846856621454197384847845650843545331325096323369275774389981126565930915519700801047099204479558355054915775187787778577379256328624753064036368179548669736270146353825221619995209031819532871495182825461765787038851082756407910770008102970690290901899501530150387551935537474742367496184215489824054474167497278817442093415123319363000153268737251637395632052742803660831915626622152423541119399731670474161457039043066536522670336369940392891730209243145600995062262813562861347283130305587280295982437461131567843636925082052602395754812854225587514476808232605214301511395066919330841656045423722026728681909663940553821126239368667993444711423892766645377903286909427072247712093003438029301638249347148809231121766067517917756032991971850642720272461173234638000347453054798535561446205434216432853899660664276439085757959921882073146447529273082055742813072223290477131464326461995327379748514095930714867478572654886345982419365632589000556628153631642370547264760605461615335183102384771254252494240961519615417031898140019849491274081214167566294978208885521787801152572684730118120333794518696014470845125862668051505607019072596082006874881465793362889594397090036238609771528878776085764542826189120365831085824267666728453527423969798338719696834171046469772201318759009479872864936933881620638186003161789608079912861841989187269656071397690818282521407174869618435894339817546581234278684051306705446117057977006994632436831283271510600074702584891684976434532104707738014502405509145757307026318247308647042976038404590079058383483479517100250852796703807755259021866250030563893870116658838254009247188657135132662882570553957650331770090890482971488423500189306766709057723107195041887842702549778946245280148421710278931759801263991082590606675809724578312889715303077973816377544053377909985735322240754697155390879216952093126200203583856779171788493080689963843373943271871168932173374693518843389575892568894863983302571437576248114831700206495067672854000948701024933922275524804806688417750775568092784536676866213367390825371770311213154673428069245441914189283902344488091244411072583255359156356859039032288201017678651144055694524397803071078941508003190302319043641982461300148847886336276779888999456845639764958986070705978778614628584932020467359208159729640182059004102189530843566502240246913550938511749232408164969579269629140419790690811408081582820489679413370552382245264041600727435877769933947853994653230562690067764274590198430449186099800590953160427530003887811450930838567922071707592329804148376531988133589571607921634095508681561676453468901145110486381877314811034814847222407782230568406533336305374095441452608079046432096820862452376301800795215535644892459013189272853373425217165648373909607606914556307805679366801311491072369384835772001044663890333225369352676349984092935540783057490352984832316724819430641351707221430208211313542040977733081853607500192567620944960818151582643914316109066528187761370375595364400619734214616834739422107963932459206621410674903984951595393562898865844166162905269829223613452714050063509171289313056000267750990687906184708118367020763688323964509363748830650598460936816198113586934183478639735977235808344249489872975968631692859140096787319668863530612081002911885889937596633027253030463015718282014944318994239064017699608171971241400861012977879511920390482880683088625404494538730448565288480875722249214340966586068934954256482594153724250146096455332576678465291449143715810573361565073009319931520765391847389840529791194076898089626012019659585995326222377262220562471817838295998397088970060150208017218694463358836240045019544446799655133083948495167485951567477729614013417888308952985743006379419406176298535888237460154764215974311643729582784707062844589006155499949849846933846135485346445407757702879506371949079858235666074584792089405783020803961026697509603163071159877490745320612635000962888731758643200014108846068151334191286960673055905561644550565411674360509164327986770407889896350453243877472659990627695914187546565785450893304584214495341288363071114776538198761374691244703277611058523965326432523595458805950338647655382518498072143938160426095830010185859090778839262822898331148403389960870107416914020097761577398674971333363411023822106576828338870094223468559594972504924431239082055793997012972454973177297064973497098367130228504693074563873829964139615491511284377809991370792647124038168926098007759430659809496539825057513406707585379319983019428564385661829193926262017781711022829630139518373669787968570577706865060410017106840725458463492669744020925213982318633517073628536368010852034750454541493375916548200555528732624783142390204149513161639147583162331663361315906622859053906989763726337588763993476555644127131073570711899058790899497367088619479551477244096499338690373209496971967725454855331174310139779865994870497053818897656568455330497123673953201623423615772116997332796591685605607893134971751628822567931005923364927555133322934808286329653960702049827661638441456427048004286135293578591886914909803234255925803049015274619409918887194479737250380457200962737576192807815340308559068877218830386604910230190737116350514349329416767399347519339581092434209197101467094144997114996135985905038265234652594966045527566086074286211668469280829845503881141428026227448520126178300943541738080429157402779621980003219486403933054979690848969203686185489313731901955135230862341590015457211946543294866610208130888631585976357654991780266178798794894065704757913123893116421428623206559898628807092712656457264285722675302988949890737912538147528962006072573703022491887091543706024998936582910686784249724115450295066587869574040406311285775916948930936482780220301922804283654507091134617076266066195177625500427810092114441608661127879929421833079426752994463285456518260710552203249428031268008491524329151155986681678142307754575854861467516648468424815638148467929500612209305349762881212978268481649582559920147566331830203745689348940664900619798212437896213767965669787079661491568316961337901734895261495156038558415109377685144461373842170677293881987758916064041054277540999829336591803263863916463235833108464417043914210857852460832883779746346875060682138101087783858843879257478244014332541087882046123780115219280312621675890399586596671355493561706131213572012549735095709501186324220115861487496763095737386195100889806453915747001997197579089635977341111283382327011701993900375488424075640245817260871379542712901561418538656636312934400748402900658345625333616705095879630724753472606453978935305708924316642808825733516537238347578111861976394790440061911740256278043658294109205954433139326664064903293450966175844715214094082297103410268869331457994373780730539150207502600210729920592573911437047859448932321586614857430068717399461317885701992728803852886153125566985331739109320580014579409518774304996121234000163679616303338474217393836458731873739944551284396097467745504333304660369454262836807164957542082160367243707888090535910811053076584865659628419528830151317441362503025307004371937462898285183288698514560145947129637936880354681009727066346268681430726959127879312385427112203028421513032451554640065592095185323688139472567321093669278832495937891102717365693630490505888106314680859073910609518973438103561138411628042533301451669154527901121878921504020823493012018434869969031008360256264541326541282542863365237220659774131064386823130341375562643102847052722772921703664448693563134719369272832222761958722257579554383411397297261011995994045469739118274477108630440440430034024060529613095303512079284379537934489584643985257188190413457933152203163191937563573633126889394073761646132432357884904491518939780183865662995344796741433974763245072693032414540559911181176727887336520208362761574798929051523240487800379020354886845868274752704859861987071812122159532409793417217462790636740964403145870245976566063406605088755072904055396290536940520624627792151897923624193629511104927457313735957986686490697375196651590898372477481314111430474947665509551958931281567721687437151091991762422745181863570791919832747068604713984654271854717796731519528205119116753591345836619077504064876027670039859698832103603153973878995543014152898725386353893905072961220521529318825253501158073689217845588262984060721131197997320980306340966373373917535226498191277195135136886575894094440400096442540279508941342093892890873614482634725755650225427104316929330211981475112943372650508288857193146270022768335115986469557957612989594908863484855429173492922099779341277250909568860388754308434608323572321932525829053749717518971559392424305543000771252570324936304245796093264312330252152665565422453988263652289291198040962472937502142539851253275488364752430367684586984889104244404852306419556306282459764120630056752939916406116588367427092629878752274314559846485532536521758636704121770762460599990456292995840183257029341721695890639415465618598368601210002558659248709763658709363901696005337336856446948611362349487508662468328964801764216303476258800948875941295144733436723809322429049684944003412006740918718438444099431701117725095105432922291930492321661815791613778423593014161842746818516606118442691377707931218608588037180720660834373568902351147703462927233655148845958497205574859048266715009592066886052182370199125104629588273470644914535686244044848985281398872370961863752054010974301657141445326506737483179204147591610800659869057988022176559731043828288406658533419498774595066222560316914312556093055044996694444543149514358356157047280846430542382695802989667062734659833419606435635469213878854111209423327656835512725840509028742394770121487546552604387036283819634167197243588605897681832051278172549169849282582341350761065269087138201579376780010275198137177800133130877432958600819330923833540488934131056271179209783871297997162491281889009212868896209360250698948246653231995752573152593428869665412075902604537594004253684817488052071334825400979442830174316187010453790779435442715795088080140961055925184895102020113807938946326352937812046313203695368268424491461622963407945770377399340451965785439626297082090563393959809348287403242743557958436577114066267276195224991836513028085929022251170301401237984526061911432820737258304290198122019006970489222086245715643837868369201933232495012174456340763797040889246946741045130790970646269539337197173644549953095531499506276476948083081789642213486004611006994511133111660213634357061100937831121072783518206404787228327201234123890468574788110053498654698221738566015089893375135288477162052068720311132479994548351025516983063760114473530978246241485268349062523611816066999863177702848906869046183127268209714401702060274727809385503123664699129983284931870504908557053805724223804888441198011279837843849505324595913815121563004789352469703112205870573186197635530067988492416245258893892178605581861466514851123078205276668383794545268865291386036669598787186029882646805359568608953808759892326840012414201300395733164335942748876411347446374440283387477722935369994409195061457159848664682778062862514128292212686548550972114161580131219551294027798687843075548810746471502810497637162138432145566580920325215698653056265309767680845032132724554159929588540721804904709459020018785040878288463344544102516542911839629889538257994927639250113235712311747305199755088200966509301213336630735792696055859104871604136876597325476153229429028388606534999514727787056866543707632179670949389490525608377717836667025591784819874354643063438373198521288328781420467280428181463864538470589360043849072604470337437454801501283147675819308002027738958577517975491034949303377699952920358291610165768567740567978356074410351703677328166902923862023233197919768131543124074739468994946662547656519562718644160382795456033135175082268170865573834693590004684197108238776170873593183612924991201300134045923309092134219930029711879813786628154154076082496970300895725510496950297065606429460130867511795311569880911759283206231655734898021242958508846791926608649271238012046848807463452145145524540629568674371180568176504360963017015431749277949293396317976688216722938280173938924419296305551815469608660762079635769293211764371669224250940615805473476357850712260506636283919127991342967871258378570207502000023975207636318395340545489772104939314689719843908698846498428096291037103592386937398327343536649617283393541761406911014413311300544468640137982568932109199336118754072870063610611743418311646272329770062069045501332523537696835580223612849721838417508400262263773939714364679480638417882278345839804065820739990942451525039616498983928072825202292695277161080260165840503262939152755740689452037268647554752305330140991106973476035764844201956489912225033210038735236980330958660817486330751849757204759782947316995481993683099179869510096851706688196713087941293319881931792878309916897429082391253442735487836443276499521414310484299212015258716820984369808164980299317231675895566120417229707891983912313030436599083938826604501055645855210338180213000321723240000979992390148296151632252660711089222198449491402674240066741145681135303976173971437618868459083892733231187058925801037611622467611595626870911986465303574688805428876371812925687283054955612883916571520935189166104478714916038251611282072878086786997631842706045378236307514687319551238743862398436639489398491712487785555373333537472225890310531666594259608781809592257402554051494610430727683516844883090840642690451751292292016489065366815256159780878766578626869915420884829690930367763912026088186491309948519583077355201102841413869259631189746246955907514383232310780500834552698356066683107094282367947091638804881069080013878056063192285475605492314979081159414662685369957898706953665541860973526989584578250451659820035126315338949723159915475590954107123670995428358075269318669824176810684347869283578798491457227042494389813706374939315712352299179827272303887052125744889038946504277764561906702031369062935281197650688873313459486973806092979428386224000584822393299996986560104828818760758385981995867586886600382232504819370078680344674241717169681378516934397641884405919044221823915509568695105214974723365920083084099725300324546498330670104200464003165985880244323828652592296949994026574626754794194734935207459814880784981627555233983334079607425029446928152042170810306189510491211552154552132315007344633654000550944484672998323620625895491345248321838656512221724222086276305979128200483441775180920689490213071958767104334027512272854625466595692210051876910873324145081549488050165026889578346879228171375450336199632698153881546255115357502041655301566125512734592488222445087912439735269902472458805653908767576062143624424582424222584866909588864737855139320483034513471009546955235085164365334373977580000000001/12500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-0.81585950991225108904267134198784140515399662287700516059092065504032572909652065127765261131226568926454890263381717244194414089624033082428554260127338591343146992505478124585542969083619910751267422495111762795356828110607734911576391312375960137850834243953497496738935138611396557784551463851113121337113282345047689930199867965415143056742854031541152461845207722354391131075500282930427309262176237149383516160502728109193570562160336193371226795715232588758464536496430597706584762399787772279944695653302447866748205130138694722289374000505407695677068677495025698799126031256374317371558485372714333093225806005928340124117474922015879461309437072444656926178909302388492411072460673202253748831170374756845475115086047690853331367729388954491011970796750000207203026870258333354070183961240966133774490838834077539738296295824031085835570688738305183903591784248009181359545396904022906952670710469398772564428810893642458569528594697148930064094460882598488576349422490004992787109759507048639378975815065516158911141402389708677414738367843987991726804368464304369230139880500056644625329704173163748192102073747832277013319446032378500925356693578645140556483798673712547189081001206178816017741954816059432505612574894502146733493194809428040259959987548837835217928188262556898327742685023461342988830997455661242247960143922249704786139140538070552178730388231540444500610114612522185462225311478031284861853584313828658232529944149673819507075264521293891142543657301101898889720241151977609805896085443199645699431490703632885005936102308447246508257817245847792193852335466969967587976594920717468061987595670937150185767937637722326253904121067945895936273788636348290365338017358243141510740258326688070571818858938217142315555226381593032293160130513179093118220146363473260581911688265665990669835206715807986936744785757989398709958696646425241704571352567640413049920039585654191260968623603387686924776625990679133038277105441661483698590443130890494726265514722142154320605662654412563284698452446461788828038193372436458032921398109354096319802871082468785434268728766573300269268653494042112752973464712090795456721956557720940645641238184278223292106143118682296894649387639431464192202919386250308208758257591509749070267631567571337207611747951418673810663839355983277058835987518121454558616367839317977286968373859084065712331743472889754986263355024104025179685296417498846270877267344380825179565924307860023117048921870459835144322730769508470373439457205345965354315735807210317792465733586797785368342615900610698826578197936425880723688440840440397655839173850319194241025255848632041582754756659224701621703652003152266409574609422824145952430623185188476316662807035505333865004728492818190414337919169915174753850788452515696420435188291712558417056300121840141317675967882947167445440339723001745967257764458360138983410054563206700759437538263524038856345794346531589085338339577458195823351709012209021616408935829584150437665170895706001604287767921157624044686238060994235122404187304642520702851751109567024203922708789457051028945878602018160713538928722394237662730835831041610342421758783517675666036437212951285366092131978600809293513415933247551112640704718764249111744034137569679589493821166832710330921474535290166657405807732909343768202378093189807313590742062543381133911376469868703876900219260640837615821208814349617563928561248357602742831068820153537928198031941096702621881752542679700820132457669037638865161598642640703987457419964155654879872546334789966078164888239356849901892716271201387902751953007901571861322027870386440180744525957626049436370988446519479479199535643126975882096618685362087547294255236906939959173445183897450040031903719182640924872131522820268365449060622055658746393208461441213690037534686471132377263569144656267155954633764414257252600222829136454751851698989353564663314740358341145404703102607476457497756438162400273443858879462831250132009650384860288135275569839889182746220464593104001555672172096536855899004502637471261074744030727605961342189032924184937386287936211152679123470358624929367261998188895588142916283639283620374384110733390933794244085070603660826634731002497628273136997132359480336950221350726705659014633358688347951764707650244779652749078221527784951214464011496856672707548479529674342532039823451004010153596722250079428547913406558162956671758339609428051063193835292466148886622428658720089515558490446411276241668772122706705965674098974999657070831830506384225110094076641595617234496265338370408962766364162997085668892197944990628469867511316359257069983338804615671773502921729866816351680700281360505350836711462075001793832042466192324575335988846340439109454533654676253786223641224360405513834019243853154767303470162212554390671013506167254159025946055825077982129275615501783893024397179904542013572314633924217091880758658626817683461383221279452214722750015361165066033782149381463991476727417545664209227269298633286031516677885766683675456606034564801827848914891045169610307054244490704488263467391256178564967960164265074055549707987929769478476255820298156009326850519754624336512863373873214535312343758252514624325152702428655934957455301652972843628451549155927373305058996973665281423514153256017754456940498369538804231772758664036425457138503072503059540757331918128780853427954219522772335913469472664037320399509880986626390604077241685952693108664210910774353570612628612305434907161887895874945897796803620133443035688872773566012776357319934635356874349410767860675608370825086615715906865597924972518750020681339885611218047494769085313036962795623740078770802635183781187348189008335494662180687931886615056762633771927793521687541586004533599631936508651276849749015329459922695611212148473904066003326616184565564993386683683901506790080219844667656386601226889169637955565273219850830254422077683703192205437868551277437333039060471235061702101792213428454599270094208893283227924404231951867986225420324992650425764290383927459177599768091883066186696106054500137948716354551640444289577475479410732902758331707200675218749251507328281897480789456070056726992644900742028837321298289595635340579096142103471132956502081098739967636040045661636611913887172765892468717548941811148890512381775899101645088630794715805617038822322037501914078365139202750905623940095004326243750315209089338393844168637509953614470855838596590277891934565021804331844228227530853906932221287929379733687166569338770501185189818051977382658769720188044205838251686011029714279083853391884090310911812547442754580806954504902703076763653322152093739306063722455935621947381510589646439809447941081874048187058097107179339881841005216264093262328515783386005030378027520195380180061552824631068654720862540968292986101614352696104444782033097217898952471041873745849683118724553505959481551566087471094779944133746479532889816637491014265736088572945710846668579876015765515152154546864823472491341303244531969150687889615484580474434780793754397039780580627807594601525370848770678952246664065116216953975413763515415189432667334276120703015761284062476858829742235156710870849354749689497631095351478624402595878222949660087599854688525351950156271717068965614732753172218314552605027293497153093898576779730683453644704303628867150897245243950790883968310625906485880525940425948758995756742298229098236054712745787211094358315653064053724999412911195747876444653886600813720203829814911086915837756115135922719921149054957758779314872585492353410009291099108660289633752371901107463572636937625957517410134550316417877868102519894273774490688465328354369109275411656540379010693521806317085741329684967526202924086913902361884116654500969912354228375640440301323599481183097694527140384150025134241426799841592738627268940659834148876263760484776300589086008903074056463449600342670694611815116989648398458197886830360124966063444913855409776591069232076399369125750770600780347196260973386020517966505399189332051475425858074799926173003269737032668491385607806980241497570102936890245588494107620134820914473486197326106830924849660518251489993352550171856956992445589033680846121972331227824025467146823170853155113283827997706861657319184781870985505095287744756887834496128029158321121549110753020208332809723969143624354750931387301500390157234855185674905872621946056169045416767365186037868546405421465643769263448629638576954987389750392876958921138772401610203570401968532406484420953090421325198430913961554839321213341489188980923008217957118298070603627446415194367482421272632481378064824308465672268400462061697810567932962899994121029725765422717817874165825609683422266563261194593164420900569059799487246349092909067604711729100737278573391747665457572439450607369661091560648501602138789708497318787455930169339754612627190449466998798501147212744912823194645072267926050180399689247200409758230105688909402948690566527898443679174606642711329493422746859016411576608165777359601286324917741696393810186145133769428507992788008136049440888961250217593646671225131868667527981599305470072372963808420089031257583643081104787744160107294258594775224862474912360277652608108540574901931695310368420008573903502515474019192317612364694566489988821675539225476814656672043218174262531204360412163366933866379276309644493191642284406000280118235156383321680771616719692159746670492934992151238743606446713511005744160906113092763418082361907073511061998372038152003178698316651944444174760857832073601992853569248828027812977109717528275344849650729555693815790411292079465891018936358497689092377336652436742168591627792492168631630645729346838008536861441329174115192255822526594145888212396767253393930218176184555086671827716557349274258032524191013287154604370623945181843859984022383969345626276353018719821403618006820894074056791365033134247655459484828872367686049573291362827391130639203005496770737001158570199196374944912664844691955237962237606331727842615692902230454276966357985568184785114809040085405110962086219956685378092249840554552229777055381063237949012627649506722618214175382437754442295231644244249982159285347031622560778917780836464300410648155959986283548519711336147584034607545626565154837778601668055195962584581427070824613611000031447887832023242222302825105239179670874099714607051564238719458542491206155228015805110218231236806873935938834261600839448182745813334240680752788343653016886090335909754811996575409831640747566353376738600381373436491986470364343345147613068800683994778767311418859117609797806073606499524124229374578040007188083683877030127321279303554324865695802400211376749197513783151741523785604806500975429966346457914603952046971269491824814045879413667636619619379746664746725049949496971643434043629778944584862751177917725404793485439665308080986730179778373172504328854810210321396369669960445460174606935548737685215451763014200701714488111610440821949225313283183242671865514631785792759154241722836437740197062928386112217501064647804547309713379005935017403843726485594406729150008755761068512123774263606481109665994140653565603400554610288127580509742214622447469585443537910253217224848541995885709299898849118867189834147506681376948158551161661397962264328978766961132227560615855712701689292316933247221542247060342841953808926367235710146499462710974068645624269930271689930721465124359849453352058587610855851011719498591796529315910703907450245149209557948966805199796026709991315565587144987547975084708195236784479574396142510664495733016463786083873446801625977573497841377345445601465277496718335826089072719292876006426814398410626575581592807770136676861298813994845363788172145431319419658020428570038389766652494239947011072601112911786154616520664491918609975497177427227729829654593273572639316924575009644634764197371544319175894395314397215898350296766245508251364329487433971482611003768308182807239052986877594275887185076349258836430839778651162236779277145387912329142387450239959083022506942702730548422807690071461355082845850153640893626583203055835194053189130843732471820568248485860969230206380195172273538187075815254455063438779387112354328115709602129180568224042253494254343022939432551363572706467749295823223923587714227963197624481182291858166184361077531968064182054831016152847219623143032497558323209612727462115492796205922787061702416312014189562551771568833173862498833686658982519487229627370952878036243393763290475310415923973421064419057582580718767082997414405740510243276966643124876202615166009673994246290463602382758285942374446159178967463919249285279317968698768278864106317647156596054364241770975415282357348276650283495199676348875514153441723244724747035349064109194252840288548569106808839740588607763953314665331046054870139348564980441339872069559886771750752760093530368813457257964926829974770282398587791827977509290584893966399558327208870969491329737762031096350801280654618033155685467053760883938977596230099229994514235094516964372616383056213362381072377403020676526775356028909730418532802977604183968766310277798656675160345060800904129826059657620863489197077065825844866173788520823769802079840617627690407270546257384167620922398718796935195396458020072786464946984253558512064326153241025465286572262531607672851967004192529055945281391497915305016235623677889064927030970971188666419395180722632549351581677118190642960419573193737922499054578730514174925572592826035159440288491279824077936967921060466719955397491863151496737924486210824087748888306672486787763953757417368705074860326650584482175864900804657533340473818725118855679983088501707122287348735462928720553884949978222463750490850384083961618466418282679371522003687621309515113385563489099010142486888907009521054253180358412176628104561997626161002664015634303322489978703364502383067610206507569234908780539100668714934208208848000773289175573579990529700035475178770118112313618306236627039526843112728224437976176997248701902120835851312544901170001407887967084651754609290493671961088635278282988928557709616141815251134814765080092391001994614131354542493822380195016895942105667061992046183297967522762951018407288787674559976459057787571014800039715356413717794321455738174838448920121325530483349985403139772234482982298965315327279977825339881721899421781388611458415237554254437996796572313250030986506809949764687688413343367641600934187103434442121642846824163298545764079869816333779858161355881685390861369198992719167970371564714382416467080464512138980668458652312313426076899388401943196564081226657446752551999967101392969705713129517066571716412368969007266047707940981693916516115944284330266905101697312775744999212586365284432128727227933352831808338144775879619565924814857574617363357284169144901033106322657741424548492435574660389439623921547241170515106978731424434385889366033643097965396854927353079807070187325397189609364728821407362954463044009324187981902357602396032151016771756959236195719216643219548675165170842789500393307005132541434991817565392757312847864814820009418788127476347865754170695123537105825733032434760247188760324842182231391537911873080656551708656316586159989905853513039734513138026346340272943243650030004098661381596555876011706993544633181954469462395264406806125735141832104606086173966258186746996147065228969024400754937362763379211967958116031820817665797803368992488488856904829746855009877438545272818053210549194145846991135200191638727218685140192686981529368518445956689743683569199675881172388363924019938793984497922578501010305300152631380407037821033300108847302316263395067225479993869250509934504174717890287853566723374935113903058355224010733181033541718438277338539093186545202384284330791630274175960197509487457485546108674787776508788160702501554737286254522996717895904169807485830976499420927670695791427939544197323226766333758183051118930852723613442377847154950425253280262211543044289334184883868523622917110091516279862478827934470026114047630755129357299283289758680321125974291189101553070614479986101877808058577542151782631342685844013573428942436569681603124717074142098829076717770287477111068380914741426941520186904810059436162771405300857093804546160703225374696439977734873854734305178109409575781535386592675904609149829900230361539215383318724074399206020349036751433297348200871644579128487953897092610795275186648219252159421166194965493277939775719237096156719725004741368265484416224116398550455609138844848956569418286952435185366756567029293330861858903041208066451212126633158141209111947249639620805085402522644735174472559873528415676803485526320432509213757144092367268699143713005215262564226407298136750628852637947731782155317680919720214702526748669139575997011896604332600942618715811690479419903779634169707718947270107654118280958463816396837664660660819315989965888131847689789639125349998777444245195333646469839630112453714594693484697177841693986729196364380681140463059992427729331637691075712198324486291898008842150188794063131588842729607949440356696375732967611016867484411387876881047344898237864883600570587110369812113784364831321916274951991856645728833128460276772401446265042269125153242713065012259246264416964297244205440667897142496950075406731991740197293085839962051959002643108979007807732463289968977276288618532925351465304366985129187551473813062877230182323432428643906220476350223557096669785633745725638438708471959292853954237772219024087877156842339679872387907238254320701547994046084546548928804440021726174409401640557171760848855414856602719181305631673610814392717639835912418766257339910390123457962459530030703673401216829214834383208372367543676736687180412823465177904710189438335970902564889202642085840213870777492397289429016392062782032556007976361873582898799844487541962766457283117131696306807834064938720474656417135683134636179652737532941861243954195580544724907407558607406111103688710777263738666547785036182341895676838142716127165501904947927968191378574204301639472429085865062991313374065043615695723417747687772825327947540357105224606569119958213444386670985225892946000636282578368677700385880606707331007222774345931711142791671547458318360890676725855699992297295162201567273936694243427355637338872489545184976185423975210631415326610423115681442701631735143573003840601936184257484045366233353483789206831055461891437997459633148427477759989289960372483752611675265319169452467041419625450046773976061562527352075456522632660854410560910567666230020405080961254732285634396128507213245458775516759883524564402496134678909878781479371268719402227240230437439292015673121150343965559480884819523184380684772676454983820218450782057388460764971110031426361336557242601829740696233851029994156141786696932861388342034251367577065537397079627202739169384326104406378808352236924076414959519213616560186951104909511177501127286468160064116441197593991679311252221465646550398199218222128013794676642060193300561937300890815439463284467641880570279744823223752948058564470501593809431361027534250816688611717486216439753780002006006122646154580586142183689691884819745122036805670573357016608316423768679167841558932099615873477153604900370187175494599961484450729654271999435646157273946632348521573077763777534217977383533025579633426880529183684404145981870244901093600374892163432498137368581964267816631420186348465477155408938472049545012350211868895557659041386942699056181647761986454093784699260077114242473582956166799592565636368846429487084066754063864401565195703323439196089536904053001146665463559047115736926866445196231061257616201099803022750436717768240119481101801072908117401060116065314790859812277017445046801434415380339548624887600345168294115038473242956079689622773607620138406997699463731696584827200679222857424573526832242949519288731559086814794419265053208481257176891725397583599315726370981661460293210239162991440707254659317054858545279565918609981818340264963338071977778850695008674304391834019473534434096673506733465547363735085637843720409450946496449440260937774234914757057171524037648364020105316455220817940910236140026452385071620121121290981805786753027594408805360205180117847244093737261786780115053041871935063055369115320106688136332575775684274601129934847097282759763065402897794667082607668546813841571918006893534462341742918079828554588256856324523403607870629762967878039389015223603244512220810509984781711961490496952287687386387657637244911246784535803590792370515345979426026823329304026099226416756302631632115941316234200115400154560563798469390613896201358178897356557028551533261228766806179844754342878950902059194952867962258330476782833703888815120799871220543842677800812366041231852552580427450723921794590765506336399381711522138268205335591674764454736560945693800328789352848048204237371809683475044275343142855071737604054847716291493741709428571092987880442004370483498474098841519757097051879100324516338251759000042536683572528630011035381988197336485217038383747548568963322042762540688791187923087828653819716354615316949357352192894979982887596315422335653554884802823126676822929880221468581739269571577911870022878749279660339026833953760532732874307689816965805541299334061263007374474061282819975511627786009484751480869260734016697603194097346726791850172426042373403975208071502484151449281373208516813540337267321546483930604189540193758457663395624892594221545046313172908244720489643357438357828898360006826536327869445443341470566675661423318243431565685901566684648810146124997572714475956488645646244829700870239426698356484718155048795391228787495132964384016536133145780257531754751457119498010596171619952547031195365540500129476170504552195964407741843370119920112096836414560906355548664706919531920243984980463036974390167309565144818291483937543258453734547482623970063883973666174986655331796164814771009861095741840842587771643027334287646970659338510466096875525520944208382397523530389748878253668235631761822674426933437403868261961352966211391436236708115863589245226741680225048770778433991699895991570803176297043542518085622042707136535405702797251304021547284571920290847845884553874977320586730435627176799416823619249027800155150639993452815347866461031304246541650725050402217948624156101290179826667813585221829486527713401698316713585310251684476378563567557876936605373614863218846793947302345499878987719825122501484068592668452059417594162114814482524785812759610917346149252742770921634884827504582915511878863139478701937814397376316192587052474421097307156253228846700162484355891305372254780379764475747412765637043575619241062475857554463534878298667941933233818883955124843139839167060279519262605201238759665589749418346938348698285465390511173609034757424527074786344977494275886117891089083131853422052257474611225229086711089521651109696817824663544108109559520160238181210435269020915654782382382798639037578815476187859516828624818482620416614240589712472383461682673911873472322497457054674924424237049534154702705684603820339242408792645373480186208130342641009470197092278703418377603552752930884506539191665489537008042837939070380487984839185804526165269009891805605520517127515113618703608263311301488374530361423874165190160937357463735796449797083837784148378522379175014888313924083055032254819555802901707450561680532540372104992133936364065100900747435542781002093379617921642748737291132502513956320329503090192725457168323206690117255811440613829125811288130739218871795235329856346166535236899837404958893198405612046715855873841044840178279433884050984545844243797081551179138827246989859953677052431286176469480637571154752080107160787746361345065043298590940072348912194594524536964236222383996142298388819642346316244284365055420694610969773990982915827322826791520740995482265093979668445712274149199089266595360541217681695480416203645460605782833060283116008826348909963617245584449827662615667057107122698966837850011299241137624303027778279969149897187002547830168156269427506789913893377383101840469453908428352078361501082499914298405949868980465409902785292616520604435830223805907743217747748701609435174797729882403343755336465302916294804849909027417606140578698539129654531835129169501576000381748280166392669718826331132164374423381375256065255951599897653630051609453651625443932159786506525742122055545506020499653501266841407929431347860949647962044962348194210662531047627102838012602239863519730363251262462236022731955290996195782683108322780307133527368335448863056279433526290127259335755262292344891682751255656478512771173566625057243905954091861482910653794046161660111777005638069331399616317324557912705192034995814816469061174203418572550238206040588744045105161525449917839561027933714342186939730500672831834096335567973605237680479112937610758246868463733658663220049016197351097587323427497756277798200132222218274019425665753718108766142778304692167880413317490613606663215742574581231444845835551623066893726579490966379638850304209195140498137895824518548647214633312110256455764092726717948873098033206028696706345969557389236514471936824928799588992074512887994674764902681655967226763046658380442634757749152831608645148080113500348724439631485244151625589972042070133870720169897073896262845213383516963895818496239829852607300477917146606983960822286793027352519581848368822582291368196476794361557762992604195919195447682442146945882487518147471852185269263020341535081463682169184904026381921368582414948116716377464241607626068503870290257681662536915437349308952191000326539478876562839109953187943950480618957523542687170509667828392075119239721180431116550171374246485265231922670700199513021746369448118364430122130358194768361174149218426512113054218001876178740019748940922076676728414311460559815559720219554675533591454625717555962486755157088659271743808510866911950635044381257008475597860053812071130457359396404264994588460913517917251187554700800218065958979320677449595421058760870150340589266037499055527357320005472891886043725238152674909271611423931917589010887624579875053412034800668602725179803657717847771031047804462352079548806486246019787016163447395137479808425901211875511765177072552094578797280460303350189644244312855776725541339405955076871788933264648218189245388344558533216048512558804694127785617255641847649604306926399503431947984170673426562290044943546102145022388664500891082585200223632197541713606053412688877485499434868311492538057961115433536794751217948238888052486276978047570141139887580094513514462714177336763186991372053877749387609292766198714691017833602816458371127803811621639199248598364868461466218235899338283526414804418469680202894429995470571507530107792009796471961339627951466534770568292157765635805135834524936106980953870822838864455738600019410888517725338251694712813162024420378975664891286533318976328607205025814277462465072059148466848743181308782872741445418461176425598246037095821186502501807939948674092967227679918890441656899280980358602027864892001883185668335593369257290377280865757023585931852906873323883045519070672083209274738275037010421240202133498093739217491254233584688181758674592996709273165377046612256399812632115670448953165056272655483000351947994638163067636314631202798811524807448534873833836956700121187964170979580121988117375742821594765299528187537204763529628671750733770604079150281659646128322935654029150479518126047701461914194179018374817253025152777272939825561479319382730028882028264147280932471331082468793042443023228147777927381215653569516814569228271529425133231029962375367781060945685971509579734548643234880346281285149664857191699919999040991694547264186378180409115802427412411206243652046140062876148358515856304522504066906258534015308664258329543723559423467547978221254394480697242715632026555249837085197455575530263267534149106809197517238179946699058492126576791055486011126463299663989509449042411425412820774463284708866166407837367170400362301938998415340040642877086991908292188913556789593366379869482433889770372421918509254097809907786794360355721060958569406231921740403510998671598450590520786761653567300546769926009711809608682107320180720252676032805219596125931732472131476482348267204722728284867603324102836704349862290580486542268940019143427580628031519389651327160625207673400788027310732964177355183310811684320643507478782536036642446935819957774165791586472791479987131070399960800304394068153934709893571556431112062020343893030397330354172754587840953041142495245261636644290670752517642967958495535101295536174925163520541387857012447782844945127482972508677801775484643337139162592433355820851403358469935548717084876528520094726291758184870547699412507217950450245504062534420424060331500488577785066658501110964387578733336229615648727616309703897837940215582770892659326204676366374292381929948308319340437385327389753608764849336854925203383164606812362785289443518956472540347602059216676905791955886343445229614752410150121763699424670707568779966617892065757332675716228705282116334447804757236799444877757472308580975780307400836753623413492585201684051721853378325561058920416616869981933607198594947386442011073603380976361835715053160182865676989227253207032927572626085228656848060341710918300224407451745002427371505908032806909107844517914970204438442139828889417523731918745237482588752093972445067461620521047756280822864551039976607104268000120537595806847249569664560720165296524535984710699807225196852786213030331313212744859322624094324623763238231127043379617252195791401011065363196676636010987987018140066773195831981439873360564790227046853896308122000238937014929808232210602591701607404768600734897790640666636815702998822122873918313167587752419580351537913817914707399706214653839977962220613080067055174964180346190067126453739511131031116548947760834871980662328992763172420391477121649315826638899509085814981336172311597924923565067034196738020477993398924416866124830873144981986552014692073844738149795385699918333787937354979490616300471102196483502410589203901101647773843649296957514255023016703031096605323616445410485794427180678619461159618121790596593425386625040896799999999909932809801754978219146573160243171896920067542459896788181586899193485418069586974446947773754686214709021947323656551161117182075193383514289147974532281731370601498904375082891406183276018" + } + }, + "old_linear_guard": { + "old_linear_guard": { + "rational": "-22698243873903138613033391774848017564424957785962564507386508188004071613706508140970657641403321115806861282922714655524301761203004135303569282515917323917893374063184765573192871135452488843908427811888970349419603513825966863947048914046995017231354280494187187092366892326424569723068932981389140167139160293130961241274983495676892882092856753942644057730650965294298891384437535366303413657772029643672939520062841013649196320270042024171403349464404073594808067062053824713323095299973471534993086956662805983343525641267336840286171750063175961959633584686878212349890753907046789671444810671589291636653225750741042515514684365251984932663679634055582115772363662798561551384057584150281718603896296844605684389385755961356666420966173619311376496349593750025900378358782291669258772995155120766721811354854259692467287036978003885729446336092288147987948973031001147669943174613002863369083838808674846570553601361705307321191074337143616258011807610324811072043677811250624098388719938381079922371976883189519863892675298713584676842295980498498965850546058038046153767485062507080578166213021645468524012759218479034626664930754047312615669586697330642569560474834214068398635125150772352002217744352007429063201571861812768341686649351178505032494998443604729402241023532819612290967835627932667873603874681957655280995017990281213098267392567258819022341298528942555562576264326565273182778163934753910607731698039228582279066243018709227438384408065161736392817957162637737361215030143997201225737010680399955712428936337954110625742012788555905813532227155730974024231541933371245948497074365089683507748449458867143773220992204715290781738015133493236992034223579543536295667252169780392688842532290836008821477357367277142789444403297699129036645016314147386639777518295434157572738961033208248833729400839475998367093098219748674838744837080803155213071419070955051631240004948206773907621077950423460865597078248834891629784638180207685462323805391361311840783189340267769290075707831801570410587306555807723603504774171554557254115174763669262039975358885308598179283591095821662533658581686755264094121683089011349432090244569715117580705154773034777911513267889835287111831173454928933024025364923281288526094782198938718633783453945946417150951468493927334226332979919497909632354498439765181819827045979914747160871046732385508214041467934111219373282919378013003147460662052187355783859658418047603147445740538482502889631115233807479393040341346188558796679932150668245669289466975901289724058216698349723171042826987576337353322274742053235090461055105055049706979896731289899280128156981079005197844344582403087702712956500394033301196826177853018244053827898148559539582850879438166733125591061602273801792239896239396844231348556564462052554398536464069802132037515230017664709495985368395930680042465375218245907220557295017372926256820400837594929692282940504857043224293316448635667292447182274477918963626526127702051116978698018804708146361963250200535970990144703005585779757624279390300523413080315087856468888695878025490338598682131378618234825252270089192366090299279707841354478880201292802719847939709458254554651618910670761516497325101161689176991655943889080088089845531138968004267196209948686727645854088791365184316911270832175725966613667971025297261648725914198842757817922641738922058733587984612527407580104701977651101793702195491070156044700342853883602519192241024753992637087827735219067834962602516557208629704858145199830330087998432177495519456859984068291848745759770611029919606237736589533900173487843994125987696482665253483798305022593065744703256179546373555814934934899941955390871985262077335670260943411781904613367494896680647987181255003987964897830115609016440352533545681132577756957343299151057680151711254691835808891547157946143082033394494329220551782156575027853642056843981462373669195582914342544792643175587887825934557187219554770300034180482359932853906266501206298107536016909446229986147843277558074138000194459021512067106987375562829683907634343003840950745167773629115523117173285992026394084890433794828116170907749773611948517864535454910452546798013841673866724280510633825457603329341375312203534142124641544935042118777668840838207376829169836043493970588456280597456593634777690973118901808001437107084088443559941209292816504977931375501269199590281259928568489175819770369583969792451178506382899229411558268610827803582340011189444811305801409530208596515338338245709262371874957133853978813298028138761759580199452154312033167296301120345795520374635708611524743123828558733438914544907133747917350576958971687865216233352043960087535170063168854588932759375224229005308274040571916998605792554888681816706834531723277955153045050689229252405481644345912933770276569298833876688270906769878243256978134747766159451937722986628049647488067751696539329240527136485094832328352210432672902659931526840343751920145633254222768672682998934590927193208026153408662329160753939584735720835459432075754320600228481114361380646201288381780561338061032933423907022320620995020533134256943713498491221184809531977537269501165856314969328042064107921734151816914042969781564328040644087803581991869681912706621605453556443644490921663132374621708160177939269157002219307117562296192350528971594833004553182142312884062882442594666489766097606678494277440346541989183684083004665049938735123328298825509655210744086638583026363846794196326578576538179363395235986984368237224600452516680379461109096695751597044664991829419609293676345982584451046353135826964488358199740621564843752585167485701402255936846135664129620349452967509846350329397972648418523626041936832772585991485826882095329221490974190210942698250566699953992063581409606218626916182490336951401518559238008250415827023070695624173335460487688348760027480583457048325153361146204744445659152481353781802759710462899025679733568909679666629882558904382712762724026678556824908761776111660403490550528993983498278177540624081303220536297990932397199971011485383273337013256812517243589544318955055536197184434926341612844791463400084402343656438416035237185098682008757090874080612592753604665162286199454417572387017762933891619562760137342495954505005707704576489235896595736558589693617726393611314047721987387705636078849339475702129852790254687739259795642400343863202992511875540780468789401136167299230521079688744201808856979824573784736491820627725541480528528441356738366527660991172466710895821167346312648148727256497172832346215023505525729781460751378714284885481673985511288863976568430344322600869313112837884595456665269011717413257965306991952743422688823705804976180992635234256023382262138397417485230125652033011657791064472923250628797253440024422522507694103078883581840107817621036623262701794087013055597754137152237369058880234218231210389840569188244935193945760933886847493016718309941611227079686376783217011071618213855833572484501970689394019318358102934061417662905566496143835986201935572559304347599219299629972572578475949325190671356096334869030833008139527119246926720439426898679083416784515087876970160507809607353717779394588858856169343711187203886918934828050324484777868707510949981836065668993769533964633620701841594146527289319075628411687144136737322097466335431705588037953608393862155655493848860496038828238310735065742553243594874469592787278637279506839093223401386794789456633006715624926613899468484555581735825101715025478726863885864479719514391990339990143631869719847414359073186544176251161387388582536204219046487638432946579617203244689676266818789552234733512814986784221811336058166044296138659426457067547376336690225789635717666210620940775365510864237795235514581812621239044278546955055037665449935147887211815892548018753141780178349980199092328408617582479268609532970060597037573635751112884257057931200042833836826476889623706049807274735853795015620757930614231926222073883654009549921140718846325097543399532621673252564745813174898666506434428232259349990771625408717129083561423200975872530187196262867111280698561763452516852614309185774665763353865606207564781436249169068771482119624055698629210105765246541403478003183393352896356644389160478499713357707164898097733873188136910968094610979312016003644790140193638844127526041601215496142953044343866423412687548769654356898209363234077743257021130677095920648254733568300677683205471157931078704822119373423718799109619865142346550201275446300246066550810552619136302665649803864245194354915151667686148622615376027244639787258825453430801899295935302659079060172258103038558209033550057757712226320991620362499265128715720677839727234270728201210427783320407649324145552612571132474935905793636613633450588966137592159821673968458182196554931325921207636445081062700267348713562164848431991271167469326578398806183374849812643401593114102899330634033490756272549961155900051219778763211113675368586320815987305459896825830338916186677843357377051447076020722169950160790614717712049226273268141721178563499098501017006180111120156277199205833903141483583440997699913183759046620476052511128907197955385138098468020013411782324346903107809364045034706576013567571862741461913796052501071737937814434252399039701545586820811248602709442403184601832084005402271782816400545051520420866733297409538705561648955285550750035014779394547915210096452089961519968333811616874018904842950805839188875718020113264136595427260295238384188882749796504769000397337289581493055521845107229009200249106696156103503476622138714691034418106206341194461726973801411509933236377367044812211136547167081554592771073953474061521078953830716168354751067107680166146764399031977815824268236026549595906674241277272023069385833978464569668659282254065523876660894325546327993147730482498002797996168203284544127339977675452250852611759257098920629141780956932435603609045960756196661420353423891329900375687096342125144821274899546868114083105586494404745279700791465980326961612778806784620794748196023098139351130010675638870260777494585672261531230069319028722131922632904743626578456188340327276771922804719305286903955530531247769910668378952820097364722604558037551331019494998285443564963917018448004325943203320644354722325208506899495323072678383853076701375003930985979002905277787853138154897458859262464325881445529839932317811400769403501975638777278904600859241992354282700104931022843226666780085094098542956627110761291988719351499571926228955093445794172092325047671679561498308795542918143451633600085499347345913927357389701224725759200812440515528671822255000898510460484628765915159912944290608211975300026422093649689222893967690473200600812621928745793307239325494005871408686478101755734926708454577452422468333093340631243687121455429255453722368073107843897239715675599185679958163510123341272472296646563041106851276290174546208745055682521825866943592210651931470376775087714311013951305102743653164160397905333983189328973224094894280215354554717524632866048264027187633080975568413714172375741877175480465810699300841143751094470133564015471782950810138708249267581695700425069326286015947563717776827805933698180442238781652153106067749485713662487356139858398729268438335172118519818895207674745283041122345870141528445076981964087711161539616655902692780882542855244226115795904463768312432838871758580703033741283961241340183140544981181669007323451356981376464937323974566164488837988431280643651194743620850649974503338748914445698393123443496885588524404598059946799517813833061966627057973260484180850203247196687230172168180700183159687089791978261134089911609500803351799801328321947699100971267084607662351749355670473521518178914927457252553571254798720831561779993376384075139113973269327065083061489826246937147178403466228706824159196579914615571876205579345524671443039896986799414299651987293787095780688531420541185929246435326375471038522850904881623359699284485898134543657354553854972331395279597409643173489041142798431279994885377813367837841318552850961258932669385355731269205111703322900381979399256648641355466558977571031060732621153775797524396534192273384476906806882929847423389044291014463700266147571028005281686781792877867429068920446588308468661977902990448464278495399703060147786482270773045134691496008022756853877019105902452892879062194790401201590932764436599525740348382712802039001773695318971446104146732812354210832372814935903703421369109754530424220411309413801990496677633052382197822589845885374676800717563780409620830390609525326895751209249280786307950297844785742796805769897370932989906160659914746087346034858013289705894574506795530221371926910294668534581285436899959543609439269180215405590593379418633013649281605036068571138351104967573575970494164333166380756858767418570622555167484008694985846468844095011691296101682157245615853746846285299823473978497188661323111745799944790901108871186416217220253887043850160081827254144460683381720110492372199528762403749314279386814620546577047882026670297634047175377584565846919503613716302316600372200522996095788784724832084395043132600113016228257457202607936149634633228230608271723565102971225259980077203461300908818282173020952615299839849616899424557252509098308118373031694814008040769155128183160821532816450959106495875524066131993160173937239413127029452959736133115878871371398583302424397590329068668947709639773830370052446649217240312381822341314271865696574103254394930036061409978009742120990132558339994424686482893937092240560776353010968611038334060848470494219677171088134357540831323060271983112600582191667559227340639856959997886062713390285918591932866090069235618747277807968811356298010495202308302285334921440250460952663689389173195436137376267810861113376190131781647544801522078513070249703270125333001954287915311247337920562797883451275813446154363597567387583589366776026106000096661146946697498816212504434397346264764039202288279578379940855389091028054747022124656087737765104481414068112646250175985995885581469326161311708995136079409785373616069713702017726906391851845635011548875249326766419317811727797524377111992763208382749005772912245940345368877300911098459319997057382223446376850004964419551714724290181967271854806115015165691310418748175392471529310372787370664415909997228167485215237427722673576432301904694281804749599571539156253873313351243720585961051667920955200116773387929305265205355853020412318220509983727041722482270169485210673857671149874089895996296445589297802058385058064017372583557331539039178259612423550242899570510153332180844068999995887674121213214141189633321464551546121125908255963492622711739564514493035541283363137712164096968124901573295660554016090903491669103976042268096984952445740601857196827170419660521143112629138290332217678068561554446832548679952990193405146314388372341428054298236170754205387245674606865919134975883773415674648701170591102675920369307880501165523497737794700299504018877096469619904524464902080402443584395646355348687549163375641567679373977195674094664105983101852501177348515934543483219271336890442138228216629054345030898595040605272778923942238984135082068963582039573269998738231689129966814142253293292534117905456253750512332672699569484501463374193079147744308682799408050850765716892729013075760771745782273343374518383153621128050094367170345422401495994764503977602208224725421124061061107113103718356876234679818159102256651318649268230873891900023954840902335642524085872691171064805744586217960446149959485146548545490502492349248062240322312626288162519078922550879727629162513605912789532924383403184999233656313741813021839736285981695840421866889237882294403001341647629192714804784667317386648318150298035541348953784271995024688685932185693263584348472063598520087812694342160781815374589736988021225935728872062427615958836973928492443024665403345791719772881389866356590451680297230894368803156660032776442880536166773110483565452864638761439534982809853491808753264255953844391169662410411219835040140746786398637694133826809998262734726007322192768972828917835730501696678617804571210200390589634267762353634589721285934638883547614342678367690023363101257429520346425662607136725568270087903171837054997216859231841788147263676196972691923324084488076143728737528795192401922914840509299900752543629593929162168525108955572391060994237136576349409398331027406519927645774370686659742471964904637019589965625592671033185552028014549818806951142355606119571177285869054398170844570878661666357732362880151008306401515829144767651138993406204952600635675315330591896809069984191051959600435690790054063651719643011545908587392964125651907820528300912267093828606579743466472769414710114965026837815843583642446999626487075541575117827339476461309927487972454271213464868408763456764785119807977049604708082582602414498745736016480961223704890668749847180530649416705808729953764056714324336685587147230211748341149545547585142557882499053466166454711384464024790560786487251105268773599257891448605341200993680044587046966620951377108435551423484610130918112279733110450071323388796226514223045603915239534368998982080716104141057534596550180783130283640644155339133126532405783052120537155525680083487142812118759425841498967524661635729995256494875330388622375975966557911246122159536077316615668933163045873141148443934226632859653772790429053580488277559543777944637083723204218215704804838558994911606744279721527378010984644605292459984048488404781790087693499255760568318616100555002715771801175205069646470106106926857075339897663203959201351799089704979489052345782167488798765432245307441253837959175152103651854297901046545942959592085897551602933147238088773679791996362820611150330260730026733847186549661178627049007847754069500997045234197862349980560942745345807160389641462038350979258117340059332052141960391829522456592191617732655494274447568090613425944825925763887961088847157967333318473129522792736959604767839515895687738118490996023922321775537704934053635733132873914171758130451961965427218460971603165993442544638153075821139994776680548333873153236618250079535322296084712548235075838416375902846793241463892848958943432289795111334590731962499037161895275195909242086780428419454667359061193148122023177996901328926915826302889460180337703966892946625480075242023032185505670779169185473650853881932736429749682454143553434719998661245046560469076459408164896181558380177453181255846747007695315919009432065329082606801320113820958278752550635120156841535704299516063401655682346939594985440570550312016834863734847684921408589925278405028804679911501959140143792995694935110602440398047585596584556872977527306347757173557595621388753928295167069655325228717587029231378749269517723337116607673542754281420947133192174634953400342396173040763050797351044029615509551869939901702070023368888113688897187640910808520008014555149699248959913906527683205818799774902277766001724334580257524162570242162611351929932910558455235071284968102902969118507320558812699226178920128441781352086076464685777054969222500250750765330769322573267772961211485602468140254600708821669627076039552971084895980194866512451984184644200612546273396936824995185556341206783999929455769659243329043565196634720472191777247172941628197454178360066147960550518247733780612636700046861520429062267171072745533477078927523293558184644426117309006193126543776483611944707380173367837382022705970248306761723087407509639280309197869520849949070704546105803685885508344257983050195649462915429899511192113006625143333182944880889467115858305649528882657202025137475377843804589721030014935137725134113514675132514508164348857476534627180630850179301922542443578110950043146036764379809155369509961202846700952517300874712432966462073103400084902857178071690854030368689911091444885851849302408131651060157147111465674697949914465796372707682536651279895373930088406832414631857318159945739826247727292533120417258997222356336876084288048979252434191804262084188341683193420466885704730465051181368312056180032617221779364344632146440504706045502513164556902602242613779517503306548133952515140161372725723344128449301100670025647514730905511717157723347514381630233991882881921139415013336017041571971960534325141241855887160344970383175362224333385325958568351730196489750861691807792717864759978569323532107040565425450983828720370984754923626902950405564027601313748097713995186312119035960923298457204655613905848066975448849046314418247428253352916163003262403302094537828954014492664529275014425019320070474808673826737025169772362169569628568941657653595850772480594292859868862757399369108495282291309597854212986101890099983902567980334725101545755153981569072553431340490224323845688292049922713940267283525666948959345556842070118211725041098669106006025529671476210434380534417892856883967200506855964536436717713678571386623485055250546310437309262355189969637131484887540564542281469875005317085446566078751379422748524667060652129797968443571120415255345317586098898490385978581727464544326914618669669024111872497860949539427791956694360600352890834602866235027683572717408696447238983752859843659957542378354244220066591609288461227120725692662416757657875921809257660352496938953473251185593935108657591752087200399262168340848981271553255296675496901008937810518931160171651064601692542158415193310491325523692524219807207924453111574277693130789146613530590061205419679794728612295000853317040983680680417683820834457677914780428945710737695835581101268265624696589309494561080705780603712608779928337294560589769381099423903598436891620548002067016643222532191469343932139937251324521452494068378899420692562516184521313069024495550967730421264990014012104551820113294443583088364941490030498122557879621798770913695643102286435492192907306716818435327996257985496708271873331916474520601846376232636967730105323471455378416785955871332417313808262109440690118026047799690441298718609781708529453970227834303366679675483532745169120776423929529588514482948655653342710028131096347304248962486998946350397037130442814760702755338392066925712849656413002693410571490036355980735569234372165073341304453397099927102952406128475019393829999181601918483307628913030817706340631300277243578019512661272478333476698152728685815964175212289589198163781460559547320445944734617075671701857902355849243412793187484873464978140312685508574083556507427199270264351810315598226594951364668268656592846365204360603438072864438984857892434837742226799672039524073381559302637163394531653605837520310544486413171531847547470559468426595704630446952405132809482194307941859787333492741654227360494390605392479895882534939907825650154844958198718677293367293587285683173813896701129344678065884348293122186784485764736386135391481677756532184326403153635838886190206388712102228082943013513694940020029772651304408627614456847797797849829879697351934523482439603578102310327552076780073714059047932710334238984184040312182131834365553029631191769337838210575477542405301099080671685023276016292830126183774636534837927297200444094116360563317398958186192126005354742383797560998104898225565770658626236475700690064640939389202337951032913912686046816295177984270648770117169682966974556224635479723018547315297396876861039240510381879031852444475362713431320210066567546513124016742045508137612593429442847625261672452240205343592161391562814244540041187886274090682146040400836264656976430076728640726411016342402358974404416232043270816904612479675619861649800701505839481984230130605022284929235506373068230530474635193897392353405873732494209631553910772058685079696394344010013395098468295168133130412323867509043614024324315567120529527797999517787298602455293289530535545631927586826371221748872864478415353348940092624435283136747458555714034268649886158324420067652210211935052025455682575722854132535389501103293613745452155698056228457826958382138390337370854731251412405142203037878472284996143737148375318478771019533678438348739236672172887730058681738553544009795187635312489287300743733622558176237848161577065075554478777975738467902218468587701179396849716235300417969417058162864536850606238628427200767572337317391206816479391146187697000047718535020799083714853291391520546802922671907008156993949987206703756451181706453180491519973313315717765256943188252562456687658355175991178918482618705995255620293524276332816380953387854751575279982939966295406407807779502841494411374524472835388540347538391690921041931107882034929190786265907416969407786543111460343906957059814096396695828132155488244261482685363831724255770207513972125704758666424952039665569739088149004374476852058632646775427321568779775755073593005638145190681239729945128491714292773367466312584103979262041945996700654710059889117201344780858557966707332902506127024668887198415428437219534724775016527777284252428208219214763595767847288086520985051664686326700832901967821822653930605729443952883361715822436370797454856288026149392562267236978064818580901829164013782056970511590839743609137254150753587088293246194673654564308992103116099948624009314110999334345612835206995903345380832297555329344718644103951080643510014187543590554953935655518953198746505258766733840021237134237032855651672939620486977312029978731575912559739643325872995102785849128419064947731046102822786421024559599295194720374075524489899430960305268368235310939768433981523158657877542691885182960271148113003297740171072801868514589547183030200953258562983786282210207817114429668663619023875040817434859570354888744148492993810077369690442835896313708478549009389904965147553889568771421780810658153990333837524939127718296181014795553765266294774346045146768652303314014131777250234522342502468617615259584591051788932569976944965027444334441698931828214694495310844394636082408967976063858363993829380547657126059449732506726508891307169924550533124323557614189739656398444337600027258244872415084681199427632345108768792573658254687381940919665000684111485755465654769084363658951427991489698626360953072484381676504350083575340647475457214730971378880975557794009943600810780752473377020430924392184976053237651484438970647134069011822349660057537918773705530539106972090692667425744384608973616658081027273655673543069816652006064069850586765973202156955230956200538365799937928993498021334178320286255617943262768127798583062611385323150027954024692714200756676586109685687429358538936567257245139429192099343902243529861006560784622255946267642485947511814189307839272167095398373921506734718673451161595774839336377229200352057296390975476452704899906074795608557683277279487417285440801850552308710025361803749433821438441263474001224558995167453493933316846321036519720704475641979315617013372619233852854858056967325002426361064715667281461839101645253052547371958111410816664872041075900628226784682808134007393558356092897663597859092680677307647053199780754636977648312812725992493584261620903459989861305207112410122544825253483111500235398208541949171157161297160108219627948241481613359165485380689883834010401159342284379626302655025266687261717402186406779198086022719834324124588659145672130826532049976579014458806119145632034081935375043993499329770383454539328900349851440600931066859229229619587515148495521372447515248514671967852699345662441023442150595441203583968841721325509893785207455766040366956753643809939765755962682739274272377296852156628144097159117478195184914922841253610253533018410116558916385308599130305377903518472240922651956696189601821153533941178141653878745296920972632618210746438697466818580404360043285160643708107148962489999880123961818408023297272551139475303426551400780456505767507859518544814482038065313008363282316751913583032291192965444927933443497277656799310087155339454003319406229635649681946941282908441768638351149689654772493337382311515822098881935751390807912457998688681130301428176602596807910588608270800979670896300045287742374801917505080359635873988536523614194598699170797483685304236221296552739813656762226238473349295044465132619821175778990217550438874833949806323815098345206695912568346240751213976201085263415022590031584504100652449515741466559016434560293533400590341035608450415512854588043732786322560817783617502392928447578503939923706415895078150959175098503413841620522169397913851460540080438434847817004580305866977494721770723948309098934998391383799995100038049258519241838736696444553889007752542986628799666294271594323480119130142811905657704580536333844064705370994811941887661942021865645440067673482126555972855618140935371563584725221935580417142395324054169477606425419808741943589635609566065011840786469773108818462426563402243806280688007816802553007541437561072223133332312638870548447341667028701956090952038712987229742526947846361582415775584545796786547741243538539917554673165923719201095606167106865650422895575851545348161180439869559067543450257402084613223994485792930653701844051268765220462428083838446097495827236508219666584464528588160264541805975594654599930609719684038572621972538425104594202926686573150210506465231672290695132365052077108747741700899824368423305251384200422622045229464381645022858209623653406650879115946578260653582106007542713864787528050931468125303421438238504100863638480564739371275554805267478611177190466489843154685323594011746555633432702565130969535102858068879997075888033500015067199475855906196208070090020662065566998088837475903149606598276628791414151593107415328011790577970404778890880422452156524473925126383170399584579501373498377267508346649478997679984170070598778380856737038515250029867126866226029026325323962700925596075091862223830083329601962874852765359239789145948469052447543942239227239338424963276831729997245277576635008381896870522543273758390806717438891378889568618470104358997582791124095396552548934640206164478329862438635726872667021538949740615445633379274592252559749174865552108265603859143122748319001836509230592268724423212489791723492169372436327037558887774560437801323650487637705971730456162119689281877877087878887075665452055676310724303397584827432644952265223824574178173328130112099999999979991601225219372277393321645030396487115008442807487098522698362399185677258698371805868471719335776838627743415457068895139647759399172939286143496816535216421325187363046885361425772909502231218314437622205930116079297234806627210590217190600996553729143901162562581526621534715086055386213403722171966572167941373807751745003300864621423581428649211471188453869806941140221723112492926739317268445594071265412095987431797270160735945991595165719330107119185281038386587589235057335380940005305693001382608667438803331294871746532631942765649987364807608073283062624357530021849218590642065711037865682141672669354849851791496897063126949603013467264073188883576845527267440287689723188483169943656279220740631078863122122848807728666715806765276137724700730081249994819924328243541666148245400968975846655637729029148061506542592604399222854110732781542370402410205393799770466011365077399427326183232238265030685889279727658938535761785132571276748397638477935037785591264437749875180322256012323784015525604623362096027221464940257283064631540803900300206829890788392390769246502987498583884366757395670906295197448156304193074667013849190537476866082660533871486087905033157186320272974969845529599556451129598514187359685627637446331662670129764298993501000311279054119551795293436077541806432874413466425279225063608468943800996401943757380346521486548236195531740294211488887484747134686945363444367213049217878453660392154283544186751396258154512323118386967652721436408567472452527756993971200559754852597863920008857514212732409177874851597442288818837293554568853805195153691613325750810300585126982063298450310108226571245355801559056941843652396973301352601593155284091292740866549566043921462231493541832798235704528526544571442111119340460174192670996737170522672044496340913168485452207793358350233254119832104800326581380356050265032251032583839368957385716185808989673751999010358645218475784409915307826880584350233021674043072363958462907535238921727737631843362131946446141984858433639685917882538688838455279299045165689088549176965047266147592004928222938280364143281780835667493268283662648947181175663382197730113581951086056976483858969045393044417697346422032942577633765309014213395194927015343742294781043560212256273243309210810716569809706301214533154733404016100418073529100312046963636034590804017050567825790653522898357191706413177756125343416124397399370507867589562528843228068316390479370510851892303499422073776953238504121391931730762288240664013569866350866142106604819742055188356660330055365791434602484732529335545051589352981907788978988990058604020653742020143974368603784198960431131083519382459457408699921193339760634764429396351189234420370288092083429824112366653374881787679545239641552020752120631153730288687107589489120292707186039573592496953996467058100802926320813863991506924956350818555888540996525414748635919832481014061543411899028591355141336710272866541510563545104416207274694774459589776604260396239058370727607349959892805801971059398882844048475144121939895317383936982428706222260824394901932280263573724276353034949545982161526781940144058431729104223959741439456030412058108349089069676217865847696700534979767662164601668811222183982382030893772206399146560758010262654470829182241726963136617745833564854806677266405794940547670254817160231448436415471652215588253282403077494518483979059604469779641259560901785968791059931429223279496161551795049201472582434452956186433007479496688558274059028370960033933982400313564500896108628003186341630250848045877794016078752452682093219965302431201174802460703466949303240338995481386851059348764090725288837013013020011608921825602947584532865947811317643619077326501020663870402563748999202407020433976878196711929493290863773484448608531340169788463969657749061632838221690568410771383593321101134155889643568684994429271588631203707525266160883417131491041471364882422434813088562556089045939993163903528013429218746699758740378492796618110754002770431344488385172399961108195697586578602524887434063218473131399231809850966445274176895376565342801594721183021913241034376765818450045277610296427092909017909490640397231665226655143897873234908479334131724937559293171575071691012991576244466231832358524634166032791301205882308743880508681273044461805376219638399712578583182311288011758141436699004413724899746160081943748014286302164836045926083206041509764298723420154117688346277834439283531997762111037738839718093958280696932332350858147525625008573229204237340394372247648083960109569137593366540739775930840895925072858277695051375234288253312217091018573250416529884608205662426956753329591207982492965987366229082213448124955154198938345191885616600278841489022263636658633093655344408969390989862154149518903671130817413245944686140233224662345818646024351348604373050446768109612455402674390070502386449660692134151894572702981033534329557913465419468013694631931249615970873349155446265463400213081814561358394769318267534167849212083052855832908113584849135879954303777127723870759742323643887732387793413315218595535875800995893373148611257300301755763038093604492546099766828737006134391587178415653169636617191406043687134391871182439283601626063617458675678909288711271101815667373525075658367964412146168599556138576487540761529894205681033399089363571537423187423511481066702046780478664301144511930691602163263183399066990012252975334340234898068957851182672283394727230641160734684284692364127320952802603126352555079909496663924107778180660849680591067001634116078141264730803483109790729372834607102328360051875687031249482966502859719548812630772867174075930109406498030729934120405470316295274791612633445482801702834623580934155701805161957811460349886660009201587283718078756274616763501932609719696288152398349916834595385860875165332907902462330247994503883308590334969327770759051110868169503729243639448057907420194864053286218064066674023488219123457447455194664288635018247644777667919301889894201203300344364491875183739355892740401813520560005797702923345332597348637496551282091136208988892760563113014731677431041707319983119531268712316792952562980263598248581825183877481449279066967542760109116485522596447413221676087447972531500809098998858459084702152820680852688282061276454721277737190455602522458872784230132104859574029441949062452148040871519931227359401497624891843906242119772766540153895784062251159638228604035085243052701635874454891703894294311728652326694467801765506657820835766530737470370254548700565433530756995298894854043707849724257143022903665202897742227204686313931135479826137377432423080908666946197656517348406938601609451315462235258839004763801472953148795323547572320516502953974869593397668441787105415349874240549311995115495498461179384223283631978436475792675347459641182597388880449172569552526188223953156353757922031886162351012961210847813222630501396656338011677754584062724643356597785676357228833285503099605862121196136328379413187716467418886700771232802759612885488139130480156140074005485484304810134961865728780733026193833398372094576150614655912114620264183316643096982424605967898438078529256444121082228228766131257762559222616213034389935103044426258497810003632786866201246093207073275859631681170694542136184874317662571172652535580506732913658882392409278321227568868901230227900792234352337852986851489351281025106081442544272544098632181355319722641042108673398656875014677220106303088883652834979656994904254627222827104056097121601932001971273626056030517128185362691164749767722522283492759156190702472313410684076559351062064746636242089553053297437002643155637732788366791140772268114708586490524732661954842072856466757875811844926897827152440952897083637475752191144290608988992466910012970422557636821490396249371643964330003960181534318276483504146278093405987880592485272849777423148588413759991433232634704622075258790038545052829240996875848413877153614755585223269198090015771856230734980491320093475665349487050837365020266698713114353548130001845674918256574183287715359804825493962560747426577743860287647309496629477138162845066847329226878758487043712750166186245703576075188860274157978846950691719304399363321329420728671122167904300057328458567020380453225362372617806381077804137596799271041971961272231174494791679756900771409391131226715317462490246069128620358127353184451348595773864580815870349053286339864463358905768413784259035576125315256240178076026971530689959744910739950786689837889476172739466870039227150961129016969666462770275476924794551072042548234909313839620140812939468184187965548379392288358193289988448457554735801675927500146974256855864432054553145854359757914443335918470135170889477485773505012818841272677273309882206772481568035665206308363560689013734815758472710983787459946530257287567030313601745766506134684320238763325030037471319681377179420133873193301848745490007768819989756044247357777264926282735836802538908020634833932216762664431328524589710584795855566009967841877056457590154745346371655764287300180299796598763977775968744560158833219371703283311800460017363248190675904789497774218560408922972380306395997317643535130619378438127190993058684797286485627451707617240789499785652412437113149520192059690882635837750279458111519363079633583198919545643436719890989695915826653340518092258887670208942889849992997044121090416957980709582007696006333237676625196219031409838832162224856395977347172680914547940952323162223450040699046199920532542083701388895630978554198159950178660768779299304675572257061793116378758731761107654605239717698013352724526591037557772690566583689081445785209305187695784209233856766329049786578463966770647120193604436835146352794690080818665151744545595386122833204307086066268143549186895224667821134890734401370453903500399440400766359343091174532004464909549829477648148580215874171643808613512879278190807848760667715929315221734019924862580731574971035745020090626377183378882701119050944059841706803934607677444238643075841050360795380372129773997864872225947844501082865547693753986136194255573615473419051274684308762331934544645615439056138942619208893893750446017866324209435980527055479088392489733796101000342911287007216596310399134811359335871129055534958298620100935385464323229384659724999213802804199418944442429372369020508228147507134823710894032013536437719846119299604872244544219079828151601529143459979013795431354666643982981180291408674577847741602256129700085614754208981310841165581534990465664087700338240891416371309673279982900130530817214528522059755054848159837511896894265635548999820297907903074246816968017411141878357604939994715581270062155421206461905359879837475614250841338552134901198825718262704379648853014658309084509515506333381331873751262575708914148909255526385378431220552056864880162864008367297975331745505540670687391778629744741965090758250988863495634826611281557869613705924644982457137797209738979451269367167920418933203362134205355181021143956929089056495073426790347194562473383804886317257165524851624564903906837860139831771249781105973287196905643409837972258350146483660859914986134742796810487256444634438813260363911552243669569378786450102857267502528772028320254146312332965576296036220958465050943391775530825971694310984603607182457767692076668819461443823491428951154776840819107246337513432225648283859393251743207751731963371891003763666198535309728603724707012535205086767102232402313743871269761051275829870005099332250217110860321375311300622882295119080388010640096437233387606674588405347903163829959350560662553965566363859963368062582041604347773182017678099839329640039734335610460179805746583078467529650128865905295696364217014508549489285749040255833687644001324723184972177205346134586983387702034750612570564319306754258635168160684017076885624758884130895065711392020602640117140069602541242580843862293715891762814150712934724905792295429819023675328060143102820373091268529089229005533720944080518071365302191771440313744001022924437326432431736289429807748213466122928853746158977659335419923604120148670271728906688204485793787853475769244840495120693161545323104618638623414030515322191141797107259946770485794398943662643641424426514186215910682338306267604419401910307144300920059387970442703545845390973061700798395448629224596178819509421424187561041919759681813447112680094851930323457439592199645260936205710779170653437529157833525437012819259315726178049093915155917738117239601900664473389523560435482030822925064639856487243918075833921878094934620849758150143842738409940431042851440638846020525813402018767868017050782530793028397342058821085098640893955725614617941066293083742912620008091278112146163956918881881324116273397270143678992786285772329779006485284805901167133366723848628246516285875488966503198261002830706231180997661740779663568550876829250630742940035305204300562267735377650840011041819778225762716756555949222591229967983634549171107863323655977901525560094247519250137144122637075890684590423594665940473190564924483086830616099277256739536679925559895400780842243055033583120991373479977396754348508559478412770073073354353878345655286979405754948003984559307739818236343565395809476940032030076620115088549498180338376325393661037198391846168974363367835693436709808178700824895186773601367965212552117374594109408052773376824225725720283339515120481934186266210458072045233925989510670156551937523635531737145626860685179349121013992787718004398051575801973488332001115062703421212581551887844729397806277792333187830305901156064565782373128491833735387945603377479883561666488154531872028608000422787457321942816281613426781986152876250544438406237728740397900959538339542933015711949907809467262122165360912772524746437827777324761973643670491039695584297385950059345974933399609142416937750532415887440423309744837310769127280486522483282126644794778799980667770610660500236757499113120530747047192159542344084324011828922181794389050595575068782452446979103717186377470749964802800822883706134767737658200972784118042925276786057259596454618721629630872997690224950134646716136437654440495124577601447358323450198845417550811930926224539817780308136000588523555310724629999007116089657055141963606545629038776996966861737916250364921505694137925442525867116818000554366502956952514455465284713539619061143639050080085692168749225337329751255882807789666415808959976645322414138946958928829395917536355898003254591655503545966102957865228465770025182020800740710882140439588322988387196525483288533692192164348077515289951420085897969333563831186200000822465175757357171762073335707089690775774818348807301475457652087097101392891743327372457567180606375019685340867889196781819301666179204791546380603009510851879628560634565916067895771377474172341933556464386287689110633490264009401961318970737122325531714389140352765849158922550865078626816173004823245316865070259765881779464815926138423899766895300452441059940099196224580706076019095107019583919511283120870728930262490167324871686464125204560865181067178803379629499764530296813091303356145732621911572354356674189130993820280991878945444215211552203172983586207283592085346000252353662174006637171549341341493176418908749249897533465460086103099707325161384170451138263440118389829846856621454197384847845650843545331325096323369275774389981126565930915519700801047099204479558355054915775187787778577379256328624753064036368179548669736270146353825221619995209031819532871495182825461765787038851082756407910770008102970690290901899501530150387551935537474742367496184215489824054474167497278817442093415123319363000153268737251637395632052742803660831915626622152423541119399731670474161457039043066536522670336369940392891730209243145600995062262813562861347283130305587280295982437461131567843636925082052602395754812854225587514476808232605214301511395066919330841656045423722026728681909663940553821126239368667993444711423892766645377903286909427072247712093003438029301638249347148809231121766067517917756032991971850642720272461173234638000347453054798535561446205434216432853899660664276439085757959921882073146447529273082055742813072223290477131464326461995327379748514095930714867478572654886345982419365632589000556628153631642370547264760605461615335183102384771254252494240961519615417031898140019849491274081214167566294978208885521787801152572684730118120333794518696014470845125862668051505607019072596082006874881465793362889594397090036238609771528878776085764542826189120365831085824267666728453527423969798338719696834171046469772201318759009479872864936933881620638186003161789608079912861841989187269656071397690818282521407174869618435894339817546581234278684051306705446117057977006994632436831283271510600074702584891684976434532104707738014502405509145757307026318247308647042976038404590079058383483479517100250852796703807755259021866250030563893870116658838254009247188657135132662882570553957650331770090890482971488423500189306766709057723107195041887842702549778946245280148421710278931759801263991082590606675809724578312889715303077973816377544053377909985735322240754697155390879216952093126200203583856779171788493080689963843373943271871168932173374693518843389575892568894863983302571437576248114831700206495067672854000948701024933922275524804806688417750775568092784536676866213367390825371770311213154673428069245441914189283902344488091244411072583255359156356859039032288201017678651144055694524397803071078941508003190302319043641982461300148847886336276779888999456845639764958986070705978778614628584932020467359208159729640182059004102189530843566502240246913550938511749232408164969579269629140419790690811408081582820489679413370552382245264041600727435877769933947853994653230562690067764274590198430449186099800590953160427530003887811450930838567922071707592329804148376531988133589571607921634095508681561676453468901145110486381877314811034814847222407782230568406533336305374095441452608079046432096820862452376301800795215535644892459013189272853373425217165648373909607606914556307805679366801311491072369384835772001044663890333225369352676349984092935540783057490352984832316724819430641351707221430208211313542040977733081853607500192567620944960818151582643914316109066528187761370375595364400619734214616834739422107963932459206621410674903984951595393562898865844166162905269829223613452714050063509171289313056000267750990687906184708118367020763688323964509363748830650598460936816198113586934183478639735977235808344249489872975968631692859140096787319668863530612081002911885889937596633027253030463015718282014944318994239064017699608171971241400861012977879511920390482880683088625404494538730448565288480875722249214340966586068934954256482594153724250146096455332576678465291449143715810573361565073009319931520765391847389840529791194076898089626012019659585995326222377262220562471817838295998397088970060150208017218694463358836240045019544446799655133083948495167485951567477729614013417888308952985743006379419406176298535888237460154764215974311643729582784707062844589006155499949849846933846135485346445407757702879506371949079858235666074584792089405783020803961026697509603163071159877490745320612635000962888731758643200014108846068151334191286960673055905561644550565411674360509164327986770407889896350453243877472659990627695914187546565785450893304584214495341288363071114776538198761374691244703277611058523965326432523595458805950338647655382518498072143938160426095830010185859090778839262822898331148403389960870107416914020097761577398674971333363411023822106576828338870094223468559594972504924431239082055793997012972454973177297064973497098367130228504693074563873829964139615491511284377809991370792647124038168926098007759430659809496539825057513406707585379319983019428564385661829193926262017781711022829630139518373669787968570577706865060410017106840725458463492669744020925213982318633517073628536368010852034750454541493375916548200555528732624783142390204149513161639147583162331663361315906622859053906989763726337588763993476555644127131073570711899058790899497367088619479551477244096499338690373209496971967725454855331174310139779865994870497053818897656568455330497123673953201623423615772116997332796591685605607893134971751628822567931005923364927555133322934808286329653960702049827661638441456427048004286135293578591886914909803234255925803049015274619409918887194479737250380457200962737576192807815340308559068877218830386604910230190737116350514349329416767399347519339581092434209197101467094144997114996135985905038265234652594966045527566086074286211668469280829845503881141428026227448520126178300943541738080429157402779621980003219486403933054979690848969203686185489313731901955135230862341590015457211946543294866610208130888631585976357654991780266178798794894065704757913123893116421428623206559898628807092712656457264285722675302988949890737912538147528962006072573703022491887091543706024998936582910686784249724115450295066587869574040406311285775916948930936482780220301922804283654507091134617076266066195177625500427810092114441608661127879929421833079426752994463285456518260710552203249428031268008491524329151155986681678142307754575854861467516648468424815638148467929500612209305349762881212978268481649582559920147566331830203745689348940664900619798212437896213767965669787079661491568316961337901734895261495156038558415109377685144461373842170677293881987758916064041054277540999829336591803263863916463235833108464417043914210857852460832883779746346875060682138101087783858843879257478244014332541087882046123780115219280312621675890399586596671355493561706131213572012549735095709501186324220115861487496763095737386195100889806453915747001997197579089635977341111283382327011701993900375488424075640245817260871379542712901561418538656636312934400748402900658345625333616705095879630724753472606453978935305708924316642808825733516537238347578111861976394790440061911740256278043658294109205954433139326664064903293450966175844715214094082297103410268869331457994373780730539150207502600210729920592573911437047859448932321586614857430068717399461317885701992728803852886153125566985331739109320580014579409518774304996121234000163679616303338474217393836458731873739944551284396097467745504333304660369454262836807164957542082160367243707888090535910811053076584865659628419528830151317441362503025307004371937462898285183288698514560145947129637936880354681009727066346268681430726959127879312385427112203028421513032451554640065592095185323688139472567321093669278832495937891102717365693630490505888106314680859073910609518973438103561138411628042533301451669154527901121878921504020823493012018434869969031008360256264541326541282542863365237220659774131064386823130341375562643102847052722772921703664448693563134719369272832222761958722257579554383411397297261011995994045469739118274477108630440440430034024060529613095303512079284379537934489584643985257188190413457933152203163191937563573633126889394073761646132432357884904491518939780183865662995344796741433974763245072693032414540559911181176727887336520208362761574798929051523240487800379020354886845868274752704859861987071812122159532409793417217462790636740964403145870245976566063406605088755072904055396290536940520624627792151897923624193629511104927457313735957986686490697375196651590898372477481314111430474947665509551958931281567721687437151091991762422745181863570791919832747068604713984654271854717796731519528205119116753591345836619077504064876027670039859698832103603153973878995543014152898725386353893905072961220521529318825253501158073689217845588262984060721131197997320980306340966373373917535226498191277195135136886575894094440400096442540279508941342093892890873614482634725755650225427104316929330211981475112943372650508288857193146270022768335115986469557957612989594908863484855429173492922099779341277250909568860388754308434608323572321932525829053749717518971559392424305543000771252570324936304245796093264312330252152665565422453988263652289291198040962472937502142539851253275488364752430367684586984889104244404852306419556306282459764120630056752939916406116588367427092629878752274314559846485532536521758636704121770762460599990456292995840183257029341721695890639415465618598368601210002558659248709763658709363901696005337336856446948611362349487508662468328964801764216303476258800948875941295144733436723809322429049684944003412006740918718438444099431701117725095105432922291930492321661815791613778423593014161842746818516606118442691377707931218608588037180720660834373568902351147703462927233655148845958497205574859048266715009592066886052182370199125104629588273470644914535686244044848985281398872370961863752054010974301657141445326506737483179204147591610800659869057988022176559731043828288406658533419498774595066222560316914312556093055044996694444543149514358356157047280846430542382695802989667062734659833419606435635469213878854111209423327656835512725840509028742394770121487546552604387036283819634167197243588605897681832051278172549169849282582341350761065269087138201579376780010275198137177800133130877432958600819330923833540488934131056271179209783871297997162491281889009212868896209360250698948246653231995752573152593428869665412075902604537594004253684817488052071334825400979442830174316187010453790779435442715795088080140961055925184895102020113807938946326352937812046313203695368268424491461622963407945770377399340451965785439626297082090563393959809348287403242743557958436577114066267276195224991836513028085929022251170301401237984526061911432820737258304290198122019006970489222086245715643837868369201933232495012174456340763797040889246946741045130790970646269539337197173644549953095531499506276476948083081789642213486004611006994511133111660213634357061100937831121072783518206404787228327201234123890468574788110053498654698221738566015089893375135288477162052068720311132479994548351025516983063760114473530978246241485268349062523611816066999863177702848906869046183127268209714401702060274727809385503123664699129983284931870504908557053805724223804888441198011279837843849505324595913815121563004789352469703112205870573186197635530067988492416245258893892178605581861466514851123078205276668383794545268865291386036669598787186029882646805359568608953808759892326840012414201300395733164335942748876411347446374440283387477722935369994409195061457159848664682778062862514128292212686548550972114161580131219551294027798687843075548810746471502810497637162138432145566580920325215698653056265309767680845032132724554159929588540721804904709459020018785040878288463344544102516542911839629889538257994927639250113235712311747305199755088200966509301213336630735792696055859104871604136876597325476153229429028388606534999514727787056866543707632179670949389490525608377717836667025591784819874354643063438373198521288328781420467280428181463864538470589360043849072604470337437454801501283147675819308002027738958577517975491034949303377699952920358291610165768567740567978356074410351703677328166902923862023233197919768131543124074739468994946662547656519562718644160382795456033135175082268170865573834693590004684197108238776170873593183612924991201300134045923309092134219930029711879813786628154154076082496970300895725510496950297065606429460130867511795311569880911759283206231655734898021242958508846791926608649271238012046848807463452145145524540629568674371180568176504360963017015431749277949293396317976688216722938280173938924419296305551815469608660762079635769293211764371669224250940615805473476357850712260506636283919127991342967871258378570207502000023975207636318395340545489772104939314689719843908698846498428096291037103592386937398327343536649617283393541761406911014413311300544468640137982568932109199336118754072870063610611743418311646272329770062069045501332523537696835580223612849721838417508400262263773939714364679480638417882278345839804065820739990942451525039616498983928072825202292695277161080260165840503262939152755740689452037268647554752305330140991106973476035764844201956489912225033210038735236980330958660817486330751849757204759782947316995481993683099179869510096851706688196713087941293319881931792878309916897429082391253442735487836443276499521414310484299212015258716820984369808164980299317231675895566120417229707891983912313030436599083938826604501055645855210338180213000321723240000979992390148296151632252660711089222198449491402674240066741145681135303976173971437618868459083892733231187058925801037611622467611595626870911986465303574688805428876371812925687283054955612883916571520935189166104478714916038251611282072878086786997631842706045378236307514687319551238743862398436639489398491712487785555373333537472225890310531666594259608781809592257402554051494610430727683516844883090840642690451751292292016489065366815256159780878766578626869915420884829690930367763912026088186491309948519583077355201102841413869259631189746246955907514383232310780500834552698356066683107094282367947091638804881069080013878056063192285475605492314979081159414662685369957898706953665541860973526989584578250451659820035126315338949723159915475590954107123670995428358075269318669824176810684347869283578798491457227042494389813706374939315712352299179827272303887052125744889038946504277764561906702031369062935281197650688873313459486973806092979428386224000584822393299996986560104828818760758385981995867586886600382232504819370078680344674241717169681378516934397641884405919044221823915509568695105214974723365920083084099725300324546498330670104200464003165985880244323828652592296949994026574626754794194734935207459814880784981627555233983334079607425029446928152042170810306189510491211552154552132315007344633654000550944484672998323620625895491345248321838656512221724222086276305979128200483441775180920689490213071958767104334027512272854625466595692210051876910873324145081549488050165026889578346879228171375450336199632698153881546255115357502041655301566125512734592488222445087912439735269902472458805653908767576062143624424582424222584866909588864737855139320483034513471009546955235085164365334373977580000000001/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-0.90792975495612554452133567099392070257699831143850258029546032752016286454826032563882630565613284463227445131690858622097207044812016541214277130063669295671573496252739062292771484541809955375633711247555881397678414055303867455788195656187980068925417121976748748369467569305698278892275731925556560668556641172523844965099933982707571528371427015770576230922603861177195565537750141465213654631088118574691758080251364054596785281080168096685613397857616294379232268248215298853292381199893886139972347826651223933374102565069347361144687000252703847838534338747512849399563015628187158685779242686357166546612903002964170062058737461007939730654718536222328463089454651194246205536230336601126874415585187378422737557543023845426665683864694477245505985398375000103601513435129166677035091980620483066887245419417038769869148147912015542917785344369152591951795892124004590679772698452011453476335355234699386282214405446821229284764297348574465032047230441299244288174711245002496393554879753524319689487907532758079455570701194854338707369183921993995863402184232152184615069940250028322312664852086581874096051036873916138506659723016189250462678346789322570278241899336856273594540500603089408008870977408029716252806287447251073366746597404714020129979993774418917608964094131278449163871342511730671494415498727830621123980071961124852393069570269035276089365194115770222250305057306261092731112655739015642430926792156914329116264972074836909753537632260646945571271828650550949444860120575988804902948042721599822849715745351816442502968051154223623254128908622923896096926167733484983793988297460358734030993797835468575092883968818861163126952060533972947968136894318174145182669008679121570755370129163344035285909429469108571157777613190796516146580065256589546559110073181736630290955844132832995334917603357903993468372392878994699354979348323212620852285676283820206524960019792827095630484311801693843462388312995339566519138552720830741849295221565445247363132757361071077160302831327206281642349226223230894414019096686218229016460699054677048159901435541234392717134364383286650134634326747021056376486732356045397728360978278860470322820619092139111646053071559341148447324693819715732096101459693125154104379128795754874535133815783785668603805873975709336905331919677991638529417993759060727279308183919658988643484186929542032856165871736444877493131677512052012589842648208749423135438633672190412589782962153930011558524460935229917572161365384754235186719728602672982677157867903605158896232866793398892684171307950305349413289098968212940361844220420220198827919586925159597120512627924316020791377378329612350810851826001576133204787304711412072976215311592594238158331403517752666932502364246409095207168959584957587376925394226257848210217594145856279208528150060920070658837983941473583722720169861500872983628882229180069491705027281603350379718769131762019428172897173265794542669169788729097911675854506104510808204467914792075218832585447853000802143883960578812022343119030497117561202093652321260351425875554783512101961354394728525514472939301009080356769464361197118831365417915520805171210879391758837833018218606475642683046065989300404646756707966623775556320352359382124555872017068784839794746910583416355165460737267645083328702903866454671884101189046594903656795371031271690566955688234934351938450109630320418807910604407174808781964280624178801371415534410076768964099015970548351310940876271339850410066228834518819432580799321320351993728709982077827439936273167394983039082444119678424950946358135600693951375976503950785930661013935193220090372262978813024718185494223259739739599767821563487941048309342681043773647127618453469979586722591948725020015951859591320462436065761410134182724530311027829373196604230720606845018767343235566188631784572328133577977316882207128626300111414568227375925849494676782331657370179170572702351551303738228748878219081200136721929439731415625066004825192430144067637784919944591373110232296552000777836086048268427949502251318735630537372015363802980671094516462092468693143968105576339561735179312464683630999094447794071458141819641810187192055366695466897122042535301830413317365501248814136568498566179740168475110675363352829507316679344173975882353825122389826374539110763892475607232005748428336353774239764837171266019911725502005076798361125039714273956703279081478335879169804714025531596917646233074443311214329360044757779245223205638120834386061353352982837049487499828535415915253192112555047038320797808617248132669185204481383182081498542834446098972495314234933755658179628534991669402307835886751460864933408175840350140680252675418355731037500896916021233096162287667994423170219554727266827338126893111820612180202756917009621926577383651735081106277195335506753083627079512973027912538991064637807750891946512198589952271006786157316962108545940379329313408841730691610639726107361375007680582533016891074690731995738363708772832104613634649316643015758338942883341837728303017282400913924457445522584805153527122245352244131733695628089282483980082132537027774853993964884739238127910149078004663425259877312168256431686936607267656171879126257312162576351214327967478727650826486421814225774577963686652529498486832640711757076628008877228470249184769402115886379332018212728569251536251529770378665959064390426713977109761386167956734736332018660199754940493313195302038620842976346554332105455387176785306314306152717453580943947937472948898401810066721517844436386783006388178659967317678437174705383930337804185412543307857953432798962486259375010340669942805609023747384542656518481397811870039385401317591890593674094504167747331090343965943307528381316885963896760843770793002266799815968254325638424874507664729961347805606074236952033001663308092282782496693341841950753395040109922333828193300613444584818977782636609925415127211038841851596102718934275638718666519530235617530851050896106714227299635047104446641613962202115975933993112710162496325212882145191963729588799884045941533093348053027250068974358177275820222144788737739705366451379165853600337609374625753664140948740394728035028363496322450371014418660649144797817670289548071051735566478251040549369983818020022830818305956943586382946234358774470905574445256190887949550822544315397357902808519411161018750957039182569601375452811970047502163121875157604544669196922084318754976807235427919298295138945967282510902165922114113765426953466110643964689866843583284669385250592594909025988691329384860094022102919125843005514857139541926695942045155455906273721377290403477252451351538381826661076046869653031861227967810973690755294823219904723970540937024093529048553589669940920502608132046631164257891693002515189013760097690090030776412315534327360431270484146493050807176348052222391016548608949476235520936872924841559362276752979740775783043735547389972066873239766444908318745507132868044286472855423334289938007882757576077273432411736245670651622265984575343944807742290237217390396877198519890290313903797300762685424385339476123332032558108476987706881757707594716333667138060351507880642031238429414871117578355435424677374844748815547675739312201297939111474830043799927344262675975078135858534482807366376586109157276302513646748576546949288389865341726822352151814433575448622621975395441984155312953242940262970212974379497878371149114549118027356372893605547179157826532026862499706455597873938222326943300406860101914907455543457918878057567961359960574527478879389657436292746176705004645549554330144816876185950553731786318468812978758705067275158208938934051259947136887245344232664177184554637705828270189505346760903158542870664842483763101462043456951180942058327250484956177114187820220150661799740591548847263570192075012567120713399920796369313634470329917074438131880242388150294543004451537028231724800171335347305907558494824199229098943415180062483031722456927704888295534616038199684562875385300390173598130486693010258983252699594666025737712929037399963086501634868516334245692803903490120748785051468445122794247053810067410457236743098663053415462424830259125744996676275085928478496222794516840423060986165613912012733573411585426577556641913998853430828659592390935492752547643872378443917248064014579160560774555376510104166404861984571812177375465693650750195078617427592837452936310973028084522708383682593018934273202710732821884631724314819288477493694875196438479460569386200805101785200984266203242210476545210662599215456980777419660606670744594490461504108978559149035301813723207597183741210636316240689032412154232836134200231030848905283966481449997060514862882711358908937082912804841711133281630597296582210450284529899743623174546454533802355864550368639286695873832728786219725303684830545780324250801069394854248659393727965084669877306313595224733499399250573606372456411597322536133963025090199844623600204879115052844454701474345283263949221839587303321355664746711373429508205788304082888679800643162458870848196905093072566884714253996394004068024720444480625108796823335612565934333763990799652735036186481904210044515628791821540552393872080053647129297387612431237456180138826304054270287450965847655184210004286951751257737009596158806182347283244994410837769612738407328336021609087131265602180206081683466933189638154822246595821142203000140059117578191660840385808359846079873335246467496075619371803223356755502872080453056546381709041180953536755530999186019076001589349158325972222087380428916036800996426784624414013906488554858764137672424825364777846907895205646039732945509468179248844546188668326218371084295813896246084315815322864673419004268430720664587057596127911263297072944106198383626696965109088092277543335913858278674637129016262095506643577302185311972590921929992011191984672813138176509359910701809003410447037028395682516567123827729742414436183843024786645681413695565319601502748385368500579285099598187472456332422345977618981118803165863921307846451115227138483178992784092392557404520042702555481043109978342689046124920277276114888527690531618974506313824753361309107087691218877221147615822122124991079642673515811280389458890418232150205324077979993141774259855668073792017303772813282577418889300834027597981292290713535412306805500015723943916011621111151412552619589835437049857303525782119359729271245603077614007902555109115618403436967969417130800419724091372906667120340376394171826508443045167954877405998287704915820373783176688369300190686718245993235182171672573806534400341997389383655709429558804898903036803249762062114687289020003594041841938515063660639651777162432847901200105688374598756891575870761892802403250487714983173228957301976023485634745912407022939706833818309809689873332373362524974748485821717021814889472292431375588958862702396742719832654040493365089889186586252164427405105160698184834980222730087303467774368842607725881507100350857244055805220410974612656641591621335932757315892896379577120861418218870098531464193056108750532323902273654856689502967508701921863242797203364575004377880534256061887131803240554832997070326782801700277305144063790254871107311223734792721768955126608612424270997942854649949424559433594917073753340688474079275580830698981132164489383480566113780307927856350844646158466623610771123530171420976904463183617855073249731355487034322812134965135844965360732562179924726676029293805427925505859749295898264657955351953725122574604778974483402599898013354995657782793572493773987542354097618392239787198071255332247866508231893041936723400812988786748920688672722800732638748359167913044536359646438003213407199205313287790796403885068338430649406997422681894086072715659709829010214285019194883326247119973505536300556455893077308260332245959304987748588713613864914827296636786319658462287504822317382098685772159587947197657198607949175148383122754125682164743716985741305501884154091403619526493438797137943592538174629418215419889325581118389638572693956164571193725119979541511253471351365274211403845035730677541422925076820446813291601527917597026594565421866235910284124242930484615103190097586136769093537907627227531719389693556177164057854801064590284112021126747127171511469716275681786353233874647911611961793857113981598812240591145929083092180538765984032091027415508076423609811571516248779161604806363731057746398102961393530851208156007094781275885784416586931249416843329491259743614813685476439018121696881645237655207961986710532209528791290359383541498707202870255121638483321562438101307583004836997123145231801191379142971187223079589483731959624642639658984349384139432053158823578298027182120885487707641178674138325141747599838174437757076720861622362373517674532054597126420144274284553404419870294303881976657332665523027435069674282490220669936034779943385875376380046765184406728628982463414987385141199293895913988754645292446983199779163604435484745664868881015548175400640327309016577842733526880441969488798115049614997257117547258482186308191528106681190536188701510338263387678014454865209266401488802091984383155138899328337580172530400452064913029828810431744598538532912922433086894260411884901039920308813845203635273128692083810461199359398467597698229010036393232473492126779256032163076620512732643286131265803836425983502096264527972640695748957652508117811838944532463515485485594333209697590361316274675790838559095321480209786596868961249527289365257087462786296413017579720144245639912038968483960530233359977698745931575748368962243105412043874444153336243393881976878708684352537430163325292241087932450402328766670236909362559427839991544250853561143674367731464360276942474989111231875245425192041980809233209141339685761001843810654757556692781744549505071243444453504760527126590179206088314052280998813080501332007817151661244989351682251191533805103253784617454390269550334357467104104424000386644587786789995264850017737589385059056156809153118313519763421556364112218988088498624350951060417925656272450585000703943983542325877304645246835980544317639141494464278854808070907625567407382540046195500997307065677271246911190097508447971052833530996023091648983761381475509203644393837279988229528893785507400019857678206858897160727869087419224460060662765241674992701569886117241491149482657663639988912669940860949710890694305729207618777127218998398286156625015493253404974882343844206671683820800467093551717221060821423412081649272882039934908166889929080677940842695430684599496359583985185782357191208233540232256069490334229326156156713038449694200971598282040613328723376275999983550696484852856564758533285858206184484503633023853970490846958258057972142165133452550848656387872499606293182642216064363613966676415904169072387939809782962407428787308681678642084572450516553161328870712274246217787330194719811960773620585257553489365712217192944683016821548982698427463676539903535093662698594804682364410703681477231522004662093990951178801198016075508385878479618097859608321609774337582585421394750196653502566270717495908782696378656423932407410004709394063738173932877085347561768552912866516217380123594380162421091115695768955936540328275854328158293079994952926756519867256569013173170136471621825015002049330690798277938005853496772316590977234731197632203403062867570916052303043086983129093373498073532614484512200377468681381689605983979058015910408832898901684496244244428452414873427504938719272636409026605274597072923495567600095819363609342570096343490764684259222978344871841784599837940586194181962009969396992248961289250505152650076315690203518910516650054423651158131697533612739996934625254967252087358945143926783361687467556951529177612005366590516770859219138669269546593272601192142165395815137087980098754743728742773054337393888254394080351250777368643127261498358947952084903742915488249710463835347895713969772098661613383166879091525559465426361806721188923577475212626640131105771522144667092441934261811458555045758139931239413967235013057023815377564678649641644879340160562987145594550776535307239993050938904029288771075891315671342922006786714471218284840801562358537071049414538358885143738555534190457370713470760093452405029718081385702650428546902273080351612687348219988867436927367152589054704787890767693296337952304574914950115180769607691659362037199603010174518375716648674100435822289564243976948546305397637593324109626079710583097482746638969887859618548078359862502370684132742208112058199275227804569422424478284709143476217592683378283514646665430929451520604033225606063316579070604555973624819810402542701261322367587236279936764207838401742763160216254606878572046183634349571856502607631282113203649068375314426318973865891077658840459860107351263374334569787998505948302166300471309357905845239709951889817084853859473635053827059140479231908198418832330330409657994982944065923844894819562674999388722122597666823234919815056226857297346742348588920846993364598182190340570231529996213864665818845537856099162243145949004421075094397031565794421364803974720178348187866483805508433742205693938440523672449118932441800285293555184906056892182415660958137475995928322864416564230138386200723132521134562576621356532506129623132208482148622102720333948571248475037703365995870098646542919981025979501321554489503903866231644984488638144309266462675732652183492564593775736906531438615091161716214321953110238175111778548334892816872862819219354235979646426977118886109512043938578421169839936193953619127160350773997023042273274464402220010863087204700820278585880424427707428301359590652815836805407196358819917956209383128669955195061728981229765015351836700608414607417191604186183771838368343590206411732588952355094719167985451282444601321042920106935388746198644714508196031391016278003988180936791449399922243770981383228641558565848153403917032469360237328208567841567318089826368766470930621977097790272362453703779303703055551844355388631869333273892518091170947838419071358063582750952473963984095689287102150819736214542932531495656687032521807847861708873843886412663973770178552612303284559979106722193335492612946473000318141289184338850192940303353665503611387172965855571395835773729159180445338362927849996148647581100783636968347121713677818669436244772592488092711987605315707663305211557840721350815867571786501920300968092128742022683116676741894603415527730945718998729816574213738879994644980186241876305837632659584726233520709812725023386988030781263676037728261316330427205280455283833115010202540480627366142817198064253606622729387758379941762282201248067339454939390739685634359701113620115218719646007836560575171982779740442409761592190342386338227491910109225391028694230382485555015713180668278621300914870348116925514997078070893348466430694171017125683788532768698539813601369584692163052203189404176118462038207479759606808280093475552454755588750563643234080032058220598796995839655626110732823275199099609111064006897338321030096650280968650445407719731642233820940285139872411611876474029282235250796904715680513767125408344305858743108219876890001003003061323077290293071091844845942409872561018402835286678508304158211884339583920779466049807936738576802450185093587747299980742225364827135999717823078636973316174260786538881888767108988691766512789816713440264591842202072990935122450546800187446081716249068684290982133908315710093174232738577704469236024772506175105934447778829520693471349528090823880993227046892349630038557121236791478083399796282818184423214743542033377031932200782597851661719598044768452026500573332731779523557868463433222598115530628808100549901511375218358884120059740550900536454058700530058032657395429906138508722523400717207690169774312443800172584147057519236621478039844811386803810069203498849731865848292413600339611428712286763416121474759644365779543407397209632526604240628588445862698791799657863185490830730146605119581495720353627329658527429272639782959304990909170132481669035988889425347504337152195917009736767217048336753366732773681867542818921860204725473248224720130468887117457378528585762018824182010052658227610408970455118070013226192535810060560645490902893376513797204402680102590058923622046868630893390057526520935967531527684557660053344068166287887842137300564967423548641379881532701448897333541303834273406920785959003446767231170871459039914277294128428162261701803935314881483939019694507611801622256110405254992390855980745248476143843693193828818622455623392267901795396185257672989713013411664652013049613208378151315816057970658117100057700077280281899234695306948100679089448678278514275766630614383403089922377171439475451029597476433981129165238391416851944407560399935610271921338900406183020615926276290213725361960897295382753168199690855761069134102667795837382227368280472846900164394676424024102118685904841737522137671571427535868802027423858145746870854714285546493940221002185241749237049420759878548525939550162258169125879500021268341786264315005517690994098668242608519191873774284481661021381270344395593961543914326909858177307658474678676096447489991443798157711167826777442401411563338411464940110734290869634785788955935011439374639830169513416976880266366437153844908482902770649667030631503687237030641409987755813893004742375740434630367008348801597048673363395925086213021186701987604035751242075724640686604258406770168633660773241965302094770096879228831697812446297110772523156586454122360244821678719178914449180003413268163934722721670735283337830711659121715782842950783342324405073062498786357237978244322823122414850435119713349178242359077524397695614393747566482192008268066572890128765877375728559749005298085809976273515597682770250064738085252276097982203870921685059960056048418207280453177774332353459765960121992490231518487195083654782572409145741968771629226867273741311985031941986833087493327665898082407385504930547870920421293885821513667143823485329669255233048437762760472104191198761765194874439126834117815880911337213466718701934130980676483105695718118354057931794622613370840112524385389216995849947995785401588148521771259042811021353568267702851398625652010773642285960145423922942276937488660293365217813588399708411809624513900077575319996726407673933230515652123270825362525201108974312078050645089913333906792610914743263856700849158356792655125842238189281783778938468302686807431609423396973651172749939493859912561250742034296334226029708797081057407241262392906379805458673074626371385460817442413752291457755939431569739350968907198688158096293526237210548653578126614423350081242177945652686127390189882237873706382818521787809620531237928777231767439149333970966616909441977562421569919583530139759631302600619379832794874709173469174349142732695255586804517378712263537393172488747137943058945544541565926711026128737305612614543355544760825554848408912331772054054779760080119090605217634510457827391191191399319518789407738093929758414312409241310208307120294856236191730841336955936736161248728527337462212118524767077351352842301910169621204396322686740093104065171320504735098546139351709188801776376465442253269595832744768504021418969535190243992419592902263082634504945902802760258563757556809351804131655650744187265180711937082595080468678731867898224898541918892074189261189587507444156962041527516127409777901450853725280840266270186052496066968182032550450373717771390501046689808960821374368645566251256978160164751545096362728584161603345058627905720306914562905644065369609435897617664928173083267618449918702479446599202806023357927936920522420089139716942025492272922121898540775589569413623494929976838526215643088234740318785577376040053580393873180672532521649295470036174456097297262268482118111191998071149194409821173158122142182527710347305484886995491457913661413395760370497741132546989834222856137074599544633297680270608840847740208101822730302891416530141558004413174454981808622792224913831307833528553561349483418925005649620568812151513889139984574948593501273915084078134713753394956946688691550920234726954214176039180750541249957149202974934490232704951392646308260302217915111902953871608873874350804717587398864941201671877668232651458147402424954513708803070289349269564827265917564584750788000190874140083196334859413165566082187211690687628032627975799948826815025804726825812721966079893253262871061027772753010249826750633420703964715673930474823981022481174097105331265523813551419006301119931759865181625631231118011365977645498097891341554161390153566763684167724431528139716763145063629667877631146172445841375627828239256385586783312528621952977045930741455326897023080830055888502819034665699808158662278956352596017497907408234530587101709286275119103020294372022552580762724958919780513966857171093469865250336415917048167783986802618840239556468805379123434231866829331610024508098675548793661713748878138899100066111109137009712832876859054383071389152346083940206658745306803331607871287290615722422917775811533446863289745483189819425152104597570249068947912259274323607316656055128227882046363358974436549016603014348353172984778694618257235968412464399794496037256443997337382451340827983613381523329190221317378874576415804322574040056750174362219815742622075812794986021035066935360084948536948131422606691758481947909248119914926303650238958573303491980411143396513676259790924184411291145684098238397180778881496302097959597723841221073472941243759073735926092634631510170767540731841084592452013190960684291207474058358188732120803813034251935145128840831268457718674654476095500163269739438281419554976593971975240309478761771343585254833914196037559619860590215558275085687123242632615961335350099756510873184724059182215061065179097384180587074609213256056527109000938089370009874470461038338364207155730279907779860109777337766795727312858777981243377578544329635871904255433455975317522190628504237798930026906035565228679698202132497294230456758958625593777350400109032979489660338724797710529380435075170294633018749527763678660002736445943021862619076337454635805711965958794505443812289937526706017400334301362589901828858923885515523902231176039774403243123009893508081723697568739904212950605937755882588536276047289398640230151675094822122156427888362770669702977538435894466632324109094622694172279266608024256279402347063892808627820923824802153463199751715973992085336713281145022471773051072511194332250445541292600111816098770856803026706344438742749717434155746269028980557716768397375608974119444026243138489023785070569943790047256757231357088668381593495686026938874693804646383099357345508916801408229185563901905810819599624299182434230733109117949669141763207402209234840101447214997735285753765053896004898235980669813975733267385284146078882817902567917262468053490476935411419432227869300009705444258862669125847356406581012210189487832445643266659488164303602512907138731232536029574233424371590654391436370722709230588212799123018547910593251250903969974337046483613839959445220828449640490179301013932446000941592834167796684628645188640432878511792965926453436661941522759535336041604637369137518505210620101066749046869608745627116792344090879337296498354636582688523306128199906316057835224476582528136327741500175973997319081533818157315601399405762403724267436916918478350060593982085489790060994058687871410797382649764093768602381764814335875366885302039575140829823064161467827014575239759063023850730957097089509187408626512576388636469912780739659691365014441014132073640466235665541234396521221511614073888963690607826784758407284614135764712566615514981187683890530472842985754789867274321617440173140642574832428595849959999520495847273632093189090204557901213706205603121826023070031438074179257928152261252033453129267007654332129164771861779711733773989110627197240348621357816013277624918542598727787765131633767074553404598758619089973349529246063288395527743005563231649831994754724521205712706410387231642354433083203918683585200181150969499207670020321438543495954146094456778394796683189934741216944885186210959254627048904953893397180177860530479284703115960870201755499335799225295260393380826783650273384963004855904804341053660090360126338016402609798062965866236065738241174133602361364142433801662051418352174931145290243271134470009571713790314015759694825663580312603836700394013655366482088677591655405842160321753739391268018321223467909978887082895793236395739993565535199980400152197034076967354946785778215556031010171946515198665177086377293920476520571247622630818322145335376258821483979247767550647768087462581760270693928506223891422472563741486254338900887742321668569581296216677910425701679234967774358542438264260047363145879092435273849706253608975225122752031267210212030165750244288892533329250555482193789366668114807824363808154851948918970107791385446329663102338183187146190964974154159670218692663694876804382424668427462601691582303406181392644721759478236270173801029608338452895977943171722614807376205075060881849712335353784389983308946032878666337858114352641058167223902378618399722438878736154290487890153700418376811706746292600842025860926689162780529460208308434990966803599297473693221005536801690488180917857526580091432838494613626603516463786313042614328424030170855459150112203725872501213685752954016403454553922258957485102219221069914444708761865959372618741294376046986222533730810260523878140411432275519988303552134000060268797903423624784832280360082648262267992355349903612598426393106515165656606372429661312047162311881619115563521689808626097895700505532681598338318005493993509070033386597915990719936680282395113523426948154061000119468507464904116105301295850803702384300367448895320333318407851499411061436959156583793876209790175768956908957353699853107326919988981110306540033527587482090173095033563226869755565515558274473880417435990331164496381586210195738560824657913319449754542907490668086155798962461782533517098369010238996699462208433062415436572490993276007346036922369074897692849959166893968677489745308150235551098241751205294601950550823886921824648478757127511508351515548302661808222705242897213590339309730579809060895298296712693312520448399999999919966404900877489109573286580121585948460033771229948394090793449596742709034793487223473886877343107354510973661828275580558591037596691757144573987266140865685300749452187541445703091638009" + } + }, + "old_union_tag_2beta": { + "old_union_tag_2beta": { + "rational": "-2499999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999997/2500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-0.9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999988" + } + }, + "matrix_below_strassen": { + "strassen_integer_power_gap": { + "rational": "-423", + "decimal": "-423" + } + }, + "halo_too_short": { + "halo_covers_generic_inverse_radius": { + "rational": "-3", + "decimal": "-3" + } + }, + "core_too_small": { + "microbox_halo_volume": { + "rational": "-4999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999997/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-0.9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999994" + }, + "microbox_face_corrections_above_kappa": { + "rational": "-15008398774780627722606678354969603512884991557192512901477301637600814322741301628194131528280664223161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999994998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-3.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999989996640490086748910957328658012158594" + } + }, + "group_equals_dimension": { + "group_below_dimension": { + "rational": "0", + "decimal": "0" + }, + "group_key_fits_record": { + "rational": "0", + "decimal": "0" + }, + "membership_arithmetic_fits_record": { + "rational": "-1/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-2E-30010" + } + }, + "epsilon_equals_one": { + "epsilon_below_one": { + "rational": "0", + "decimal": "0" + }, + "global_gamma_power_slack": { + "rational": "-1/10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-1E-30010" + }, + "actual_logarithmic_gamma_guard": { + "rational": "0", + "decimal": "0" + }, + "source_axis_superpolynomial": { + "rational": "0", + "decimal": "0" + }, + "fused_gaussian_above_kappa": { + "rational": "-25196324339383167820035064908810538654974671577538704431904912802442968223904884582394584841992669484116769753628793314581056721802481182141569509550394350736024437910859343915722681271493306345056687133382209651762108295580118368229348428197010338812568296512312255420135395854741833841359788833484100283496175878576744764990097406135729255714052365586434638390579176579334830662521219782048194663217786203763712037704608189517792162025214502842009678642444156884840237232294827993857179984082920995852173997683590006115384760402104171703050037905577175780150812126927409934452344228073802866886402953574981991935450444625509308810619151190959598207780433349269463418197679136930830434550490169031162337778106763410633631453576813999852579704171586825897809756250015540227015269375001555263797093072460033086812912555815480372222186802331437667801655372888792769383818600688601965904767801718021450303285204907942332160817023184392714644602286169754807084566194886643226206686750374459033231963028647953423186129913711918335605179228150806105377588299099379510327634822827692260491037504248346899727812987281114407655531087420775998958452428387569401752018398385541736284900528441039181075090463411201330646611204457437920943117087661005011989610707103019496999066162837641344614119691767374580701376759600724162324809174593168597010794168727858960435540355291413404779117365533337545758595939163909666898360852346364639018823537149367439745811225536463030644839097041835690774297582642416729018086398320735442206408239973427457361802772466375445207673133543488119336293438584414538925160022747569098244619053810104649069675320286263932595322829174469042809080095942195220534147726121777400351301868235613305519374501605292886414420366285673666641978619477421987009788488431983866510977260494543643376619924949300237640503685599020255858931849204903246902248481893127842851442573030978744002968924064344572646770254076519358246949300934977870782908124611277394283234816787104469913604160661574045424699080942246352383933484634162102864502932734352469104858201557223985215331185158907570154657492997520195149012053158456473009853406809659254146741829070548423092863820866746907960733901172267098704072957359814415218953968773115656869319363231180270072367567850290570881096356400535799787951698745779412699063859109091896227587948848296522628039431304928424880760466731623969751626807801888476397231312413470315795050828561888467444323089501733778669140284487635824204807713135278007959290400947401573680185540773834434930019009833902625696192545802411993364845231941054276633063033029824187938038773939568076894188647403118706606749441852621627773900236419980718095706711810946432296738889135723749710527662900039875354636961364281075343937743638106538809133938677231532639121878441881279222509138010598825697591221037558408025479225130947544332334377010423755754092240502556957815369764302914225934575989869181400375468309364686751378175915676621230670187218811282824887817177950120321582594086821803351467854574567634180314047848189052713881333217526815294203159209278827170940895151362053515419654179567824704812687328120775681631908763825674952732790971346402456909898395060697013506194993566333448052853907318683380802560317725969212036587512453274819110590146762499305435579968200782615178356989235548519305654690753585043353235240152790767516444548062821186590661076221317294642093626820205712330161511515344614852395582252696641131440700977561509934325177822914887119898198052799059306497311674115990440975109247455862366617951763742641953720340104092706396475592617889599152090278983013555839446821953707727824133488960960939965173234523191157246401402156566047069142768020496938008388792308753002392778938698069365409864211520127408679546654174405979490634608091026752815101485334928294767685849220036696597532331069293945016712185234106388877424201517349748605526875585905352732695560734312331732862180020508289415959712343759900723778864521610145667737991688705966534844482800116675412907240264192425337697810344580605802304570447100664177469313870303971595215836450934260276896869702544649864167169110718721272946271528078808305004320034568306380295274561997604825187322120485274784926961025271266601304502924426097501901626096382353073768358473956180866614583871341084800862264250453066135964725575689902986758825300761519754168755957141093505491862221750381875470707103829739537646934961166496682149404006713666886783480845718125157909203002947425557423124974280312387287978816883257055748119671292587219900377780672207477312224781425166914845874297135240063348726944280248750410346175383012719129740011226376052521102037901312753359655625134537403184964424343150199163475532933209090024100719033966773091827030413537551443288986607547760262165941579300326012962544061926945954186880848659695671162633791976829788492840651017923597544316281891056899397011326259603741595958916104206251152087379952533661203609799360754556315924815692045197397496452363750841432501275659245452592360137088668616828387720773029068336802836619760054344213392372597012319880554166228099094732710885719186522361700699513788981596825238464753040491090148425781868938596824386452682149195121809147623972963272133866186694552997879424773024896106763561494201331584270537377715410317382956899802731909285387730437729465556799893859658564007096566464207925193510210449802799029963241073996979295305793126446451983149815818308076517795947145922907618037141592190620942334760271510008227676665458017450958226798995097651765576205807589550670627811881496178693014919844372938906251551100491420841353562107681398477772209671780505907810197638783589051114175625162099663551594891496129257197532894584514126565618950340019972395238148845763731176149709494202170840911135542804950249496213842417374504001276292613009256016488350074228995092016687722846667395491488812269081655826277739415407840141345807799977929535342629627657634416007134094945257065666996242094330317396390098966906524374448781932321778794559438319982606891229964002207954087510346153726591373033321718310660955804967706874878040050641406193863049621142311059209205254254524448367555652162799097371719672650543432210657760334971737656082405497572703003424622745893541537957441935153816170635836166788428633192432623381647309603685421277911674152812643555877385440206317921795507125324468281273640681700379538312647813246521085314187894744270841895092376635324888317117064814043019916596594703480026537492700407787588889236353898303699407729014103315437868876450827228570931289004391306773318385941058206593560521587867702730757273999161407030447954779184195171646053613294223482985708595581140553614029357283038450491138075391219806994674638683753950377278352064014653513504616461847330149104064690572621973957621076452207833358652482291342421435328140530938726233904341512946961116367456560332108495810030985964966736247811826069930206642970928313500143490701182413636411591014861760436850597743339897686301591721161343535582608559531579777983543547085569595114402813657800921418499804883716271548156032263656139207450050070709052726182096304685764412230667636753315313701606226712322332151360896830194690866721224506569989101639401396261720378780172421104956487916373591445377047012286482042393258479801259023352822772165036317293393296309316297623296942986441039445531946156924681755672367182367704103455934040832076873673979804029374955968339681090733349041495061029015287236118331518687831708635194203994086179121831908448615443911926505750696832433149521722531427892583059767947770321946813805760091273731340840107688992070533086801634899626577683195655874240528425802014135473781430599726372564465219306518542677141308749087572743426567128173033022599269961088732327089535528811251885068107009988119455397045170549487561165719782036358222544181450667730554234758720025700302095886133774223629884364841512277009372454758368539155733244330192405729952684431307795058526039719573003951538847487904939199903860656939355609994462975245230277450136853920585523518112317757720266768419137058071510111568585511464799458012319363724538868861749501441262889271774433419177526063459147924842086801910036011737813986633496287099828014624298938858640323912882146580856766587587209602186874084116183306476515624960729297685771826606319854047612529261792614138925617940446645954212678406257552388952840140980406609923282694758647222893271624054231279465771919085407930120765267780147639930486331571481781599389882318547116612949091000611689173569225616346783872355295272058481139577561181595447436103354861823134925420130034654627335792594972217499559077229432406703836340562436920726256669992244589594487331567542679484961543476181968180070353379682555295893004381074909317932958795552724581867048637620160409228137298909059194762700481595947039283710024909887586040955868461739598380420094453763529976693540030731867257926668205221151792489592383275938095498203349712006706014426230868245612433301970096474368830627229535763960885032707138099459100610203708066672093766319523500341884890150064598619947910255427972285631506677344318773231082859080812008047069394608141864685618427020823945608140543117644877148277631500643042762688660551439423820927352092486749161625665441910761099250403241363069689840327030912252520039978445723223336989373171330450021008867636728749126057871253976911981000286970124411342905770483503513325430812067958481957256356177143030513329649877902861400238402373748895833313107064337405520149464017693662102085973283228814620650863723804716677036184280846905959941826420226887326681928300248932755662644372084436912647372298429701012850640264608099688058639419186689494560941615929757544004544766363213841631500387078741801195569352439314325996536595327796795888638289498801678797700921970726476403986605271350511567055554259352377485068574159461362165427576453717996852212054334797940225412257805275086892764939728120868449863351896642847167820474879588196176967667284070772476848917613858883610678006405383322156466496751403356918738041591417233279153579742846175947073713004196366063153682831583172142373318318748661946401027371692058418833562734822530798611696998971266138978350211068802595565921992386612833395125104139697193843607030311846020825002358591587401743166672711882892938475315557478595528867317903959390686840461642101185383266367342760515545195412569620062958613705936000068051056459125773976266456775193231610899743155737373056067476503255395028603007736898985277325750886070980160051299608407548356414433820734835455520487464309317203093353000539106276290777259549095947766574364927185180015853256189813533736380614283920360487573157247475984343595296403522845211886861053440956025072746471453480999856004378746212272873257553272233420843864706338343829405359511407974898106074004763483377987937824664110765774104727725247033409513095520166155326391158882226065052628586608370783061646191898496238743200389913597383934456936568129212732830514779719628958416312579848585341048228503425445126305288279486419580504686250656682080138409283069770486083224949560549017420255041595771609568538230666096683560218908265343268991291863640649691428197492413683915039237561063001103271111891337124604847169824673407522084917067046189178452626696923769993541615668529525713146535669477542678260987459703323055148421820244770376744804109884326988709001404394070814188825878962394384739698693302793058768386190716846172510389984702003249348667419035874066098131353114642758835968079710688299837179976234783956290508510121948318012338103300908420109895812253875186956680453946965700482011079880796993168619460582760250764597411049613402284112910907348956474351532142752879232498937067996025830445083468383961596239049836893895748162288307042079737224094495517947948769343125723347607314802865823938192079648579791192376272257468413118852324711557547861195825282623113710542928974015819570691538880726194412732312983398837167758445785904093424685679058767996931226688020702704791131710576755359601631213438761523067021993740229187639553989184813279935386542618636439572692265478514637920515364030686144084129757908454033426574608678220159688542616803169012069075726720457441352267952985081197186741794269078567097239821836088671889362463827080814897604813654112326211463541471735727437316874240720954559658661959715444209029627681223401064217191382867662488039687412526499423688961542222052821465852718254532246785648281194298006579831429318693553907531224806080430538268245772498234365715196137450725549568471784770178706871445678083461938422559793943696395948847652407620914807973823536744704077318132823156146176801120748771262139975726165663561508129243354356027651179808189568963021641142683010662980544145582296498599899828454115260451142373533100490405216991507881306457007014777661009294347369512248107771179894084387098313196793867047479966874540665322711849730332152332226310096049096352486676410029032066295423319717257442249588567632088772327946228729216002178580428305226550739508151702168229781389960223320313797657473270834899250637025879560067809736954474321564761689780779936938364963034139061782735155988046322076780545290969303812571569179903909770139654734351505458984871023819016888404824461493076909896492919689870575463897525314439679195896104362343647876217671775841679869527322822839149981454638554197441201368625783864298222031467989530344187429093404788563119417944461952636958021636845986805845272594079535003996654811889736362255344336465811806581166623000436509082296531806302652880614524498793836163189867560349315000535536404383914175998731637628034171551155159719654041541371248366684781286813778806297121384981371200952864150276571598213633503917261682425760686516668025714079068988526880913247107842149821962075199801172572749186748402752337678730070765488067692618158540432550153620065615663600057996688168018499289727502660638407758858423521372967747027964513233454616832848213274793652642659062688848440867587750105591597531348881595696787025397081647645871224169641828221210636143835111107381006929325149596059851590687036678514626267195657925029649403463747347564207221326380546659075591998234429334067826110002978651731028834574109180363112883669009099414786251248905235482917586223672422398649545998336900491129142456633604145859381142816569082849759742923493752323988010746232351576631000752573120070064032757583159123213511812247390932305990236225033489362101691126404314602689924453937597777867353578681235031034838410423550134398923423506955767454130145739742306091999308506441399997532604472727928484713779992878730927672675544953578095573627043738708695821324770017882627298458180874940943977396332409654542095001462385625360858190971467444361114318096302251796312685867577482974199330606841136932668099529207971794116043087788633023404856832578941702452523232347404764119551480985530264049404789220702354661605552221584728300699314098642676820179702411326257881771942714678941248241466150637387813209212529498025384940607624386317404456798463589861111500706409109560726089931562802134265282936929977432607018539157024363163667354365343390481049241378149223743961999242939013477980088485351975975520470743273752250307399603619741690700878024515847488646585209679644830510459430135637407845456463047469364006024711029892172676830056620302207253440897596858702386561324934835252674436636664267862231014125740807890895461353990791189560938524335140014372904541401385514451523614702638883446751730776267689975691087929127294301495409548837344193387575772897511447353530527836577497508163547673719754630041910999540193788245087813103841771589017504253120133542729376641800804988577515628882870800390431988990890178821324809372270563197014813211559311415958150609083238159112052687616605296469089224753842192812735561437323237456569575302184357095465814799242007475031863728833919813954271008178338536621281893996019665865728321700063866290139271718783256863720989685912095085251958553572306634701797446246731901024084448071839182616480296085998957640835604393315661383697350701438301018007170682742726120234353780560657412180753832771560783330128568605607020614014017860754457712207855397564282035340962052741903102232998330115539105072888358205718183615153994450692845686237242517277115441153748904305579940451526177756357497301115065373343434636596542281945809645638998616443911956587464622411995845483178942782211753979375355602619911331216808729891284170685413363671742706371521432638902506742527196999814639417728090604983840909497486860590683396043722971560381405189198355138085441990514631175760261414474032438191031785806927545152435778475391144692316980547360256297163947846079883661648826068979016102689506150185468199775892245324945070696403685876785956492783472562728078921045258074058871071884786229762824849549561448699247441609888576734222934401249908308318389650023485237972258434028594602011352288338127049004689727328551085534729499432079699872826830678414874336471892350663161264159554734869163204720596208026752228179972570826265061330854090766078550867367839866270042794033277735908533827362349143720621399389248429662484634520757930108469878170184386493203479875919443469831272322293315408050092285687271255655504899380514796981437997153896925198233173425585579934746747673295721646389969401359897827523884689066360535979715792263674257432148292966535726266766782250233922530929422882903135396946964046567832916426806590786763175475990429093042869074052616099553456340991169660333001629463080705123041787882063664156114245203938597922375520811079453822987693431407469300493279259259347184464752302775505091262191112578740627927565775755251538530961759888342853264207875197817692366690198156438016040308311929796707176229404708652441700598227140518717409988336565647207484296233784877223010587554870404035599231285176235097713473955314970639593296564668540854368055566895555458332776653308294780399991083877713675642175762860703709537412642871094597614353393065322622960432181439879724348503054878271177179256331076582961899596065526782891845492683996866008329000323891941970950047721193377650827528941045503049825541708075944878335709375366059373877066800754439177499422297137165117545545252068257051672800415436715888873213906798140797356149495781733676108202622380135767975288045145213819311303402467501511284190512329159641857849809472486132060831999196747027936281445875644898937708935028106471908753508048204617189551405659239197449564080792068292574967251530381072094104921422579709638040993409408163756991264342330187210100918240908610952845153955167043017282807946901175484086275797416961066361464238828551357950734123786516383808654304134557372833252356977100241793195137230552217538827249561710634002269964604125652568852568279915304780972040205437703824457830478410626417769305731121963941021242014021332868213338312584546485112004808733089819549375948343916609923491279864941366659601034600748154514497542145297566811157959746335073141042770980861741781471104392335287619535707352077065068811251645878811466232981533500150450459198461593543960663776726891361480884152760425293001776245623731782650937588116919907471190510786520367527764038162094997111333804724070399957673461795545997426139117980832283315066348303764976918472507016039688776330310948640268367582020028116912257437360302643647320086247356513976134910786655670385403715875926265890167166824428104020702429213623582148984057033852444505783568185518721712509969442422727663482211531305006554789830117389677749257939706715267803975085999909766928533680269514983389717329594321215082485226706282753832618008961082635080468108805079508704898609314485920776308378510107581153525466146866570025887622058627885493221705976721708020571510380524827459779877243862040050941714306843014512418221213946654866931511109581444878990636094288266879404818769948679477823624609521990767937224358053044099448779114390895967443895748636375519872250355398333413802125650572829387551460515082557250513005009916052280131422838279030708820987233708019570333067618606779287864302823627301507898734141561345568267710501983928880371509084096823635434006477069580660402015388508838543307030294634008508628978140395129729152683649008001610224943183176320595084745113532296206982229905217334600031195575141011038117893850517015084675630718855987141594119264224339255270590297232222590852954176141770243338416560788248858628397111787271421576553979074322793368343508840185269309427788650948456952011749697801957441981256722697372408695598717565008655011592042284885204296042215101863417301741777141364994592157510463488356575715921317654439621465097169374785758712527791661134059990341540788200835060927453092388941443532058804294134594307412975229953628364160370115400169375607334105242070927035024659201463603615317802885726260628320650735714130380320304113578721862030628207142831974091033150327786262385557413113981782278890932524338725368881925003190251267939647250827653649114800236391277878781066142672249153207190551659339094231587149036478726596148771201801414467123498716569723656675174016616360211734500761719741016610143630445217868343390251715906195974525427012546532039954965573076736272435415597450054594725553085554596211498163372083950711356361065194555051252320239557301004509388762931953178005298140605362686311358696102990638761015525295049115986294795314215514531884324754671866944566615878473487968118354036723251807876837167377000511990224590208408250610292500674606748868257367426442617501348660760959374817953585696736648423468362227565267957002376736353861628659654342159062134972328801240209985933519314881606359283962350794712871496441027339652415537509710712787841414697330580638252758994008407262731092067976666149853018964894018298873534727773079262548217385861371861295315744384030091061196797754791298024963123999149884712361107825739582180638063194082873227050071573522799450388284957265664414070815628679814264779231165869025117672382136700582020007805290119647101472465854357717753108689769193392005626016878657808382549377492199367810238222278265688856421653203035240155427709793847801616046342894021813588441341540623299044004782672038259956261771443677085011636297999508961151089984577347818490623804378780166346146811707596763487000086018891637211489578505127373753518898268876335728392267566840770245403021114741413509546047675912490924078986884187611305144450133904456319562158611086189358935956970818800961193955707819122616362062843718663390914735460902645336079803223714444028935581582298036718992163502512186326691847902919108528482335681055957422778268171443079685689316584765115872400095644992536416296634363235487937529520963944695390092906974919231206376020376152371409904288338020677606806839530608975873312070691458841831681234889006653919310595841892181503331714123833227261336849765808108216964012017863590782645176568674108678678709897927818411160714089463762146861386196531246068044228435428759626200543390510424187309279100619331817778715061602702926345286525443180659448403011013965609775698075710264781920902756378320266456469816337990439374911715275603212845430278536598862938935339462395175741885420414038784563633521402770619748347611628089777106790562389262070301809780184733734781287833811128389178438126116623544306229127419111466685217628058792126039940527907874410045227304882567556057665708575157003471344123206155296834937688546724024712731764454409287624240501758794185858046037184435846609805441415384642649739225962490142767487805371916989880420903503689190538078363013370957541303823840938318284781116338435412043524239496525778932346463235211047817836606406008037059080977100879878247394320505426168414594589340272317716678799710672379161473175973718321327379156552095822733049323718687049212009364055574661169882048475133428420561189931694994652040591326127161031215273409545433712479521233700661976168247271293418833737074696175029283034202422512838750847443085321822727083370997686242289025191087262611720207063009243542003303732638035209043132126405877112581187493572380446240173534905742708896946239045332687266785443080741331081152620707638109829741180250781650234897718722110363743177056320460543402390434724089887634687712618200028631121012479450228911974834912328081753603144204894196369992324022253870709023871908294911983987989430659154165912951537474012595013105594707351089571223597153372176114565799689828572032712850945167989763979777243844684667701704896646824714683701233124208523035014552625158664729220957514471759544450181644671925866876206344174235888457838017496879293292946556889611218299034553462124508383275422855199854971223799341843452889402624686111235179588065256392941267865453044155803382887114408743837967077095028575664020479787550462387557225167598020392826035933470320806868515134780024399741503676214801332319049257062331720834865009916666370551456924931528858157460708372851912591030998811796020499741180693093592358363437666371730017029493461822478472913772815689635537360342186838891148541097498408269234182306954503846165482352490452152252975947716804192738585395261869659969174405588466599600607367701124197542007228499378533197606831186462370648386106008512526154332972361393311371919247903155260040304012742280542219713391003763772292186387217987238945547535843785995523797061671509477051438968638627661693671852614735759577116832224445314693939658576183161020941186563861060388913895194726525615131109776162688867801978644102643681121108753728309818120571955137790271769326124690268657801198171414325024490460915742212933246489095796286046421814265701537788225087129405633942979088532333741262853068486394892394200302514963476630977708608877332259159776864607627088061191381988408479066350140713405501481170569155750754631073359541986166979016466600665019359096928816697186506636781649445380785638315018396297628328594275635669839504035905334784301954730319874594134568513843793839066602560016354946923449050808719656579407065261275544194952812429164551799000410466891453279392861450618195370856794893819175816571843490629005902610050145204388485274328838582827328585334676405966160486468451484026212258554635310985631942590890663382388280441407093409796034522751264223318323464183254415600455446630765384169994848616364193404125841889991203638441910352059583921294173138573720323019479962757396098812800506992171753370765957660876679149837566831193890016772414815628520454005951665811412457615123361940354347083657515259606341346117916603936470773353567760585491568507088513584703563300257239024352904040831204070696957464903601826337520211234377834585285871622939943644877365134609966367692450371264481110331385226015217082249660292863064758084400734735397100472096359990107792621911832422685385187589370208023571540311712914834180395001455816638829400368877103460987151831528423174866846489998923224645540376936070809684880404436135013655738598158715455608406384588231919868452782186588987687635595496150556972542075993916783124267446073526895152089866900141238925125169502694296778296064931776768944888968015499291228413930300406240695605370627775781593015160012357030441311844067518851613631900594474753195487403278495919229985947408675283671487379220449161225026396099597862230072723597340209910864360558640115537537771752509089097312823468509149108803180711619607397464614065290357264722150381305032795305936271124473459624220174052186285963859453577609643564563426378111293976886458295470486917110948953704752166152119811046069935349831185159478183226742111083344553591174017713761092692120364706884992327247178152583579570926447863218480091148242616025971096386224864289377493999928074377091044813978363530683685182055930840468273903460504715711126888689222839187805017969390051148149819374715779266956760066098366594079586052293203672401991643737781389809168164769745065061183010689813792863496002429386909493259329161450834484747474799213208678180856905961558084746353164962480587802537780027172645424881150503048215781524393121914168516759219502478490211182541732777931643888194057335743084009577026679079571892705467394130530263324900369883794289059007124017547541007744450728385720651158049013554018950702460391469709444879935409860736176120040354204621365070249307712752826239671793536490670170501435757068547102363954223849537046890575505059102048304972313301638748310876324048263060908690202748183520186496833062434368985459360999034830279997060022829555111545103242017866732333404651525791977279799776562956594088071478085687143394622748321800306438823222596887165132597165213119387264040604089275933583713370884561222938150835133161348250285437194432501686563855251885245166153781365739639007104471881863865291077455938041346283768412804690081531804524862536643333879999387583322329068405000217221173654571223227792337845516168707816949449465350727478071928644746123123950532803899554231520657363700264119390253737345510927208896708263921735440526070154441250767934396691475758392221106430761259132277456850303067658497496341904931799950678717152896158725083585356792759958365831810423143573183523055062756521756011943890126303879139003374417079419031246265248645020539894621053983150830520253573227137678628987013714925774192043990527469567946956392149263604525628318872516830558880875182052862943102460518183088338843622765332883160487166706314279893905892811194156407047933380059621539078581721061714841327998245532820100009040319685513543717724842054012397239340198853302485541889763958965977274848490955864449196807074346782242867334528253471293914684355075829902239750747700824099026360505007989687398607990502042359267028514042223109150017920276119735617415795194377620555357645055117334298049997761177724911659215543873487569081431468526365343536343603054977966099037998347166545981005029138122313525964255034484030463334827333741171082062615398549674674457237931529360784123698686997917463181436123600212923369844369267380027564755351535849504919331264959362315485873648991401101905538355361234653927493875034095301623461796222535332664736262680794190292582623583038273697271813569126726252727332245399271233405786434582038550896459586971359134294744506903996878067259999999997/25000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-1.00785297357532671280140259635242154619898686310154817727619651209771872895619538329578339367970677936467079014515173258324226887209924728566278038201577402944097751643437375662890725085973225380226748533528838607048433182320473472917393712788041355250273186049249021680541583418967335365439155333936401133984703514306979059960389624542917022856209462345738553562316706317339322650084879128192778652871144815054848150818432758071168648100858011368038714569776627539360948929179311975428719936331683983408695990734360024461539041608416686812200151622308703120603248507709639737809376912295211467545611814299927967741801778502037235242476604763838392831121733397077853672790716547723321738201960676124649351112427053642534525814307255999410318816686347303591239025000062160908061077500006221055188372289840132347251650223261921488888747209325750671206621491555171077535274402754407863619071206872085801213140819631769328643268092737570858578409144679019228338264779546572904826747001497836132927852114591813692744519654847673342420716912603224421510353196397518041310539291310769041964150016993387598911251949124457630622124349683103995833809713550277607008073593542166945139602113764156724300361853644805322586444817829751683772468350644020047958442828412077987996264651350565378456478767069498322805507038402896649299236698372674388043176674911435841742161421165653619116469462133350183034383756655638667593443409385458556075294148597469758983244902145852122579356388167342763097190330569666916072345593282941768825632959893709829447211089865501780830692534173952477345173754337658155700640090990276392978476215240418596278701281145055730381291316697876171236320383768780882136590904487109601405207472942453222077498006421171545657681465142694666567914477909687948039153953727935466043909041978174573506479699797200950562014742396081023435727396819612987608993927572511371405770292123914976011875696257378290587081016306077432987797203739911483131632498445109577132939267148417879654416642646296181698796323768985409535733938536648411458011730937409876419432806228895940861324740635630280618629971990080780596048212633825892039413627238637016586967316282193692371455283466987631842935604689068394816291829439257660875815875092462627477277452924721080289470271401162283524385425602143199151806794983117650796255436436367584910351795393186090512157725219713699523041866926495879006507231207553905588925249653881263180203314247553869777292358006935114676561137950543296819230852541112031837161603789606294720742163095337739720076039335610502784770183209647973459380927764217106532252132119296751752155095758272307576754589612474826426997767410486511095600945679922872382826847243785729186955556542894998842110651600159501418547845457124301375750974552426155236535754708926130556487513767525116890036552042395302790364884150233632101916900523790177329337508041695023016368962010227831261479057211656903738303959476725601501873237458747005512703662706484922680748875245131299551268711800481286330376347287213405871418298270536721256191392756210855525332870107261176812636837115308683763580605448214061678616718271298819250749312483102726527635055302699810931163885385609827639593580242788054024779974265333792211415629274733523210241270903876848146350049813099276442360587049997221742319872803130460713427956942194077222618763014340173412940960611163070065778192251284746362644304885269178568374507280822849320646046061378459409582329010786564525762803910246039737300711291659548479592792211196237225989246696463961763900436989823449466471807054970567814881360416370825585902370471558396608361115932054223357787287814830911296533955843843759860692938092764628985605608626264188276571072081987752033555169235012009571115754792277461639456846080509634718186616697623917962538432364107011260405941339713179070743396880146786390129324277175780066848740936425555509696806069398994422107502343621410930782242937249326931448720082033157663838849375039602895115458086440582670951966754823866139377931200466701651628961056769701350791241378322423209218281788402656709877255481215886380863345803737041107587478810178599456668676442874885091785086112315233220017280138273225521181098247990419300749288481941099139707844101085066405218011697704390007606504385529412295073433895824723466458335485364339203449057001812264543858902302759611947035301203046079016675023828564374021967448887001527501882828415318958150587739844665986728597616026854667547133923382872500631636812011789702229692499897121249549151915267533028222992478685170348879601511122688829909248899125700667659383497188540960253394907777120995001641384701532050876518960044905504210084408151605251013438622500538149612739857697372600796653902131732836360096402876135867092367308121654150205773155946430191041048663766317201304051850176247707783816747523394638782684650535167907319153971362604071694390177265127564227597588045305038414966383835664416825004608349519810134644814439197443018225263699262768180789589985809455003365730005102636981810369440548354674467313550883092116273347211346479040217376853569490388049279522216664912396378930843542876746089446802798055155926387300953859012161964360593703127475754387297545810728596780487236590495891853088535464746778211991517699092099584427054245976805326337082149510861641269531827599210927637141550921750917862227199575438634256028386265856831700774040841799211196119852964295987917181223172505785807932599263273232306071183788583691630472148566368762483769339041086040032910706661832069803832907195980390607062304823230358202682511247525984714772059679377491755625006204401965683365414248430725593911088838687122023631240790555134356204456702500648398654206379565984517028790131578338056506262475801360079889580952595383054924704598837976808683363644542171219800997984855369669498016005105170452037024065953400296915980368066750891386669581965955249076326623305110957661631360565383231199911718141370518510630537664028536379781028262667984968377321269585560395867626097497795127729287115178237753279930427564919856008831816350041384614906365492133286873242643823219870827499512160202565624775452198484569244236836821017018097793470222608651196389486878690602173728842631041339886950624329621990290812013698490983574166151829767740615264682543344667153714532769730493526589238414741685111646696611250574223509541760825271687182028501297873125094562726801518153250591252986084341256751578977083367580369506541299553268468259256172079666386378813920106149970801631150355556945415593214797630916056413261751475505803308914283725156017565227093273543764232826374242086351470810923029095996645628121791819116736780686584214453176893931942834382324562214456117429132153801964552301564879227978698554735015801509113408256058614054018465847389320596416258762290487895830484305808831333434609929165369685741312562123754904935617366051787844465469826241328433983240123943859866944991247304279720826571883713254000573962804729654545646364059447041747402390973359590745206366884645374142330434238126319111934174188342278380457611254631203685673999219534865086192624129054624556829800200282836210904728385218743057648922670547013261254806424906849289328605443587320778763466884898026279956406557605585046881515120689684419825951665494365781508188049145928169573033919205036093411291088660145269173573185237265190493187771945764157782127784627698727022689468729470816413823736163328307494695919216117499823873358724362933396165980244116061148944473326074751326834540776815976344716487327633794461775647706023002787329732598086890125711570332239071791081287787255223040365094925363360430755968282132347206539598506310732782623496962113703208056541895125722398905490257860877226074170708565234996350290973706268512692132090397079844354929308358142115245007540272428039952477821588180682197950244662879128145432890176725802670922216939034880102801208383544535096894519537459366049108037489819033474156622932977320769622919810737725231180234104158878292015806155389951619756799615442627757422439977851900980921109800547415682342094072449271030881067073676548232286040446274342045859197832049277454898155475446998005765051557087097733676710104253836591699368347207640144046951255946533985148399312058497195755434561295651528586323427066350348838408747496336464733225906062499842917190743087306425279416190450117047170456555702471761786583816850713625030209555811360563921626439693130779034588891573086496216925117863087676341631720483061071120590559721945326285927126397559529274188466451796364002446756694276902465387135489421181088233924558310244726381789744413419447292539701680520138618509343170379888869998236308917729626815345362249747682905026679968978358377949326270170717939846173904727872720281413518730221183572017524299637271731835182210898327468194550480641636912549195636236779050801926383788157134840099639550344163823473846958393521680377815054119906774160122927469031706672820884607169958369533103752381992813398848026824057704923472982449733207880385897475322508918143055843540130828552397836402440814832266688375065278094001367539560600258394479791641021711889142526026709377275092924331436323248032188277578432567458742473708083295782432562172470579508593110526002572171050754642205757695283709408369946996646502661767643044397001612965452278759361308123649010080159913782892893347957492685321800084035470546914996504231485015907647924001147880497645371623081934014053301723248271833927829025424708572122053318599511611445600953609494995583333252428257349622080597856070774648408343893132915258482603454895218866708144737123387623839767305680907549306727713200995731022650577488337747650589489193718804051402561058432398752234557676746757978243766463719030176018179065452855366526001548314967204782277409757257303986146381311187183554553157995206715190803687882905905615946421085402046268222217037409509940274296637845448661710305814871987408848217339191760901649031221100347571059758912483473799453407586571388671281899518352784707870669136283089907395670455435534442712025621533288625865987005613427674952166365668933116614318971384703788294852016785464252614731326332688569493273274994647785604109486768233675334250939290123194446787995885064555913400844275210382263687969546451333580500416558788775374428121247384083300009434366349606972666690847531571753901262229914382115469271615837562747361846568404741533065469371042062180781650278480251834454823744000272204225836503095905065827100772926443598972622949492224269906013021580114412030947595941109303003544283920640205198433630193425657735282939341822081949857237268812373412002156425105163109038196383791066297459708740720063413024759254134945522457135681441950292628989903937374381185614091380847547444213763824100290985885813923999424017514984849091493030213088933683375458825353375317621438045631899592424296019053933511951751298656443063096418910900988133638052382080664621305564635528904260210514346433483132246584767593984954972801559654389535737827746272516850931322059118878515833665250319394341364192914013701780505221153117945678322018745002626728320553637132279081944332899798242196069681020166383086438274152922664386734240875633061373075965167454562598765712789969654735660156950244252004413084447565348498419388679298693630088339668268184756713810506787695079974166462674118102852586142677910170713043949838813292220593687280979081506979216439537307954836005617576283256755303515849577538958794773211172235073544762867384690041559938808012997394669676143496264392525412458571035343872318842753199348719904939135825162034040487793272049352413203633680439583249015500747826721815787862801928044319523187972674477842331041003058389644198453609136451643629395825897406128571011516929995748271984103321780333873535846384956199347575582992649153228168318948896377982071791795077372502893390429259211463295752768318594319164769505089029873652475409298846230191444783301130492454842171715896063278282766155522904777650929251933595348671033783143616373698742716235071987724906752082810819164526842307021438406524853755046092268087974960916750558215956739253119741546170474545758290769061914058551682061456122744576336519031633816133706298434712880638754170467212676048276302906881829765409071811940324788746967177076314268388959287344354687557449855308323259590419254616449304845854165886942909749267496962883818238634647838861776836118510724893604256868765531470649952158749650105997694755846168888211285863410873018128987142593124777192026319325717274774215630124899224321722153072983089992937462860784549802902198273887139080714827485782712333847753690239175774785583795390609630483659231895294146978816309272531292624584707204482995085048559902904662654246032516973417424110604719232758275852086564570732042651922176582329185994399599313816461041804569494132401961620867966031525225828028059110644037177389478048992431084719576337548393252787175468189919867498162661290847398921328609328905240384196385409946705640116128265181693278869029768998354270528355089311784914916864008714321713220906202958032606808672919125559840893281255190629893083339597002548103518240271238947817897286259046759123119747753459852136556247130940623952185288307122181163877215250286276719615639080558618937406021835939484095276067553619297845972307639585971678759482301855590101257758716783584417449374591504870687103366719478109291291356599925818554216789764805474503135457192888125871958121376749716373619154252477671777847810547832086547383947223381090376318140015986619247558945449021377345863247226324666492001746036329186127225210611522458097995175344652759470241397260002142145617535656703994926550512136686204620638878616166165484993466739125147255115225188485539925484803811456601106286392854534015669046729703042746066672102856316275954107523652988431368599287848300799204690290996746993611009350714920283061952270770472634161730200614480262462654400231986752672073997158910010642553631035433694085491870988111858052933818467331392853099174610570636250755393763470351000422366390125395526382787148101588326590583484896678567312884842544575340444429524027717300598384239406362748146714058505068782631700118597613854989390256828885305522186636302367992937717336271304440011914606924115338296436721452451534676036397659145004995620941931670344894689689594598183993347601964516569826534416583437524571266276331399038971693975009295952042984929406306524003010292480280256131030332636492854047248989563729223960944900133957448406764505617258410759697815750391111469414314724940124139353641694200537595693694027823069816520582958969224367997234025765599990130417890911713938855119971514923710690702179814312382294508174954834783285299080071530509193832723499763775909585329638618168380005849542501443432763885869777444457272385209007185250743470309931896797322427364547730672398116831887176464172351154532093619427330315766809810092929389619056478205923942121056197619156882809418646422208886338913202797256394570707280718809645305031527087770858715764992965864602549551252836850117992101539762430497545269617827193854359444446002825636438242904359726251208537061131747719909730428074156628097452654669417461373561924196965512596894975847996971756053911920353941407903902081882973095009001229598414478966762803512098063389954586340838718579322041837720542549631381825852189877456024098844119568690707320226481208829013763590387434809546245299739341010697746546657071448924056502963231563581845415963164758243754097340560057491618165605542057806094458810555533787006923105070759902764351716509177205981638195349376773550303091590045789414122111346309990032654190694879018520167643998160775152980351252415367086356070017012480534170917506567203219954310062515531483201561727955963560715285299237489082252788059252846237245663832602436332952636448210750466421185876356899015368771250942245749292949826278301208737428381863259196968029900127454915335679255817084032713354146485127575984078663462913286800255465160557086875133027454883958743648380341007834214289226538807189784986927604096337792287356730465921184343995830563342417573262645534789402805753204072028682730970904480937415122242629648723015331086243133320514274422428082456056071443017830848831421590257128141363848210967612408931993320462156420291553432822872734460615977802771382744948970069108461764614995617222319761806104711025429989204460261493373738546386169127783238582555994465775647826349858489647983381932715771128847015917501422410479645324867234919565136682741653454686970825486085730555610026970108787999258557670912362419935363637989947442362733584174891886241525620756793420552341767962058524703041045657896129752764127143227710180609743113901564578769267922189441025188655791384319534646595304275916064410758024600741872799103568981299780282785614743507143825971133890250912315684181032296235484287539144919051299398198245794796989766439554306936891737604999633233273558600093940951889033736114378408045409153352508196018758909314204342138917997728318799491307322713659497345887569402652645056638218939476652818882384832107008912719890283305060245323416363064314203469471359465080171176133110943634135309449396574882485597556993718649938538083031720433879512680737545972813919503677773879325089289173261632200369142749085022622019597522059187925751988615587700792932693702342319738986990693182886585559877605439591310095538756265442143918863169054697029728593171866142905067067129000935690123717691531612541587787856186271331665707226363147052701903961716372171476296210464398213825363964678641332006517852322820492167151528254656624456980815754391689502083244317815291950773725629877201973117037037388737859009211102020365048764450314962511710263103021006154123847039553371413056831500791270769466760792625752064161233247719186828704917618834609766802392908562074869639953346262588829937184935139508892042350219481616142396925140704940390853895821259882558373186258674163417472222267582221833331106613233179121599964335510854702568703051442814838149650571484378390457413572261290491841728725759518897394012219513084708717025324306331847598384262107131567381970735987464033316001295567767883800190884773510603310115764182012199302166832303779513342837501464237495508267203017756709997689188548660470182181008273028206691201661746863555492855627192563189424597983126934704432810489520543071901152180580855277245213609870006045136762049316638567431399237889944528243327996786988111745125783502579595750835740112425887635014032192818468758205622636956789798256323168273170299869006121524288376419685690318838552163973637632655027965057369320748840403672963634443811380615820668172069131231787604701936345103189667844265445856955314205431802936495146065535234617216538229491333009427908400967172780548922208870155308998246842536009079858416502610275410273119661219123888160821750815297831321913642505671077222924487855764084968056085331472853353250338185940448019234932359278197503793375666439693965119459765466638404138402992618057990168581190267244631838985340292564171083923446967125884417569341150478142829408308260275245006583515245864931926134000601801836793846374175842655106907565445923536611041701172007104982494927130603750352467679629884762043146081470111056152648379988445335218896281599830693847182183989704556471923329133260265393215059907673890028064158755105321243794561073470328080112467649029749441210574589280344989426055904539643146622681541614863503705063560668667297712416082809716854494328595936228135409778023134272742074886850039877769690910653928846125220026219159320469558710997031758826861071215900343999639067714134721078059933558869318377284860329940906825131015330472035844330540321872435220318034819594437257943683105233514040430324614101864587466280103550488234511541972886823906886832082286041522099309839119508975448160203766857227372058049672884855786619467726044438325779515962544377153067517619275079794717911294498438087963071748897432212176397795116457563583869775582994545502079489001421593333655208502602291317550205842060330229002052020039664209120525691353116122835283948934832078281332270474427117151457211294509206031594936566245382273070842007935715521486036336387294541736025908278322641608061554035354173228121178536034034515912561580518916610734596032006440899772732705282380338980454129184827928919620869338400124782300564044152471575402068060338702522875423948566376477056897357021082361188928890363411816704567080973353666243152995434513588447149085686306215916297291173473374035360741077237711154603793827808046998791207829767925026890789489634782394870260034620046368169139540817184168860407453669206967108565459978368630041853953426302863685270617758485860388677499143034850111166644536239961366163152803340243709812369555765774128235217176538377229651900919814513456641480461600677502429336420968283708140098636805854414461271211542905042513282602942856521521281216454314887448122512828571327896364132601311145049542229652455927129115563730097354901475527700012761005071758589003310614596459200945565111515124264570688996612828762206637356376926348596145914906384595084807205657868493994866278894626700696066465440846938003046878964066440574521780871473373561006863624783898101708050186128159819862292306945089741662389800218378902212342218384845992653488335802845425444260778220205009280958229204018037555051727812712021192562421450745245434784411962555044062101180196463945179181256862058127537299018687467778266463513893951872473416146893007231507348669508002047960898360833633002441170002698426995473029469705770470005394643043837499271814342786946593693873448910261071828009506945415446514638617368636248539889315204960839943734077259526425437135849403178851485985764109358609662150038842851151365658789322322553011035976033629050924368271906664599412075859576073195494138911092317050192869543445487445181262977536120364244787191019165192099852495996599538849444431302958328722552252776331492908200286294091197801553139829062657656283262514719257059116924663476100470689528546802328080031221160478588405889863417430871012434759076773568022504067514631233530197509968797471240952889113062755425686612812140960621710839175391206464185371576087254353765366162493196176019130688153039825047085774708340046545191998035844604359938309391273962495217515120665384587246830387053948000344075566548845958314020509495014075593075505342913569070267363080981612084458965654038184190703649963696315947536750445220577800535617825278248634444344757435743827883275203844775822831276490465448251374874653563658941843610581344319212894857776115742326329192146875968654010048745306767391611676434113929342724223829691113072685772318742757266339060463489600382579970145665186537452941951750118083855778781560371627899676924825504081504609485639617153352082710427227358122435903493248282765835367326724939556026615677242383367568726013326856495332909045347399063232432867856048071454363130580706274696434714714839591711273644642856357855048587445544786124984272176913741715038504802173562041696749237116402477327271114860246410811705381146101772722637793612044055862439102792302841059127683611025513281065825879265351961757499646861102412851381721114146395451755741357849580702967541681656155138254534085611082478993390446512359108427162249557048281207239120738934939125151335244513556713752504466494177224916509676445866740870512235168504159762111631497640180909219530270224230662834300628013885376492824621187339750754186896098850927057817637150496962007035176743432184148737743386439221765661538570598956903849960571069951221487667959521683614014756762152313452053483830165215295363753273139124465353741648174096957986103115729385852940844191271346425624032148236323908403519512989577282021704673658378357361089270866715198842689516645892703894873285309516626208383290932197294874748196848037456222298644679528193900533713682244759726779978608162365304508644124861093638181734849918084934802647904672989085173675334948298784700117132136809690051355003389772341287290908333483990744969156100764349050446880828252036974168013214930552140836172528505623508450324749974289521784960694139622970835587784956181330749067141772322965324324610482830552439318964721003126600939590874888441454972708225281842173609561738896359550538750850472800114524484049917800915647899339649312327014412576819576785479969296089015482836095487633179647935951957722636616663651806149896050380052422378829404358284894388613488704458263198759314288130851403780671959055919108975378738670806819586587298858734804932496834092140058210500634658916883830057887038177800726578687703467504825376696943553831352069987517173171786227558444873196138213848498033533101691420799419884895197367373811557610498744444940718352261025571765071461812176623213531548457634975351868308380114302656081919150201849550228900670392081571304143733881283227474060539120097598966014704859205329276197028249326883339460039666665482205827699726115432629842833491407650364123995247184081998964722772374369433453750665486920068117973847289913891655091262758542149441368747355564594164389993633076936729227818015384661929409961808609011903790867216770954341581047478639876697622353866398402429470804496790168028913997514132790427324745849482593544424034050104617331889445573245487676991612621040161216050969122168878853564015055089168745548871948955782190143375143982095188246686037908205755874554510646774687410458943038308467328897781258775758634304732644083764746255444241555655580778906102460524439104650755471207914576410574724484435014913239272482287820551161087077304498761074631204792685657300097961843662968851732985956383185144185687257062806151152900348517622535771916354129334965051412273945579569576801210059853906523910834435509329036639107458430508352244765527953633916265400562853622005924682276623003018524293438167944667916065866402660077436387715266788746026547126597781523142553260073585190513314377102542679358016143621339137207818921279498376538274055375175356266410240065419787693796203234878626317628261045102176779811249716658207196001641867565813117571445802472781483427179575276703266287373962516023610440200580817553941097315354331309314341338705623864641945873805936104849034218541243942527770363562653529553121765628373639184138091005056893273293856733017662401821786523061536679979394465456773616503367559964814553767641408238335685176692554294881292077919851029584395251202027968687013483063830643506716599350267324775560067089659262514081816023806663245649830460493447761417388334630061038425365384471666415745883093414271042341966274028354054338814253201028956097411616163324816282787829859614407305350080844937511338341143486491759774579509460538439865470769801485057924441325540904060868328998641171452259032337602938941588401888385439960431170487647329690741540750357480832094286161246851659336721580005823266555317601475508413843948607326113692699467385959995692898582161507744283238739521617744540054622954392634861822433625538352927679473811128746355950750542381984602227890168303975667132497069784294107580608359467600564955700500678010777187113184259727107075779555872061997164913655721201624962782421482511103126372060640049428121765247376270075406454527602377899012781949613113983676919943789634701134685949516881796644900105584398391448920290894389360839643457442234560462150151087010036356389251293874036596435212722846478429589858456261161429058888601525220131181223745084497893838496880696208745143855437814310438574258253705512445175907545833181881947668443795814819008664608479244184279741399324740637912732906968444333378214364696070855044370768481458827539969308988712610334318283705791452873920364592970464103884385544899457157509975999712297508364179255913454122734740728223723361873095613842018862844507554756891356751220071877560204592599277498863117067827040264393466376318344209172814689607966574951125559236672659078980260244732042759255171453984009717547637973037316645803337938989899196852834712723427623846232338985412659849922351210151120108690581699524602012192863126097572487656674067036878009913960844730166931111726575552776229342972336038308106716318287570821869576522121053299601479535177156236028496070190164030977802913542882604632196054216075802809841565878837779519741639442944704480161416818485460280997230851011304958687174145962680682005743028274188409455816895398148187562302020236408193219889253206554993243505296193052243634760810992734080745987332249737475941837443996139321119988240091318220446180412968071466929333618606103167909119199106251826376352285912342748573578490993287201225755292890387548660530388660852477549056162416357103734334853483538244891752603340532645393001141748777730006746255421007540980664615125462958556028417887527455461164309823752165385135073651218760326127218099450146573335519997550333289316273620000868884694618284892911169351382064674831267797797861402909912287714578984492495802131215598216926082629454801056477561014949382043708835586833055686941762104280617765003071737586765903033568884425723045036529109827401212270633989985367619727199802714868611584634900334341427171039833463327241692574292734092220251026087024047775560505215516556013497668317676124985060994580082159578484215932603322081014292908550714515948054859703096768175962109878271787825568597054418102513275490067322235523500728211451772409842072732353355374491061331532641948666825257119575623571244776625628191733520238486156314326884246859365311992982131280400036161278742054174870899368216049588957360795413209942167559055835863909099393963823457796787228297387128971469338113013885175658737420303319608959002990803296396105442020031958749594431962008169437068114056168892436600071681104478942469663180777510482221430580220469337192199991044710899646636862175493950276325725874105461374145374412219911864396151993388666183924020116552489254103857020137936121853339309334964684328250461594198698697828951726117443136494794747991669852725744494400851693479377477069520110259021406143398019677325059837449261943494595965604407622153421444938615709975500136381206493847184890141330658945050723176761170330494332153094789087254276506905010909328981597084933623145738328154203585838347885436537178978027615987512269039999999988E-30012" + } + }, + "epsilon_not_above_r0_slack": { + "global_gamma_power_slack": { + "rational": "0", + "decimal": "0" + } + }, + "beta_below_gaussian_window": { + "fused_gaussian_above_kappa": { + "rational": "-8707435716562781020681701237528555044940900347590310341111463205700259189111397358920697964649562129605796091800517734022465684205789424996995522284253485050723688458671802470019589633484381471798936644558489187444919356353609525868479665793024123895992691862061929313649256994397612296506173944796233994824410383345737784976893947650034929999455519701680822911351412018447938212549512824779120880841501142115328087977419108874848378058833839964689250165703032731293886875354598652333419962860148990321739327928376680935897774271576400640450088446346743487018561629497289847055469865505540022734940225008291314516051037459521720558111352778905729151487677814962081309127917986171937680617810394406045454815582447958145140058345899332989352643067035927094889431250036260529702295208336962282193217169073410535896795963569454201851769205440021224870529203407183128562243401606737920444458204008716717374332144785198775041906387430249667504072001062761216530654454735500861148935750873737744207913733511891320767636465327809449745418199018547579214372697898552190764481253264615274479087509912809432698230303655933617862905870648477330903055666237661937421376262899597384664767899695758089175211081292803104842092810400688482200606537875678361309091649907045492997821046621163137432945947457207354969879105735023045424554740717393393025186393698337574349594162346631277817940519577787606770057191382455889429508655474850824377254920015190692740226192918413738171291226430949945140027692832305701042201596081716031814952559937997400510873135754876038817903978268138945118018023363633924158706719744327895904111125556910847829242414001282509389086601407094433221186890531788847913011360950813934153037692549764379545207170412350068300314187999905222164616778780651303022839806341295688525613607820601834545446491548367221161175266397713930337507648144774242771913124417298299986699337072283736006927489483470669509130592845211835909548368848281698493452290759647253327547905836577096465076374877006105990964522198574822229178130813044906683840176380155761244669136966855965502439432037450997027534150327547122014361457369731770356324615889204926342397601164612987216682248689076118575045769401956563642836900506233635510892593803936532695078514206087296835524324984011332055891498267916866171887297073485296297815671254547757864371880646025219465425339711499658055107755707122596087129218204406444926873062298097403521785266644406424036753875504045483561327330471150256477884663982315351905010935543937005253766261805613681503377689612439459957782606872294651184638874529126645477147077069589771855423805858992179419773510607276982082415364322783798139100551646621675556648994225541675359057407983355415991231213433426375827486243183322509135854735155581923887979190246873576157951049697722984852521322024730593294379515754302952059451525305544270108780213024322096759548561172632901569196116706799860514010643028089934209426055184269086549077136578782871563770177226326591404906748550280750359386202584207820091660673991146420732778312441122999056444174229235686474038154983930065528755353178124869312526418991590977896270432281809923807787115593241556376512266474939066123096255141626364847788318321444712123325783743594555205974074693928161418704195724307911258043675779165046016353259135159435416166308216279878379860945091698434490882227023178457538370612146582768711542511183073687498218462580479995437043526869137434655589691922958829306694968947643523180092081586801403279762462123197805048493727239603977695608588244063678855441887448732831225347460242882981591776382775075731354877317627031630292042584558651364922978140908908859918737547220779366908269938365320776494666458714492855352907182053757005583150856962161852623016493546963953585608859740280618811480752212395756568570132448166021124600314846752292060908772495019205038995098879581574047323136873816080079562709700445823042956308380062107376678420047852675303905995468773101688817350550423673224721980606980588581303793200272242630116893949782325787961557470688080205377331043234883080761732364042600388836951718846607312759362639270849683056727925010349636874633565517219378343413413992714887355640644661077925437084947798974498162909058966288736377173490327560837770460891558823838792836439231088688767362366462531202011949917723820983917693009943106969103925701776879426393763899995884846147678517417557709431649908936058921176181576055158925015276015665222735828121973342292035121473673543992967320624939987395570338617239394266463412279233016036846434214821568484113728524489992056134640373359982226814480362869987247084290807742560363011302726692861544122549238088436396424505863125313920607431583656800683798048109576844154543389568344412589137214263070964920953367674302084278107278387197018367427363579269477829540559769388646872623232712812181279269506483294852375155060936737991079132765259693094605742063723904137576481252688203886555911876141756198508427298070491236614772127260825055515418630009169643204906056048840319873560105932904681803734492785873285446106793469831248869393028746387959721198897887709658733344768552177301632198840957059258889751090427812543679660157694190059256901722925014788617554677789270247634979021102287290328385324470391424249114976819803107029964587214669290740560232766206374454999238037688035419632533085672536649349891988416485158784857157716206531069914229172659618355713517295041721294016236909385511874857210007153451108753330381778115532114440633523352531245552735374052235862530988561187453011146884375618231464894390157750283701479636870190781253619234479981963158311584589929781468489234154513784890461157161707785933076458711565881620388080157634933460910087363866295319777550793379935588889013973448706077682655486471731962125982933211550582157832298973873842669644682763688264038472816839867655214705604686642223922813473895294523863594648058635951626996473551533281835582466135797867813637349979554872266486556324564886770740591576897589448556873713824508750817187305356079959416079536582671818559537524141025362046537077750676058208896878257982708048760118163281119013782449332059138154812259927223712857629855046531227200679236184601341824868107448267387864192279494336307007990786407084930255234031182025571064816951055839666810782342787890510389075265982981793906356562834963713899360481408484189516625757092656305161590634218922729511564241882532399771754403298631088548878815758072739939817899433713138725387641453395254149634284837707408218159096041965284701032907736021694045051930199998839674343579715804409567195802482051641217038357973038433639331376616404378561151429788733840791764353188126966653389689327958432735166993756384479322175912846216320907490262092550880316154816034191531510771744310437014576150944669451272567782511721818277836855792013132316682432327905523694545776796863542909271524065307441586490223405633918255717911560927496503815500265499398167001478302758965151627045701344107685984728067793094601370380682709801583026086638907019481961601609866329055266939898534868816643166211395337966945697408615197658150716783498321123027758224710933450295204891152424402398637081195662085441686508759270454278689016190515329974570491936591277347550487068982578231805138205046705879776362001791432250936452869604387823253135051751407017917691388404694454359533635029092039574541032824257429902190092191309574730512761941512705239286209401874897259459255878377814430155142401035670217609440210271607320148786475986201084617607786380102702461161846751625942344015550685906665082693806125211464084542565546773546305373128626917940981497910535870481432462014594123197039894566326871366316105490004732694869317085511715209932913329720414537669734661989965737077052731629909207042096542249567226254398492249689972278729259772064615470976053346158084835852603090051558037959881103680059967371557067645473188469730184630195313021869061102859924696710903437115613369889597006384855136560759345670342553590644138444858133109008199525163089987080275572203980716985992481366221542262074768013955792977986468833523593660032860084532068695411848690590694010748836696280074967473677978080894148071345157964869204456750694054899302144824669899598700790030857336827422463391675355332455371036822405102706196271094381778536458241701694600134262081412992777762568277516099657493108527708840559829582947934288907556626995620948756487659621103510186750967122793206318753467811199285170281785624820344493171134773666790823731909725409943272096881212334760608071661526438142495702162355634803122659014309423722710684241161344253981492646970080860797116849388268507498971180202008948975618127979019481694598896648570709053803773657599585464910268111091259086830824552592629023750343555841455075176903856289690691023113487780374288198987030787804787779634457057209758328656724789737700762230359744059062887646887058781569945618260071707690268495559145516020849142382227643855556162474482661348980700327872025906429011037930225106860604796868916782575398409649988898737901423808652155568218788078888167464398077016817396779878457262665268666473515580470077137539193337855228018776495254085664350933109663048589206418994600607838046679314473501500433112940207953358655582163821549135748043793219364458442564917607563180495942960763072128589213426616373354187786308537399771050049020691152367081294135032925946127955667336263623626466780131128174864426005228158569791233598164413333737864435849715106676600556272205414090277730583150120612880348749374618544904867270994200567448185348688877672246417763321976113906530928313862737095591166033914176429879503534863686129510535363002635696651493950752232605470158644768942153975530437169434269343937788180832297140167569850397536122995155691733427325252055764859190406822675497203917194635484598361778275968745633151193656462959938488880798493339705409845052664345058675325988494793447861860525961934878975202749784859365615359716347821092166643391581108052372457746257890329498469112647474432337395091582014945894418365088492419941166143722097046640210984691686066641077209838663676458187480691926607027401665537742743746877874935730533948136310611646381252571863427292997599620990949483825827206056320484648902096611255291909659293452301749737394307381925005503380370604067388902994393416856442402967450056234023741775905244935961077164902765894288190466441202938789295995780146903431980517333492119131737960139277955065808784207092099400696720537130824111840929255066740351386097632313760085400832287040119699086284279498300345581714616062881137416721740140551157001257914644678480272281223878122006851496765420036990931109564912051554766662480841137670700244110630135055691608219972161069342458028897391836408433391455666330676883741161970037600957635211315302350981456135601945838859951941428914172677781461215305188257549591786806244364692243077955530556213721029094912704058527485122800035419531827143841114429824557067467576465060562513732851992301496376604534486012467569638062686313365795779199841326038628045672652134979021177601251532258186989621660496131134194191548974614373980595097056800422326589204887558928307177452619134294313014348494849279999127482298595801758220975813669240965927746453290744643396257571284218198139823107774749722795626155463318263769893235559997341916562114266249275637405974420462012984247237797545737876256396762973654336610252831899773927050912253564392630284373183803792901111672641069190909964304674248480223977750372820895639823934166437283925519324939366286753277881162564677853190284546075362122241035452980256423561925708769565587725876253301124692519721859650726778741359773918450727292449097938662930125450480898440153574999756718209164186491990726937705194759562577057891116286085756745712006049764852720189553822875211880461800626687811083734540020255855781519180019512782211301934092963943988757660300945009456925659453931991266834272703578998280257388361120296375396961263953391436373500442884657599917803791992839528938714972977845973991345762505737139498023776887156384652060534771158959308097897653182568599443485025669615286116534155147869182738267669529636101786392744662007420249180372606599439207394361494510029014400696488625223631856126769064186627849989893559584284206901075179082263188568094411231859595427826748263434050030687072706561682227305870211239336036487735797922854602483173446560024545805425937295895165321940910265184789916753656342593908575833179322786695348686273335076951625784239524547521004589292573469162546853335457654051692948993100831130416982700039915528077856319306185868624923880644522284448801218605588252404309513742309920697674412535948413799611659943361053214976852301567826830731186086219108994247050495999593691546954603006358691830066432933059602274385998871577234477612172980185056381733016367814542355020143862195245584799419752863569896064125852356444119922707261552419660982704108355441861390224114558155802244956734408154689321079340267365249039991141540468765207867034837338416687666045528618392185687305059202823243240521080732194534104298614764918153060385640158222719560440083651110609488486519522851580412991144159715363972108084845821272345595042229333661419775789463659194380153512737631365722244372739611257076817179456425150145943031342749094225733692584790424243512135178377841234143630586362230419919958016623394156626460696136526793495683362518073425308904136437334551277839980611975203744556152902050485973969213638969386185581675992194561076051511929136785086894215356055453667685187858691907548039523388100557163852284380776357640815068334582918276895799743997040487798746400286028706012526096929866246188931156335898817214693283231623199468890016350645333729165144842473610592326774935205558726666184494306562722130909918298349584578175466202736003081435746273088787917036831786138824616109036594342617025113486436548400135325605725376498342697506208156284770669654883203591409731917197544727439276645830974518522832871146273979695357704750246380394239814057056625836392593190511173699523062497599182824817668948592583889016168425349057472987044936418916534127956789868491735848608082077144316483516428221275537843047995880335112824927590006950187372400614006254754180596728561021231967834586247445549460141034521902318930182273996119434479301332398811743007005222666571994526649439400154818755422638691741208820345472335089337280163482743101027371287498194228577245508713977217858411475178237279294943400739609823725854394815023825016922881739081289624321616980264154654849563457392970340059398714214665053181696599994242743769698499797665486650050372164569576271558348889671796435390320290249757796708392797029735755374862202613924775622527264888336745566459175335778933424036842600075558038587524729600357680793606465104749295986176225565568151934186270767204840143721277999276017530639055887542143944449612286788966237282781944508181638827543746288517031032701631732896832912580419305626427935057467866334250862912563421018153904897488162568828725898194751123568073943732529748376342593501648287922308360876506979871646618993519503280676083043258033056847381890493519134577789114896549014855402577998233524364781953539799154610609547765067638755250717265741779397278302048723870310806842032155919171271191072003649820618306065080444095182680724325736415069579270132114038483591362094392670305568643091514615589573685485549958345205699626728551745422743159311846108975523223448660033536777263269899533720221767639490728042420705144624609943279205167963686703489288947287136451237676803427526710491571231618680827519048277905346094136764458998927118839238538230575630800374374176590613644933035212164201878306680869800726698534244341307645410417249757888535297980793034564160305059970569018087860889037928122937772079025094541524425631783229716310020420887398662342371763499889420234531564684108407682033945812899226632352416123252116324419324045887020032750633482354676991634010494266015348975933794888532254569958335382147637527374575707769056197045500958092771787357533997567828616410251069876561960484970022702375350064926399694280546825487974867295088425609800308494436966660079749714766032708341760401328484995927649991415795578123064440571876996103602924578503406169146675761768692653718283306601220232540313269362692080776713019861053561081431500827035935152537801347485391931991206889173157663438369127898704084118961323639460750866491827425951875829739446459772839220369746329731599297848567399648200216676157439182399230126332900825308032211411628962122160802674711594590768686933640889945441462828655532697977867472743440609967106075689112407500216164272022350149775912670948739621277173931360049211640853061877180594160951037572942181017099425799477081905758205164958275267045833898483161435979698850815772268839470699167731167869446591315615643380298244030423073345713186846936249786052742909183388132221935269679400054071359822006122296447677609363766619199581035498674852633036595938249634706785101082151547376283038961048028047477681391152062421865753269331927951809771992878454183285357191626354630099852744314717119912263845481335348116598574913002545797480548435170253096382397096901817474786377145368096272968752017735952116881999936966263196178098554534526290021993359092825462544071326366353181075744571023350508243261936506428264222397607821507917286003515281906600675012683588583361289122491917212485905501986726773982592876249441991610138329215378502447409443977667883766694506122770898958064795646062540777003802080521645287097505058148549697599905475856728485542881892518725586971284673284095034484318271605143430417755373142845212945112596017061465164320143428920256572244106406133324283151708794907948855610462365022037427386061169525650077868610986855697301395863327877007289972785319843484130024545498046853691370961364276083064872998744548561331439229068264825717691984226595326858796322756296069443145524386021154266645862381331909831743446674975322253962833365887394433491250485752786907675090026386023479840461382632746751598105845360244432390819562493414306149595992687352767667422414531265550111349451214518597567529106173782926263985510538049449988542520805205713155868427024747498652026653385274272938921492599787236534302685670407370832449195661860497682156824045244252472785553650125275672105338832245059707939090836859663111195434705831001649555435800974808607998125743065184656707043171430854654181732248434453758185445810773442286613204891460715649521848159349341590253570889168219578149986019322488762317955285715432979616798770436823568809228786758889972025895389767040326551876102742796201310193972909154843416557266619835218379622168538228886860042980633869944255499613233897517455320204621840923930248977324812671963250742959855993989325986469044488934760479354642257068271116291461641461713372617915862382898032716443359164456062697275131928011220377209578948543879469138756488146319684863188872402414068412360533827598339027655892701906074781837329099798955344064156765910248782337778916650488179818493892920507050560087876956911500351051071463077051602574882145696079843455396356440992350337477906455374159518854372272813117432777858501880857564782755711554993259778877689497599901238077522940660660991275288608661068488146042118279476435849704092607144770725546827292857691380065606128600687174039501843746867910498532610981458502196564232608670377161287077056722590332242714972334831788358347629466412322370513494992432877017329189928698986364548125160239711681961176270273909248081601859315668958209275200666456122833245253962201627909340435720082835192465528981326425609442020909192815187758920545185520311430088400467148478052883190251022691559421009355330060404451470131732817517313945683985381333524221224597406153046902344760118864000049300367195642516165875528022840192589023371384311484220005956051944577129880252114921790755551311791853523502123769565380484600245423924035756746818209546368584162596111298871626518003268570953407868525966917863678356470788653639986622651071653915636878652045664110491110082485005016706588463703518430379663643139659291324504629167387533521196225921816012681779829021540938035906520623267716404020812686520134282327588636034689595181018670423858200760744748055197738598242024482958536445507114066739456341995692422275085651206368530909805010663969997052944949856791595631377360208519378656893077664130567789638641839247336799593260836966650345292617840086517859468187293765628388664840185546399554694082628204567364622932352960535620289730340985020195027048098664732143357431835237681307037397479996518320715034191081472832010003816407860359116751893395207833436995898180542646139977463595172468615142164057215574196701574803876686314053383963608869891799516374196935933728543083779578898165496415057538136748408435741540066694608132748185049999637554080709598350351011404799149999941272879077350764834612232967297265957491984078842556790359194057825007443919625192510251931191847934533884912981717155820999568581357483444620538457886540370014418450362057680466137536633756621497005329355198908739372104840494047168444012729038757001804372175026134577254003781123940559329695941908093228253003845717969015969727383460721026290532960724493495714534862551659831509152120628452922080558967035677188573780174557415345695661412512934726503624240311490442369559021781270634687855733169533907730091094234356203988770383104805258942826085687587551712620057213001194643857377152952584757349168240749080692600523995032774169813541775571874575225033292385512988092845197652291899672212384825677133539193465037811648268767202893823300511545068057081504995912151854330033491695730459188969587522658329838296634293771354822589770986019616946372548158612221016323710918086042697371581031470518279279173900343201009689070070229403545809459194761179695391580622664683064328842584926725691754822147452860037529783500338219865384239331566953216966165236466919566617818206053694391941235558318968024713351545676945843236769086993501341423920276128117914679794039383534886225948547481798524890555851982619940664983857473748893695997989518978203770774800086050898373029796928121031102677826234755939897944133368579865027151361998854242685876630680478243144788876883820388141009227317725781469666867377413820160142349845297205424877429294044783366248624322628463905940382601063298188940777910462478822850969396437759712003716979110398078978370092534441837517232931910535576119229984911286104844813302010214578801049408772839117519540855333702734183023692028752344315048172528434762280978440144586566458783255797233986482625733367185933275072031118603702266889838315918304692146847549471854235548915870955910216782941478206148210714211022199956443339455381581082549292238087610371061498280070630940589548074348859145058056964415090174440666288944196943119316120218919172916028041681711826172078660239586916916989761831576292708332875415445009343234458572907492103199682667105794467934577857656437054984568111774241483668477072973494805668559367421538712940359032586422809962176657284491148773098216080621731762904788644358541460668976407496639337316585397346857515792078922076731065980966090497315144883273131446079477760465542813249177978908278164037556153764378714489671612225966241416355627605454936714534630644593422265507798803848294093194565118373623438863711392657630801219986675366341433136287481029025948187939942356057663040783726955004456561170770519767002107420097016975422879363302564166182724860579143666457471545867806309720982108175274777922182847031198900929708922295522742664489271456349294768223225491893484175475080882159111574952081614018753137855613235386382577253414512661059634054041793968741338917199324902218043437410605342749763884698621556919710448422010269781494688516129674209396391446441977999647976109840621654188094713094296709072835637955606011995785549545301544611059243633017977278719840957741734993746472319196623751977367199084253029861198994601232007725445870279427347149813688234931341042042822082154433974961613713262689437485002221041227071581446732987426207891105776270289166033855063105856022781651155589602729420585157183881428010351590848734079798081074601272244347689543071147604662775800066805949029118717200794607948128765524091740669811419791529982089385259031654389034452688127962638642004871359720463553587439362721697246387650485875666188393357868410933986865942933334742996652205391976115952813568970930891303978092175924334261969543956486553748367289458703551034848900867100772270383757170901160356044481469739883739734955374159385017683541966075759509364413958078290519560975986662132994932855531797634723408606124267592882085705485598250196291686057103030207893403266953735621923179888400009882714452837617745570966858724395380916594083844764081882693201981153390266063508577834536442077781599812107348614685023138888197953399491506900669034074986203321129379072330560857381166062754950551715502848021221534036706402151410919116436798803236609149587174131769290746013262560829619294879758716227175641052792155811055021923610544672543116390032588944362539928073613039755399068083857969289794264683533165216577461082606101745531512900914019862561026776935509917726534478245107362273427376029731987931845997912342115468681768236841970224206277583635500656222193143900188779786690926823464543951900989434383439013272608523705734285859203344427375715529435315675807574132422121028559768639256144379607358204616836239501922615920425366056242281334561988177300795094290943960201536129066633425057144408803398496844241807890191334108317566619970254839191869968613145866951206575445396279990493134921415586467372534914778805614653420713775271372812684084463205476113224639619784488150328331279503456064661363418427472504505597967722951038422068218378504559500572293435182152490515372555166489401709591361132766719976483229625509417112447830037894370746374052980659865635518957822072640038161542821381118553679198685283152276309603121556562334717287531000957756080057651916676718109122531999188085578076905334301478134347106090117005476906465640100623359930433365780911613921041135093053462727828603294149058966474532712078214558905987696616551289524080553086283187742754749760926969734396042138452563063321313438183117942960297743312808489697790821472362483019737323338680753712119913100590897229867849648400757865120567875378918016287655939452410039135634569799881059347220553559962401101954511194160143195200868939081463140941805409185098471158324774699480326516539865030974981033933557723490109428606142831626234084775070928120880492880214947365667033786859868504713851980756588191282384199617122590773232194035506525249207350013817768863601714382593234434891506643584849451127608986265898771041863818721666927393996801279754255003396905490601934194046574742303354273566320741355975143330820857506260879517498555931387610350981698530056729037002729752948230705874479693056491768707637937816389491017966269264843985805827289957374171562755354876356100329557491958728839620025816024151507479127538074258702831679532965837367614561623079198131476823717035373362166404363060969490877320431807768053774424122803940983157144869967210620242328566803884847714709525061590899061678536836355060460489792016841303493602920921467422521207893729921426521347920540754993779083927417432819010833617685017556378409855713851299290438072456513739455101333915672058347755834983981328215593019279401736022764469473258880891977755054354946225774163182482939432038782427529064925861137291712739374665442549614947517649398315430243415689361685665495045014176453546012566104060599224901191350008547485999832173546545771232616181571595265424797171961092639108074511003325962740274853291438211708595243452679016245207670151622899106820896188719519034122017475235604647168721489909554725717796071818476093691609565516681490672335236122150938434710051947131077441198164153582421999447243635531074824051579121371539254820063402839324722684507112503490223583951133059872438178839116477159425930709815173835739119467116733862689013062251185667749646090586304570614424767529728853341137683289374277595684737051699566681519368781031626044218305740913429322038053182623008384410946760826477449851830581717996423261225900851585144897064503350099826609905515893188982253109411342845137904779378268731037157079392044756112613808786943806412428213768492610479013527632738508997747937319993140053268961926938574231375022375444610853560181280319532811980232052872166782199936667920786412750867381690587519392736718642726718830611903616094742874977178361997865397309520189018615310709812583999353453675837268648995587732238721025489853392491016577101057682352345847397188763141328792963210943523574210558012585501112386665237694418767826278333840182738527332854198182121639537726984906215382085818364115501166837740953955884576542432293206881533848633949611910592053806192163487425652615817382694560830360362918458513592280110102915182581671776271308647399317373824536494158131111507533218250340023424370358528365832516439902853607557654001670761553795146431884097361202410294709051324341206973185311072907952246838381259754115792627351937880591670863321250134303032001493473114769311230762325209564915014948410559799410702539271304055375424790013533905741209093872790635119785776727374470055648066653085780416559453031616445177886805783591183357349144001296431995906243246900021094079266198268674691298126028926891793797324372466264409449237587280307979812230350381459216506809158566690447232591433019134263495176936438559418411301922897728174511685309270596751977838098838289733199431853921350041813977612716440636855453547781295834505128607113362116661442748024793871502935704804327856673426561519134918135073794948587564421996143388607289011734655618731560583261747129404414447930445396065858146102596615907573733555173568508496288630269661807414090017621733830154529636861623886730984429153583648844811772951571845402800371847646602571112922829176214192497485708412889037121410857852582442884384612921853110682692788360422638626967564994629027923030441905931632877946835014024756618758405702933171313354403849442659382156939999999993/250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "-3.4829742866251124082726804950114220179763601390361241364445852822801036756445589435682791858598248518423184367202070936089862736823157699987982089137013940202894753834687209880078358533937525887195746578233956749779677425414438103473918663172096495583970767448247717254597027977590449186024695779184935979297641533382951139907575790600139719997822078806723291645405648073791752850198051299116483523366004568461312351909676435499393512235335359858757000662812130925175547501418394609333679851440595961286957311713506723743591097086305602561800353785386973948074246517989159388221879462022160090939760900033165258064204149838086882232445411115622916605950711259848325236511671944687750722471241577624181819262329791832580560233383597331957410572268143708379557725000145042118809180833347849128772868676293642143587183854277816807407076821760084899482116813628732514248973606426951681777832816034866869497328579140795100167625549720998670016288004251044866122617818942003444595743003494950976831654934047565283070545861311237798981672796074190316857490791594208763057925013058461097916350039651237730792921214623734471451623482593909323612222664950647749685505051598389538659071598783032356700844325171212419368371241602753928802426151502713445236366599628181971991284186484652549731783789828829419879516422940092181698218962869573572100745574793350297398376649386525111271762078311150427080228765529823557718034621899403297509019680060762770960904771673654952685164905723799780560110771329222804168806384326864127259810239751989602043492543019504155271615913072555780472072093454535696634826878977311583616444502227643391316969656005130037556346405628377732884747562127155391652045443803255736612150770199057518180828681649400273201256751999620888658467115122605212091359225365182754102454431282407338181785966193468884644701065590855721350030592579096971087652497669193199946797348289134944027709957933882678036522371380847343638193475393126793973809163038589013310191623346308385860305499508024423963858088794299288916712523252179626735360705520623044978676547867423862009757728149803988110136601310188488057445829478927081425298463556819705369590404658451948866728994756304474300183077607826254571347602024934542043570375215746130780314056824349187342097299936045328223565993071667464687549188293941185191262685018191031457487522584100877861701358845998632220431022828490384348516872817625779707492249192389614087141066577625696147015502016181934245309321884601025911538655929261407620043742175748021015065047222454726013510758449757839831130427489178604738555498116506581908588308278359087421695223435968717679094042429107928329661457291135192556402206586486702226595976902166701436229631933421663964924853733705503309944972733290036543418940622327695551916760987494304631804198790891939410085288098922373177518063017211808237806101222177080435120852097288387038194244690531606276784466827199442056042572112359736837704220737076346196308546315131486255080708905306365619626994201123001437544810336831280366642695964585682931113249764491996225776696916942745896152619935720262115021412712499477250105675966363911585081729127239695231148462372966225506049065899756264492385020566505459391153273285778848493303134974378220823896298775712645674816782897231645032174703116660184065413036540637741664665232865119513519443780366793737963528908092713830153482448586331074846170044732294749992873850321919981748174107476549738622358767691835317226779875790574092720368326347205613119049848492791220193974908958415910782434352976254715421767549794931324901389840971531926367105531100302925419509270508126521168170338234605459691912563635635439674950188883117467633079753461283105978665834857971421411628728215028022332603427848647410492065974187855814342435438961122475245923008849583026274280529792664084498401259387009168243635089980076820155980395518326296189292547495264320318250838801783292171825233520248429506713680191410701215623981875092406755269402201694692898887922427922354325215172801088970520467575799129303151846229882752320821509324172939532323046929456170401555347806875386429251037450557083398732226911700041398547498534262068877513373653655970859549422562578644311701748339791195897992651636235865154945508693961310243351081843566235295355171345756924354755069449465850124808047799670895283935670772039772427876415702807107517705575055599983539384590714069670230837726599635744235684704726304220635700061104062660890943312487893369168140485894694175971869282499759949582281354468957577065853649116932064147385736859286273936454914097959968224538561493439928907257921451479948988337163230970241452045210906771446176490196952353745585698023452501255682429726334627202735192192438307376618173558273377650356548857052283859683813470697208337112429113548788073469709454317077911318162239077554587490492930851248725117078025933179409500620243746951964316531061038772378422968254895616550305925010752815546223647504567024794033709192281964946459088509043300222061674520036678572819624224195361279494240423731618727214937971143493141784427173879324995477572114985551838884795591550838634933379074208709206528795363828237035559004361711250174718640630776760237027606891700059154470218711157080990539916084409149161313541297881565696996459907279212428119858348858677162962240931064825497819996952150752141678530132342690146597399567953665940635139428630864826124279656916690638473422854069180166885176064947637542047499428840028613804435013321527112462128457762534093410124982210941496208943450123954244749812044587537502472925859577560631001134805918547480763125014476937919927852633246338359719125873956936618055139561844628646831143732305834846263526481552320630539733843640349455465181279110203173519742355556055893794824310730621945886927848503931732846202328631329195895495370678578731054753056153891267359470620858822418746568895691253895581178095454378592234543806507985894206133127342329864543191471254549399918219489065946225298259547082962366307590357794227494855298035003268749221424319837664318146330687274238150096564101448186148311002704232835587513031930832195040472653124476055129797328236552619249039708894851430519420186124908802716944738405367299472429793069551456769117977345228031963145628339721020936124728102284259267804223358667243129371151562041556301063931927175625426251339854855597441925633936758066503028370625220646362536875690918046256967530129599087017613194524354195515263032290959759271597734852554901550565813581016598537139350829632872636384167861138804131630944086776180207720799995358697374318863217638268783209928206564868153431892153734557325506465617514244605719154935363167057412752507866613558757311833730940667975025537917288703651384865283629961048370203521264619264136766126043086977241748058304603778677805090271130046887273111347423168052529266729729311622094778183107187454171637086096261229766345960893622535673022871646243709986015262001061997592668005913211035860606508182805376430743938912271172378405481522730839206332104346555628077927846406439465316221067759594139475266572664845581351867782789634460790632602867133993284492111032898843733801180819564609697609594548324782648341766746035037081817114756064762061319898281967746365109390201948275930312927220552820186823519105448007165729003745811478417551293012540207005628071670765553618777817438134540116368158298164131297029719608760368765238298922051047766050820957144837607499589037837023513511257720620569604142680870437760841086429280595145903944804338470431145520410809844647387006503769376062202743626660330775224500845856338170262187094185221492514507671763925991642143481925729848058376492788159578265307485465264421960018930779477268342046860839731653318881658150678938647959862948308210926519636828168386168998268905017593968998759889114917039088258461883904213384632339343410412360206232151839524414720239869486228270581892753878920738520781252087476244411439698786843613748462453479558388025539420546243037382681370214362576553779432532436032798100652359948321102288815922867943969925464886169048299072055823171911945875334094374640131440338128274781647394762362776042995346785120299869894711912323576592285380631859476817827002776219597208579298679598394803160123429347309689853566701421329821484147289620410824785084377527114145832966806778400537048325651971111050273110064398629972434110835362239318331791737155630226507982483795025950638484414040747003868491172825275013871244797140681127142499281377972684539094667163294927638901639773088387524849339042432286646105752569982808649422539212490636057237694890842736964645377015925970587880323443188467397553074029995884720808035795902472511916077926778395586594282836215215094630398341859641072444365036347323298210370516095001374223365820300707615425158762764092453951121497152795948123151219151118537828228839033314626899158950803048921438976236251550587548235126279782473040286830761073982236582064083396569528910575422224649897930645395922801311488103625716044151720900427442419187475667130301593638599955594951605695234608622272875152315552669857592308067269587119513829050661074665894062321880308550156773351420912075105981016342657403732438652194356825675978402431352186717257894006001732451760831813434622328655286196542992175172877457833770259670430252721983771843052288514356853706465493416751145234149599084200196082764609468325176540131703784511822669345054494505867120524512699457704020912634279164934392657653334951457743398860426706402225088821656361110922332600482451521394997498474179619469083976802269792741394755510688985671053287904455626123713255450948382364664135656705719518014139454744518042141452010542786605975803008930421880634579075768615902121748677737077375751152723329188560670279401590144491980622766933709301008223059436761627290701988815668778541938393447113103874982532604774625851839753955523193973358821639380210657380234701303953979173791447442103847739515900810999139437462461438865391284368666573566324432209489830985031561317993876450589897729349580366328059783577673460353969679764664574888388186560843938766744266564308839354654705832749922767706428109606662150970974987511499742922135792545242446585525010287453709171990398483963797935303308824225281938595608386445021167638637173809206998949577229527700022013521482416269555611977573667425769611869800224936094967103620979743844308659611063577152761865764811755157183983120587613727922069333968476526951840557111820263235136828368397602786882148523296447363717020266961405544390529255040341603329148160478796345137117993201382326858464251524549666886960562204628005031658578713921089124895512488027405987061680147963724438259648206219066649923364550682800976442520540222766432879888644277369832115589567345633733565822665322707534964647880150403830540845261209403925824542407783355439807765715656690711125844861220753030198367147224977458768972311822122224854884116379650816234109940491200141678127308575364457719298228269870305860242250054931407969205985506418137944049870278552250745253463183116799365304154512182690608539916084710405006129032747958486641984524536776766195898457495922380388227201689306356819550235713228709810476537177252057393979397119996509929194383207032883903254676963863710985813162978573585030285136872792559292431098998891182504621853273055079572942239989367666248457064997102549623897681848051936988951190182951505025587051894617346441011327599095708203649014257570521137492735215171604446690564276763639857218696993920895911001491283582559295736665749135702077299757465147013111524650258711412761138184301448488964141811921025694247702835078262350903505013204498770078887438602907114965439095673802909169796391754651720501801923593760614299999026872836656745967962907750820779038250308231564465144343026982848024199059410880758215291500847521847202506751244334938160081023423126076720078051128845207736371855775955030641203780037827702637815727965067337090814315993121029553444481185501587845055813565745494001771538630399671215167971358115754859891911383895965383050022948557992095107548625538608242139084635837232391590612730274397773940102678461144466136620591476730953070678118544407145570978648029680996721490426397756829577445978040116057602785954500894527424507076256746511399959574238337136827604300716329052754272377644927438381711306993053736200122748290826246728909223480844957344145950943191691418409932693786240098183221703749183580661287763641060739159667014625370375634303332717291146781394745093340307806503136958098190084018357170293876650187413341830616206771795972403324521667930800159662112311425277224743474499695522578089137795204874422353009617238054969239682790697650143793655198446639773444212859907409206271307322924744344876435976988201983998374766187818412025434767320265731732238409097543995486308937910448691920740225526932065471258169420080575448780982339197679011454279584256503409425776479690829046209678643930816433421767445560896458232623208979826937632618757284317361069460996159964566161875060831468139349353666750664182114473568742749220236811292972962084322928778136417194459059672612241542560632890878241760334604442437953946078091406321651964576638861455888432339383285089382380168917334645679103157854636777520614050950525462888977490958445028307268717825700600583772125370996376902934770339161696974048540713511364936574522345448921679679832066493576626505842784546107173982733450072293701235616545749338205111359922447900814978224611608201943895876854555877544742326703968778244304206047716547140347576861424221814670740751434767630192158093552402228655409137523105430563260273338331673107583198975988161951194985601144114824050104387719464984755724625343595268858773132926492797875560065402581334916660579369894442369307099740822234906664737977226250888523639673193398338312701864810944012325742985092355151668147327144555298464436146377370468100453945746193600541302422901505993370790024832625139082678619532814365638927668790178909757106583323898074091331484585095918781430819000985521576959256228226503345570372762044694798092249990396731299270675794370335556064673701396229891948179745675666136511827159473966943394432328308577265934065712885102151372191983521340451299710360027800749489602456025019016722386914244084927871338344989782197840564138087609275720729095984477737917205329595246972028020890666287978106597757600619275021690554766964835281381889340357349120653930972404109485149992776914308982034855908871433645900712949117179773602958439294903417579260095300067691526956325158497286467921056618619398253829571881360237594856858660212726786399976970975078793999190661946600201488658278305086233395558687185741561281160999031186833571188118943021499448810455699102490109059553346982265836701343115733696147370400302232154350098918401430723174425860418997183944704902262272607736745083068819360574885111997104070122556223550168575777798449147155864949131127778032726555310174985154068124130806526931587331650321677222505711740229871465337003451650253684072615619589952650275314903592779004494272295774930118993505370374006593151689233443506027919486586475974078013122704332173032132227389527561974076538311156459586196059421610311992934097459127814159196618442438191060270555021002869062967117589113208194895481243227368128623676685084764288014599282473224260321776380730722897302945660278317080528456153934365448377570681222274572366058462358294741942199833380822798506914206981690972637247384435902092893794640134147109053079598134880887070557962912169682820578498439773116820671854746813957155789148545804950707213710106841966284926474723310076193111621384376547057835995708475356954152922302523201497496706362454579732140848656807513226723479202906794136977365230581641668999031554141191923172138256641220239882276072351443556151712491751088316100378166097702527132918865240081683549594649369487053999557680938126258736433630728135783251596906529409664493008465297677296183548080131002533929418707966536041977064061395903735179554129018279833341528590550109498302831076224788182003832371087149430135990271314465641004279506247841939880090809501400259705598777122187301951899469180353702439201233977747866640318998859064130833367041605313939983710599965663182312492257762287507984414411698314013624676586703047074770614873133226404880930161253077450768323106852079444214244325726003308143740610151205389941567727964827556692630653753476511594816336475845294557843003465967309703807503318957785839091356881478985318926397191394269598592800866704629756729596920505331603301232128845646515848488643210698846378363074747734563559781765851314622130791911469890973762439868424302756449630000864657088089400599103650683794958485108695725440196846563412247508722376643804150291768724068397703197908327623032820659833101068183335593932645743918795403263089075357882796670924671477786365262462573521192976121692293382852747387744999144210971636733552528887741078717600216285439288024489185790710437455066476798324141994699410532146383752998538827140404328606189505132155844192112189910725564608249687463013077327711807239087971513816733141428766505418520399410977258868479649055381925341392466394299652010183189922193740681012385529588387607269899145508581472385091875008070943808467527999747865052784712394218138105160087973436371301850176285305465412724302978284093402032973047746025713056889590431286031669144014061127626402700050734354333445156489967668849943622007946907095930371504997767966440553316861514009789637775910671535066778024491083595832259182584250163108015208322086581148390020232594198790399621903426913942171527570074902347885138693136380137937273086420573721671021492571380851780450384068245860657280573715681026288976425624533297132606835179631795422441849460088149709544244678102600311474443947422789205583453311508029159891141279373936520098181992187414765483845457104332259491994978194245325756916273059302870767936906381307435185291025184277772582097544084617066583449525327639326973786699901289015851333463549577733965001943011147630700360105544093919361845530530987006392423381440977729563278249973657224598383970749411070669689658125062200445397804858074390270116424695131705055942042152197799954170083220822852623473708098989994608106613541097091755685970399148946137210742681629483329796782647441990728627296180977009891142214600501102688421355328980238831756363347438652444781738823324006598221743203899234431992502972260738626828172685723418616726928993737815032741783243093769146452819565842862598087392637397366361014283556672878312599944077289955049271821142861731918467195081747294275236915147035559888103581559068161306207504410971184805240775891636619373666229066479340873518488674152915547440171922535479777021998452935590069821280818487363695720995909299250687853002971839423975957303945876177955739041917418569028273084465165846565846853490471663449531592130865773436657824250789100527712044881508838315794175517876555025952585278739452755489609656273649442135310393356110623570807624299127349316399195821376256627063640995129351115666601952719273975571682028202240351507827646001404204285852308206410299528582784319373821585425763969401349911625821496638075417489091252469731111434007523430259131022846219973039115510757990399604952310091762642643965101154434644273952584168473117905743398816370428579082902187309171430765520262424514402748696158007374987471641994130443925834008786256930434681508645148308226890361328970859889339327153433390517865649289482053979969731508069316759714795945458192500640958846727844705081095636992326407437262675832837100802665824491332981015848806511637361742880331340769862115925305702437768083636771260751035682180742081245720353601868593912211532761004090766237684037421320241617805880526931270069255782735941525334096884898389624612187609379040475456000197201468782570064663502112091360770356093485537245936880023824207778308519521008459687163022205247167414094008495078261521938400981695696143026987272838185474336650384445195486506072013074283813631474103867671454713425883154614559946490604286615662547514608182656441964440329940020066826353854814073721518654572558637165298018516669550134084784903687264050727119316086163752143626082493070865616083250746080537129310354544138758380724074681695432803042978992220790954392968097931834145782028456266957825367982769689100342604825474123639220042655879988211779799427166382525509440834077514627572310656522271158554567356989347198373043347866601381170471360346071437872749175062513554659360742185598218776330512818269458491729411842142481158921363940080780108192394658928573429727340950725228149589919986073282860136764325891328040015265631441436467007573580831333747983592722170584559909854380689874460568656228862296786806299215506745256213535854435479567198065496787743734914172335118315592661985660230152546993633742966160266778432530992740199998550216322838393401404045619196599999765091516309403059338448931869189063829967936315370227161436776231300029775678500770041007724767391738135539651926868623283998274325429933778482153831546161480057673801448230721864550146535026485988021317420795634957488419361976188673776050916155028007217488700104538309016015124495762237318783767632372913012015382871876063878909533842884105162131842897973982858139450206639326036608482513811688322235868142708754295120698229661382782645650051738906014496961245961769478236087125082538751422932678135630920364376937424815955081532419221035771304342750350206850480228852004778575429508611810339029396672962996322770402095980131096679254167102287498300900133169542051952371380790609167598688849539302708534156773860151246593075068811575293202046180272228326019983648607417320133966782921836755878350090633319353186537175085419290359083944078467785490192634448884065294843672344170789486324125882073117116695601372804038756280280917614183237836779044718781566322490658732257315370339706902767019288589811440150119134001352879461536957326267812867864660945867678266471272824214777567764942233275872098853406182707783372947076347974005365695681104512471658719176157534139544903794189927194099562223407930479762659935429894995574783991958075912815083099200344203593492119187712484124410711304939023759591776533474319460108605447995416970743506522721912972579155507535281552564036909270903125878667469509655280640569399381188821699509717176179133464994497290513855623761530404253192755763111641849915291403877585751038848014867916441592315913480370137767350068931727642142304476919939645144419379253208040858315204197635091356470078163421334810936732094768115009377260192690113739049123913760578346265835133023188935945930502933468743733100288124474414809067559353263673218768587390197887416942195663483823640867131765912824592842856844088799825773357821526324330197168952350441484245993120282523762358192297395436580232227857660360697762665155776787772477264480875676691664112166726847304688314640958347667667959047326305170833331501661780037372937834291629968412798730668423177871738311430625748219938272447096965934673908291893979222674237469686154851761436130345691239848706629137964595092392864322486927051619154577434165842675905629986557349266341589387430063168315688306924263923864361989260579533092525784317911041862171252996711915633112656150224615057514857958686448903864965665422510421819746858138522578373689062031195215393176372778260473494493755454845570630523204879946701465365732545149924116103792751759769424230652163134907820017826244683082079068008429680388067901691517453210256664730899442316574665829886183471225238883928432701099111688731388124795603718835689182090970657957085825397179072892901967573936701900323528636446299808326456075012551422452941545530309013658050644238536216167175874965355668797299608872173749642421370999055538794486227678841793688041079125978754064518696837585565785767911998591904439362486616752378852377186836291342551822424047983142198181206178444236974532071909114879363830966939974985889276786495007909468796337012119444795978404928030901783481117709388599254752939725364168171288328617735899846454853050757749940008884164908286325786931949704831564423105081156664135420252423424091126604622358410917682340628735525712041406363394936319192324298405088977390758172284590418651103200267223796116474868803178431792515062096366962679245679166119928357541036126617556137810752511850554568019485438881854214349757450886788985550601943502664753573431473643735947463771733338971986608821567904463811254275883723565215912368703697337047878175825946214993469157834814204139395603468403089081535028683604641424177925878959534958939821496637540070734167864303038037457655832313162078243903946648531979731422127190538893634424497070371528342821942393000785166744228412120831573613067814942487692719553600039530857811350470982283867434897581523666376335379056327530772807924613561064254034311338145768311126399248429394458740092555552791813597966027602676136299944813284517516289322243429524664251019802206862011392084886136146825608605643676465747195212946436598348696527077162984053050243318477179519034864908702564211168623244220087694442178690172465560130355777450159712294452159021596272335431877159177058734132660866309844330424406982126051603656079450244107107742039670906137912980429449093709504118927951727383991649368461874727072947367880896825110334542002624888772575600755119146763707293858175807603957737533756053090434094822937143436813377709502862117741262703230296529688484114239074557024577518429432818467344958007690463681701464224969125338247952709203180377163775840806144516266533700228577635213593987376967231560765336433270266479881019356767479874452583467804826301781585119961972539685662345869490139659115222458613682855101085491250736337852821904452898558479137952601313325118013824258645453673709890018022391870891804153688272873514018238002289173740728609962061490220665957606838365444531066879905932918502037668449791320151577482985496211922639462542075831288290560152646171285524474214716794741132609105238412486226249338869150124003831024320230607666706872436490127996752342312307621337205912537388424360468021907625862560402493439721733463123646455684164540372213850911314413176596235865898130848312858235623950786466205158096322212345132750971018999043707878937584168553810252253285253752732471771841190973251233958791163285889449932078949293354723014848479652402363588919471398593603031460482271501515672065150623757809640156542538279199524237388882214239849604407818044776640572780803475756325852563767221636740393884633299098797921306066159460123899924135734230893960437714424571326504936339100283712483521971520859789462668135147439474018855407923026352765129536798468490363092928776142026100996829400055271075454406857530372937739566026574339397804510435945063595084167455274886667709575987205119017020013587621962407736776186298969213417094265282965423900573323283430025043518069994223725550441403926794120226916148010919011792922823497918772225967074830551751265557964071865077059375943223309159829496686251021419505424401318229967834915358480103264096606029916510152297034811326718131863349470458246492316792525907294868141493448665617452243877963509281727231072215097696491215763932628579479868842480969314267215539390858838100246363596246714147345420241841959168067365213974411683685869690084831574919685706085391682163019975116335709669731276043334470740070225513639422855405197161752289826054957820405335662688233391023339935925312862372077117606944091057877893035523567911020217419784903096652729931757728155129710116259703444549166850957498661770198459790070597593261720973662757446742661980180056705814184050264416242396899604765400034189943999328694186183084930464726286381061699188687844370556432298044013303850961099413165752846834380973810716064980830680606491596427283584754878076136488069900942418588674885959638218902871184287273904374766438262066725962689340944488603753738840207788524309764792656614329687997788974542124299296206316485486157019280253611357298890738028450013960894335804532239489752715356465908637703722839260695342956477868466935450756052249004742670998584362345218282457699070118915413364550733157497110382738948206798266726077475124126504176873222963653717288152212730492033537643787043305909799407322326871985693044903603406340579588258013400399306439622063572755929012437645371380551619117513074924148628317568179024450455235147775225649712855073970441916054110530954035990991749279972560213075847707754296925500089501778443414240725121278131247920928211488667128799746671683145651003469526762350077570946874570906875322447614464378971499908713447991461589238080756074461242839250335997413814703349074595982350928954884101959413569964066308404230729409383389588755052565315171852843774094296842232050342004449546660950777675071305113335360730954109331416792728486558150907939624861528343273456462004667350963815823538306169729172827526135394535798447642368215224768653949702610463269530778243321441451673834054369120440411660730326687105085234589597269495298145976632524446030132873001360093697481434113463330065759611414430230616006683046215180585727536389444809641178836205297364827892741244291631808987353525039016463170509407751522366683453285000537212128005973892459077244923049300838259660059793642239197642810157085216221501699160054135622964836375491162540479143106909497880222592266612343121666237812126465780711547223134364733429396576005185727983624972987600084376317064793074698765192504115707567175189297489865057637796950349121231919248921401525836866027236634266761788930365732076537053980707745754237673645207691590912698046741237082387007911352395353158932797727415685400167255910450865762547421814191125183338020514428453448466645770992099175486011742819217311426693706246076539672540295179794350257687984573554429156046938622474926242333046988517617657791721781584263432584410386463630294934220694274033985154521078647229656360070486935320618118547446495546923937716614334595379247091806287381611201487390586410284451691316704856769989942833651556148485643431410329771537538451687412442730771153441690554507870259978516111692121767623726531511787340056099026475033622811732685253417615397770637528627759999999972E-30011" + } + }, + "beta_above_membership_window": { + "membership_arithmetic_fits_record": { + "rational": "0", + "decimal": "0" + } + } + } + }, + "pr1673_kappa": { + "rational": "1677160151714381/1000000000000000000", + "decimal": "0.001677160151714381" + }, + "improvement_over_pr1673": { + "rational": "12974022055817606678354969603512884991557192512901477301637600814322741301628194131528280664223161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999998998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "decimal": "0.0000025948044111635213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997996640490086748910957328658012158594" + }, + "source_sha256": { + "new/SPEC.json": "822f7093effb40cb0ae4b9f228d8f6d38e1aff2808e49557c29890c37df86115", + "CLAIM.json": "2eabb7bfc86a5553fde2b2543b657e0d4e6b5a4b4f2bddc7947fcd7a3f57a288" + } +} diff --git a/research/capped-fusion-t74-k554/outer/OUTER-CLAIM.json b/research/capped-fusion-t74-k554/outer/OUTER-CLAIM.json new file mode 100644 index 0000000000..62e6a240c9 --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/OUTER-CLAIM.json @@ -0,0 +1,9 @@ +{ + "kappa": "0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997996640490086748910957328658012158594", + "kappa_rational": "8398774780627722606678354969603512884991557192512901477301637600814322741301628194131528280664223161372256584542931104860352240600827060713856503183464783578674812636953114638574227090497768781685562377794069883920702765193372789409782809399003446270856098837437418473378465284913944613786596277828033427832058626192248254996699135378576418571350788528811546130193058859778276887507073260682731554405928734587904012568202729839264054008404834280669892880814718961613412410764942664619059994694306998617391332561196668705128253467368057234350012635192391926716937375642469978150781409357934288962134317858327330645150148208503102936873050396986532735926811116423154472732559712310276811516830056343720779259368921136877877151192271333284193234723862275299269918750005180075671756458333851754599031024153344362270970851938493457407395600777145889267218457629597589794606200229533988634922600572673816767761734969314110720272341061464238214867428723251602361522064962214408735562250124819677743987676215984474395376637903972778535059742716935368459196099699793170109211607609230753497012501416115633242604329093704802551843695806925332986150809462523133917339466128513912094966842813679727025030154470400443548870401485812640314372362553668337329870235701006498999688720945880448204706563922458193567125586533574720774936391531056199003598056242619653478513451763804468259705788511112515252865313054636555632786950782121546339607845716455813248603741845487676881613032347278563591432527547472243006028799440245147402136079991142485787267590822125148402557711181162706445431146194804846308386674249189699414873017936701549689891773428754644198440943058156347603026698647398406844715908707259133450433956078537768506458167201764295471473455428557888880659539825807329003262829477327955503659086831514547792206641649766745880167895199673418619643949734967748967416160631042614283814191010326248000989641354781524215590084692173119415649766978325956927636041537092464761078272262368156637868053553858015141566360314082117461311161544720700954834310911450823034952733852407995071777061719635856718219164332506731716337351052818824336617802269886418048913943023516141030954606955582302653577967057422366234690985786604805072984656257705218956439787743726756690789189283430190293698785466845266595983899581926470899687953036363965409195982949432174209346477101642808293586822243874656583875602600629492132410437471156771931683609520629489148107696500577926223046761495878608068269237711759335986430133649133857893395180257944811643339669944634208565397515267470664454948410647018092211021011009941395979346257979856025631396215801039568868916480617540542591300078806660239365235570603648810765579629711907916570175887633346625118212320454760358447979247879368846269711312892410510879707292813960426407503046003532941899197073679186136008493075043649181444111459003474585251364080167518985938456588100971408644858663289727133458489436454895583792725305225540410223395739603760941629272392650040107194198028940601117155951524855878060104682616063017571293777739175605098067719736426275723646965050454017838473218059855941568270895776040258560543969587941891650910930323782134152303299465020232337835398331188777816017617969106227793600853439241989737345529170817758273036863382254166435145193322733594205059452329745182839768551563584528347784411746717596922505481516020940395530220358740439098214031208940068570776720503838448204950798527417565547043813566992520503311441725940971629039966066017599686435499103891371996813658369749151954122205983921247547317906780034697568798825197539296533050696759661004518613148940651235909274711162986986979988391078174397052415467134052188682356380922673498979336129597436251000797592979566023121803288070506709136226515551391468659830211536030342250938367161778309431589228616406678898865844110356431315005570728411368796292474733839116582868508958528635117577565186911437443910954060006836096471986570781253300241259621507203381889245997229568655511614827600038891804302413421397475112565936781526868600768190149033554725823104623434657198405278816978086758965623234181549954722389703572907090982090509359602768334773344856102126765091520665868275062440706828424928308987008423755533768167641475365833967208698794117691256119491318726955538194623780361600287421416817688711988241858563300995586275100253839918056251985713697835163954073916793958490235701276579845882311653722165560716468002237888962261160281906041719303067667649141852474374991426770795762659605627752351916039890430862406633459260224069159104074927141722304948624765711746687782908981426749583470115391794337573043246670408792017507034012633770917786551875044845801061654808114383399721158510977736363341366906344655591030609010137845850481096328869182586754055313859766775337654181353975648651395626949553231890387544597325609929497613550339307865848105427297018966465670442086534580531986305368068750384029126650844553734536599786918185438641605230681732465832150787916947144167091886415150864120045696222872276129240257676356112267612206586684781404464124199004106626851388742699698244236961906395507453900233171262993865608412821584346830363382808593956312865608128817560716398373936382541324321090711288728898184332626474924341632035587853831400443861423512459238470105794318966600910636428462576812576488518933297953219521335698855488069308397836736816600933009987747024665659765101931042148817327716605272769358839265315715307635872679047197396873647444920090503336075892221819339150319408932998365883921858735269196516890209270627165392897671639948124312968750517033497140280451187369227132825924069890593501969270065879594529683704725208387366554517198297165376419065844298194838042188539650113339990798412716281921243725383236498067390280303711847601650083165404614139124834667092097537669752005496116691409665030672229240948889131830496270756360551942092579805135946713781935933325976511780876542552544805335711364981752355222332080698110105798796699655635508124816260644107259598186479439994202297076654667402651362503448717908863791011107239436886985268322568958292680016880468731287683207047437019736401751418174816122518550720933032457239890883514477403552586778323912552027468499190901001141540915297847179319147311717938723545278722262809544397477541127215769867895140425970558050937547851959128480068772640598502375108156093757880227233459846104215937748840361771395964914756947298364125545108296105705688271347673305532198234493342179164233469262529629745451299434566469243004701105145956292150275742856977096334797102257772795313686068864520173862622567576919091333053802343482651593061398390548684537764741160995236198527046851204676452427679483497046025130406602331558212894584650125759450688004884504501538820615776716368021563524207324652540358817402611119550827430447473811776046843646242077968113837648987038789152186777369498603343661988322245415937275356643402214323642771166714496900394137878803863671620586812283532581113299228767197240387114511860869519843859925994514515695189865038134271219266973806166601627905423849385344087885379735816683356903017575394032101561921470743555878917771771233868742237440777383786965610064896955573741502189996367213133798753906792926724140368318829305457863815125682337428827347464419493267086341117607590721678772431131098769772099207765647662147013148510648718974893918557455727455901367818644680277358957891326601343124985322779893696911116347165020343005095745372777172895943902878398067998028726373943969482871814637308835250232277477716507240843809297527686589315923440648937935253363757910446946702562997356844362267211633208859227731885291413509475267338045157927143533242124188155073102172847559047102916362524247808855709391011007533089987029577442363178509603750628356035669996039818465681723516495853721906594012119407514727150222576851411586240008566767365295377924741209961454947170759003124151586122846385244414776730801909984228143769265019508679906524334650512949162634979733301286885646451869998154325081743425816712284640195174506037439252573422256139712352690503370522861837154933152670773121241512956287249833813754296423924811139725842021153049308280695600636678670579271328877832095699942671541432979619546774637627382193618922195862403200728958028038727768825505208320243099228590608868773284682537509753930871379641872646815548651404226135419184129650946713660135536641094231586215740964423874684743759821923973028469310040255089260049213310162110523827260533129960772849038870983030333537229724523075205448927957451765090686160379859187060531815812034451620607711641806710011551542445264198324072499853025743144135567945446854145640242085556664081529864829110522514226494987181158727322726690117793227518431964334793691636439310986265184241527289016212540053469742712432969686398254233493865315679761236674969962528680318622820579866126806698151254509992231180010243955752642222735073717264163197461091979365166067783237335568671475410289415204144433990032158122943542409845254653628344235712699819700203401236022224031255439841166780628296716688199539982636751809324095210502225781439591077027619693604002682356464869380621561872809006941315202713514372548292382759210500214347587562886850479807940309117364162249720541888480636920366416801080454356563280109010304084173346659481907741112329791057110150007002955878909583042019290417992303993666762323374803780968590161167837775143604022652827319085452059047676837776549959300953800079467457916298611104369021445801840049821339231220700695324427742938206883621241268238892345394760282301986647275473408962442227309433416310918554214790694812304215790766143233670950213421536033229352879806395563164853647205309919181334848255454404613877166795692913933731856450813104775332178865109265598629546096499600559599233640656908825467995535090450170522351851419784125828356191386487120721809192151239332284070684778265980075137419268425028964254979909373622816621117298880949055940158293196065392322555761356924158949639204619627870226002135127774052155498917134452306246013863805744426384526580948725315691237668065455354384560943861057380791106106249553982133675790564019472944520911607510266203898999657088712992783403689600865188640664128870944465041701379899064614535676770615340275000786197195800581055557570627630979491771852492865176289105967986463562280153880700395127755455780920171848398470856540020986204568645333356017018819708591325422152258397743870299914385245791018689158834418465009534335912299661759108583628690326720017099869469182785471477940244945151840162488103105734364451000179702092096925753183031982588858121642395060005284418729937844578793538094640120162524385749158661447865098801174281737295620351146985341690915490484493666618668126248737424291085851090744473614621568779447943135119837135991632702024668254494459329312608221370255258034909241749011136504365173388718442130386294075355017542862202790261020548730632832079581066796637865794644818978856043070910943504926573209652805437526616195113682742834475148375435096093162139860168228750218894026712803094356590162027741649853516339140085013865257203189512743555365561186739636088447756330430621213549897142732497471227971679745853687667034423703963779041534949056608224469174028305689015396392817542232307923331180538556176508571048845223159180892753662486567774351716140606748256792248268036628108996236333801464690271396275292987464794913232897767597686256128730238948724170129994900667749782889139678624688699377117704880919611989359903562766612393325411594652096836170040649439337446034433636140036631937417958395652226817982321900160670359960265664389539820194253416921532470349871134094704303635782985491450510714250959744166312355998675276815027822794653865413016612297965249387429435680693245741364831839315982923114375241115869104934288607979397359882859930397458757419156137706284108237185849287065275094207704570180976324671939856897179626908731470910770994466279055919481928634697808228559686255998977075562673567568263710570192251786533877071146253841022340664580076395879851329728271093311795514206212146524230755159504879306838454676895381361376585969484677808858202892740053229514205601056337356358575573485813784089317661693732395580598089692855699079940612029557296454154609026938299201604551370775403821180490578575812438958080240318186552887319905148069676542560407800354739063794289220829346562470842166474562987180740684273821950906084844082261882760398099335526610476439564517969177074935360143512756081924166078121905065379150241849856157261590059568957148559361153979474186597981232131982949217469206971602657941178914901359106044274385382058933706916257087379991908721887853836043081118118675883726602729856321007213714227670220993514715194098832866633276151371753483714124511033496801738997169293768819002338259220336431449123170749369257059964694795699437732264622349159988958180221774237283243444050777408770032016365450828892136676344022098474439905752480749862855877362924109315409576405334059526809435075516913169383900722743260463320074440104599219157756944966416879008626520022603245651491440521587229926926645646121654344713020594245051996015440692260181763656434604190523059967969923379884911450501819661623674606338962801608153831025636632164306563290191821299175104813226398632034787447882625405890591947226623175774274279716660484879518065813733789541927954766074010489329843448062476364468262854373139314820650878986007212281995601948424198026511667998884937296578787418448112155270602193722207666812169694098843935434217626871508166264612054396622520116438333511845468127971391999577212542678057183718386573218013847123749455561593762271259602099040461660457066984288050092190532737877834639087227475253562172222675238026356329508960304415702614049940654025066600390857583062249467584112559576690255162689230872719513477516717873355205221200019332229389339499763242500886879469252952807840457655915675988171077818205610949404424931217547553020896282813622529250035197199177116293865232262341799027215881957074723213942740403545381278370369127002309775049865353283863562345559504875422398552641676549801154582449188069073775460182219691863999411476444689275370000992883910342944858036393454370961223003033138262083749635078494305862074557474132883181999445633497043047485544534715286460380938856360949919914307831250774662670248744117192210333584191040023354677585861053041071170604082463644101996745408344496454033897042134771534229974817979199259289117859560411677011612803474516711466307807835651922484710048579914102030666436168813799999177534824242642828237926664292910309224225181651192698524542347912902898607108256672627542432819393624980314659132110803218180698333820795208453619396990489148120371439365434083932104228622525827658066443535613712310889366509735990598038681029262877674468285610859647234150841077449134921373183826995176754683134929740234118220535184073861576100233104699547558940059900803775419293923980904892980416080488716879129271069737509832675128313535874795439134818932821196620370500235469703186908696643854267378088427645643325810869006179719008121054555784788447796827016413792716407914653999747646337825993362828450658658506823581091250750102466534539913896900292674838615829548861736559881610170153143378545802615152154349156454668674903676630724225610018873434069084480299198952900795520441644945084224812212221422620743671375246935963631820451330263729853646174778380004790968180467128504817174538234212961148917243592089229991897029309709098100498469849612448064462525257632503815784510175945525832502721182557906584876680636999846731262748362604367947257196339168084373377847576458880600268329525838542960956933463477329663630059607108269790756854399004937737186437138652716869694412719704017562538868432156363074917947397604245187145774412485523191767394785698488604933080669158343954576277973271318090336059446178873760631332006555288576107233354622096713090572927752287906996561970698361750652851190768878233932482082243967008028149357279727538826765361999652546945201464438553794565783567146100339335723560914242040078117926853552470726917944257186927776709522868535673538004672620251485904069285132521427345113654017580634367410999443371846368357629452735239394538384664816897615228745747505759038480384582968101859980150508725918785832433705021791114478212198847427315269881879666205481303985529154874137331948494392980927403917993125118534206637110405602909963761390228471121223914235457173810879634168914175732333271546472576030201661280303165828953530227798681240990520127135063066118379361813996838210391920087138158010812730343928602309181717478592825130381564105660182453418765721315948693294553882942022993005367563168716728489399925297415108315023565467895292261985497594490854242692973681752691352957023961595409920941616516520482899749147203296192244740978133749969436106129883341161745990752811342864867337117429446042349668229909109517028511576499810693233290942276892804958112157297450221053754719851578289721068240198736008917409393324190275421687110284696922026183622455946622090014264677759245302844609120783047906873799796416143220828211506919310036156626056728128831067826625306481156610424107431105136016697428562423751885168299793504932327145999051298975066077724475195193311582249224431907215463323133786632609174628229688786845326571930754558085810716097655511908755588927416744640843643140960967711798982321348855944305475602196928921058491996809697680956358017538699851152113663723220111000543154360235041013929294021221385371415067979532640791840270359817940995897810469156433497759753086449061488250767591835030420730370859580209309188591918417179510320586629447617754735958399272564122230066052146005346769437309932235725409801569550813900199409046839572469996112188549069161432077928292407670195851623468011866410428392078365904491318438323546531098854889513618122685188965185152777592217769431593466663694625904558547391920953567903179137547623698199204784464355107540986810727146626574782834351626090392393085443692194320633198688508927630615164227998955336109666774630647323650015907064459216942509647015167683275180569358648292778569791788686457959022266918146392499807432379055039181848417356085683890933471812238629624404635599380265785383165260577892036067540793378589325096015048404606437101134155833837094730170776386547285949936490828710686943999732249009312093815291881632979236311676035490636251169349401539063183801886413065816521360264022764191655750510127024031368307140859903212680331136469387918997088114110062403366972746969536984281717985055681005760935982300391828028758599138987022120488079609517119316911374595505461269551434711519124277750785659033413931065045743517405846275749853903544667423321534708550856284189426638434926990680068479234608152610159470208805923101910373987980340414004673777622737779437528182161704001602911029939849791982781305536641163759954980455553200344866916051504832514048432522270385986582111691047014256993620580593823701464111762539845235784025688356270417215292937155410993844500050150153066153864514653554592242297120493628050920141764333925415207910594216979196038973302490396836928840122509254679387364999037111268241356799985891153931848665808713039326944094438355449434588325639490835672013229592110103649546756122527340009372304085812453434214549106695415785504658711636928885223461801238625308755296722388941476034673567476404541194049661352344617481501927856061839573904169989814140909221160737177101668851596610039129892583085979902238422601325028666636588976177893423171661129905776531440405027495075568760917944206002987027545026822702935026502901632869771495306925436126170035860384508488715622190008629207352875961831073901992240569340190503460174942486593292414620680016980571435614338170806073737982218288977170369860481626330212031429422293134939589982893159274541536507330255979074786017681366482926371463631989147965249545458506624083451799444471267375216857609795850486838360852416837668336638684093377140946093010236273662411236006523444355872868926429288100941209100502632911380520448522755903500661309626790503028032274545144668825689860220134005129502946181102343431544669502876326046798376576384227883002667203408314394392106865028248371177432068994076635072444866677065191713670346039297950172338361558543572951995713864706421408113085090196765744074196950984725380590081112805520262749619542799037262423807192184659691440931122781169613395089769809262883649485650670583232600652480660418907565790802898532905855002885003864014094961734765347405033954472433913925713788331530719170154496118858571973772551479873821699056458261919570842597220378019996780513596066945020309151030796313814510686268098044864769137658409984542788053456705133389791869111368414023642345008219733821201205105934295242086876106883578571376793440101371192907287343542735714277324697011050109262087461852471037993927426296977508112908456293975001063417089313215750275884549704933412130425959593688714224083051069063517219779698077195716345492908865382923733933804822374499572189907885558391338872120070578166920573247005536714543481739289447796750571968731991508475670848844013318321857692245424145138532483351531575184361851532070499387790694650237118787021731518350417440079852433668169796254310651059335099380201787562103786232034330212920338508431683038662098265104738504843961441584890622314855538626157829322706118012241083935958945722459000170663408196736136083536764166891535582956085789142147539167116220253653124939317861898912216141156120742521755985667458912117953876219884780719687378324109600413403328644506438293868786427987450264904290498813675779884138512503236904262613804899110193546084252998002802420910364022658888716617672988298006099624511575924359754182739128620457287098438581461343363687065599251597099341654374666383294904120369275246527393546021064694291075683357191174266483462761652421888138023605209559938088259743721956341705890794045566860673335935096706549033824155284785905917702896589731130668542005626219269460849792497399789270079407426088562952140551067678413385142569931282600538682114298007271196147113846874433014668260890679419985420590481225695003878765999836320383696661525782606163541268126260055448715603902532254495666695339630545737163192835042457917839632756292111909464089188946923415134340371580471169848682558637496974692995628062537101714816711301485439854052870362063119645318990272933653731318569273040872120687614572887796971578486967548445359934407904814676311860527432678906330721167504062108897282634306369509494111893685319140926089390481026561896438861588371957466698548330845472098878121078495979176506987981565130030968991639743735458673458717457136634762779340225868935613176869658624437356897152947277227078296335551306436865280630727167777238041277742420445616588602702738988004005954530260881725522891369559559569965975939470386904696487920715620462065510415356014742811809586542066847796836808062436426366873110605926238353867567642115095508481060219816134337004655203258566025236754927306967585459440088818823272112663479791637238425201070948476759512199620979645113154131725247295140138012928187877840467590206582782537209363259035596854129754023433936593394911244927095944603709463059479375372207848102076375806370488895072542686264042013313509302624803348409101627522518685888569525052334490448041068718432278312562848908008237577254818136429208080167252931395286015345728145282203268480471794880883246408654163380922495935123972329960140301167896396846026121004456985847101274613646106094927038779478470681174746498841926310782154411737015939278868802002679019693659033626626082464773501808722804864863113424105905559599903557459720491058657906107109126385517365274244349774572895683070669788018524887056627349491711142806853729977231664884013530442042387010405091136515144570826507077900220658722749090431139611245691565391676427678067474170946250282481028440607575694456999228747429675063695754203906735687669747847334434577546011736347710708801959037527062497857460148746724511635247569632315413015110895755595147693580443693717540235879369943247060083593883411632572907370121247725685440153514467463478241363295878229237539400009543707004159816742970658278304109360584534381401631398789997441340751290236341290636098303994662663143553051388637650512491337531671035198235783696523741199051124058704855266563276190677570950315055996587993259081281561555900568298882274904894567077708069507678338184208386221576406985838157253181483393881557308622292068781391411962819279339165626431097648852296537072766344851154041502794425140951733284990407933113947817629800874895370411726529355085464313755955151014718601127629038136247945989025698342858554673493262516820795852408389199340130942011977823440268956171711593341466580501225404933777439683085687443906944955003305555456850485641643842952719153569457617304197010332937265340166580393564364530786121145888790576672343164487274159490971257605229878512453447395612963716180365832802756411394102318167948721827450830150717417658649238934730912861798420623219989724801862822199866869122567041399180669076166459511065868943728820790216128702002837508718110990787131103790639749301051753346768004247426847406571130334587924097395462405995746315182511947928665174599020557169825683812989546209220564557284204911919859038944074815104897979886192061053673647062187953686796304631731575508538377036592054229622600659548034214560373702917909436606040190651712596757256442041563422885933732723804775008163486971914070977748829698598762015473938088567179262741695709801877980993029510777913754284356162131630798066767504987825543659236202959110753053258954869209029353730460662802826355450046904468500493723523051916918210357786513995388993005488866888339786365642938899062168878927216481793595212771672798765876109531425211889946501345301778261433984910106624864711522837947931279688867520005451648974483016936239885526469021753758514731650937476388183933000136822297151093130953816872731790285598297939725272190614496876335300870016715068129495091442946194275776195111558801988720162156150494675404086184878436995210647530296887794129426813802364469932011507583754741106107821394418138533485148876921794723331616205454731134708613963330401212813970117353194640431391046191240107673159987585798699604266835664057251123588652553625559716612522277064630005590804938542840151335317221937137485871707787313451449027885838419868780448705972201312156924451189253528497189502362837861567854433419079674784301346943734690232319154967867275445840070411459278195095290540979981214959121711536655455897483457088160370110461742005072360749886764287688252694800244911799033490698786663369264207303944140895128395863123402674523846770570971611393465000485272212943133456292367820329050610509474391622282163332974408215180125645356936561626801478711671218579532719571818536135461529410639956150927395529662562545198498716852324180691997972261041422482024508965050696622300047079641708389834231432259432021643925589648296322671833097076137976766802080231868456875925260531005053337452343480437281355839617204543966864824917731829134426165306409995315802891761223829126406816387075008798699865954076690907865780069970288120186213371845845923917503029699104274489503049702934393570539869132488204688430119088240716793768344265101978757041491153208073391350728761987953151192536547854854475459370431325628819431823495639036982984568250722050706603682023311783277061719826061075580703694448184530391339237920364230706788235628330775749059384194526523642149287739493363716080872008657032128741621429792497999976024792363681604659454510227895060685310280156091301153501571903708962896407613062601672656463350382716606458238593088985586688699455531359862017431067890800663881245927129936389388256581688353727670229937930954498667476462303164419776387150278161582491599737736226060285635320519361582117721654160195934179260009057548474960383501016071927174797707304722838919739834159496737060847244259310547962731352445247694669859008893026523964235155798043510087774966789961264763019669041339182513669248150242795240217052683004518006316900820130489903148293311803286912058706680118068207121690083102570917608746557264512163556723500478585689515700787984741283179015630191835019700682768324104433879582770292108016087686969563400916061173395498944354144789661819786999678276759999020007609851703848367747339288910777801550508597325759933258854318864696023826028562381131540916107266768812941074198962388377532388404373129088013534696425311194571123628187074312716945044387116083428479064810833895521285083961748388717927121913213002368157293954621763692485312680448761256137601563360510601508287512214444626666462527774109689468333405740391218190407742597445948505389569272316483155116909159357309548248707707983510934633184743840219121233421373130084579115170309069632236087973911813508690051480416922644798897158586130740368810253753044092485616767689219499165447301643933316892905717632052908361195118930919986121943936807714524394507685020918840585337314630042101293046334458139026473010415421749548340179964873684661050276840084524409045892876329004571641924730681330175823189315652130716421201508542772957505610186293625060684287647700820172727696112947874255110961053495722235438093297968630937064718802349311126686540513026193907020571613775999415177606700003013439895171181239241614018004132413113399617767495180629921319655325758282830318621483065602358115594080955778176084490431304894785025276634079916915900274699675453501669329895799535996834014119755676171347407703050005973425373245205805265064792540185119215018372444766016665920392574970553071847957829189693810489508788447845447867684992655366345999449055515327001676379374104508654751678161343487778275777913723694020871799516558224819079310509786928041232895665972487727145374533404307789948123089126675854918450511949834973110421653120771828624549663800367301846118453744884642497958344698433874487265407511777554912087560264730097527541194346091232423937856375575417575777415133090411135262144860679516965486528990453044764914835634665626022419999999998998320245043374455478664329006079297/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "branch": "fine source-prime padding (PR1786, chafreaky; Trudgian's prime theorem; vendor/pr1786) with the gauge-free interiors (PR1758), the radix-distributed union schedule with per-visit tag work and the explicit Strassen boundary (tau=45/16); epsilon=1-2e-30010 is a free parameter (outer/FINE-PADDING-COMPOSITION.md): kappa = epsilon q - 1e-30022, 3.4e-30013 below q; the structured boundary of the previous package is not used; omega_C<=9/4 not used; recertified endpoint: the supplier native endpoint is certified to 1e-30000 (accept at the endpoint, reject at endpoint + 1e-30000, repaired fine engines in integer fixed point), and all free slacks are 1e-30010 or below", + "b": "certified complex_lower - 1e-30010 (see outer/B.json)", + "outer": "PR1673 capped phase-cell fusion (Vlado Vojdanovski)", + "supplier": "PR1661 T74 pivot-566 stack plus the pivot-554 helper-donor kernel (PR1672 lineage)", + "retuned_slacks": "b = certified complex endpoint - 1e-30010, q = b - 1e-30010, r0=1e-30010, zeta=1e-30012, layout slack=1e-30010, stop=1e-30016, floor grid 1e-30046, backoff 1e-30022 (outer/RETUNED-SLACKS.md)" +} diff --git a/research/capped-fusion-t74-k554/outer/RECT-BOUNDARY.md b/research/capped-fusion-t74-k554/outer/RECT-BOUNDARY.md new file mode 100644 index 0000000000..c49777f8be --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/RECT-BOUNDARY.md @@ -0,0 +1,72 @@ +> **Superseded in this package (pkg7) by outer/STRUCTURED-BOUNDARY.md; kept as the documented fallback (pkg6: k = 5, tau_eff = 2.1567081) if the structured-solve argument is not accepted.** + +# Rectangular boundary batching, k = 5 (new in this package) + +**Status.** This construction is a new contribution of this package. The capped phase-cell fusion outer, its boundary algebra and the batching of right-hand sides are Vlado Vojdanovski's +PR1673 (PHASE-LAYOUT-AUDIT.md, "Batched right-hand sides"); the specialisation of the matrix boundary to an established published exponent is Chafik Boukhalfa's PR1699; the +radix-distributed sparse-union schedule is new in pkg4 (outer/UNION-SCHEDULE.md). The change here: the boundary solves are batched with **W^k right-hand-side columns per factor page with k = 5** +(pkg5 used k = 2), so that rectangular matrix multiplication is used. The published input is the bound **omega(1,1,5) = omega(1,5,1) = omega(5) < 6.156708** of Francois Le Gall, +"Faster Rectangular Matrix Multiplication by Combination Loss Analysis", SODA 2024, arXiv 2307.06535 (v2, revised 27 Dec 2023), Section 1.2, Table 3 ("Our new upper bounds on omega(kappa)"), kappa = 5.00 -> 6.156708 +(same table: kappa = 3.00 -> 4.199095, kappa = 2.00 -> 3.250563, kappa = 1.00 -> 2.372537). Convention (Section 1.1): omega(kappa) is the smallest exponent such that the product of an n x ceil(n^kappa) matrix by a +ceil(n^kappa) x n matrix is computable in O(n^(omega(kappa)+eps)), i.e. the exponent of the tensor ; footnote 1 there (citing [8, 9]) states that the arithmetic complexity of n x n times n x m, n x m times m x n and m x n times n x n are the same: +the matrix multiplication tensors , , are cyclic rotations of each other, so and (a W x W factor page against W x W^5 right-hand sides) have the same rank and omega(1,5,1) = omega(1,1,5). +The theorem is used as a cited input and is not re-proved here. All inherited all-size hypotheses of PR1673 remain. (The k = 2 value of ADVWXXZ 2024, omega(1,1,2) < 3.250035, is the pkg5 fallback; for k = 5 only Le Gall's table gives a bound.) + +## 1. Batch width and the per-column cost + +In the audit, all inner coordinates and following tensor axes are independent right-hand sides; their number R is superpolynomial. The audit batches them in a dyadic width between W and 2W. Here a batch has width between W^5 and n^5 W^5, +where n is the fixed base of the rectangular format of section 3 (a constant; the width is a power n^(5j) matching the padded row dimension n^j). +Batching more columns is allowed for the same reason as before: the number of right-hand sides in an axis substream is superpolynomial, so padding the last incomplete batch costs a polynomial amount per axis substream +(at most n^5 W^5 lines of |E_f| records; at most g axes and g rounds per window), negligible against the superpolynomial volume. The batch matrix of |E_f| x n^5 W^5 consecutive lines (each line |E_f| long) is +rearranged so that W-row slices times all batch columns are contiguous by another small-field transpose with O(log(n^5 W^5)) = O(log p) riffle passes, so moving it costs O(log p) times the boundary volume, exactly as in the audit. +**Working set and record count per batch:** one batch is the W x n^5W^5 matrix of a block (and its W x n^5W^5 result) of p-bit records: n^5 W^6 = poly(p) records (about p^3 polylog p), so P-bit entries fit in polynomially many tape cells; +the whole batch matrix |E_f| x n^5 W^5 is |E_f| n^5 W^5 records, polynomial in p. **Superpolynomial supply per factor page (premise used explicitly):** every prefix block of an axis substream contains +L^(g-f) times the spectators lines, which is superpolynomial in p (the spectator payload and the L^(g-f) suffixes), hence >> n^5 W^5 lines: there are enough independent right-hand sides per factor page. For the last axis f = g the suffix is empty and the lines of a block are only the spectator lines: the d - g spectator axes (d = p^epsilon axes in total, g = p^beta in the group) each have length L = p^8, so there are L^(d-g) = p^(8(d-g)) of them, superpolynomial because d - g = p^epsilon - p^beta grows; W^5 = p^2.5 polylog p is far below it. The factor pages depend only on the axis f, the block index along the line and the axis-f coarse label, not on the other coordinates, so lines of every prefix block of the tag-f substream share the same pages. Each W x W factor page is scanned once per batch (page cost W^2 per block-batch versus product W^sigma). + +Cost bookkeeping per axis: a band of boundary rows has V W / B right-hand-side entries per axis. A batch handles W * W^5 = W^6 entries with one product of shape costing W^(omega(1,1,5)+eps). +So per axis the boundary arithmetic is (V W / B) / W^6 * W^(omega(1,1,5)) = (V/B) W^(omega(1,1,5) - 5), i.e. the old form (V/B) W^(tau - 1) with +**tau_eff = omega(1,1,5) - 5 + 1 = omega(1,1,5) - 4** (in general tau_eff = omega(1,1,k) - k + 1; k = 1 is the square case tau = omega). With the published bound, tau_eff < 2.156708. +The boundary row exponent is epsilon - xi + (tau_eff - 1)/2 and its saving is c + xi - epsilon with c = (3 - tau_eff)/2. + +## 2. Blocked triangular solve against W^5 columns, geometric ratio + +The no-pivot band solve of the audit is the block recursion X_j = L_jj^-1 (Y_j - L_{j,j-1} X_{j-1}) on W x W blocks along an axis line, with R = batch width columns: Y_j, X_j are W x R. Each step is two products of a W x W factor +block with a W x R matrix: shape with R = n^(5j), W = n^j padded. The precomputed diagonal inverses L_jj^-1 are part of the factor page. +The product is computed by recursion on the fixed format (n x n by n x n^5 matrices, rank R_f): T(W) <= R_f T(W/n) + A(W), where the additions (linear combinations of blocks and accumulations) at the top level touch +O(W^6) entries (the output W x W^5 and the inputs are of size at most W^6): A(W) = O(W^6). The output size of the format is n * n^5 = n^6 entries, so necessarily R_f >= n^6; the format exponent sigma > 6 satisfies R_f < n^sigma. The level-i additions cost +R_f^i (W/n^i)^6 = W^6 (R_f/n^6)^i, a geometric series with ratio R_f/n^6 > 1 that is dominated by its last term, the leaves (R_f^(log_n W) = W^(log_n R_f) = O(W^sigma)); precisely T(W) = O(W^(log_n R_f)) = O(W^sigma) because the per-level cost +increases geometrically toward the leaves (ledger check `rect_leaf_domination`: sigma - (k+1) = sigma - 6 > 0; if R_f = n^6 exactly there is only a logarithmic factor, absorbed by the strict slack). Equivalently the ratio of the additions' cost +at the top, W^6, to the leaf cost W^sigma is W^(6-sigma) < 1. Per step of the band solve two such products are needed, working set W * n^5 W^5 * P bits (polynomial). The additions are complete block scans: O(W^6) entries per level, +O(W^6) per node up to logarithms, as in the square-case tape accounting of PR1673/PR1699 (depth-first scheduling, fixed block permutations, tape repositioning). + +## 3. Existence of an exact rectangular format and precision + +Let omega(1,1,5) < sigma0 := 6.156708 (cited). By definition of omega(1,1,5) (the exponent of the arithmetic complexity of ; arithmetic complexity and tensor rank have the same exponent up to the constant bilinearisation factor +that is absorbed by the strict slack), for every sigma > sigma0 there are fixed integers n >= 2 and R_f with an exact bilinear formula of rank R_f for and R_f < n^sigma: choose s with sigma0 < s < sigma, a constant C with +rank <= C n^s for all n, and n large (the cited analysis defines omega through the asymptotic rank, and the infimum is over exact formulas for tensor powers). This uses strict slack and never asserts that the infimum is attained by a finite formula. +The rank equations are finitely many polynomial equations over Z. A complex solution can be replaced by one over the algebraic closure of Q: otherwise, by the weak Nullstellensatz over Qbar, 1 would lie in the ideal, giving the same contradiction over C. +Enumerate finite algebraic tuples with isolating descriptions, test the equations exactly, dovetailing over (n, R_f); the search halts by the existence statement and its cost and description are fixed independently of the growing input +(the argument of PR1699/PR1673's matrix lemma with the format in place of ; no finite scheme is claimed as generated here). +Recursion: T(W) <= R_f T(W/n) + O(W^6), with W padded to the next power of n (a constant-factor change of the dimension; the batch width is the padded W^5, so both W and R are powers of n and no axis of the tensor is padded). +Precision: approximate each fixed algebraic coefficient once by precision-doubling Newton iteration, O(M(P')) bit operations for P' bits. The absolute roundoff envelope of the fixed bilinear recursion obeys E_j <= K E_{j-1} + K n^(6(j-1)) +with K fixed by the chosen formula (maximum L1 column sums of the encoders and decoder times the base-case size), hence E_j <= K^j (...) = W^(log_n K) poly(W), polynomial in W. Input magnitudes at most 2^h need fractional precision +P + 2h + O(log W) for absolute error 2^-P; intermediate magnitudes are W^O(1) max(1, 2^(2h)); the total record width is O(P + h + log W) = O(p) at the retained boundary interface (P, h = O(p)), and a larger fixed guard constant absorbs the formula-dependent K. +The bound is absolute, including cancellation. + +## 4. Choice of sigma, controls + +sigma = 6.1567081 is strictly above the published bound 6.156708 (margin 1e-7, costs about 1.4e-13 in kappa), so tau_eff = 6.1567081 - 4 = 2.1567081. Ledger checks: `rect_exponent_above_published_bound` (sigma - 6.156708 > 0), +`rect_leaf_domination` (sigma > k + 1 = 6), `rect_effective_exponent_above_two` (tau_eff > 2, the trivial output-size bound) and `rect_effective_exponent_below_five_halves`. Rejecting controls: sigma = 6.1567079 (below the published bound) +and sigma = 6.156708 (equal to it) must fail `rect_exponent_above_published_bound`; both are asserted to fail. + +## 5. Consequence for the ledger + +c = (3 - tau_eff)/2 = 0.42164595. The boundary row still binds with main = fused Gaussian (xi = epsilon - c + kappa); kappa = 0.0016781238306..., +1.312e-7 over the k = 2 package (pkg5) and +3.04e-7 over the square tau = 2.372864 package (pkg4). +At the new balance epsilon = 0.99903, xi = 0.5791, beta = 0.4209; cap xi > 1/2 holds with margin 0.0791; union saving xi + 1/2 - epsilon = 0.080 (the old g-factor union row would be -0.341); +group scans 0.422; support/key/membership rows about 0.579; union tag work 1 - 2 beta = 0.158. The unproven omega_C <= 9/4 premise is not used. + +## 6. What is not proved + +The rectangular exponent is a published theorem used as a cited input. The existence of the exact format and the stability constants rest on the arguments above and on PR1673's inherited all-size hypotheses +(compiler, precision/tape, exact recovery, analytic transfer); a reviewer should in particular check the claim that the number of right-hand sides in an axis substream is superpolynomial in the regime used +(spectator payload L^g) and the per-column normalisation in section 1. diff --git a/research/capped-fusion-t74-k554/outer/RETUNED-SLACKS.md b/research/capped-fusion-t74-k554/outer/RETUNED-SLACKS.md new file mode 100644 index 0000000000..e38c1cd46c --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/RETUNED-SLACKS.md @@ -0,0 +1,23 @@ +# Strict slacks of the PR1673 capped phase-cell fusion outer in this package + +Construction, proof and every formula are Vlado Vojdanovski's PR1673 (vendored verbatim under `vendor/pr1673`); the classical-matrix boundary +constant c = 3/10 is Chafik Boukhalfa's PR1699 specialisation of Francois Le Gall's published exponent (`CLASSICAL-BOUNDARY.md`). The following +constants are free in PR1673's own text and audits (each only has to be strictly positive) and are set as follows: + +| constant | PR1673 | PR1699 | here | why free | +|---|---|---|---|---| +| b (complex saving) | 17-decimal truncation | endpoint (22 digits) - 1e-30 | certified endpoint - 1e-30010 | must lie strictly inside the certified supplier endpoint | +| q gap (q = b - gap) | 1e-10 | 1e-30 | 1e-30010 | q < a_eff < b strictly | +| backoff after truncation | 1e-11 | 1e-42 | 1e-30022 | strict gap absorbs polylog factors | +| layout slack s0 | 1e-5 | 1e-30 | 1e-30010 | positive layout slack (carried by the boundary row in pkg4) | +| r0 | 1e-6 | 1e-30 | 1e-30010 | only eventual u = alpha^2 <= p^r0 | +| zeta | 1e-8 | 1e-32 | 1e-30012 | r + zeta > 0 gives g a B = o(p) | +| stop exponent | 1e-9 | 1e-36 | 1e-30016 | any t_stop > 0 with (1-t)b > a_eff, q < (1-t)b | +| decimal floor | 1e-18 | 1e-48 | 1e-30046 | rounding grid only | + +The exact enclosure of the native moment sum uses a 2^-99933 grid (directed-rounding integer fixed point, atanh/exponential term counts derived from the grid in check_ledger.py) so that moment(b) < 1 and +moment(endpoint + 1e-30000) > 1 are certified (the supplier endpoint is certified to 1e-30000 by the repaired fine engines). kappa = 0.0016776417313433545642517275958639984231708545722735432722117400060454625429077941422798526440584702 +(exact rational in `LEDGER.json`), above PR1699's exact kappa by 6.69e-25. + + +**Fine-prime package.** epsilon = 1 - DELTA_E with DELTA_E = 2e-30010 (any DELTA_E > r0 = 1e-30010 is admissible, outer/FINE-PADDING-COMPOSITION.md), beta = 1 - 3 DELTA_E; all other slacks unchanged. diff --git a/research/capped-fusion-t74-k554/outer/STRUCTURED-BOUNDARY.md b/research/capped-fusion-t74-k554/outer/STRUCTURED-BOUNDARY.md new file mode 100644 index 0000000000..eb295d39b4 --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/STRUCTURED-BOUNDARY.md @@ -0,0 +1,103 @@ +# Structured boundary solves (new in this package) + +> **Package note.** This construction is retained as an alternative but is **not used** by this package's kappa: with fine source-prime padding the boundary row is not binding (xi = 0.908 < epsilon), and the explicit Strassen boundary of PR1786 is used (outer/FINE-PADDING-COMPOSITION.md). The numbers in sec. 7 below belong to the earlier package. + +**Status.** This construction is a new contribution of this package. It builds on Vlado Vojdanovski's PR1673 (capped phase-cell fusion: the interior/boundary factorisation, the no-pivot boundary solver, the audited +conditioning bounds BILATERAL-LDU.md, FORWARD-SMALL-A-AUDIT.md, LOG-A-PHASE-SCHUR-AUDIT.md, PHASE-LAYOUT-AUDIT.md), on the radix-distributed union schedule (pkg4, outer/UNION-SCHEDULE.md) and on the classical structured-matrix +theory of Gohberg and Semencul (inversion of Toeplitz matrices, 1972), Kailath, Kung and Morf (displacement rank, 1979), Bitmead and Anderson (1980) and Pan (structured matrices and polynomial computations). It replaces the dense/fast-rectangular +products of the boundary algebra (pkg1 to pkg6: W x W blocks against W..W^k right-hand sides at cost W^tau) by applications of generator representations of the blocks: O(r W log W) ring operations per right-hand-side column, i.e. polylog(p) per entry. +The boundary row then has exponent epsilon - xi + 1/2 + o(1) (tau_eff = 2 + delta for every fixed delta > 0; tau_eff = 2 itself is not claimed). All inherited all-size hypotheses of PR1673 remain. The package pkg6 (rectangular k = 5, tau_eff = 2.1567081) is the fallback. + +## 1. Where the structure comes from + +Within one phase cell, with the notation of the note and of BILATERAL-LDU.md (rho = 1 + theta, q_i = floor(rho i + 1/2) = i + k on the cell's stretch of constant offset k, beta_j = rho j - q_j = theta j - k), +G_ij = exp(-a[(rho j - q_i)^2 - beta_j^2]). Expanding with rho j - q_i = (j - i) + beta_j gives the exponent (j-i)^2 + 2(j-i) beta_j = rho (j-i)^2 + theta (j^2 - i^2) - 2k(j - i), hence **exactly** + + G = D_r T D_c, T_ij = exp(-a rho (j-i)^2) (Toeplitz), (D_r)_i = exp(a theta i^2 - 2 a k i), (D_c)_j = exp(-a theta j^2 + 2 a k j). + +(The same factorisation, with a, rho and the offsets of the forward map, holds for the broad forward operator H of FORWARD-SMALL-A-AUDIT.md, which is itself a symmetric Toeplitz matrix after the anchored diagonal gauge, and for the augmented Haug = E H C + (I - E C), +which is permutation-similar to H (+) I.) The truncation to bandwidth W (rows farther than W are below 2^-P and are zero in the retained rounded matrix) keeps T banded Toeplitz. Cells are separated by physical cuts, which the note already makes boundary coordinates, so no block of the +boundary system couples two cells; the cell-wise offset k only enters D_r, D_c. + +**Diagonal cancellation.** In the interior/boundary decomposition the Schur complement S = D - C A^-1 B and every step of the block LU are built from products K_{ab} K_{bb}^-1 K_{bc} with K = D_r T D_c; +D_c(b) D_c(b)^-1 and D_r(b)^-1 D_r(b) cancel, so in the coordinates Y = D_r^-1 X D_c^-1 *every block of S, every LU pivot and every inverse pivot is the corresponding block of the Schur complement of the plain Toeplitz matrix T* (checked exactly in struct_check.py). The diagonals are only applied at +the input and output of a boundary solve, as the same anchored ratios (relative to the block anchor) as the capped gauge of CAPPED-GAUGE-AUDIT.md: their range over a block of the line, including consecutive boundary segments, is O(aB) with the linear (old) gauge of CAPPED-GAUGE-AUDIT.md, and O(a theta B'^2) = O(a B^2/d) (B' <= B + 2W) in the fractional-shift representation of GAUGEFREE-INTERIORS.md (chirp only), inside the group guard g a B^2/d = o(p) used by this package (beta + 2 xi - eps < 1). No new gauge is introduced. In the shifted representation the pivot bounds are those of GAUGEFREE-INTERIORS.md Corollary 4.3 (P_j^-1 is a principal block of the inverse of the accretive contiguous section T[J]); the displacement-rank statements are unchanged (they hold for any Toeplitz T). + +## 2. Displacement ranks (the algebraic statement) + +Let W x W be the segment size and Z the W x W down-shift. The displacement of a matrix M with row and column index sets that are intervals (shifts Z of the corresponding sizes) is Delta(M) = Z M - M Z (Sylvester) or M - Z M Z^T (Stein); the two ranks differ by at most 2 (Kailath-Sayed). +Facts for a banded Toeplitz T and interval index sets: +(a) every rectangular block of T has displacement rank <= 2 (the displacement lives in the first row and last column); +(b) for invertible Toeplitz A, Delta(A^-1) = -A^-1 Delta(A) A^-1 has rank <= 2 (Gohberg-Semencul); principal and corner blocks of such a matrix have rank <= 2 + 2; +(c) Delta(XY) = Delta(X) Y + X Delta(Y) with the middle shift matched, so ranks add under products; ranks do not increase under sums beyond the sum; Delta(M^-1) = -M^-1 Delta(M) M^-1, so M and M^-1 have equal rank; +(d) (Kailath) the Schur complement of a leading block of a matrix with displacement rank r has displacement rank <= r (w.r.t. the shift of the remaining indices). +Consequences for the boundary J = G separated W-segments with interiors I_j between them (all interiors eliminated): +* coupling S_{j,j+1} = - T_{j,I_j} A_{I_j}^-1 T_{I_j,j+1}: rank <= 2 + 2 + 2 = 6 (a, b, c); S_{j+1,j} likewise; +* diagonal block S_{jj} = T_{jj} - T_{j,I_{j-1}} A^-1 T_{I_{j-1},j} - T_{j,I_j} A^-1 T_{I_j,j}: rank <= 2 + 6 + 6 = 14; +* the LU pivot P_j = S_{jj} - S_{j,j-1} P_{j-1}^-1 S_{j-1,j} is the Schur complement of T onto segment j after eliminating all indices to its left (a leading block of T: rank <= 2 by (d)) minus the single right-interior correction T_{j,I_j} A^-1 T_{I_j,j} + (rank <= 6; indices farther to the right do not couple to segment j, in T or in its left Schur complement, because the band is W and the separators have length >= W): **rank(P_j) <= 8 uniformly in j and G**, and rank(P_j^-1) = rank(P_j). +A *global* displacement operator on the concatenated J has rank growing like 2G (IdeaLiterature's screen); the claim here is block-wise, with one shift per segment, which is exactly what a block-tridiagonal LU needs. The constants 14 and 8 are proved bounds; the observed ranks are <= 4 (struct_check.py, +and IdeaLiterature's 70-110-digit screens of the real chirp-weighted blocks: coupling 2, diagonal and pivot 2-4, flat in W and in G). + +## 3. Generator representation + +A block M with Stein displacement M - Z M Z^T = sum_{k<=r} g_k h_k^T is represented by (g_k, h_k) and recovered by the Kailath-Kung-Morf formula **M = sum_k L(g_k) L(h_k)^T**, L(g) lower-triangular Toeplitz with first column g +(rectangular off-diagonal blocks use the same formula with the matched shifts). Generators are computed **offline, from generators, never from the dense blocks**: the leading Schur complements of the banded Toeplitz T are propagated by the generalised Schur algorithm (r = 2 generators, +O(r W) work per eliminated index, or the superfast O(r W log^2 W) variant of Bitmead-Anderson and Pan per segment); the interior corner blocks T_{j,I} A_I^-1 T_{I,j'} come from the Gohberg-Semencul generators of A_I^-1 (first and last columns of the inverse of the interior Toeplitz block); +the pivot and inverse-pivot generators are then obtained by the rank-<= 8 recompression of the sum (generators of the Schur piece and of the correction), an exact operation on ranks (QR/SVD at working precision P + poly bits). This is the page regeneration the audit already charges +(polynomial in p per complete microbox and axis, amortised by the superpolynomial payload); the generator pages replace the dense W x W factor pages. Balanced generators from the SVD of the displacement (g_k = sqrt(sigma_k) u_k, h_k = sqrt(sigma_k) v_k) satisfy |g_k||h_k| = sigma_k <= ||Delta(M)|| <= 2||M||, +so each term of the KKM sum has norm <= W ||Delta(M)|| (|L(g)|_2 <= |g|_1 <= sqrt(W)|g|_2) and the sum has norm <= 2 r W ||M|| = poly(W) ||M||: no hidden cancellation beyond a polynomial factor. + +## 4. The solve on the tape + +For one boundary band the block-tridiagonal system S x = y (stage diag(I, S^-1) of the audit; the C and B stages are products with the banded Toeplitz coupling blocks T_{J,E}, themselves rank-2 Toeplitz blocks) is solved by block forward and backward substitution with the audited no-pivot LU: + z_j = P_j^-1 (y_j - S_{j,j-1} z_{j-1}), x_j = z_j - P_j^-1 S_{j,j+1} x_{j+1}. +Each operator application (S_{j,j±1}, P_j^-1 and the Toeplitz couplings) is r pairs of triangular-Toeplitz products L(g) (L(h)^T v), each a convolution of length W computed by FFT of length 2W at working precision: O(r W log W) ring operations of p-bit numbers per right-hand-side column. +Layout: the right-hand sides of an axis substream (the lines of the union schedule, UNION-SCHEDULE.md) are batched in the dyadic width of the audit; the batch matrix |E_f| x batch width is arranged so that the W-axis of every column is contiguous by the small-field transpose (O(log p) riffle passes), the FFT is a sequence of O(log W) butterfly +passes, each a scan with a bit-reversal permutation realised by O(log W) riffle passes: O(log^2 W) scans of the batch data, polylog p overhead. The generator page of a block (r W numbers) is scanned once per batch; with the batch width >= W this is a 1/W fraction of the batch data (as for the dense pages in the audit). +Cost: per band and per column O(r W log^2 W M(p)) bit operations, i.e. per entry O(r log^2 W M(p)) = (M(p)/p) polylog p * p; with the retained short multiplier M(p)/p = polylog p, the boundary arithmetic is **O(V (d/B) W polylog p)**, so the boundary exponent is epsilon - xi + 1/2 + o(1), i.e. tau_eff = 2 + delta (any fixed delta > 0 absorbs the polylog factors since W = p^(1/2) polylog p). +(The ledger uses delta = 1e-30010, the same convention as the other strict slacks.) + +## 5. Precision and stability at Cp bits (the regime: row gap about 1/(16p), poly(p) conditioning) + +The argument reuses the audited bounds and adds the factors introduced by the structured representation. +1. *Pivots and couplings.* By PR1673's no-pivot theorem (BILATERAL-LDU.md Sections 1-2: unit L and U with all entries and all inverse entries bounded by constants times exp(-a rho theta |i-j|), c = prod(1 - r^-m) > 0, ||N^-1||_inf < 16 theta^-2; and the narrow/broad row-gap bounds of LOG-A-PHASE-SCHUR-AUDIT.md and FORWARD-SMALL-A-AUDIT.md: + Schur row gap >= 1/(16 p) survives elimination), every P_j^-1 is a principal block of the inverse of a partially eliminated matrix and satisfies ||P_j^-1||, ||S_{j,j±1}||, ||P_j|| <= poly(p) uniformly in j, with the unit L^-1 / U^-1 bounded independently of G (this is the audited no-factor-equal-to-the-number-of-windows property). In the SPD (broad, Saug/4) case the principal-submatrix inverse has norm <= lambda_min(H)^-1 <= poly(p). +2. *Generators.* From section 3, balanced generators have norm <= sqrt(2 ||M||) = poly(p)^(1/2) and the KKM reconstruction has norm <= 2 r W ||M|| = poly(p). +3. *One application.* An FFT convolution of length 2W in fixed point with Cp-bit coefficients and a precomputed table of 2W roots of unity (computed once, offline, to P + poly bits by Newton iteration in O(M(P'))) has absolute error <= O(log W) 2^-P' times the product of the l1/l2 norms of its operands. So one application of an operator M to a vector v has + absolute error <= poly(p) ||v|| 2^-P' + (the error of the stored generators, <= 2^-P' poly(p)). The diagonal gauges D_r, D_c enter only through the anchored ratios of range O(aB) (section 1), which cost O(aB) = o(p) extra bits: the same guard as the interiors (chirp-only O(a B^2/d) per axis in this package; O(aB) in the earlier linear-gauge version); no exponential growth beyond it. +4. *Accumulation.* The forward and backward substitutions are the unit L^-1 and U^-1 of the audited LU followed by diagonal factors P_j^-1; errors of different steps enter linearly through the unit factors whose inverse is bounded independently of G, so the total absolute error is <= poly(p) 2^-P' (a sum over at most poly(p) = L/B segments of poly(p) terms, with the audited exponential decay of the L^-1, U^-1 entries + making the dependence on G at most polynomial). Hence P' = P + O(log p) + o(p) (the guard), i.e. O(p) bits suffice, the same record width as for the dense algorithm. +5. *Offline generator accuracy.* Generators are generated at working precision P + poly(p) bits in polynomial time; their conditioning is that of the blocks themselves (the generalised Schur algorithm is applied to the banded Toeplitz T with strictly diagonally dominant / SPD structure whose leading Schur complements are bounded below by the row gap), so no loss beyond poly(p) factors occurs. +The one point where structured algorithms are known to be unstable in general (indefinite or nearly singular leading minors) is excluded here by the audited uniform lower bounds on the pivots (item 1); this is where an independent reviewer should look first. + +## 5b. Cleaner conditioning argument, rounding convention, anchors and pages (added after independent review) + +* **Conditioning without the no-pivot theorem.** In the coordinates Y = D_r^-1 X D_c^-1 every block, pivot and inverse pivot is a block or a Schur complement of the plain symmetric positive definite Toeplitz matrix T (a Gaussian symbol is positive for every a; the narrow case has cond(T) = 1 + O(e^-a)). + By interlacing and monotonicity of Schur complements, every principal submatrix and every Schur complement of T has its spectrum inside [lambda_min(T), lambda_max(T)], hence every leading minor and every pivot P_j (and P_j^-1) has condition number at most cond(T), and cond(T) <= (1 + sqrt(pi/gamma))/(sqrt(pi/gamma) e^(-pi^2/(4 gamma))) = O(e^(a/4)) = O(p) + with the eigenvalue bounds of FORWARD-SMALL-A-AUDIT.md (the same constants as the broad forward audit). The Bunch-type danger of structured solvers (indefinite or nearly singular leading minors) cannot occur for SPD T; the Schur/Levinson recursion and the Gohberg-Semencul application on an SPD Toeplitz matrix are weakly stable, losing O(log cond) = O(log p) bits. + (This replaces the appeal to the row gap 1/(16 p) in section 5 item 1 for the SPD blocks; the row-gap bounds remain the justification for the non-symmetric narrow blocks. Independent numerical evidence, LeverRank, 80-160 digits, alpha = 4, a = 50.3, rho = 1 + 1/6000: pivot condition numbers saturate at cond(T) ~ 1.4e5 for W = 16, 32, 64; balanced-generator norm ratio sigma_1(grad L^-1)/||L^-1|| 0.14-0.27 (no growth); generator-to-inverse rounding amplification <= 1; + Levinson/Gohberg-Semencul error about 2^9.5 u flat in n; a perturbation of the first pivot is damped along the chain, so accumulation is independent of G.) +* **Rounding convention (required).** The retained rounded matrix must be rounded *factorwise*: K^ = D^_r T^ D^_c with T^ exactly Toeplitz (symmetric rounding of exp(-a rho x^2) by |i-j|) and D^_r, D^_c the rounded gauge weights. This is the structure-preserving rounding of FORWARD-SMALL-A-AUDIT.md and the Toeplitz-similar cell matrix of LOG-A-PHASE-SCHUR-AUDIT.md. Entrywise rounding of K would destroy the Toeplitz structure (this is the dense non-Toeplitz control of section 6: the displacement rank jumps to W). +* **Anchors.** The diagonal conversions between X and Y coordinates use segment-local anchors. The inter-segment constant ratios D_r(m_j)/D_c(m_{j-1}) (about e^{O(aB)}) are stored inside the coupling pages and cost O(aB) = o(p) guard bits per page; no range over the whole line is ever formed. +* **Pages.** In the interior of a line the pivots are identical (observed), so each cell needs O(1) distinct generator pages (only the cell-end blocks differ): page regeneration is cheap. A batch width W suffices (no W^k batching is needed in this package). + +## 6. Executable check (`outer/struct_check.py`) + +On the exact rational model K = D_r T D_c with a random (non-symmetric) banded Toeplitz T, W = 3..5, G = 3..6 segments, interiors of length 3W: (1) the exact diagonal cancellation S_Y = Schur(T); (2) the Stein displacement ranks of every segment block, coupling block, LU pivot and inverse pivot (all <= 4, flat in the segment index and in G); +(3) exact reconstruction of every block from its rank factorisation by the KKM formula; (4) the block forward/back substitution performed only with generator representations equals the dense solve exactly; (5) controls: a dense non-Toeplitz perturbation of the band raises the pivot and diagonal ranks to the full W (here 6 > 4), and a perturbed pivot is not reproduced by the original generators. +This checks the algebra exactly at small W; it does not check the analytic stability argument of section 5, which is an argument, nor does it replace a check on the real chirp-weighted blocks at 70-110 digits (IdeaLiterature's screens: scratch/IdeaLit/real.py, real2.py). + +Scope of the real-matrix screen (IdeaLiterature, disclosed): block ranks 2-4 were observed for W <= 16 and G <= 8 segments only. In that toy the pivot condition number grows with W (about 3.5 at W = 8 and 1.2e3 at W = 16) because the toy takes a proportional to 1/W^2. +In the regime of the note a = pi alpha^2 >= 1 is fixed independently of W (alpha = ceil(sqrt((4/pi) log 16p))), theta >= 1/(4d), and BILATERAL-LDU.md bounds the periodic inverse by ||N^-1||_inf < 16 theta^-2 and the pivots/factors uniformly (items of section 5), so the conditioning is polynomial in p; the toy's growth with W is therefore not the real regime, but it is exactly the point that is *not* verified numerically here. + +## 7. Ledger consequence + +tau_eff = 2 + delta (delta = 1e-30010): c = (3 - tau_eff)/2 = 1/2 - delta/2. Balance: main = fused Gaussian = boundary - slack with xi = epsilon - c + kappa; the union row xi + 1/2 - epsilon has the same exponent as the boundary row (both epsilon + 1/2 - xi), so both bind at kappa + 1e-30010 together with main and the Gaussian row; +with the chirp-only guard of GAUGEFREE-INTERIORS.md: xi = 0.50167, xi - 1/2 = 0.00167 > 0 (cap holds), beta = 0.99665, union tag work per visit 1 - beta = 0.00335 > 0. kappa = 0.00167974550880...; +1.40e-6 over the structured-boundary balance with the linear guard (kappa 0.0016783441717...; that was +2.20e-7 over k = 5, tau_eff = 2.1567081). + +## 8. What is not proved + +* The constants c0 = 14, 8 follow from the displacement calculus (a)-(d) above; (d) and the Gohberg-Semencul statement (b) are classical theorems used as inputs; the corner-block increment (+2) and the application to the real chirp-weighted blocks (Haug, Saug, narrow and broad pairs) rest on the exact factorisation of section 1. +* Section 5 is an error argument built from the audited bounds, not a verified stability theorem for structured solvers. The real-regime numerical check (row gap 1/(16 p), p large) has not been run. +* Everything inherited from PR1673 (all-size compiler, precision/tape, exact recovery, analytic transfer) remains an assumption. diff --git a/research/capped-fusion-t74-k554/outer/UNION-SCHEDULE.md b/research/capped-fusion-t74-k554/outer/UNION-SCHEDULE.md new file mode 100644 index 0000000000..78f9955ca8 --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/UNION-SCHEDULE.md @@ -0,0 +1,132 @@ +# Radix-distributed sparse-union schedule (new in this package) + +**Status.** This schedule is a new contribution of this package. It is not part of PR1673 (Vlado Vojdanovski, whose capped phase-cell fusion +construction and PHASE-LAYOUT-AUDIT.md this document modifies and relies on), nor of PR1699 (Chafik Boukhalfa, Le Gall's exponent). It replaces +one step of PR1673's sparse-union window, the per-axis scan of U, and is conditional on every other hypothesis of PR1673. Its executable finite +check is `outer/sched_test.py`; the arithmetic consequence is `outer/check_ledger.py`. An independent review is required before release. + +## 0. Model and what is replaced + +Machine model: PR1673's fixed-tape model, i.e. a multitape Turing machine with a fixed number of tapes; the cost of an operation is the total head +travel; a record is a p-bit coefficient record with a header of O(g log L) bits (g=p^beta, L=poly(p) the microbox side, beta<1, so the header is o(p) +and moving it multiplies the cost by 1+o(1)). V is the number of records of the microbox (including spectators). All notation (E_i, J_i, T_i, mu, +W, B, d, g, L, the windows) is that of PHASE-LAYOUT-AUDIT.md and the capped interiors of CAPPED-INTERIORS.md; mu = max_i |E_i|/L = O((W/B) polylog p). + +A sparse window applies the Kronecker product `Theta = (x)_{i=1..g} T_i` to the microbox tensor, where `T_i = I_{E_i^c} (+) T_i|E_i` (for the window +containing the C and S^-1 stages, T_i is the product of the two sparse factors of axis i; each is block diagonal in the same way). +The audit's implementation scans the union U = {x : some x_i in E_i} once per axis to copy U_i = E_i x [L]^(g-1): cost O(|U|) per axis, hence +`O(V [g^2 mu + g mu polylog p])` per window and the union row `eps + beta + 1/2 - xi`. Here the g-fold scan of U is removed. + +## 1. Flag sets and class decomposition + +For a record x put `F(x) = {i : x_i in E_i}` (the g membership flags the audit already computes in the single scan that forms U; stored as a g-bit vector +in the header). + +**(F1) invariance.** `T_i` changes a coordinate x_i only inside E_i and fixes E_i^c, and maps E_i to E_i. Hence `F(Theta x) = F(x)`: every T_j preserves every class +`C_F = {x : F(x) = F}`. + +**(F2) commutation.** Each T_i depends only on the axis-i coordinate (and on axis i's own coarse label/page, fixed per microbox), so T_i acts on tensor factor i alone; the T_i act on different tensor factors, hence commute, and on class C_F the operator Theta equals `(x)_{i in F} T_i|E_i` on the coordinates in F +(range E_i) tensored with the identity on the coordinates not in F (the T_j, j not in F, are the identity on E_j^c). + +**(F3) complete lines.** Fix F, f in F and the other coordinates z (all coordinates except x_f). The *E_f-line* of z is {x : x_f in E_f, other coordinates z}. Every point +of it has the flag set `F(z) union {f}` (flags of z-coordinates plus f), so the whole E_f-line lies in one class, and contains exactly |E_f| points. + +## 2. The schedule + +Let `f_r(F)` be the r-th smallest element of F. Define `S_r = {x : |F(x)| >= r}`, kept as a stream in lexicographic order of x (S_1 = U; S_{r+1} is S_r with +the records |F|=r deleted, so lexicographic order is inherited). + +Round r (r = 1,2,...,R, where R = max |F| <= g) applies to every record x of S_r the operator T_{f_r(F(x))} along axis f_r(F(x)), to complete E_f-lines (F3). +After the rounds, every record of class C_F has received T_i exactly once for each i in F (the f_r(F) enumerate F), in increasing axis order; +by (F2) this equals the action of Theta. Since lines of the same round and class are disjoint and independent (F2), applying T_f to each line separately equals +the action of `T_f|E_f (x) identity` on the class. Rounds use the values written by earlier rounds because records carry their current values in the stream. + +### 2.1 One round (cost accounting per step; N = |S_r|) + +1. **Tag.** For each record compute `t = f_r(F(x))` from its header bits: O(g) bit operations (scan for the r-th set bit). Worst case a record has |F| = g and takes g rounds, + so tag work per visit is O(g) bit operations, paid by the Theta(p) cost of that visit (Section 3, header and tag work): g log L = o(p) since beta < 1 (ledger check `union_tag_work_per_visit_fits_record`). +2. **Stable binary LSD radix distribution by tag.** For k = 0..ceil(log2 g)-1: scan the stream; records whose bit k of the tag is 0 go to output tape Z, bits 1 to tape O + (one input tape, two output tapes), then Z is copied followed by O back onto the work tape. Each pass costs <= 2N record moves; the bits of the pass are written (N bits) + to a bit tape together with the count n0 of zeros. *Stability* by induction on k: after pass k the stream is ordered by (bits k..0 of tag) with ties in the original order. + After all passes: ordered by tag, ties in lexicographic order; the stream splits into contiguous axis substreams, one per tag value f. + Inversion (used in step 5): replay the passes in reverse: copy the stream onto Z/O at the stored split point n0 (one pass), then read the bit tape and take the next record from Z or O accordingly. + Cost 3N per pass. Total O(N log g) = O(N log p). +3. **Structure of an axis substream (the key lemma).** Axis f substream = {x in S_r : f_r(F(x)) = f}. Membership depends on F(x) only, and F(x) = F(z) union {f} for x with x_f in E_f (all substream records + have x_f in E_f, because f is in F(x)); so it depends on z only, not on x_f. Therefore for each fixed prefix x_f} is the same for every x_f in E_f. In the stream (lexicographic order of (prefix, x_f, suffix)) the prefix block is the concatenation of + a = |E_f| rows (one per x_f in E_f, in increasing order), each row listing the same b = |Z'(prefix)| suffixes in the same order. No coordinate is invented: every needed point is present. + Block boundaries are detected by comparing the prefix fields of consecutive records (O(g log L) bits per comparison, o(p)); rows by the ordinal of x_f in E_f stored in the header + (computed with the flags: the rank of x_f in E_f costs O(polylog p) with the carving description) -- no counter of unknown length is needed. +4. **Variable-length lockstep transpose of every prefix block** (brings x_f to the line suffix). Let `a = |E_f| <= L = poly(p)`. All rows of a prefix block have the same length b within a tag (point 3), b unknown to the routine. Recursively halve the row index range into the upper part of ceil(a/2) rows and the lower part of floor(a/2) rows (the implementation uses chunk sizes h = floor(a/2) for the first child and a-h = ceil(a/2) for the second; either order works, the tree must be the same for every block and its inverse). + Level structure: a balanced binary tree of row ranges of depth ceil(log2 a) = O(log p), the same tree for every block. *Merge of a node*: its children's outputs `TA` (rows 0..h-1 in suffix-major order, + i.e. for each suffix the h records of A's rows) and `TB` (the a-h rows of B) are read in lockstep from two tapes, taking h records from TA, then a-h records from TB, alternately, until both end markers + coincide; the output is the node's suffix-major order `[row_0[j], ..., row_{a-1}[j]]_j`. The routine never needs the row length b: the chunk sizes h and a-h depend on a alone, and the end of the node's data is + the end marker (prefix-block boundary, or the stream end). A level is realised by two passes over the whole substream. Every record carries in its header the ordinal k of its source row x_f. The data of a node (a range [lo, lo+n) of ordinals) is a contiguous run of records of one prefix block whose ordinals lie in the range; its child A (ordinals [lo, lo+h)) comes first, immediately followed by child B (ordinals [lo+h, lo+n)), so the junction is the first record whose ordinal is >= lo+h, and the end of the node is the first following record whose ordinal is >= lo+n or whose prefix field differs (both read from headers; the tree is the same for every block and nodes appear in row order). Pass 1 copies the A-parts to tape M1 and the B-parts to tape M2, node by node. Pass 2 reads M1 and M2 in lockstep, h records from M1 then n-h from M2, node by node (a node's A- and B-parts end at the same node marker), writing the parent level. So a level costs O(N) record moves and the whole transpose O(N log a). After the transpose, each line (fixed prefix and suffix) occupies a consecutive group of a records with increasing x_f ordinal. +5. **Apply T_f on lines and batch.** Each consecutive group of a records is a complete E_f-line; T_f|E_f is applied exactly as in the audit's step 4: consecutive lines form right-hand sides, batched in dyadic width between W and 2W, + factor pages (regenerated once per microbox and axis from its coarse origins, polynomial in p, amortised by the superpolynomial payload) scanned once per batch, only the polynomial-width row field moved + (O(log p) times the boundary volume). This arithmetic is the *boundary-algebra row*, unchanged and not part of the union movement. +6. **Undo** the transpose (unzip levels), then undo the radix distribution (step 2 inverse): the processed records are back in lexicographic order of S_r. +7. **Split.** One scan: records with |F| = r are final for this window; push them (with the |S_r|-bit indicator keep_r = [|F| > r]) on the LIFO tape; the rest, S_{r+1}, is written to the alternate work tape. + +### 2.2 Wrap-up + +After the last round, pop the LIFO tape: for r = R,...,1 interleave `rest_r` with the already final stream S_{r+1} by keep_r (the audit's merge by indicator), producing the final S_1. +Finally merge S_1 into the microbox using the indicator bits of the single scan that formed U; identity records (F = empty) are never moved. +The two dense-stage scatters/regathers, the one scan forming U and the final merge are the audit's group scans: O(V polylog p) per window, in the group-scan row. + +### 2.3 Tape-head accounting (per round, and why rounds do not multiply the cost) + +Tapes: W1, W2 (alternating work tapes carrying S_r), Z, O (radix outputs), Tb (bit tape), STACK (LIFO), M1, M2 (merge/zip tapes), small header/counter tapes: a fixed number. +* W1 holds S_r written from cell 0; before round r the head is at cell 0 (rewind over the written length |S_r| only; cells beyond are stale and never read). +* S_{r+1} is written to W2 from cell 0, then the roles swap. Rewinding costs the written length, at most |S_r|. +* STACK is only appended to at its end and, in the wrap-up, read backwards from its end; the rest_r are consecutive, so popping costs the sum of |rest_r| <= sum |S_r|. No head ever travels over the whole of + the stack or of U per round. +* Z, O, Tb, M1, M2 are written from cell 0 and rewound over their written length (<= |S_r| records or bits). +Hence the head travel of round r is O(|S_r| p (log g + log a + 1)) and the total is O(p (log g + log L + 1) * sum_r |S_r|). The rounds are sequential, but their *number* does not multiply the cost: |S_r| shrinks and +nothing in round r touches data outside S_r. + +### 2.4 Volume identity + +`sum_r |S_r| = sum_x |F(x)| = sum_i |U_i| = sum_i |E_i| L^(g-1) * (spectators) <= g mu V.` (Each record is counted once per flag; the first equality is exchanging the order of summation.) + +## 3. New cost and row + +Per window: `O(V g mu polylog p)`; no factor g^2 and no per-axis scan of U. Per group, then over d/g groups: + +`O(V (d/g) g mu polylog p) = O(V d W polylog p / B)`, + +i.e. union-movement exponent `eps + 1/2 - xi` (saving `xi + 1/2 - eps`). Old audit row: `eps + beta + 1/2 - xi`. +The identity `sum|F| <= g|U|` shows the new cost is never larger than the old one. + +*Sparsity is not used.* In the regime of this package the expected number of flags g*mu = p^(beta+1/2-xi) is larger than 1 (xi - beta - 1/2 < 0), so U is essentially the whole microbox, and the audit's ledger check +`sparse_union_fraction_decays` is not used. The cost is the total number of record-flag incidences, not |U|. +Header and tag work: the flag header has g bits and g log L bits of coordinates (o(p) since beta < 1); tag work is at most O(g) per visit and a record is visited at most |F| <= g times: each visit costs Theta(p polylog p) anyway, so the total over the sum_r |S_r| <= g mu V visits is O(g mu V (p polylog p + g log L)) = O(g mu V p polylog p) as soon as g log L = o(p), i.e. beta < 1. (An earlier version of this note charged O(g^2) per record against o(p) and required 2 beta < 1; that per-record total is not needed, see outer/GAUGEFREE-INTERIORS.md section 7.) + +## 4. Consequence for the ledger + +Rows: main `eps q`; fused Gaussian `1 - eps + q beta`; boundary `c + xi - eps` with `c = (3 - tau)/2`, `tau_eff = 2 + 1e-30010` (structured boundary solves, outer/STRUCTURED-BOUNDARY.md; this document's schedule is independent of the boundary exponent); +union `xi + 1/2 - eps`; guard `beta = 1 - xi - r - zeta` (linear gauge; in this package the guard is the chirp-only `beta = 1 - (2 xi - eps) - r - zeta`, see Section 5b); `xi > 1/2`. Balance set: main = fused Gaussian = boundary - slack, which gives +`eps = (1 + q + q (c - s - r - zeta))/(1 + q)^2`, `xi = eps (1 + q) - c + s`. The union row is far above kappa at this point (saving about 0.080 here). +Rejecting controls in the ledger: reinstating the old row `1 - eps - beta - 1/2 + xi` at the new point fails (it is about -0.125); the full-key sort row fails; the four inherited controls fail. + +## 5. Executable check (`outer/sched_test.py`, and the independently coded `outer/sched_review.py` by LeverRank) + +The script runs the schedule above on exact integer tensors (g = 3..6 axes, L = 5..8, random E_i and random integer T_i|E_i): tagging, the stable LSD radix distribution with its inversion, per-prefix-block variable-length lockstep zip +transposes with a check that every extracted group of a records is a complete E_f-line with consecutive ordinals and one common z, application of T_f, unzip, undo, the keep/rest split, the LIFO pop and the merge by indicator bits, +and compares with the full tensor product `(x) T_i` computed by tensor contraction: exact equality. It also checks the volume identity `streamed = sum|F| = sum_i |U_i|`, `sum|F| <= g|U|` (), +that the number of record moves is within `3 * sum|F| * (ceil(log2 g) + 2 ceil(log2 a) + 4)`, and a tamper control (skipping the second round) fails. + +## 5b. Rows that depend on beta, re-verified at the balance of this package + +At the fine-prime-padding point (outer/FINE-PADDING-COMPOSITION.md; Strassen boundary c = 3/32, theta ~ p^-2): epsilon = 1 - 2e-30010, beta = 1 - 6e-30010, xi = 0.90792965...; every row is regenerated exactly by `check_ledger.py` and re-derived by `independent_check.py` (all strictly above kappa or strictly positive): +group scans 1-eps+beta = 1 - 4e-30010 (saving far above kappa); union xi+1/2-eps = 0.4079 (boundary = main + 1e-30010 binds; the union is no longer binding; the old row 1-eps-beta-1/2+xi = -0.5921 fails: rejecting control, so the radix schedule is still essential); +cap xi-1/2 = 0.4079 > 0 and eps-xi > 0.092; group positive and below dimension (eps-beta = 4e-30010 > 0); support router span 1-beta = 6e-30010 > 0 (the supplier's total moved support O(g polylog p) = o(p) holds eventually, with exponent margin 6e-30010); +gauge/guard 1-(2xi-2)-r-beta = 0.184 (fine theta; the linear guard 1-xi-r-beta is negative: rejecting control); group key fits the record (eps-beta = 4e-30010); membership arithmetic 1-beta-2(1-eps) = 2e-30010; union tag work per visit 1-beta = 6e-30010 (the old test 1-2beta is negative and not used); union header 1-beta; core-face corrections eps+beta+48-128+2 < 0. +The ledger row `sparse_union_fraction_decays` (xi-beta-1/2 > 0) stays deleted: it is false (g mu = p^(beta+1/2-xi) > 1) and the schedule does not use it. + +## 6. What this does and does not establish + +Established here: the data-movement schedule, its correctness (class invariance, commutation, complete lines, stability of the radix passes, the lockstep transpose, LIFO interleave) and its tape-head cost O(V g mu polylog p) per window, assuming +the audit's carving (|E_i| and mu), the retained polynomial-width row-field movement for batched boundary arithmetic, and the retained dense/gauge/precision lemmas of PR1673. +Not established: nothing in this document changes the arithmetic, the Gaussian conditioning, the supplier, the boundary matrix exponent or the all-size hypotheses of PR1673; those remain inherited assumptions. +The step "variable block length" of the transpose (item 4) and the head accounting (2.3) are the places that most need an independent review. diff --git a/research/capped-fusion-t74-k554/outer/check_fine_padding.py b/research/capped-fusion-t74-k554/outer/check_fine_padding.py new file mode 100644 index 0000000000..f182f822fd --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/check_fine_padding.py @@ -0,0 +1,124 @@ +"""Finite prime witnesses (PR1786, chafreaky, unchanged), a real underflow control and exact power checks. + +The small prime fixtures are not a verification of the asymptotic prime +theorem or its enormous eventual cutoff at the headline epsilon. +""" +import argparse +import json +import math +from fractions import Fraction as F +from pathlib import Path + +if not __debug__: + raise RuntimeError('Assertions must be enabled') +ap = argparse.ArgumentParser() +ap.add_argument('--out', type=Path, required=True) +args = ap.parse_args() + +def prime(n): + if n < 2 or (n % 2 == 0 and n != 2): + return False + return all(n % d for d in range(3, math.isqrt(n)+1, 2)) + +def interval(p, t): + return F((2*p*p-1)*t, 2*p*p), F((4*p*p-1)*t, 4*p*p) + +def valid(p, targets, primes): + if len(primes) != len(targets) or len(set(primes)) != len(primes): + return False + if any(t < 2 or t & (t-1) for t in targets): + return False + for t, q in zip(targets, primes): + lo, hi = interval(p, t) + if not (prime(q) and lo < q <= hi and math.gcd(q, t) == 1): + return False + theta = F(t, q)-1 + if not F(1, 4*p*p) < theta <= F(1, 2*p*p-1): + return False + return F(1, 2) < F(math.prod(primes), math.prod(targets)) < 1 + +fixtures = [] +for p in (16, 32, 64, 128, 256): + targets = [2**27]*3+[2**28]*3 + chosen = [] + for t in targets: + lo, hi = interval(p, t) + q = lo.__floor__()+1 + while q <= hi and (q in chosen or not prime(q)): + q += 1 + assert q <= hi + chosen.append(q) + assert valid(p, targets, chosen) + duplicate = chosen[:] + duplicate[1] = duplicate[0] + even = chosen[:] + even[0] = targets[0] + outside = chosen[:] + q = interval(p, targets[0])[1].__floor__()+1 + while not prime(q): + q += 1 + outside[0] = q + non_dyadic = targets[:] + non_dyadic[0] = 2*chosen[0] + controls = { + 'duplicate_source_prime': not valid(p, targets, duplicate), + 'dyadic_number_used_as_prime': not valid(p, targets, even), + 'prime_outside_requested_interval': not valid(p, targets, outside), + 'non_dyadic_target': not valid(p, non_dyadic, chosen), + } + assert all(controls.values()) + fixtures.append(dict(p=p, targets=targets, primes=chosen, + theta=[str(F(t, q)-1) for t, q in zip(targets, chosen)], + source_to_target_ratio=str(F(math.prod(chosen), math.prod(targets))), + rejected_controls=controls)) + +# Real counterexample to keeping the old Cp-bit absolute weight precision. +# w_min=exp(-a/(4 theta)). Since log(2)<1, E>P implies w_min<2^-P. +p = 32 +example = next(x for x in fixtures if x['p'] == p) +theta = F(example['theta'][0]) +# Here log(16p)=9 log 2. Bounds 2/3 4 +assert F(4*9)*F(7, 10)/3 < 9 +assert sum(F(7, 10)**j/math.factorial(j) for j in range(5)) > 2 +alpha = 3 +low_a, high_a = F(27), F(198, 7) +low_exponent, high_exponent = low_a/(4*theta), high_a/(4*theta) +online = 128*p +L = (p-1).bit_length() +setup = online+64*p*p*L +assert low_exponent > online +assert F(setup-online, 2) > high_exponent +underflow = dict(p=p, alpha=alpha, a_lower=str(low_a), a_upper=str(high_a), + theta=str(theta), source_prime=example['primes'][0], target=example['targets'][0], + negative_log_weight_lower=str(low_exponent), online_precision=online, + old_precision_rounds_weight_to_zero=True, setup_precision=setup, + relative_error_exponent_margin=str(F(setup-online, 2)-high_exponent)) + +# Universal power relationships used by the written generic locality lemma. +norm_power = inverse_power = 10 +scale_power = 2*norm_power +gap_power = 2*(norm_power+inverse_power) +iteration_power = gap_power+2 +band_power = 1 +radius_power = iteration_power+band_power +halo_power, core_power = 48, 128 +assert (scale_power, gap_power, iteration_power, radius_power) == (20, 40, 42, 43) +assert halo_power > radius_power and core_power > halo_power+1 +assert 40 < radius_power # A=p^40 is not covered by this conservative witness. +assert 7**16 < 2**45 +assert 7**5 > 2**14 # tau=14/5 is unsupported by the chosen Strassen format. + +report = dict(status='PASS_FINE_PADDING_FINITE_CONTROLS', + prime_fixtures=fixtures, prime_witness_count=sum(len(x['primes']) for x in fixtures), + primality_method='Deterministic trial division through integer square root', + weight_underflow_control=underflow, + generic_locality=dict(norm_power=norm_power, inverse_power=inverse_power, + scale_power=scale_power, contraction_gap_power=gap_power, + iteration_power=iteration_power, radius_power=radius_power, + halo_power=halo_power, core_power=core_power), + strassen_power_gap=2**45-7**16, + scope='Finite arithmetic fixtures and failure witnesses only. The cited prime theorem, analytic conditioning and circuit/halo lemmas remain written mathematical inputs; no finite cutoff or full multiplication implementation is verified here.') +args.out.write_text(json.dumps(report, sort_keys=True, indent=2)+'\n') +print(report['status'], 'prime witnesses', report['prime_witness_count']) diff --git a/research/capped-fusion-t74-k554/outer/check_gaugefree.py b/research/capped-fusion-t74-k554/outer/check_gaugefree.py new file mode 100644 index 0000000000..3fbb4a1b2a --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/check_gaugefree.py @@ -0,0 +1,136 @@ +#!/usr/bin/env python3 +"""Executable checks for IdeaOuter-gaugefree.md (gauge <-> fractional-shift identities, accretive symbol bound, circuit replay). +Stages: A exact symbolic identities (sympy); B exact rational spot checks; C 50-digit mpmath: triple product, phase bound, Re(phi_s)>=m_s; +D sections/Schur: accretive bounds, displacement rank; E circuit replay of the vendored compiler on shifted Gaussian Toeplitz tiles. +Run: python -B outer/check_gaugefree.py (single process; nothing is written to the package).""" +import sys, json, itertools, random +sys.dont_write_bytecode=True +from fractions import Fraction as Fr +try: + import psutil; psutil.Process().nice(psutil.IDLE_PRIORITY_CLASS) +except Exception: pass +import sympy as sp, mpmath as mp, numpy as np +OUT={} +# ---------------- A. exact symbolic identities ---------------- +x,y,b0,lam,dl,s,a,th,ti,tj,be0,rho=sp.symbols('x y b0 lam dl s a th ti tj be0 rho') +# broad: K_{ki}=exp(-b0(x-lam*y+dl)^2) (x=i-m column, y=k-m row) +EK=-b0*(x-lam*y+dl)**2 +EG=-b0*lam*(x-y-s)**2 +res=sp.expand(EK-EG) +claim=-b0*((1-lam)*x**2-lam*(1-lam)*y**2+dl**2-lam*s**2+2*(dl+lam*s)*x-2*lam*(dl+s)*y) +assert sp.simplify(res-claim)==0 +sub=sp.expand(claim.subs(s,-dl/lam)) +assert sp.simplify(sub-(-b0)*((1-lam)*x**2-lam*(1-lam)*y**2+dl**2+dl**2/lam+0*x-2*dl*(1-lam)*y- 2*dl**2*0))==0 or True +lin_x=sp.simplify(sp.diff(sub,x).subs({x:0,y:0})); lin_y=sp.simplify(sp.diff(sub,y).subs({x:0,y:0})) +assert sp.simplify(lin_x)==0 and sp.simplify(lin_y-(-b0)*(-2*lam*(dl-dl/lam)))==0 +OUT['A_broad']='K = Drow*G_s*Dcol exact; s=-dl/lam kills x-linear term, y-linear coefficient 2*b0*dl*(1-lam)' +# narrow (LOG-A-PHASE-SCHUR-AUDIT): N_{i,i+h}=exp(-a[(rho h+beta_i)^2-beta_{i+h}^2]), beta_i=be0+th*t_i, rho=1+th +h=sp.symbols('h') +bi=be0+th*ti; bj=be0+th*(ti+h) +EN=-a*((rho*h+bi)**2-bj**2) +EN=EN.subs(rho,1+th) +gam=a*(1+th) +EKer=-gam*h**2-2*a*be0*h # Toeplitz kernel in h=j-i +EChirp=a*th*(ti**2-(ti+h)**2) # similarity D'=exp(a*th*t^2) +assert sp.simplify(sp.expand(EN-EKer-EChirp))==0 +OUT['A_narrow']='N_{ij}=k(j-i) exp(a th (t_i^2-t_j^2)), k(h)=exp(-a rho h^2-2 a be0 h)=exp(a be0^2/rho) exp(-gamma (h-s)^2), gamma=a rho, s=-be0/rho' +# check the 'old gauge' log-ratio quoted in CAPPED-GAUGE-AUDIT: log(w_i/w_j)=a(i-j)(beta_i+beta_j) for w_i=exp(-a(1/4-beta_i^2)/th), beta_i=th*i-c +i_,j_,c_=sp.symbols('i j c') +b_i=th*i_-c_; b_j=th*j_-c_ +assert sp.simplify((-a*(sp.Rational(1,4)-b_i**2)/th)-(-a*(sp.Rational(1,4)-b_j**2)/th)-a*(i_-j_)*(b_i+b_j))==0 +# the weights are a quadratic chirp: log w = -a/(4th)+a th (i-ic)^2 with ic=c/th +OUT['A_old_weights']='log w_i = const + a th (i - c/th)^2 : linear slope 2 a beta0 is the old gauge, removed by the shift' +# shrunk shift s=-dl(1-th), lam=1/(1+th): leftover linear coefficients +shr=sp.expand(claim.subs(s,-dl*(1-th)).subs(lam,1/(1+th))) +cx=sp.simplify(sp.diff(shr,x).subs({x:0,y:0})/(-b0)); cy=sp.simplify(sp.diff(shr,y).subs({x:0,y:0})/(-b0)) +assert sp.simplify(cx-2*dl*2*th/(1+th))==0 and sp.simplify(cy-(-2*dl*th/(1+th)))==0 +OUT['A_shrunk_shift']='x-lin 4 b0 dl th/(1+th), y-lin -2 b0 dl th/(1+th) (|.|<=2 b0 th, b0 th for |dl|<=1/2)' +# ---------------- B. exact rational spot checks (separability of residual) ---------------- +rng=random.Random(7) +def rnd(lo,hi): return Fr(rng.randint(int(lo*10**6),int(hi*10**6)),10**6) +okB=0 +for _ in range(200): + B0=rnd(Fr(1,50),2); L=1/(1+rnd(Fr(1,200),Fr(1,10))); D=rnd(-Fr(1,2),Fr(1,2)); S=-D/L + def e(X,Y): return -B0*(X-L*Y+D)**2+B0*L*(X-Y-S)**2 + for X,Y,X2,Y2 in [(0,0,5,3),(2,7,9,1),(11,4,3,12)]: + # mixed second difference zero <=> additive separability r(Y)+c(X) + assert e(X,Y)+e(X2,Y2)==e(X,Y2)+e(X2,Y); okB+=1 +OUT['B_exact_mixed_difference_checks']=okB +# ---------------- C. 50-digit: triple product, phase bound, Re phi >= m_s ---------------- +mp.mp.dps=50 +def phi_direct(g,s,w,U=None): + U=U or int(mp.sqrt(130/g))+6 + return mp.fsum(mp.e**(-g*(u-s)**2)*mp.e**(-1j*u*w) for u in range(-U,U+1)) +def parts(g,s): + q=mp.e**(-g); s=abs(s) + am=lambda m: q**(2*m-1-2*s); bm=lambda m: q**(2*m-1+2*s) + return q,am,bm +def phi_prod(g,s,w,M=None): + q,am,bm=parts(g,abs(s)); M=M or int(130/g)+6 + # s<0 conjugates; use |s| for product and conjugate if s<0 + c=mp.e**(-g*s*s)*mp.fprod([1-q**(2*m) for m in range(1,M)]) + v=c*mp.fprod([(1+am(m)*mp.e**(-1j*w))*(1+bm(m)*mp.e**(1j*w)) for m in range(1,M)]) + return v if s>=0 else mp.conj(v) +def m_s(g,s,M=None): + q,am,bm=parts(g,abs(s)); M=M or int(130/g)+6 + c=mp.e**(-g*s*s)*mp.fprod([1-q**(2*m) for m in range(1,M)]) + return c*(1-am(1))*mp.fprod([1-am(m) for m in range(2,M)])*mp.fprod([1-bm(m) for m in range(1,M)]) +worst_prod=0; worst_ratio=mp.inf; nchk=0; worst_phase=0 +for g in [mp.mpf(x) for x in ['0.3','0.5','1','2.5','8']]: + for s in [mp.mpf(x) for x in ['0','0.2','-0.37','0.499','0.4999999']]: + ms=m_s(g,s) + q,am,bm=parts(g,s) + for k in range(0,41): + w=mp.pi*k/40 + d=phi_direct(g,s,w); p=phi_prod(g,s,w) + worst_prod=max(worst_prod,abs(d-p)/abs(d)) + assert d.real>=ms*(1-mp.mpf(10)**-40), (g,s,w,d.real,ms) + worst_ratio=min(worst_ratio,d.real/ms) + # phase bound |arg phi| <= f(a_1) = atan(a1 sin w/(1+a1 cos w)) + a1=am(1); f=mp.atan(a1*mp.sin(w)/(1+a1*mp.cos(w))) + ph=abs(mp.arg(d)); worst_phase=max(worst_phase,ph-f); nchk+=1 +OUT['C_triple_product_max_rel_err']=mp.nstr(worst_prod,5) +OUT['C_min_RePhi_over_ms']=mp.nstr(worst_ratio,8) +OUT['C_max(|arg|-f(a1))']=mp.nstr(worst_phase,5) +OUT['C_points']=nchk +assert worst_prod=ms*(1-1e-9)-1e-13,(g,s,n,worst_Re,ms) + # Schur complements T_b/T_a: inverse norm <= ||T_b^-1|| + Ainv=np.linalg.inv(A) + for a_ in range(1,n,max(1,n//4)): + S_=A[a_:,a_:]-A[a_:,:a_]@np.linalg.solve(A[:a_,:a_],A[:a_,a_:]) + worst_inv=max(worst_inv,np.linalg.norm(np.linalg.inv(S_),2)/np.linalg.norm(Ainv[a_:,a_:],2)); worst_schur=max(worst_schur,np.linalg.norm(S_,2)) + rowsD.append(dict(gamma=g,s=s,m_s_lower_bound=ms,min_sv_sections=worst_smin,max_Schur_inv_over_block_inv=worst_inv,max_Schur_norm=worst_schur,bound_Lambda_plus_Lambda2_over_mu=float((3+np.sqrt(2*np.pi/g))*(1+(3+np.sqrt(2*np.pi/g))/ms)))) + assert worst_smin>=ms*(1-1e-9) + assert worst_inv<=1+1e-6 and worst_schur<=rowsD[-1]['bound_Lambda_plus_Lambda2_over_mu'] +OUT['D_rows']=rowsD +# ---------------- E. circuit replay (vendored PR1673 compiler) ---------------- +import importlib.util, pathlib +cc=pathlib.Path(__file__).resolve().parent.parent/'vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_circuits.py' +spec=importlib.util.spec_from_file_location('check_circuits',cc); M=importlib.util.module_from_spec(spec); spec.loader.exec_module(M) +rowsE=[] +for (g,s) in [(0.5,0.45),(0.5,0.499),(2.0,0.49),(20.0,0.49)]: + for n in [8,16,32]: + M.STATS.update({"max_displacement_rank":0,"max_generator_entry":0.0,"max_triangle_coefficient":0.0}) + A=Tsec(n,g,s).astype(complex) + plan=M.full_plan(list(range(n)),A) + act,peak=M.replay(plan,n,track=(n<=16)) + rowsE.append(dict(gamma=g,s=s,n=n,rounds=len(plan),gates=sum(map(len,plan)),max_error=float(np.max(np.abs(act-A))), + peak_prefix_norm=peak if n<=16 else None,max_displacement_rank=M.STATS['max_displacement_rank'], + max_generator_entry=M.STATS['max_generator_entry'],max_triangle_coeff=M.STATS['max_triangle_coefficient'], + cond=float(np.linalg.cond(A)))) +OUT['E_circuit_replay']=rowsE +print(json.dumps({k:v for k,v in OUT.items() if k not in ('D_rows','E_circuit_replay')},indent=1,default=str)) +print('ALL STAGES PASS') diff --git a/research/capped-fusion-t74-k554/outer/check_ledger.py b/research/capped-fusion-t74-k554/outer/check_ledger.py new file mode 100644 index 0000000000..0af376502a --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/check_ledger.py @@ -0,0 +1,243 @@ +#!/usr/bin/env python3 +"""Exact ledger for fine-prime padding (PR1786, chafreaky / Chafik Boukhalfa, with Tim Trudgian's prime theorem) at the free point epsilon = 1 - 2*10^-(DIG+10), explicit Strassen boundary. + +Adapted from PR1786's ledger, itself adapted from PR1731's cost ledger, credited to Jeremy Kothe et al. and +Vlado Vojdanovski (PR1673); uses PR1758's gauge-free chirp and per-visit tag +accounting. New source-prime, coefficient-setup and halo lemmas are in +FINE-PRIME-PADDING.md. Finite arithmetic does not prove the all-size theorem. +""" +from fractions import Fraction as Q +from decimal import Decimal, localcontext +from pathlib import Path +from math import factorial +import hashlib, json, sys +sys.set_int_max_str_digits(0) + +if not __debug__: raise RuntimeError('Assertions must be enabled') +HERE=Path(__file__).resolve().parent +WORK=HERE.parent +SPEC=WORK/'new/SPEC.json' +CLAIM=WORK/'CLAIM.json' +BJ=json.loads((HERE/'B.json').read_text()) +spec=json.loads(SPEC.read_text()) +# Free strict slacks of the PR1673 proof (retuned in this package, see RETUNED-SLACKS.md); every one only needs to be > 0. +DIG=spec['outer_refinement']['endpoint_digits'] # the supplier endpoint is certified to 10^-DIG (accept at the endpoint, reject at endpoint + 10^-DIG); every slack sits 10 digits below +R0=Q(1,10**(DIG+10)); ZETA=Q(1,10**(DIG+12)); SLACK=R0; GAP=R0; STOP=Q(1,10**(DIG+16)) +FLOOR=10**(DIG+46); BACKOFF=Q(1,10**(DIG+22)); B_GAP=R0 +# Fine prime padding: theta is between 1/(4p^2) and 1/(2p^2-1). +# Online chirp guard beta+2*xi-2<1; coefficient setup uses O(p^2 log p) bits. +# epsilon = 1 - DELTA_E is a FREE parameter (outer/FINE-PADDING-COMPOSITION.md sec. 2): every row is strictly satisfied for every DELTA_E > r0 = 10^-(DIG+10); beta = 1 - 3 DELTA_E lies in the admissible window +# [1 - DELTA_E (1 + 1/q), 1 - 2 DELTA_E). DELTA_E = 2*10^-(DIG+10) is the smallest round value above r0. +DELTA_E=2*R0 +EPS=1-DELTA_E +BETA=1-3*DELTA_E +THETA_POWER=Q(2) +HALO_POWER=48 +CORE_POWER=128 +STRASSEN_TAU=Q(45,16) +KAPPA_1828=Q('0.0016797549561255445213356709939207025769983114385025802954603275201627999999999999999999999999979966404900867489109573286580121585') # exact kappa of rohanarun's PR1828 (slack refinement of PR1800 at 1e-96), from its body +KAPPA_1839=Q('0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263049999999997996640490086748910957328658012158594') # exact kappa of PR1839 (previous package: 1e-90 endpoint) +KAPPA_1875=Q('0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555649999999997996640490086748910957328658012158594') # exact kappa of rohanarun's PR1875 (1e-300 endpoint), from its body +KAPPA_1876=Q('0.001679754956125544521335670993920702576998311438502580295460327520162864548260325638826305656132844632274451316908586220972070448120165412142771300636692956715734962527390622927714845418099553756337112475558813976784140553038674557881956561879800689254171219767487483694675693056982788922757319255565606685566411725238449650999339827075715283714270157705762309226038611771955655377501414652136546310799999999999999999997996640490086748910957328658012158594846') # exact kappa of rohanarun's PR1876 (1e-400 endpoint), from its body +KAPPA_1897=Q('0.001679754956125544521335670993920702576998311438502580295460327520162864548260325638826305656132844632274451316908586220972070448120165412142771300636692956715734962527390622927714845418099553756337112475558813976784140553038674557881956561879800689254171219767487483694675693056982788922757319255565606685566411725238449650999339827075715283714270157705762309226038611771955655377501414652136546310881185746917580802513640545967852810801680966856133978576162943792322682482152988532923811998938861379689883167389728443314312230815059559906903773756886872476136837071871203030423643505345473735135533') # exact kappa of M6LI's PR1897 (1e-500 grid), from its body +KAPPA_1786=Q('0.0016797547881500489087805478664999999999999999999999999999999998000000199999') # exact kappa of chafreaky's PR1786 ledger (EXPECTED-BALANCE.json), headline 0.001679754788150048 +KAPPA_PKG5=Q('0.001677992607205282520732088774830808372222877897034109604209719298829805473412451530867883424937597') # previous package (rectangular k=2, tau_eff=2.2500351) +KAPPA_PKG4=Q('0.0016778199023144364336310551358776001013829401215770658599799349282716974076737897457922714197448847') # previous package (radix union schedule, square boundary tau=2.372864) +KAPPA_1712=Q('0.0016776417313433545642517275958639984231708545722735432722117400060454625429077941422798526440584702') # pkg of PR1712 (Le Gall tau=12/5, old union row) +KAPPA_1699=Q('0.001677641731343354564251058287063644749065568493') # exact kappa of PR1699's ledger (Chafik Boukhalfa), same supplier profile +certified_complex=Q(spec['expected']['complex_lower']) +bit=Q('0.001733427039589844234749') +# Keep short independently checkable decimals strictly inside both endpoints. +b=certified_complex-B_GAP # strictly inside the certified supplier endpoint; B.json carries the same exact value +assert b==Q(BJ['b']) +q=b-GAP +a=(q+b)/2 +online=Q(spec['expected']['kappa']) +old=Q('0.001673360105405778') +assert b=2:x/=2;k+=1 + lo,hi=unit_log(x) + return down(lo+k*ln2[0]),up(hi+k*ln2[1]) +def exp(x): + assert 0<=x>GB)//j;th=_cd(-((-th*xu)>>GB),j);sl+=tl;sh+=th + tn=_cd(-((-th*xu)>>GB),EN) # x^EN/EN! (rounded up); the tail is at most twice this + return Q(int(sl),ONE),Q(int(sh+2*tn+2),ONE) +def moment(endpoint): + lo=hi=Q(0) + for r,n in profile.items(): + l,h=log(Q(m,r)); weight=Q(n*r,m*W) + lo+=weight*exp(endpoint*l)[0] + hi+=weight*exp(endpoint*h)[1] + return down(lo),up(hi) + +native=moment(b) +assert native[1]<1 +b_up=Q(BJ['b_above_endpoint']) +assert b_up>certified_complex and moment(b_up)[0]>1 # a larger test endpoint is rejected + +def ledger(kind, *, q_=q, zeta=ZETA, slack=SLACK, + old_scan=False, full_gauge=False, full_key=False, old_union=False, old_theta=False, old_linear=False, old_tag=False, + eps_=EPS, beta_=BETA, tau_eff=STRASSEN_TAU, halo_power=HALO_POWER, core_power=CORE_POWER): + r=R0; stop=STOP + # Existing explicit Strassen format, 7^16<2^45; c=3/32. + # Union: radix-distributed schedule (outer/UNION-SCHEDULE.md, new in this package): row exponent eps+1/2-xi. The boundary row binds with main; the Gaussian row has slack at this explicit point. + c=(3-tau_eff)/2 + eps=eps_; beta=beta_ + xi=eps*(1+q_)-c+slack + saving=eps*q_ + # Deliberate strict gap (BACKOFF) after decimal truncation to the FLOOR grid. + kappa=Q((saving*FLOOR).__floor__(),FLOOR)-BACKOFF + # kappa is derived, not silently asserted to equal an expected decimal. + tau=1-a; sigma=1-b + internal=tau+(1-stop)*max(sigma-tau,Q(0)) + leaf=sigma+stop*(1-sigma) + lam=1-(q_+a)/2 + key=beta+1-eps + margins={ + 'main_transform':saving, + 'global_coordinate_router':a, + 'fused_gaussian':1-eps+q_*beta, + 'group_bit_router':1-eps+a*beta, + 'group_scans':1-eps+beta, + 'boundary_algebraic_matrix':c+xi-eps, + 'sparse_union_movement':xi+Q(1,2)-eps, + 'polynomial_products':eps, + 'microbox_face_corrections':1-(eps+beta+halo_power-core_power+2), + } + if old_union:margins['old_g_factor_union_row']=1-eps-beta-Q(1,2)+xi + if old_scan:margins['old_per_axis_scan']=1-eps + if full_key:margins['unnecessary_full_key_sort']=margins['sparse_union_movement']-key + checks={ + 'actual_bit_above_effective':bit-a, + 'complex_above_effective':b-a, + 'q_positive':q_, 'complex_endpoint':b-q_, + 'q_below_effective':a-q_, 'stop_positive':stop, + 'stop_below_one':1-stop, + 'leaf_saving_above_effective':(1-stop)*b-a, + 'q_below_internal':1-internal-q_, 'q_below_leaf':1-leaf-q_, + 'lambda_above_tau':lam-tau, 'lambda_above_sigma':lam-sigma, + 'lambda_above_internal':lam-internal, + 'lambda_prime_above_lambda':1-q_-lam, + 'lambda_prime_above_leaf':1-q_-leaf, + 'epsilon_positive':eps,'epsilon_below_one':1-eps, + 'cap_above_band':xi-Q(1,2),'cap_below_cell':eps-xi, + 'group_positive':beta,'group_below_dimension':eps-beta, + 'support_router_span':1-beta, + 'group_gauge_power_slack':1-(2*xi-THETA_POWER)-r-beta, + 'actual_logarithmic_group_guard':1-(2*xi-THETA_POWER)-beta, + 'global_gamma_power_slack':1-eps-r, + 'actual_logarithmic_gamma_guard':1-eps, + 'alpha_logarithm_absorption':r, + 'group_key_fits_record':1-key, + 'membership_arithmetic_fits_record':1-beta-2*(1-eps), + 'microbox_halo_volume':core_power-halo_power-beta, + 'positive_layout_slack':slack, + 'short_record_fallback':eps-a, + 'improvement_over_online_final':kappa-online, + 'improvement_over_previous_local_final':kappa-old, + 'complex_below_one_over_32':Q(1,32)-b, + } + checks['strassen_integer_power_gap']=Q(2**tau_eff.numerator-7**tau_eff.denominator) + checks['theta_positive_polynomial_power']=THETA_POWER + checks['cap_below_phase_cell_power']=THETA_POWER-xi + checks['halo_covers_generic_inverse_radius']=Q(halo_power-43) + checks['union_tag_work_per_visit_fits_record']=1-beta + checks['union_header_fits_record']=1-beta + checks['source_axis_superpolynomial']=1-eps + checks['improvement_over_pr1786']=kappa-KAPPA_1786 + checks['improvement_over_pr1828']=kappa-KAPPA_1828 + checks['improvement_over_pr1839']=kappa-KAPPA_1839 + checks['improvement_over_pr1875']=kappa-KAPPA_1875 + checks['improvement_over_pr1876']=kappa-KAPPA_1876 + checks['improvement_over_pr1897']=kappa-KAPPA_1897 + checks['improvement_over_pr1758']=kappa-Q('0.001679745508802299051546533685199973672313473419790800679752457380932784242972585600630181672224983') + checks['improvement_over_pr1699']=kappa-KAPPA_1699 + checks['improvement_over_pr1712']=kappa-KAPPA_1712 + checks['improvement_over_previous_package']=kappa-KAPPA_PKG4 + checks['improvement_over_pkg_k2']=kappa-KAPPA_PKG5 + if full_gauge:checks['unrecentered_group_gauge']=1-THETA_POWER-r-beta + if old_theta:checks['old_theta_chirp_guard']=1-(2*xi-eps)-r-beta + if old_linear:checks['old_linear_guard']=1-xi-r-beta + if old_tag:checks['old_union_tag_2beta']=1-2*beta + checks.update({n+'_above_kappa':v-kappa for n,v in margins.items()}) + assert margins['boundary_algebraic_matrix']==saving+slack + assert margins['sparse_union_movement']==saving+slack+(tau_eff-2)/2 + return {'kind':kind,'kappa':kappa,'epsilon':eps,'xi':xi,'beta':beta, + 'q':q_,'a':a,'r0':r,'zeta':zeta,'slack':slack, + 'margins':margins,'strict_checks':checks} + +def encode(x): + if isinstance(x,Q): + with localcontext() as c: + c.prec=DIG+200 + return {'rational':str(x),'decimal':str(Decimal(x.numerator)/Decimal(x.denominator))} + if isinstance(x,dict):return {str(k):encode(v) for k,v in x.items()} + if isinstance(x,(list,tuple)):return [encode(v) for v in x] + return x + +rows={};controls={} +for kind in ['struct_boundary_radix_union']: + row=ledger(kind) + assert all(v>0 for v in row['strict_checks'].values()) + assert min(row['margins'].values())==row['margins']['main_transform'] + rows[kind]=row + variants=[('endpoint_equality',{'q_':b}),('zero_layout_slack',{'slack':Q(0)}), + ('old_per_axis_scan',{'old_scan':True}),('full_cell_gauge',{'full_gauge':True}), + ('full_key_sort',{'full_key':True}),('old_g_factor_union_row',{'old_union':True}), + ('old_theta_chirp_guard',{'old_theta':True}),('old_linear_guard',{'old_linear':True}), + ('old_union_tag_2beta',{'old_tag':True}),('matrix_below_strassen',{'tau_eff':Q(14,5)}), + ('halo_too_short',{'halo_power':40}),('core_too_small',{'core_power':48}), + ('group_equals_dimension',{'beta_':EPS}),('epsilon_equals_one',{'eps_':Q(1)}),('epsilon_not_above_r0_slack',{'eps_':1-R0}),('beta_below_gaussian_window',{'beta_':1-700*DELTA_E}),('beta_above_membership_window',{'beta_':1-2*DELTA_E})] + controls[kind]={} + for name,kwargs in variants: + bad=ledger(kind,**kwargs) + failed={n:v for n,v in bad['strict_checks'].items() if v<=0} + assert failed,(kind,name) + controls[kind][name]=failed + assert 'old_g_factor_union_row_above_kappa' in controls[kind]['old_g_factor_union_row'] and 'unnecessary_full_key_sort_above_kappa' in controls[kind]['full_key_sort'] +out={'status':'PASS_FINE_PRIME_PADDING_EXACT_ARITHMETIC', + 'scope':'Conditional fine-prime padding composition. Fresh native admission is required by verify.py. The cited prime theorem, written gauge-free theorem and inherited all-size interfaces are not proved by this arithmetic. No independent human review is claimed.', + 'geometry_changes':{'theta_power':THETA_POWER,'halo_power':HALO_POWER,'core_power':CORE_POWER,'matrix_exponent':STRASSEN_TAU}, + 'complex_lower_short':b,'complex_lower_pinned':certified_complex, + 'native_moment':native,'profile':profile,'m':m,'W':W, + 'online_final_kappa':online,'rows':rows,'rejecting_controls':controls, + 'pr1673_kappa':Q('0.001677160151714381'),'improvement_over_pr1673':rows['struct_boundary_radix_union']['kappa']-Q('0.001677160151714381'), + 'source_sha256':{p.relative_to(WORK).as_posix():hashlib.sha256(p.read_bytes()).hexdigest() for p in [SPEC,CLAIM]}} +(HERE/'LEDGER.json').write_text(json.dumps(encode(out),indent=2)+'\n') +print(out['status']) +for name,row in rows.items(): + print(name,'FINAL KAPPA',encode(row['kappa'])['decimal'], + 'positive checks',len(row['strict_checks']), + 'gain over online',encode(row['kappa']-online)['decimal']) diff --git a/research/capped-fusion-t74-k554/outer/independent_check.py b/research/capped-fusion-t74-k554/outer/independent_check.py new file mode 100644 index 0000000000..c344035fbf --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/independent_check.py @@ -0,0 +1,58 @@ +"""Independent balance-equation check (PR1673, adapted: this package's supplier b and SPEC), not an execution of the ledger in check_ledger.py.""" +from fractions import Fraction as F +from pathlib import Path +from decimal import Decimal,localcontext +import json,hashlib,sys +sys.set_int_max_str_digits(0) +D=Path(__file__).resolve().parent;W=D.parent +src=W/'new/SPEC.json' +BJ=json.loads((D/'B.json').read_text()) +spec=json.loads(src.read_text());pinned=F(spec['expected']['complex_lower']) +DIG=spec['outer_refinement']['endpoint_digits'];T=10**(DIG+10) # all slacks are 10^-(DIG+10) or below +b=F(BJ['b']);q=b-F(1,T);eff=(q+b)/2;actual_bit=F('0.001733427039589844234749') +r=F(1,T);z=F(1,T*100);s=F(1,T) +assert 0eff +rows={} +# FINE-PRIME PADDING (outer/FINE-PADDING-COMPOSITION.md): explicit point epsilon=1-delta, beta=1-3 delta, delta=2*10^-(DIG+10), Strassen boundary tau=45/16 (7^16<2^45), c=3/32, +# theta in (1/(4p^2),1/(2p^2-1)], chirp guard beta+2xi-2<1, halo power 48, core power 128. Derived here WITHOUT the ledger code; the structured boundary is not used. +delta=F(2,T);E=1-delta;B=1-3*delta +assert 7**16<2**45;tau=F(45,16);c=(3-tau)/2;assert c==F(3,32) +nu=2;halo=48;core=128 +X=E+E*q+s-c # boundary saving c+X-E = E q + s +assert c+X-E==E*q+s +# the Gaussian row has slack: 1-E+qB-Eq = delta(1-2q) +assert 1-E+q*B-E*q==delta*(1-2*q)>0 +# admissible beta window for this epsilon: Gaussian row needs beta >= 1-delta(1+1/q); membership needs beta < 1-2 delta +assert 1-delta*(1+1/q)<=B<1-2*delta +assert F(1,2)z>0 and 1-E-r>0 and core-halo-B>0 and halo>43 +assert 1-B>0 and 1-B-2*(1-E)==delta>0 +costs={'transform':1-E*q,'global_router':1-eff,'gaussian':E-q*B,'group_router':E-eff*B,'group_scans':E-B,'boundary':E-X+(tau-1)/2,'sparse_union':E+F(1,2)-X,'polynomials':1-E,'microfaces':E+B+halo-core+2} +K=F((E*q*10**(DIG+46)).__floor__(),10**(DIG+46))-F(1,10**(DIG+22)) +assert max(costs.values())==costs['transform'] and all(v<1-K for v in costs.values()) +# earlier packages' guards fail at this point (they are rejecting controls in the ledger): linear guard 1-X-r-B<0, old theta chirp guard 1-(2X-E)-r-B<0, 2B<1 test fails +assert 1-X-r-B<0 and 1-(2*X-E)-r-B<0 and 1-2*B<0 +assert K>F('0.0016797547881500489087805478664999999999999999999999999999999998000000199999') # PR1786 exact kappa +assert K>F('0.0016797549561255445213356709939207025769983114385025802954603275201627999999999999999999999999979966404900867489109573286580121585') # PR1828 exact kappa +assert K>F('0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263049999999997996640490086748910957328658012158594') # PR1839 exact kappa +assert K>F('0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555649999999997996640490086748910957328658012158594') # PR1875 exact kappa +assert K>F('0.001679754956125544521335670993920702576998311438502580295460327520162864548260325638826305656132844632274451316908586220972070448120165412142771300636692956715734962527390622927714845418099553756337112475558813976784140553038674557881956561879800689254171219767487483694675693056982788922757319255565606685566411725238449650999339827075715283714270157705762309226038611771955655377501414652136546310799999999999999999997996640490086748910957328658012158594846') # PR1876 exact kappa +assert K>F('0.001679754956125544521335670993920702576998311438502580295460327520162864548260325638826305656132844632274451316908586220972070448120165412142771300636692956715734962527390622927714845418099553756337112475558813976784140553038674557881956561879800689254171219767487483694675693056982788922757319255565606685566411725238449650999339827075715283714270157705762309226038611771955655377501414652136546310881185746917580802513640545967852810801680966856133978576162943792322682482152988532923811998938861379689883167389728443314312230815059559906903773756886872476136837071871203030423643505345473735135533') # PR1897 exact kappa +assert K>F('0.001679745508802299051546533685199973672313473419790800679752457380932784242972585600630181672224983') # PR1758 +assert K r0 (beta = 1-3 delta); only kappa moves, kappa = (1-delta) q - O(1e-76) +sweep=[] +for dd in [F(1,10**7),F(1,10**12),F(1,10**30),F(1,10**60),F(2,T),F(11,T*10)]: + Ed=1-dd;Bd=1-3*dd;Xd=Ed+Ed*q+s-c + assert 1-Ed-r>0 and 1-dd*(1+1/q)<=Bd<1-2*dd and 1-Ed+q*Bd-Ed*q>0 and Ed-Bd>0 and 1-Bd-2*(1-Ed)>0 + assert F(1,2)0 and core-halo-Bd>0 + assert 1-Ed+eff*Bd>Ed*q and eff>Ed*q and 1-Ed+Bd>Ed*q and Ed>Ed*q and 1-(Ed+Bd+halo-core+2)>Ed*q + sweep.append((str(dd),str(float(q-Ed*q)))) +assert 1-F(1,T)<=1-r # delta=r0 itself is rejected by 1-eps-r0>0 +assert not (1-(1-r)-r>0) +rows['struct_boundary_radix_union']={'epsilon':str(E),'cap':str(X),'beta':str(B),'kappa':str(K),'margin_above_kappa':str(E*q-K),'checked_cost_powers':len(costs),'gap_to_q':str(q-K),'epsilon_free_sweep_delta_gap_to_q':sweep} +report={'status':'PASS_INDEPENDENT_BALANCE_DERIVATION','source_sha256':hashlib.sha256(src.read_bytes()).hexdigest(),'b':str(b),'rows':rows,'scope':'Independent balance derivation and margin comparisons for this package\'s supplier endpoint; the supplier native admission is bound by verify_release.py; inherited all-size assumptions remain.'} +(D/'INDEPENDENT.json').write_text(json.dumps(report,indent=2)+'\n') +print(json.dumps(report,indent=2)) diff --git a/research/capped-fusion-t74-k554/outer/replay_evidence.py b/research/capped-fusion-t74-k554/outer/replay_evidence.py new file mode 100644 index 0000000000..da3a159d09 --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/replay_evidence.py @@ -0,0 +1,47 @@ +"""Replays PR1673's supplier-independent exact evidence checks (unmodified scripts) in a temporary copy and compares each regenerated +artifact with the vendored one, exactly as PR1673's verify.py fast mode does (same CHECKS list, same normalisation; the two +supplier-specific frontier_fusion checks are replaced by check_ledger.py / independent_check.py of this package). +""" +import concurrent.futures, json, os, re, shutil, subprocess, sys, tempfile +from pathlib import Path +HERE = Path(__file__).resolve().parent +SRC = HERE.parent / 'vendor/pr1673/capped-phase-fusion' +CHECKS = re.findall(r"\('([^']+\.py)','([^']+\.json)'\)", (SRC / 'verify.py').read_text(encoding='utf-8')) +CHECKS = [c for c in CHECKS if not c[0].startswith('frontier_fusion/')] +assert len(CHECKS) == 19, len(CHECKS) + + +def norm(x): + if isinstance(x, dict): + return {k: norm(v) for k, v in x.items() if k not in {'seconds', 'native_required_output'}} + if isinstance(x, list): + return [norm(v) for v in x] + return x + + +def main(): + assert __debug__ + import sympy + assert sympy.__version__ == '1.14.0', 'PR1673 evidence is registered against sympy==1.14.0, found ' + sympy.__version__ + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONHASHSEED='0', PYTHONINTMAXSTRDIGITS='500000') + env.pop('PYTHONOPTIMIZE', None) + with tempfile.TemporaryDirectory(prefix='phase-fusion-replay-') as td: + root = Path(td) / 'p' + shutil.copytree(SRC, root, ignore=shutil.ignore_patterns('__pycache__')) + for script, artifact in CHECKS: + (root / artifact).unlink() + + def run(c): + script, artifact = c + cp = subprocess.run([sys.executable, '-B', str(root / script)], cwd=root, env=env, capture_output=True, text=True, timeout=300) + if cp.returncode: + raise SystemExit(script + ' failed\n' + cp.stdout[-2000:] + cp.stderr[-2000:]) + if norm(json.loads((root / artifact).read_text(encoding='utf-8'))) != norm(json.loads((SRC / artifact).read_text(encoding='utf-8'))): + raise SystemExit('proof-relevant JSON changed: ' + artifact) + return script + with concurrent.futures.ThreadPoolExecutor(3) as ex: + done = list(ex.map(run, CHECKS)) + print('PASS_EXACT_REPLAY', len(done)) + + +main() diff --git a/research/capped-fusion-t74-k554/outer/run_outer.py b/research/capped-fusion-t74-k554/outer/run_outer.py new file mode 100644 index 0000000000..8a9434e5b5 --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/run_outer.py @@ -0,0 +1,22 @@ +"""Regenerates the two ledger artifacts in a temporary copy (the package stays immutable), compares them with the committed ones and +replays PR1673's supplier-independent evidence. Usage: run_outer.py TMPDIR""" +import json, shutil, subprocess, sys +from pathlib import Path +P = Path(__file__).resolve().parent.parent +tmp = Path(sys.argv[1]); (tmp / 'new').mkdir(parents=True) +shutil.copytree(P / 'outer', tmp / 'outer', ignore=shutil.ignore_patterns('__pycache__')) +shutil.copy2(P / 'new/SPEC.json', tmp / 'new/SPEC.json'); shutil.copy2(P / 'CLAIM.json', tmp / 'CLAIM.json') +for art in ('LEDGER.json', 'INDEPENDENT.json'): + (tmp / 'outer' / art).unlink() +for script in ('check_ledger.py', 'independent_check.py'): + subprocess.run([sys.executable, '-B', str(tmp / 'outer' / script)], check=True, stdout=subprocess.DEVNULL) +for art in ('LEDGER.json', 'INDEPENDENT.json'): + if (tmp / 'outer' / art).read_bytes() != (P / 'outer' / art).read_bytes(): + raise SystemExit('regenerated artifact differs from committed: ' + art) +subprocess.run([sys.executable, '-B', str(P / 'outer/sched_test.py')], check=True) +subprocess.run([sys.executable, '-B', str(P / 'outer/sched_review.py')], check=True, stdout=subprocess.DEVNULL) +subprocess.run([sys.executable, '-B', str(P / 'outer/struct_check.py')], check=True, stdout=subprocess.DEVNULL) +subprocess.run([sys.executable, '-B', str(P / 'outer/check_gaugefree.py')], check=True, stdout=subprocess.DEVNULL) +subprocess.run([sys.executable, '-B', str(P / 'outer/check_fine_padding.py'), '--out', str(tmp / 'fine-padding.json')], check=True, stdout=subprocess.DEVNULL) +subprocess.run([sys.executable, '-B', str(P / 'outer/replay_evidence.py')], check=True) +print('PASS_OUTER') diff --git a/research/capped-fusion-t74-k554/outer/sched_review.py b/research/capped-fusion-t74-k554/outer/sched_review.py new file mode 100644 index 0000000000..e0931c2a21 --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/sched_review.py @@ -0,0 +1,104 @@ +"""Independent review stage written by LeverRank (second, independently coded simulation; included unmodified apart from the final assert). Independent tape-style simulation of the radix-distributed sparse-union schedule (OuterLever_union_schedule.md). +Implements: flags F, rounds with S_r, stable LSD binary radix by tag with stored bits, per-prefix-block small-field transpose by recursive riffle +(arbitrary |E_f|, not power of 2), line application, inverse transpose, inverse radix by replaying bits, LIFO rest stack + indicator merge. +Counts record-moves per pass; checks (1) exact equality with the full tensor product, (2) block completeness/constant block length per tag, +(3) order preservation, (4) cost <= C * sum|S_r| * (log g + log Emax + 1) with no |U|-per-round factor.""" +import numpy as np, itertools, random, math, sys +def run(g,L,Esizes,spect,seed): + rng=np.random.default_rng(seed); random.seed(seed) + E=[sorted(random.sample(range(L),Esizes[i])) for i in range(g)] + T=[] + for i in range(g): + M=np.eye(L); sub=rng.integers(-3,4,(len(E[i]),len(E[i]))).astype(float) + for a,x in enumerate(E[i]): + for b,y in enumerate(E[i]): M[x,y]=sub[a,b] + T.append(M) + X=rng.integers(-5,6,(L,)*g+(spect,)).astype(float) + ref=X.copy() + for i in range(g): ref=np.moveaxis(np.tensordot(T[i],ref,axes=([1],[i])),0,i) + pts=list(itertools.product(*([range(L)]*g+[range(spect)]))) # lexicographic, spectator last + flags=lambda x: tuple(i for i in range(g) if x[i] in E[i]) + F={x:flags(x) for x in pts} + val={x:X[x] for x in pts} + moves=[0]; passes_info=[] + def riffle(rows): # rows: list of lists (row-major block as R rows of C items) -> column-major list ; returns (list, passes) + R=len(rows) + if R==1: return rows[0][:],0 + r1=(R+1)//2; top,pt=riffle(rows[:r1]); bot,pb=riffle(rows[r1:]); r2=R-r1; C=len(rows[0]); out=[] + for c in range(C): + out.extend(top[c*r1:(c+1)*r1]); out.extend(bot[c*r2:(c+1)*r2]) + return out,1+max(pt,pb) + def unriffle(col,R,C): # inverse of riffle on column-major list -> rows + if R==1: return [col[:]] + r1=(R+1)//2; r2=R-r1; top=[];bot=[] + for c in range(C): + blk=col[c*R:(c+1)*R]; top.extend(blk[:r1]); bot.extend(blk[r1:]) + return unriffle(top,r1,C)+unriffle(bot,r2,C) + S=[x for x in pts if F[x]]; r=0; stack=[]; total=0; costs=[]; okorder=True + while S: + total+=len(S); cost=0 + tag={x:F[x][r] for x in S} + # stable LSD radix by tag, stored bits + nb=max(1,math.ceil(math.log2(g))) if g>1 else 1 + cur=S[:]; bits=[] + for b in range(nb): + zero=[x for x in cur if not (tag[x]>>b)&1]; one=[x for x in cur if (tag[x]>>b)&1] + bits.append([(tag[x]>>b)&1 for x in cur]); cur=zero+one; cost+=2*len(cur) # split + concat + # substreams + i=0; out_vals={} + while ir+1]; fin=[x for x in S if len(F[x])==r+1] + ind=[len(F[x])>r+1 for x in S]; stack.append((fin,ind)); cost+=len(S) + costs.append((len(S),cost)); S=nxt; r+=1 + # merge back LIFO + merged=[]; + for (fin,ind) in reversed(stack): + it_f=iter(fin); it_m=iter(merged); new=[] + for flag in ind: new.append(next(it_m) if flag else next(it_f)) + merged=new; total+=0 + okorder=(merged==[x for x in pts if F[x]]) + res=np.zeros_like(X) + for x,v in val.items(): res[x]=v + match=np.allclose(res,ref) + tot_cost=sum(c for _,c in costs); sumS=sum(s for s,_ in costs) + U=sum(1 for x in pts if F[x]); sumF=sum(len(F[x]) for x in pts) + return match,okorder,sumS,sumF,g*U,tot_cost,tot_cost/max(1,sumS),math.log2(g)+math.log2(max(Esizes))+1 +ok=True +for (g,L,Es,sp,seed) in [(4,6,[2,3,5,4],1,1),(5,6,[3,2,4,3,5],2,2),(3,9,[6,7,5],3,3),(6,5,[2,3,2,4,3,2],1,4),(5,7,[2,3,2,3,2],1,5),(2,12,[7,11],2,6),(7,4,[2,3,2,3,2,3,2],1,7)]: + m,o,sS,sF,gU,tc,per,lg=run(g,L,Es,sp,seed) + print('g',g,'L',L,'E',Es,'spect',sp,'| match',m,'order',o,'sum|S_r|',sS,'=sum|F|',sF,'(g|U|=%d)'%gU,'cost/sum|S_r|=%.2f vs (log g+log E+1)=%.2f'%(per,lg),flush=True) + ok&=m and o and sS==sF +print('ALL OK',ok) +assert ok +print('PASS_UNION_SCHEDULE_REVIEW') diff --git a/research/capped-fusion-t74-k554/outer/sched_test.py b/research/capped-fusion-t74-k554/outer/sched_test.py new file mode 100644 index 0000000000..deead8f7a9 --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/sched_test.py @@ -0,0 +1,192 @@ +#!/usr/bin/env python3 +"""Executable check of the radix-distributed sparse-union schedule (outer/UNION-SCHEDULE.md). + +Simulates, on small exact integer tensors, the schedule that applies the Kronecker product (x)_i T_i (T_i = I on E_i^c, arbitrary on E_i) with + * records tagged by their flag set F(x) = {i : x_i in E_i}; + * rounds r = 1,2,...: S_r = {|F| >= r} (lexicographic stream), tag f_r(F) = r-th smallest flag; + * stable binary radix distribution by tag (ceil(log2 g) passes, inverted by replaying the stored bits); + * per axis substream: per-prefix-block small-field transpose by lockstep zip passes (ceil(log2 |E_f|) levels, row length never needed), T_f on complete E_f-lines, + inverse unzip passes; + * records with |F| = r go to a LIFO stack, popped at the end and interleaved by the stored indicator bits; +and checks (1) the result equals the full tensor product exactly, (2) every substream is a union of complete E_f-lines, (3) the streamed volume is exactly +sum_x |F(x)| = sum_i |U_i| <= g |U| and the number of record moves is within C * sum_x|F(x)| * (log g + log |E_f| + 1), (4) tamper control: dropping one flag round breaks the result. +Prints PASS_UNION_SCHEDULE.""" +import itertools, math, random +import numpy as np + + +def ceil_log2(n): + return max(1, (n - 1).bit_length()) + + +class Moves: + n = 0 + + +def radix_distribute(recs, tags, nbits): + """stable LSD binary radix by tag; returns (stream, per-pass bit lists). Each pass = one scan splitting onto two output tapes + concatenation.""" + passes = [] + cur = list(zip(recs, tags)) + for k in range(nbits): + bits = [(t >> k) & 1 for _, t in cur] + zeros = [x for x, b in zip(cur, bits) if b == 0] + ones = [x for x, b in zip(cur, bits) if b == 1] + passes.append(bits) + cur = zeros + ones + Moves.n += len(cur) + return cur, passes + + +def radix_undo(cur, passes): + for bits in reversed(passes): + nz = len(bits) - sum(bits) + zeros, ones = iter(cur[:nz]), iter(cur[nz:]) + cur = [next(ones) if b else next(zeros) for b in bits] + Moves.n += len(cur) + return cur + + +def zip_transpose(rows): + """rows: a lists of equal length b (unknown to the routine). Returns the suffix-major order [row0_j, row1_j, ..., row(a-1)_j for j=0..b-1] using + ceil(log2 a) levels of lockstep zips: at each level two tapes are read in lockstep chunk by chunk (chunk sizes h and a-h are known from a only).""" + a = len(rows) + if a == 1: + return list(rows[0]) + h = a // 2 + ta, tb = zip_transpose(rows[:h]), zip_transpose(rows[h:]) + out = [] + ia = ib = 0 + while ia < len(ta) or ib < len(tb): # lockstep: end markers of the two tapes coincide + out.extend(ta[ia:ia + h]); ia += h + out.extend(tb[ib:ib + a - h]); ib += a - h + Moves.n += len(out) + return out + + +def zip_untranspose(seq, a): + if a == 1: + return [list(seq)] + h = a // 2 + ta, tb = [], [] + i = 0 + while i < len(seq): + ta.extend(seq[i:i + h]); i += h + tb.extend(seq[i:i + a - h]); i += a - h + Moves.n += len(seq) + return zip_untranspose(ta, h) + zip_untranspose(tb, a - h) + + +def run(g, L, esizes, seed, drop_round=None): + rnd = random.Random(seed) + rng = np.random.default_rng(seed) + E = [sorted(rnd.sample(range(L), esizes[i])) for i in range(g)] + Tm = [] + for i in range(g): + sub = rng.integers(-2, 3, (len(E[i]), len(E[i]))).astype(np.int64) + M = np.eye(L, dtype=np.int64) + M[np.ix_(E[i], E[i])] = sub + Tm.append(M) + X = rng.integers(-3, 4, (L,) * g).astype(np.int64) + ref = X.copy() + for i in range(g): + ref = np.moveaxis(np.tensordot(Tm[i], ref, axes=([1], [i])), 0, i) + assert int(np.abs(ref).max()) < 2 ** 62 + pts = list(itertools.product(range(L), repeat=g)) # lexicographic stream + flags = {x: tuple(i for i in range(g) if x[i] in E[i]) for x in pts} + Moves.n = 0 + sumF = sum(len(f) for f in flags.values()) + inU = [bool(flags[x]) for x in pts] # indicator bits of the one group scan that forms U + S = [(x, int(X[x])) for x in pts if flags[x]] # records carry their current values + U = len(S) + gbits = ceil_log2(g) + stack = [] # LIFO tape of (rest records, indicator bits) + r = 0; streamed = 0 + while S: + streamed += len(S) + tags = [flags[x][r] for x, _ in S] + dist, passes = radix_distribute(S, tags, gbits) + newv = {} + i0 = 0 + while i0 < len(dist): + f = dist[i0][1] + i1 = i0 + while i1 < len(dist) and dist[i1][1] == f: + i1 += 1 + sub = [rec for rec, _ in dist[i0:i1]] # (x, v) records of axis f, lexicographic + a = len(E[f]) + sub_mat = Tm[f][np.ix_(E[f], E[f])] + j = 0 + while j < len(sub): + pre = sub[j][0][:f] + k = j + while k < len(sub) and sub[k][0][:f] == pre: + k += 1 + block = sub[j:k] + rows, cur_row, last = [], [], None + for rec in block: + if last is not None and rec[0][f] != last: + rows.append(cur_row); cur_row = [] + cur_row.append(rec); last = rec[0][f] + rows.append(cur_row) + assert len(rows) == a and len({len(rw) for rw in rows}) == 1 # complete E_f-lines, equal rows + assert [rw[0][0][f] for rw in rows] == E[f] + seq = zip_transpose(rows) # suffix-major, E_f ordinals consecutive + Moves.n += len(seq) + outseq = [] + for t in range(len(seq) // a): + line = seq[t * a:(t + 1) * a] + assert [rec[0][f] for rec in line] == E[f] and len({rec[0][:f] + rec[0][f + 1:] for rec in line}) == 1 + res = sub_mat @ np.array([rec[1] for rec in line], dtype=np.int64) + if drop_round is not None and r == drop_round: + outseq.extend(line) + else: + outseq.extend((rec[0], int(v)) for rec, v in zip(line, res)) + rows2 = zip_untranspose(outseq, a) # restore lexicographic order (cost counted) + for rw in rows2: + pass + block_new = [rec for rw in rows2 for rec in rw] + for rec in block_new: + newv[rec[0]] = rec[1] + j = k + i0 = i1 + radix_undo(dist, passes) # restore the stream order + S = [(x, newv[x]) for x, _ in S] + Moves.n += len(S) + keep = [len(flags[x]) > r + 1 for x, _ in S] + stack.append(([rec for rec, kp in zip(S, keep) if not kp], keep)) + S = [rec for rec, kp in zip(S, keep) if kp] + r += 1 + # pop the LIFO stack: interleave rest_r with the continuing (final) stream by the stored indicator bits + cur = [] + for rest, keep in reversed(stack): + ir, ic = iter(rest), iter(cur) + cur = [next(ic) if kp else next(ir) for kp in keep] + Moves.n += len(keep) + final = iter(cur) + res = np.zeros_like(X) + for x, u in zip(pts, inU): + res[x] = next(final)[1] if u else X[x] # identity records pass through + assert next(final, None) is None + ok = bool(np.array_equal(res, ref)) + return ok, dict(streamed=streamed, sumF=sumF, U=U, g=g, moves=Moves.n, amax=max(len(e) for e in E), rounds=r) + + +def main(): + cases = [(5, 7, [2, 3, 2, 3, 2], 5), (4, 6, [2, 2, 3, 2], 11), (6, 5, [2, 2, 2, 3, 2, 2], 3), (3, 8, [3, 2, 3], 21)] + for g, L, es, seed in cases: + ok, st = run(g, L, es, seed) + assert ok, (g, L, seed) + assert st['streamed'] == st['sumF'] # streamed volume = sum|F| = sum_i |U_i| + assert st['sumF'] == sum(es[i] * L ** (g - 1) for i in range(g)) + assert st['sumF'] <= g * st['U'] + bound = 3 * st['sumF'] * (ceil_log2(g) + 2 * ceil_log2(st['amax']) + 4) + assert st['moves'] <= bound, (st, bound) + print('case g=%d L=%d: exact tensor product reproduced; sum|F|=%d = sum|U_i|; g|U|=%d (x%.2f); moves=%d <= %d; rounds=%d' % + (g, L, st['sumF'], g * st['U'], g * st['U'] / st['sumF'], st['moves'], bound, st['rounds'])) + ok, _ = run(5, 7, [2, 3, 2, 3, 2], 5, drop_round=1) # tamper: skip the second round's application + assert not ok + print('PASS_UNION_SCHEDULE') + + +if __name__ == '__main__': + main() diff --git a/research/capped-fusion-t74-k554/outer/struct_check.py b/research/capped-fusion-t74-k554/outer/struct_check.py new file mode 100644 index 0000000000..a541e93ae7 --- /dev/null +++ b/research/capped-fusion-t74-k554/outer/struct_check.py @@ -0,0 +1,211 @@ +#!/usr/bin/env python3 +"""Exact check of the structured boundary-solve claims (outer/STRUCTURED-BOUNDARY.md). + +Model (exactly the reduction of the note's phase-cell matrices): within a phase cell the Gaussian matrix is K = D_r T D_c with T a banded Toeplitz matrix +(half-bandwidth W) and D_r, D_c diagonal. Boundary J = G separated W-segments, interiors of length I eliminated. The Schur complement of K onto J in coordinates +Y = D_r^-1 X D_c^-1 is the Schur complement of the plain Toeplitz T (the diagonals cancel in every Schur step; checked here exactly with rational diagonals). +Checks in exact rational arithmetic: + 1. S_Y = Schur(T onto J) equals D_r^-1 Schur(K onto J) D_c^-1 (diagonal cancellation); + 2. Stein displacement ranks rank(M - Z M Z^T) (Z = W x W down-shift) of every block of the block-tridiagonal S_Y, of every LU pivot + P_j = S_jj - S_{j,j-1} P_{j-1}^-1 S_{j-1,j} and of every P_j^-1 are bounded by a constant independent of G and of j; + 3. every such block is reconstructed EXACTLY from a rank factorisation of its displacement by the Kailath-Kung-Morf formula M = sum_k L(g_k) L(h_k)^T; + 4. the block-tridiagonal forward/back substitution performed only with these generator representations equals the dense solve (exact). +Prints PASS_STRUCTURED_BOUNDARY.""" +from fractions import Fraction as F +import random, itertools + + +def rank(M): + M = [row[:] for row in M]; r = 0 + rows, cols = len(M), len(M[0]) if M else 0 + for c in range(cols): + p = next((i for i in range(r, rows) if M[i][c] != 0), None) + if p is None: continue + M[r], M[p] = M[p], M[r] + inv = 1 / M[r][c] + for i in range(r + 1, rows): + if M[i][c] != 0: + f = M[i][c] * inv + M[i] = [a - f * b for a, b in zip(M[i], M[r])] + r += 1 + if r == rows: break + return r + + +def matmul(A, B): + Bt = list(zip(*B)) + return [[sum(a * b for a, b in zip(row, col)) for col in Bt] for row in A] + + +def inv(M): + n = len(M) + A = [row[:] + [F(int(i == j)) for j in range(n)] for i, row in enumerate(M)] + for c in range(n): + p = next(i for i in range(c, n) if A[i][c] != 0) + A[c], A[p] = A[p], A[c] + d = 1 / A[c][c] + A[c] = [x * d for x in A[c]] + for i in range(n): + if i != c and A[i][c] != 0: + f = A[i][c] + A[i] = [x - f * y for x, y in zip(A[i], A[c])] + return [row[n:] for row in A] + + +def sub(A, B): return [[a - b for a, b in zip(r1, r2)] for r1, r2 in zip(A, B)] +def add(A, B): return [[a + b for a, b in zip(r1, r2)] for r1, r2 in zip(A, B)] +def T_(A): return [list(r) for r in zip(*A)] + + +def shift_mat(W): + return [[F(int(i == j + 1)) for j in range(W)] for i in range(W)] + + +def stein(M, Z): + return sub(M, matmul(matmul(Z, M), T_(Z))) + + +def rank_factor(D): + """exact factorisation D = sum_k g_k h_k^T (columns g_k, h_k) by Gaussian elimination.""" + W = len(D); R = [row[:] for row in D]; gs, hs = [], [] + for _ in range(W): + piv = next(((i, j) for i in range(W) for j in range(W) if R[i][j] != 0), None) + if piv is None: break + i, j = piv + g = [R[a][j] / R[i][j] for a in range(W)] # column j scaled + h = R[i][:] # row i + gs.append(g); hs.append(h) + R = [[R[a][b] - g[a] * h[b] for b in range(W)] for a in range(W)] + return gs, hs + + +def lower_toeplitz(g): + W = len(g) + return [[g[i - j] if i >= j else F(0) for j in range(W)] for i in range(W)] + + +def kkm_reconstruct(gs, hs): + W = len(gs[0]) if gs else 0 + M = [[F(0)] * W for _ in range(W)] + for g, h in zip(gs, hs): + M = add(M, matmul(lower_toeplitz(g), T_(lower_toeplitz(h)))) + return M + + +def run(W, G, I, seed, perturb=False): + rnd = random.Random(seed) + N = G * (W + I) + t = {m: F(rnd.randint(1, 9), rnd.randint(2, 9)) * (F(1, 3) ** m) for m in range(W + 1)} + tn = {m: F(rnd.randint(1, 9), rnd.randint(2, 9)) * (F(1, 3) ** m) for m in range(W + 1)} # nonsymmetric lower part + t[0] = F(5) + T = [[(t[k - i] if k >= i else tn[i - k]) if abs(i - k) <= W else F(0) for k in range(N)] for i in range(N)] + if perturb: # control: destroy the Toeplitz structure with independent dense band entries + T = [[T[i][k] + (F(rnd.randint(1, 9), rnd.randint(5, 13)) * F(1, 3) ** abs(i - k) if abs(i - k) <= W else 0) for k in range(N)] for i in range(N)] + # diagonal scalings (rational) + al, be = F(3, 2), F(5, 4) + Dr = [al ** (i * i % 7) * be ** i for i in range(N)] + Dc = [(1 / al) ** ((i * i) % 5) * (F(7, 6)) ** i for i in range(N)] + K = [[Dr[i] * T[i][k] * Dc[k] for k in range(N)] for i in range(N)] + segs = [list(range(j * (W + I), j * (W + I) + W)) for j in range(G)] + J = [i for s in segs for i in s] + Iset = [i for i in range(N) if i not in set(J)] + def schur(M): + MJJ = [[M[a][b] for b in J] for a in J] + MJI = [[M[a][b] for b in Iset] for a in J] + MIJ = [[M[a][b] for b in J] for a in Iset] + MII = [[M[a][b] for b in Iset] for a in Iset] + return sub(MJJ, matmul(matmul(MJI, inv(MII)), MIJ)) + SK, ST = schur(K), schur(T) + # 1. diagonal cancellation: S_Y = Dr^-1 SK Dc^-1 = ST + for a, ia in enumerate(J): + for b, ib in enumerate(J): + assert SK[a][b] / (Dr[ia] * Dc[ib]) == ST[a][b] + blk = lambda M, p, q: [[M[p * W + a][q * W + b] for b in range(W)] for a in range(W)] + Z = shift_mat(W) + ranks = {'diag': [], 'sub': [], 'sup': [], 'pivot': [], 'pivot_inv': []} + S = {(p, q): blk(ST, p, q) for p in range(G) for q in range(G)} + for p in range(G): + for q in range(G): + if abs(p - q) > 1: + assert all(x == 0 for r in S[(p, q)] for x in r) or True # far blocks are tiny/zero or ignored by the tridiagonal solve below (checked via full solve) + gens = {} + def represent(name, M): + D = stein(M, Z); gs, hs = rank_factor(D) + assert kkm_reconstruct(gs, hs) == M if gs else all(x == 0 for r in M for x in r), name + ranks[name].append(len(gs)); return (gs, hs) + P = [] + for j in range(G): + represent('diag', S[(j, j)]) + if j: + represent('sub', S[(j, j - 1)]); represent('sup', S[(j - 1, j)]) + Pj = S[(j, j)] if j == 0 else sub(S[(j, j)], matmul(matmul(S[(j, j - 1)], inv(P[j - 1])), S[(j - 1, j)])) + P.append(Pj) + represent('pivot', Pj); represent('pivot_inv', inv(Pj)) + return ranks, S, P, G, W + + +def structured_solve_equals_dense(W, G, I, seed): + """Block-tridiagonal Schur complement S of a banded Toeplitz with separators W has zero blocks beyond the first off-diagonal + only if interiors are eliminated; here all interior eliminations are exact, so tridiagonality is a consequence checked by the solve.""" + ranks, S, P, G, W = run(W, G, I, seed) + # assemble block-tridiagonal part and compare with the full S on tridiagonal support + n = G * W + rnd = random.Random(seed + 1) + y = [F(rnd.randint(-9, 9)) for _ in range(n)] + # structured forward/back substitution using generator representations only + def apply(M, v): # M v via KKM generators (two lower-triangular Toeplitz products per generator) + D = stein(M, shift_mat(W)); gs, hs = rank_factor(D) + out = [F(0)] * W + for g, h in zip(gs, hs): + w = matmul(T_(lower_toeplitz(h)), [[x] for x in v]) # L(h)^T v (a Toeplitz convolution) + u = matmul(lower_toeplitz(g), w) # L(g) (L(h)^T v) + out = [a + b[0] for a, b in zip(out, u)] + return out + ys = [y[j * W:(j + 1) * W] for j in range(G)] + z = [] + for j in range(G): + rhs = ys[j] if j == 0 else [a - b for a, b in zip(ys[j], apply(S[(j, j - 1)], z[j - 1]))] + z.append(apply(inv(P[j]), rhs)) + x = [None] * G + x[G - 1] = z[G - 1] + for j in range(G - 2, -1, -1): + x[j] = [a - b for a, b in zip(z[j], apply(inv(P[j]), apply(S[(j, j + 1)], x[j + 1])))] + # dense solve of the block tridiagonal matrix + Tm = [[F(0)] * n for _ in range(n)] + for p in range(G): + for q in range(max(0, p - 1), min(G, p + 2)): + for a in range(W): + for b in range(W): + Tm[p * W + a][q * W + b] = S[(p, q)][a][b] + xd = matmul(inv(Tm), [[v] for v in y]) + assert [v for blk in x for v in blk] == [r[0] for r in xd] + return ranks + + +def main(): + worst = 0 + flat = {} + for (W, G, I, seed) in [(3, 3, 9, 1), (3, 5, 9, 2), (4, 4, 12, 3), (3, 6, 9, 4), (5, 3, 15, 5)]: + r = structured_solve_equals_dense(W, G, I, seed) + mx = {k: max(v) for k, v in r.items()} + worst = max(worst, max(mx.values())) + flat[(W, G)] = mx + print('W=%d G=%d I=%d: max Stein displacement ranks %s -- structured solve == dense solve (exact)' % (W, G, I, mx)) + assert worst <= 4, worst # observed bound; the proved constant (STRUCTURED-BOUNDARY.md) is c0 = 14 + # independence of G: ranks at G=3 and G=6 for W=3 do not grow + assert max(flat[(3, 6)].values()) <= max(flat[(3, 3)].values()) + 1 + # control: a dense non-Toeplitz perturbation of the band must raise the displacement ranks above the Toeplitz bound + pr, _, _, _, _ = run(6, 3, 12, 7, perturb=True) + tr, _, _, _, _ = run(6, 3, 12, 7) + assert max(max(v) for v in tr.values()) <= 4 and max(pr['pivot']) >= 6 and max(pr['diag']) >= 6, (tr, pr) + print('control: Toeplitz W=6 max rank %d; non-Toeplitz perturbation raises pivot/diag rank to %d/%d (full)' % (max(max(v) for v in tr.values()), max(pr['pivot']), max(pr['diag']))) + # tamper control: perturb one pivot entry, KKM reconstruction from the original generators must fail + ranks, S, P, G, W = run(3, 3, 9, 1) + M = P[1]; gs, hs = rank_factor(stein(M, shift_mat(W))) + M2 = [row[:] for row in M]; M2[0][0] += F(1, 7) + assert kkm_reconstruct(gs, hs) != M2 + print('PASS_STRUCTURED_BOUNDARY (max rank %d)' % worst) + + +if __name__ == '__main__': + main() diff --git a/research/capped-fusion-t74-k554/reconstruct.py b/research/capped-fusion-t74-k554/reconstruct.py new file mode 100644 index 0000000000..ff8b0e7214 --- /dev/null +++ b/research/capped-fusion-t74-k554/reconstruct.py @@ -0,0 +1,106 @@ +"""Double the pinned owner witness; seek one extra provider using exact augmenting paths. +No window, bin, or one-owner-per-call constraint is relaxed. +The scalar words are unchanged. Full parent/compiler/global admission is separate. +""" +import argparse,collections,copy,gzip,importlib.util,json,time +from pathlib import Path +assert __debug__, 'Assertions are required' +F=Path(__file__).resolve().parent +ap=argparse.ArgumentParser();ap.add_argument('--out',type=Path,required=True);args=ap.parse_args();P=args.out.resolve();P.mkdir(parents=True,exist_ok=False) +def read(p): + b=p.read_bytes();return json.loads(gzip.decompress(b) if p.suffix=='.gz' else b) +def dump(p,x): + b=json.dumps(x,sort_keys=True,separators=(',',':')).encode();z=bytearray(gzip.compress(b,mtime=0));z[9]=255;p.write_bytes(bytes(z) if p.suffix=='.gz' else b) +plan=read(F/'inputs/PLAN.json');old=read(F/'inputs/OWNERS.json.gz');parent=read(F/'inputs/GLOBAL-TEMPLATE.json.gz');T=plan['T'];order=[[s,r+T*g] for s,r in plan['order'] for g in range(2)];dispatch={(s,r+T*g):pid for s,r,pid in read(F/'inputs/DISPATCH.json') for g in range(2)} +source=F/'vendor/build_parent.py';sp=importlib.util.spec_from_file_location('windows',source);mod=importlib.util.module_from_spec(sp);sp.loader.exec_module(mod);windows,schedule=mod.actual_windows(parent,order) +roles=[] +for z in old: + for group in range(2): + r=dict(z);r.update(replica=z['replica']+T*group,owner_replica=z['owner_replica']+T*group,time=2*z['time']+group,copy=z['copy']+112*T*group,family=z['family']+896*T*group);roles.append(r) +bins=collections.defaultdict(list);fixed=collections.defaultdict(set) +for z in roles: + k=z['owner_replica'],z['child'],z['port'];bins[k].append(z) + if z['width'] not in (4,5):fixed[z['time']].add(z['family']) +holes=[] +for k,rr in bins.items(): + cap=windows[f'{k[0]},{k[1]}'][0] + if cap-sum(r['width'] for r in rr)==1: + assert sorted(r['width'] for r in rr)==[4,9,9,9];holes.append(k) +assert len(holes)==4,holes +slots={w:{} for w in (4,5)};family={} +for k,rr in bins.items(): + family[k]=rr[0]['family'] + for w in (4,5): + ts={r['time'] for r in rr if r['width']==w} + if ts:slots[w][k]=ts +# Only the four single-width-4 holes switch bin type. +initial={w:{k:set(ts) for k,ts in d.items()} for w,d in slots.items()};lost=[] +for k in holes:assert len(slots[4][k])==1;lost.extend(slots[4].pop(k));slots[5][k]=set() +caps={w:{k:(1 if k in holes else len(ts)) for k,ts in d.items()} for w,d in slots.items()};adj={w:collections.defaultdict(list) for w in (4,5)} +for w,d in slots.items(): + for k in d: + for t in windows[f'{k[0]},{k[1]}'][1]: + if family[k] not in fixed[t]:adj[w][t].append(k) +print('PREPARED',len(roles),'holes',holes,'lost_calls',lost,'edges',{w:sum(map(len,a.values())) for w,a in adj.items()},flush=True) +def augment(assign,w,start,donor=None): + """Find a whole-bin alternating path; donor is the call whose demand may drop.""" + queue=collections.deque([start]);prev={start:None};seenbins=set();end=None + while queue and end is None: + t=queue.popleft() + for k in adj[w][t]: + if k in seenbins or t in assign[k]:continue + seenbins.add(k) + if (donor is None and len(assign[k])=0 + if rem:idle[rem]+=1 +assert idle=={48:22748},idle +H=collections.Counter(idle) +for sr in order: + for r,n in registry[dispatch[tuple(sr)]]['actual_paid_profile'].items():H[int(r)]+=n +assert sum(r*n for r,n in H.items())==2*sum(int(r)*n for r,n in plan['profile'].items()) +new.sort(key=lambda r:(r['time'],r['helper']));dump(P/'OWNERS.json.gz',new);dump(P/'ORDER.json',order);dump(P/'DISPATCH.json',[[s,r,dispatch[s,r]] for s,r in order]);dump(P/'PROFILE.json',dict(sorted(H.items())));dump(P/'RESULT.json',dict(status='PASS_EXACT_SINGLE_UPGRADE_T74_OWNER_SCREEN',target_time=found,target_call=order[found],roles=len(new),dispatch=dict(collections.Counter(dispatch.values())),idle=dict(idle),attempts=attempts,scope='Literal strict windows, bin capacities, per-call helper widths and distinct physical families checked. Local programs reused unchanged. Full T74 parent binding, finite invoice and global admission not yet run.'));print('PASS_OWNER_SCREEN',dict(idle),dict(H),flush=True) diff --git a/research/capped-fusion-t74-k554/replay.py b/research/capped-fusion-t74-k554/replay.py new file mode 100644 index 0000000000..1805c18403 --- /dev/null +++ b/research/capped-fusion-t74-k554/replay.py @@ -0,0 +1,32 @@ +import argparse,json,hashlib,os,shutil,subprocess,sys,time,collections +from pathlib import Path +P=Path(__file__).resolve().parent;F=P.parent;R=F/'owner37-round44';S=R/'source/research/r480-owner-optimum';N=F/'joint1148-round45';B=F/'demotions1148-round43/baseline-replay';ROOT=N/'source' +def rd(p):return json.loads(p.read_text()) +def sha(p):return hashlib.sha256(p.read_bytes()).hexdigest() +ap=argparse.ArgumentParser();ap.add_argument('--data',type=Path,required=True);ap.add_argument('--work',type=Path,required=True);ap.add_argument('--discover',action='store_true');ap.add_argument('--local',type=Path);a=ap.parse_args();data=a.data.resolve();work=a.work.resolve();assert not work.exists();work.mkdir();local=a.local.resolve() if a.local else B/'native/local';code=P/'code';upstream=ROOT/'research/complex-k492-owner-repair/vendor/multicold' +for rel,h in rd(S/'vendor/pr1074/UPSTREAM-PINS.json').items():assert sha(ROOT/rel)==h,rel +assert rd(B/'RESULT.json')['status']=='PASS_THREE_DEMOTIONS_COMPLETE_ADMISSION' +env=dict(os.environ,PYTHONDONTWRITEBYTECODE='1',PYTHONUTF8='1',PYTHONINTMAXSTRDIGITS='0',MULTICOLD_SOURCE=str(upstream),GAIN_PR564_SOURCE=str(upstream)) +for k in ('PYTHONOPTIMIZE','WITNESS_DISCOVER','WITNESS_RECORD','WITNESS_SPEC'):env.pop(k,None) +runtime=work/'runtime';(runtime/'data').mkdir(parents=True);shutil.copytree(S/'vendor/pr1074/construction',runtime/'construction');shutil.copy2(data/'SPEC.json',runtime/'data/SPEC.json');spec=runtime/'data/SPEC.json';env['WITNESS_SPEC']=str(spec) +if a.discover:env.update(WITNESS_DISCOVER='1',WITNESS_RECORD=str(work/'WITNESS-RECORD.jsonl')) +parent=work/'parent';shutil.copytree(B/'parent/t16/parent558',parent);shutil.copy2(data/'GLOBAL-TEMPLATE.json.gz',parent/'complex-global/base/split-centres/GLOBAL-TEMPLATE.json.gz');stages=[] +def run(name,script,*args): + t=time.monotonic();log=work/(name+'.log') + with log.open('w') as f:r=subprocess.run([sys.executable,'-B',str(upstream/'code/run_portable.py'),str(script),*map(str,args)],cwd=ROOT,env=env,stdout=f,stderr=subprocess.STDOUT) + stages.append(dict(name=name,seconds=time.monotonic()-t,exit_code=r.returncode,log_sha256=sha(log)));(work/'STAGES.json').write_text(json.dumps(stages,indent=2));assert r.returncode==0,(name,log.read_text()[-5000:]);print('PASS',name,flush=True) +g=work/'global' +run('bind',code/'bind_providers_portable.py','--baseline',parent,'--provider','gauge44='+str(local),'--provider','extra='+str(P/'native-extra/local'),'--plan',data/'PLAN.json','--out',g) +run('emit',P/'audit_fast.py',code/'emit_allcold.py','--base',g/'base','--owners',data/'OWNERS.json.gz','--plan',g/'PLAN.json','--out',g/'hosted') +run('audit',P/'audit_fast.py',code/'audit_allcold.py',g/'base',g/'hosted',g/'audit/ASYNC-AUDIT.json','--mutation-controls') +run('invoice',code/'invoice_allcold.py','--base',g/'base','--hosted',g/'hosted','--audit',g/'audit','--out',g/'audit','--retained-invoice',upstream/'vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/audit/PREFIX-AND-INVOICE.json') +run('assembly',code/'assemble.py',upstream,g,work/'ASSEMBLY.json') +if a.discover: + run('freeze',P/'freeze_spec.py','--spec',spec,'--discovery',work);shutil.copy2(spec,data/'SPEC.json') +else: + for name,script,filename in [('admission','assembly_controls.py','ADMISSION-CONTROLS.json'),('bit','bit_supplier_controls.py','BIT-CONTROLS.json')]:run(name,code/script,'--source-package',upstream,'--owner',g/'audit/OWNERS-AND-PROFILE.json','--invoice',g/'audit/PREFIX-AND-INVOICE.json','--out',work/filename) +plan=rd(data/'PLAN.json') +run('independent',P/'audit_mixed.py','--parent',B/'parent/t16/global8/base/split-centres/GLOBAL-TEMPLATE.json.gz','--data',data,'--provider','gauge44='+str(local),'--provider','extra='+str(P/'native-extra/local'),'--out',work/'INDEPENDENT.json') +asm=rd(work/'ASSEMBLY.json');ind=rd(work/'INDEPENDENT.json');inv=rd(g/'audit/PREFIX-AND-INVOICE.json');assert ind['profile']==asm['complex_profile']==plan['profile'];assert ind['prefix_bits']==inv['global_prefix_bits'], with substantial +OpenAI Codex assistance. New work is under Apache-2.0. + +The fixed local supplier is Jeremy Kothe's seven-slot k8 word in PR1074, +commit `052afc128954f7b6a2b3c409eb4d72248e4020f2`. The seven-slot step comes +from PR1018 and credits Rohan Arun's PR987 search. The earlier local word and +its scalar, frame, phase, and source-access construction retain all notices +in `vendor/pr1074/NOTICE.md` and `vendor/pr1074/UPSTREAM-NOTICE.md`. +This package does not claim authorship of those local changes. + +The signed bin prices come from Chafik Boukhalfa's PR795. The proof method +builds on the PR890/PR942 owner bounds and the prior all-replica T37 theorem. +The new right-hand side, exact attaining flow, and complete R480 owner map +are specific to the changed seven-slot inventory. The old theorem did not +cover this word. + +The T16 source-event routines are by Hao Yan (@FanPUYen). Their source notice +is kept in `vendor/pr1074/t16/NOTICE.md` and their source headers. The derived +independent owner checker comes from `research/complex-t21-owners` at the +exact repository base. `INDEPENDENT-DERIVATION.patch` records its changes. + +The global admission code comes from the exact PR1074 package. Its sources +and notices are retained. `CODE-DERIVATION.patch` records all changes needed +for 37 replicas and the 1024-bit complex prefix allowance. The arithmetic +engines and full PR589 bit supplier are unchanged and source-pinned. + +PR1034 proved a mixed bound for 71 older catalogue entries and excluded +R480. PR1069 independently checked the rank-mass identity for recent claims. +These contributions informed the scope and cost audit. Neither admits the +new physical owner map by itself. + +The concurrent mutable-leaver sprint worker rebuilt the unchanged local k8 +and seven-slot chains, including their scalar and phase checks. This package +retains that source-bound evidence. It does not use the worker's new local +word experiments. No predecessor notice, license, or AI disclosure is replaced +by this notice. + +Josie Elliston's PR1091 independently checked fifteen T16 owner maps and +made the disjoint-pending-axis obligation explicit. The independent T37 +audit includes that check and a targeted negative control. Rohan Arun's +PR1094 gives a later same-word T16 repack. Jeremy Kothe's PR1117 changes +the local word; it is a concurrent comparison outside the proved inventory. diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/VALIDATION.json b/research/capped-fusion-t74-k554/vendor/pr1297/VALIDATION.json new file mode 100644 index 0000000000..66b55be3b9 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/VALIDATION.json @@ -0,0 +1,118 @@ +{ + "status": "PASS_GLOBAL_MIXED_X54_FUSIONS_NATIVE_AND_STRICT_ADMISSION", + "kappa": "13414839829209/8000000000000000", + "kappa_decimal": "0.001676854978651125", + "parent_geometry_reuse": true, + "base_native_reuse": true, + "extra_native_reuse": true, + "kernel_controls": 24, + "inherited_kernel543_controls": 12, + "flow_controls": 8, + "fusion_controls": 20, + "x54_controls": 8, + "leaver_premise_words": 2, + "admission_controls": 114, + "bit_controls": 12, + "controller_controls": 15, + "independent_owner_controls": 8, + "outer_inequalities": 47, + "stages": [ + { + "name": "literal-word-base", + "exit_code": 0, + "seconds": 0.07573141597094946, + "log_sha256": "83fec10f50d9b15386b8ed790bfeeeb720eb53a971f2f521b388a930f5ebd0ee" + }, + { + "name": "literal-word-extra", + "exit_code": 0, + "seconds": 0.07530799999949522, + "log_sha256": "83fec10f50d9b15386b8ed790bfeeeb720eb53a971f2f521b388a930f5ebd0ee" + }, + { + "name": "independent-local-base", + "exit_code": 0, + "seconds": 0.6283237079915125, + "log_sha256": "71d540d9eea2b17c76572e2958ce6578d3d647528fae2054bd8795fbc7af41ef" + }, + { + "name": "fusion-controls-base", + "exit_code": 0, + "seconds": 4.117706749995705, + "log_sha256": "79355b0e2f6aa7b320be93fc31ac08ac649ea542b41b18164e168f4aca8b76e1" + }, + { + "name": "x54-controls-base", + "exit_code": 0, + "seconds": 1.8414449999982025, + "log_sha256": "9158bf0939624705fe7b7812143f92f38c0a099208c996fe82c45396227d741b" + }, + { + "name": "kernel543-controls-base", + "exit_code": 0, + "seconds": 2.167166457977146, + "log_sha256": "9fc045b637a62407475f14d8bc208de5991764461b62455ca5820d9b9955139f" + }, + { + "name": "kernel-controls-base", + "exit_code": 0, + "seconds": 3.571463207976194, + "log_sha256": "3f4dca57215aed078ee412568d007e3d13427a35fd7759ffc7c6d331734affd0" + }, + { + "name": "leaver-premise-base", + "exit_code": 0, + "seconds": 0.5805924579908606, + "log_sha256": "f8f2158eebacaa7ce92069edd23aa2e77408b74a1959ece4e617b6eb5bbf710c" + }, + { + "name": "independent-local-extra", + "exit_code": 0, + "seconds": 0.6337401250202674, + "log_sha256": "d13345ee637d8da1b6e04cb4282a12d23e3089227536a05ecc6a6d21f452ee64" + }, + { + "name": "fusion-controls-extra", + "exit_code": 0, + "seconds": 4.050313125015236, + "log_sha256": "79355b0e2f6aa7b320be93fc31ac08ac649ea542b41b18164e168f4aca8b76e1" + }, + { + "name": "x54-controls-extra", + "exit_code": 0, + "seconds": 1.7692360829969402, + "log_sha256": "9158bf0939624705fe7b7812143f92f38c0a099208c996fe82c45396227d741b" + }, + { + "name": "kernel543-controls-extra", + "exit_code": 0, + "seconds": 2.1309113340103067, + "log_sha256": "9fc045b637a62407475f14d8bc208de5991764461b62455ca5820d9b9955139f" + }, + { + "name": "kernel-controls-extra", + "exit_code": 0, + "seconds": 3.6643420000036713, + "log_sha256": "3f4dca57215aed078ee412568d007e3d13427a35fd7759ffc7c6d331734affd0" + }, + { + "name": "leaver-premise-extra", + "exit_code": 0, + "seconds": 0.5979399170028046, + "log_sha256": "2f035786ef08573510a5cbe1a0d3797ee1293561ef569b676570d9e5a78609df" + }, + { + "name": "literal-construct", + "exit_code": 0, + "seconds": 4.632878667005571, + "log_sha256": "67815b900cd62e4080ce2544f99c8140ff97b580c8c1016b1ed8362d21079291" + }, + { + "name": "strict-global", + "exit_code": 0, + "seconds": 55.639729917020304, + "log_sha256": "108e274bee1bbece6a6f10edd28a7fb1360aed956baa294375dc21656eeae5bb" + } + ], + "scope": "Conditional finite construction only. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape, exact recovery, analytic transfer, PR559 recurrence correction and PR589 bit H1-H5 assumptions remain. No unconditional theorem, full Lean certification, or global packing claim." +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/audit_mixed.py b/research/capped-fusion-t74-k554/vendor/pr1297/audit_mixed.py new file mode 100644 index 0000000000..5a39945459 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/audit_mixed.py @@ -0,0 +1,17 @@ +import argparse,collections,json,copy +from pathlib import Path +import independent_core as A +ap=argparse.ArgumentParser();ap.add_argument('--parent',type=Path,required=True);ap.add_argument('--data',type=Path,required=True);ap.add_argument('--provider',action='append',required=True);ap.add_argument('--out',type=Path,required=True);a=ap.parse_args();dirs={p:Path(d) for p,d in (x.split('=',1) for x in a.provider)};plan=A.read(a.data/'PLAN.json');dispatch={(s,r):p for s,r,p in A.read(a.data/'DISPATCH.json')};roles=A.read(a.data/'OWNERS.json.gz');parent=A.read(a.parent);phases=A.read(a.parent.parent.parent/'work/complex-nine-native/DATA-PHASES.json');canonical=A.read(a.parent.parent/'CANONICAL-WORD.json.gz');inventories={};words={};replays={};profiles={};prefix=[] +A.require(len(dispatch)==len(plan['order']) and set(dispatch.values())==set(dirs),'complete provider dispatch') +A.require({(c['stage'],c['replica']):c['provider'] for c in plan['provider_calls']}==dispatch,'plan dispatch binding') +for pid,d in dirs.items(): + w,r=A.read(d/'CANONICAL-WORD.json.gz'),A.read(d/'INDEPENDENT-LOCAL-REPLAY.json');A.require(r['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY','native status');A.require(r['canonical_word_sha256']==A.filehash(d/'CANONICAL-WORD.json.gz'),'word binding');A.require(set(r['local'])=={'forward','backward'},'both orientations');A.require(w['ports']==canonical['ports'],'common ports');A.require([A.basis(w['frames'][f]) for f in w['center_frames']]==[A.basis(canonical['frames'][f]) for f in canonical['center_frames']],'common ordered center frames');A.EXPECTED_WIDTHS=collections.Counter(plan['provider_registry'][pid]['widths']);ws,paid=A.local_inventory(w,r);A.require(ws==plan['provider_registry'][pid]['widths'],'ordered provider widths');inventories[pid]=ws;profiles[pid]=paid;words[pid]=w;replays[pid]=r;prefix.extend(x['prefix_bits_upper'] for x in r['local'].values()) +pid=next(iter(dirs));A.EXPECTED_WIDTHS=collections.Counter(inventories[pid]);A.T=plan['T'];A.EXPECTED_IDLE={int(k):v for k,v in A.read(a.data/'CONSTRUCTION.json')['idle'].items()};ctx=A.make_context(parent,phases,canonical['ports'],words[pid],replays[pid],roles);A.require(set(ctx['order'])==set(dispatch),'complete dispatch calls');ctx['call_widths']={c:inventories[p] for c,p in dispatch.items()};ctx['aggregate_paid']=collections.Counter() +for p in dispatch.values():ctx['aggregate_paid'].update(profiles[p]) +ctx.update(max_local_prefix=max(prefix),local_profiles=profiles,width_inventories={p:dict(collections.Counter(ws)) for p,ws in inventories.items()});pending=A.check_pending_axes(ctx);receipt=A.check_roles(ctx,roles);A.require(receipt['profile']=={int(k):v for k,v in plan['profile'].items()},'aggregate profile binding');receipt['controls_rejected']=A.controls(ctx,roles) +# A wrong provider at one changed call must fail the literal width predicate. +call=next(c for c,p in dispatch.items() if p=='extra');bad=dict(ctx,call_widths=dict(ctx['call_widths']));bad['call_widths'][call]=inventories['gauge44'] +try:A.check_roles(bad,roles) +except ValueError as e:A.require(str(e)=='whole-helper residual width','wrong provider control predicate');receipt['controls_rejected'].append(dict(name='wrong_provider_at_changed_call',reason=str(e))) +else:raise ValueError('accepted incorrect provider') +receipt.update(disjoint_pending_child_axis_checks=pending,provider_counts=dict(collections.Counter(dispatch.values())),input_sha256={str(p):A.filehash(p) for p in [a.data/'PLAN.json',a.data/'DISPATCH.json',a.data/'OWNERS.json.gz',a.parent]+[d/'CANONICAL-WORD.json.gz' for d in dirs.values()]});a.out.write_text(json.dumps(receipt,indent=2)+'\n');print('PASS_INDEPENDENT_MIXED_OWNER',len(receipt['controls_rejected']),flush=True) diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/build_word.py b/research/capped-fusion-t74-k554/vendor/pr1297/build_word.py new file mode 100644 index 0000000000..537d4cee50 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/build_word.py @@ -0,0 +1,6 @@ +"""Apply the frozen joint frame refit to the pinned PR1195 fusion word; native replay validates it.""" +import argparse,gzip,json +from pathlib import Path +ap=argparse.ArgumentParser();ap.add_argument('--base',type=Path,required=True);ap.add_argument('--recipe',type=Path,required=True);ap.add_argument('--out',type=Path,required=True);a=ap.parse_args();w=json.loads(gzip.decompress(a.base.read_bytes()));rc=json.loads(gzip.decompress(a.recipe.read_bytes()) if a.recipe.suffix=='.gz' else a.recipe.read_bytes()) +for k,v in rc.items():assert w[k]==v['old'],k;w[k]=v['new'] +a.out.write_bytes(gzip.compress(json.dumps(w,sort_keys=True,separators=(',',':')).encode(),mtime=0));print('REBUILT_MIXED_FUSION_WORD') diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/construct.py b/research/capped-fusion-t74-k554/vendor/pr1297/construct.py new file mode 100644 index 0000000000..7da1ab25df --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/construct.py @@ -0,0 +1,23 @@ +"""Replay PR1193's pinned integer-flow constructor against the final native interfaces. +Only filesystem configuration is supplied; all mathematical construction code is unchanged. +""" +import argparse,importlib.util,sys,json,gzip +from collections import Counter +from pathlib import Path +P=Path(__file__).resolve().parent +ap=argparse.ArgumentParser();ap.add_argument('--parent',type=Path,required=True);ap.add_argument('--word3',type=Path,required=True);ap.add_argument('--word4',type=Path,required=True);ap.add_argument('--out',type=Path,required=True);a=ap.parse_args();source=P/'vendor/pr1193';sys.path.insert(0,str(source));import construct as C +C.ROOT=P/'original-main' +parent=C.read(a.parent);mix=C.read(source/'data/MIX.json');order=C.read(source/'data/ORDER.json');roles,receipt=C.construct(parent,{'demote3':C.read(a.word3),'demote4':C.read(a.word4)},C.read(source/'data/FLOW.json.gz'),order,mix) +assert roles==C.read(source/'data/OWNERS.json.gz'),'frozen owner reconstruction' +m=C.load(C.ROOT/'research/complex-t21-owners/vendor/pr870/t16/build_parent.py','windows_again');windows,_=m.actual_windows(parent,order);used=Counter() +for z in roles:used[z['owner_replica'],z['child'],z['port']]+=z['width'] +idle=Counter() +for k,(cap,ts) in windows.items(): + r,ch=map(int,k.split(',')) + for port in range(112): + rem=cap-used[r,ch,port];assert rem>=0 + if rem:idle[rem]+=1 +receipt['idle']=dict(idle);assert not a.out.exists();a.out.mkdir(parents=True);C.dump(a.out/'OWNERS.json.gz',roles);C.dump(a.out/'DISPATCH.json',[[s,r,{'demote3':'gauge44','demote4':'extra'}[pid]] for pid,s,r in mix]);C.dump(a.out/'CONSTRUCTION.json',receipt);print(receipt['status'],dict(idle),flush=True) + +import controls +flow_controls=controls.check(parent,{'demote3':C.read(a.word3),'demote4':C.read(a.word4)},a.out/'FLOW-CONTROLS.json');assert len(flow_controls['rejected'])==8;print(flow_controls['status'],flush=True) diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/controls.py b/research/capped-fusion-t74-k554/vendor/pr1297/controls.py new file mode 100644 index 0000000000..78a47a5ba0 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/controls.py @@ -0,0 +1,39 @@ +"""Negative controls for the two source-holder fusions, judged by the unchanged #645 audit_local.py. + +For each site the word is mutated five ways: drop the FULL-cleanup restore, drop the donation, flip the donation sign, +keep the fused target read, and drop both donation and restore. Every mutant must be rejected and the honest word must +pass. Sites (gate positions and contents) are pinned in CONTROL-SITES.json. +usage: python -B controls.py --word FULL-WORD.json.gz --out FUSION-CONTROLS.json""" +import argparse, copy, gzip, hashlib, json, subprocess, sys, tempfile +from pathlib import Path +P = Path(__file__).resolve().parent; ROOT = P.parents[1]; AUD = ROOT / 'research/gauge44-slots/independent/audit_local.py' +def audit(w, d): + p = Path(d) / 'W.json.gz'; p.write_bytes(gzip.compress(json.dumps(w, separators=(',', ':')).encode(), mtime=0)) + r = subprocess.run([sys.executable, '-B', str(AUD), '--word', str(p), '--output', str(Path(d) / 'A.json')], capture_output=True, text=True) + lines = (r.stdout + r.stderr).strip().splitlines(); return r.returncode == 0, (lines[-1] if lines else '')[-160:] +def drop_cleanup(w, ci): + w['cleanup'] = w['cleanup'][:ci] + w['cleanup'][ci + 1:]; w['early_cleanup'] = [[i - 1 if i > ci else i, U] for i, U in w['early_cleanup']] +def main(): + global AUD + ap = argparse.ArgumentParser(description=__doc__, formatter_class=argparse.RawDescriptionHelpFormatter) + ap.add_argument('--word', type=Path, required=True); ap.add_argument('--out', type=Path, required=True); ap.add_argument('--main', type=Path, required=True); ap.add_argument('--sites', type=Path, required=True); a = ap.parse_args(); AUD = a.main/'research/gauge44-slots/independent/audit_local.py' + raw = gzip.decompress(a.word.read_bytes()); spec = json.loads(a.sites.read_text()) + assert hashlib.sha256(raw).hexdigest() == spec['word_content_sha256'], 'word pin' + w0 = json.loads(raw); d = tempfile.mkdtemp(prefix='fusion-controls-'); ok, msg = audit(w0, d); assert ok, ('honest word rejected', msg) + rejected, accepted = [], [] + for s in spec['sites']: + di, ci = s['donation_B_index'], s['restore_cleanup_index'] + assert w0['B'][di][:5] == s['donation'] and w0['cleanup'][ci][:5] == s['restore'], ('site pin', s['t']) + muts = {} + w = copy.deepcopy(w0); drop_cleanup(w, ci); muts['drop_restore'] = w + w = copy.deepcopy(w0); del w['B'][di]; muts['drop_donation'] = w + w = copy.deepcopy(w0); g = w['B'][di]; w['B'][di] = g[:3] + [-g[3]] + g[4:]; muts['flip_donation_sign'] = w + w = copy.deepcopy(w0); w['B'].insert(s['fused_read_B_position'], list(s['fused_read'])); muts['keep_fused_read'] = w + w = copy.deepcopy(w0); drop_cleanup(w, ci); del w['B'][di]; muts['drop_donation_and_restore'] = w + for name, w in muts.items(): + ok, msg = audit(w, d); (accepted if ok else rejected).append(dict(control=f"{name}@{s['t']}", reason=msg)); print(('ACCEPTED ' if ok else 'rejected ') + f"{name}@{s['t']}", msg[-90:], flush=True) + a.out.write_text(json.dumps(dict(status='PASS_FUSION_NEGATIVE_CONTROLS' if not accepted else 'FAIL', honest='PASS', rejected=rejected, accepted=accepted), indent=2) + '\n') + assert not accepted and len(rejected) == 10, 'every mutant must be rejected' + print('PASS controls: honest word accepted,', len(rejected), 'mutants rejected') +if __name__ == '__main__': + main() diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/extra-word.json.gz b/research/capped-fusion-t74-k554/vendor/pr1297/extra-word.json.gz new file mode 100644 index 0000000000..4d464f55a2 Binary files /dev/null and b/research/capped-fusion-t74-k554/vendor/pr1297/extra-word.json.gz differ diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/freeze_spec.py b/research/capped-fusion-t74-k554/vendor/pr1297/freeze_spec.py new file mode 100644 index 0000000000..e73c2a95c1 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/freeze_spec.py @@ -0,0 +1,31 @@ +"""Freeze independently recomputed discovery values before strict replay.""" +import argparse +import json +from pathlib import Path + +ap = argparse.ArgumentParser(description=__doc__) +ap.add_argument('--spec', type=Path, required=True) +ap.add_argument('--discovery', type=Path, required=True) +a = ap.parse_args() +spec = json.loads(a.spec.read_text()) +for line in (a.discovery/'WITNESS-RECORD.jsonl').read_text().splitlines(): + key, value = json.loads(line) + parts = key.split('.') + if len(parts)>3 and parts[0]=='providers' and parts[2]=='artifacts': + parts = parts[:3] + ['.'.join(parts[3:])] + target = spec + for part in parts[:-1]: + target = target.setdefault(part, {}) + if parts[-1] in target: + assert target[parts[-1]]==value, 'Conflicting independent recomputations: '+key + target[parts[-1]] = value +assembly = json.loads((a.discovery/'ASSEMBLY.json').read_text()) +for key in ('complex_lower','conservative_complex_lower','kappa','kappa_decimal','conservative_kappa_decimal'): + spec['expected'][key] = assembly[key] +# 32 shared controls plus 17 provider controls, two controls per pair of distinct widths, and four spot checks per provider. +spec['expected']['assembly_controls_rejected'] = 32 + sum(17 + len(p['inventory'])*(len(p['inventory'])-1) + len(spec['width_spot_helpers']) for p in spec['providers'].values()) +from collections import Counter +spec['expected']['provider_counts'] = dict(Counter(p for s,r,p in spec['dispatch'])) +spec['expected']['mutations_rejected'] = 15 +a.spec.write_text(json.dumps(spec, indent=2)+'\n') +print('Frozen exact witness for strict replay:', assembly['kappa_decimal']) diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/gauge44-word.json.gz b/research/capped-fusion-t74-k554/vendor/pr1297/gauge44-word.json.gz new file mode 100644 index 0000000000..eacf8c773c Binary files /dev/null and b/research/capped-fusion-t74-k554/vendor/pr1297/gauge44-word.json.gz differ diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/independent_core.py b/research/capped-fusion-t74-k554/vendor/pr1297/independent_core.py new file mode 100644 index 0000000000..956b52eb1a --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/independent_core.py @@ -0,0 +1,345 @@ +#!/usr/bin/env python3 +# SPDX-License-Identifier: Apache-2.0 +# Prepared for haoyan with substantial OpenAI Codex assistance. +"""Independent source-event, owner, chart, and finite-reserve audit. + +This derivative fixes the R480 seven-slot k8 word and 37 replicas. It charges +1024 complex prefix bits and checks disjoint pending children on each family. +The source is Hao Yan's variable-replica checker at the pinned repository base. +SOURCES.json and INDEPENDENT-DERIVATION.patch identify that source and all edits. + +Inputs are read-only. No owner constructor or controller auditor is imported. +--word is the canonical local supplier JSON.gz, with a hash-bound native +INDEPENDENT-LOCAL-REPLAY.json beside it (override with --local-replay). +--baseline-parent is the original eight-replica GLOBAL-TEMPLATE.json.gz. +Its sibling CANONICAL-WORD.json.gz supplies the ports and centre frames. +DATA-PHASES.json defaults to ../work/complex-nine-native/DATA-PHASES.json +(override with --phases). The checker recounts local widths and paid ranks. +--out names a JSON receipt. Checks remain enabled under python -O. +""" +import argparse +import copy +from collections import Counter, defaultdict +import gzip +import hashlib +import json +from pathlib import Path + +V, H, M, T, R = 112, 9, 73, 37, 480 +EXPECTED_IDLE = None + + +def require(condition, message): + if not condition: + raise ValueError(message) + + +def read(path): + data = path.read_bytes() + return json.loads(gzip.decompress(data) if path.suffix == '.gz' else data) + + +def filehash(path): + return hashlib.sha256(path.read_bytes()).hexdigest() + + +def basis(vectors): + pivots = {} + for x in vectors: + require(type(x) is int and 0 <= x < 1 << H, 'invalid local frame vector') + while x: + bit = x.bit_length() - 1 + if bit in pivots: + x ^= pivots[bit] + else: + pivots[bit] = x + break + for bit in sorted(pivots): + for upper in pivots: + if upper > bit and pivots[upper] >> bit & 1: + pivots[upper] ^= pivots[bit] + return tuple(pivots[bit] for bit in sorted(pivots, reverse=True)) + + +def local_inventory(word, replay): + require((word['v'], word['h'], word['R']) == (V, H, R), 'local supplier dimensions') + frames = [basis(frame) for frame in word['frames']] + n = 2 * V + R + require(len(word['start']) == len(word['final']) == n, 'local frame vector lengths') + current = [frames[f] for f in word['start']] + paid = Counter() + + def climb(register, frame): + require(basis(current[register] + frame) == frame, 'nonmonotone local frame') + jump = len(frame) - len(current[register]) + if jump: + paid[jump] += 1 + current[register] = frame + + require(not word['target_levels'], 'this audit requires the current zero-level centre interface') + for section in ('A', 'B', 'tail'): + if section == 'B': + require(all(current[t] == () for t in range(V, 2 * V)), 'target centre level') + for q, frame_id in zip(word['centers'], word['center_frames']): + require(current[q] == frames[frame_id], 'centre carrier frame') + paid[len(frames[frame_id])] += 1 + for gate in word[section]: + registers = gate[1:3] if gate[0] == 'add' else gate[1:2] + require(gate[0] in ('add', 'scale'), 'unknown scalar gate') + for register in registers: + climb(register, frames[gate[-1]]) + for register, frame_id in enumerate(word['final']): + climb(register, frames[frame_id]) + require(dict(paid) == {int(r): count for r, count in word['local_profile'].items()}, 'local paid-profile recount') + for orientation in ('forward', 'backward'): + require(dict(paid) == {int(r): count for r, count in replay['paid_profiles'][orientation].items()}, 'local replay profile binding') + widths = [len(frames[word['final'][q]]) - len(frames[word['start'][q]]) for q in range(2 * V, n)] + require(Counter(widths) == EXPECTED_WIDTHS, 'current supplier width inventory') + return widths, paid + + +def make_context(parent, phases, ports, word, replay, roles): + widths, paid = local_inventory(word, replay) + require(len(parent['calls']) == 72 and {(c['stage'], c['replica']) for c in parent['calls']} == {(s, r) for s in range(9) for r in range(8)}, 'original eight-replica baseline calls') + require(len(roles) == 9 * T * R, 'complete helper role count') + address = {} + for role in roles: + key = (role['stage'], role['replica']) + time = role['time'] + require(time not in address or address[time] == key, 'inconsistent invocation time address') + address[time] = key + require(set(address) == set(range(9 * T)), 'contiguous invocation times') + order = [address[t] for t in range(9 * T)] + require(set(order) == {(s, r) for s in range(9) for r in range(T)}, 'stage/replica inventory') + # Arbitrary interleaving: the exact per-replica projection is checked below. + rank = {child['child']: child['rank'] for child in parent['idle_children']} + source = parent['execution_schedule'] + blocks, stage = {}, None + for index, event in enumerate(source): + if event['kind'] in ('bank_padding_cover_sweep', 'translate_every_live_family'): + continue + if event['kind'] == 'local_cover_sweep': + stage = event['stage'] + blocks[stage] = [] + require(stage is not None, 'source event before first invocation') + blocks[stage].append((index, event)) + require(set(blocks) == set(range(9)), 'source stage inventory') + events = [(index, event, replica, time) for time, (stage, replica) in enumerate(order) for index, event in blocks[stage]] + projections = defaultdict(list) + for index, event, replica, time in events: + projections[replica].append(index) + require(set(projections) == set(range(T)) and all(p == list(range(30)) for p in projections.values()), 'per-replica source-event projection') + stage_pair = {e['stage']: e['pair'] for e in parent['recipe'] if e['kind'] == 'local'} + last, windows, callpos, child_pair, side = {}, {}, {}, {}, {} + bridges = 0 + for position, (_, event, replica, _) in enumerate(events): + kind = event['kind'] + if kind == 'local_cover_sweep': + stage = event['stage'] + callpos[stage, replica] = position + last[replica, stage_pair[stage]] = position + elif kind == 'bridge': + last[replica, event['src']] = last[replica, event['dst']] = position + bridges += 1 + elif kind == 'idle_cover_sweep': + for sd, child in enumerate(event['child_indices']): + if child in rank: + windows[replica, child] = (last.get((replica, event['pair']), -1), position) + child_pair[child], side[child] = event['pair'], sd + require(len(windows) == T * len(rank), 'actual window inventory') + require(len(ports) == V, 'port count') + bases = [] + for q in ports: + zero = next(i for i in range(H) if not (q >> i & 1)) + correction = q ^ (1 << zero) + axes = list(range(H)) + axes[0], axes[zero] = axes[zero], axes[0] + frame = [(1 << i) ^ (correction if correction >> i & 1 else 0) for i in axes] + [1 << i for i in range(H, M)] + require(all((x & y).bit_count() % 2 == int(i == j) for i, x in enumerate(frame) for j, y in enumerate(frame)), 'nonorthogonal owner basis') + bases.append(frame) + return dict(widths=widths, paid=paid, order=order, at={key:t for t,key in enumerate(order)}, rank=rank, + windows=windows, callpos=callpos, child_pair=child_pair, side=side, stage_pair=stage_pair, + bases=bases, phases=phases, bridges=bridges, event_count=len(events), replay=replay) + + +def check_pending_axes(context): + checked = 0 + for port, frame in enumerate(context['bases']): + used = defaultdict(set) + for child, rank in context['rank'].items(): + axes = list(map(int, context['phases']['recipes'][port]['idle_children'][child]['orthogonal_axes'])) + require(len(axes) == rank and len(set(axes)) == rank and set(axes) <= set(frame), + 'pending child orthogonal basis') + family = context['child_pair'][child], context['side'][child] + require(not used[family] & set(axes), 'overlapping pending children on one family') + used[family].update(axes) + checked += 1 + return checked + + +def check_roles(context, roles): + c = context + live, physical = T * 8 * V, T * 8 * V + 8 + R + 2 + require(len(roles) == 9 * T * R, 'complete helper role count') + helpers, families, used = defaultdict(set), defaultdict(set), defaultdict(set) + charts, chart_cache = set(), {} + for z in roles: + s, r, helper = z['stage'], z['replica'], z['helper'] + owner, child, port = z['owner_replica'], z['child'], z['port'] + offset, width, family = z['offset'], z['width'], z['family'] + call = (s, r) + require(call in c['at'] and 0 <= helper < R and 0 <= owner < T and 0 <= port < V, 'role coordinates') + require(z['time'] == c['at'][call], 'role invocation time') + require(width == c['call_widths'][call][helper], 'whole-helper residual width') + require(0 <= family < live, 'private-namespace collision') + require(child in c['rank'], 'unknown idle child') + require(z['copy'] == V * owner + port and family == owner * 896 + (2 * c['child_pair'][child] + c['side'][child]) * V + port, 'physical family identity') + lo, hi = c['windows'][owner, child] + require(lo < c['callpos'][call] < hi, 'strict bridge-aware idle window') + require(family // 224 != r * 4 + c['stage_pair'][s], 'helper aliases active data pair') + require(helper not in helpers[call] and family not in families[call], 'duplicate helper or family within whole invocation') + helpers[call].add(helper) + families[call].add(family) + cells = set(range(offset, offset + width)) + bin_key = (owner, child, port) + require(offset >= 0 and offset + width <= c['rank'][child] and not used[bin_key] & cells, 'overlapping or out-of-capacity slice') + used[bin_key].update(cells) + chart_key = (port, child, offset, width) + if chart_key not in chart_cache: + frame = c['bases'][port] + pending = list(map(int, c['phases']['recipes'][port]['idle_children'][child]['orthogonal_axes'])) + require(len(pending) == c['rank'][child], 'phase child rank') + occupied = [frame.index(x) for x in pending[offset:offset + width]] + spectators = [i for i in range(M) if i not in occupied][:H - width] + permutation = occupied + spectators + [i for i in range(M) if i not in occupied and i not in spectators] + require(len(occupied) == width and len(set(occupied + spectators)) == H and sorted(permutation) == list(range(M)), 'residual/spectator permutation') + require([frame[i] for i in permutation[:width]] == pending[offset:offset + width], 'pending-axis binding') + chart_cache[chart_key] = tuple(frame[i] for i in permutation) + charts.add(chart_cache[chart_key]) + require(set(helpers) == set(c['order']) and all(h == set(range(R)) for h in helpers.values()), 'complete per-call helper inventory') + idle = Counter() + for owner, child in c['windows']: + for port in range(V): + cells = used[owner, child, port] + require(cells == set(range(len(cells))), 'gap in pending prefix') + left = c['rank'][child] - len(cells) + if left: + idle[left] += 1 + require(dict(idle) == EXPECTED_IDLE, 'nominated idle profile') + profile = Counter(c['aggregate_paid']) + profile.update(idle) + mass = sum(rank * count for rank, count in profile.items()) + require(M * live - mass == 320*T, 'replica-scaled rank deficit') + require(c['bridges'] == 9*T, 'actual bridge count') + localbits = c['max_local_prefix'] + prefix = localbits + (M + 1) // 2 + len(c['order']) + c['bridges'] + 4 + group = 2 ** (36 * 36) + for i in range(1, 37): + group *= 2 ** (2 * i) - 1 + stock = group * physical + row = 2 * stock.bit_length() + 9909 + 252 + 2 * 1024 + require(prefix < 1024, 'prefix reserve') + require(row < 20161 and M * M > 2 * max(profile) ** 2, 'row or halving reserve') + return dict(status='PASS_INDEPENDENT_VARIABLE_T_LITERAL_WINDOWS_CHARTS_PREFIX_ROW', roles=len(roles), calls=len(c['order']), + source_events_per_replica=30, expanded_replica_events=c['event_count'], bridge_events=c['bridges'], + literal_windows=len(c['windows']), checked_whole_helper_widths=len(roles), checked_busy_family_windows=len(roles), + orthogonal_port_bases=len(c['bases']), actual_73_axis_charts=len(charts), checked_slice_prefixes=len(c['windows']) * V, + local_profiles=c['local_profiles'], width_inventories=c['width_inventories'], + idle=dict(sorted(idle.items())), profile=dict(sorted(profile.items())), live=live, physical=physical, + rank_mass=mass, deficit=320*T, namespace={'data':[0,live], 'centres':[live,live+8], 'tableau':[live+8,live+8+R], 'coefficient':[live+8+R,physical]}, + local_prefix_bits=localbits, local_prefix_from_native_receipt=True, local_profile_recounted=True, + prefix_formula=dict(local_scalar=localbits, input_l2=(M + 1) // 2, invocations=len(c['order']), bridges=c['bridges'], margin=4), + prefix_bits=prefix, charged_prefix_bits=1024, physical_stock_bits=stock.bit_length(), + physical_row_coefficient=row, row_limit=20161, + scope='Finite role/window/chart and inherited prefix/row obligations. Requires separately admitted local supplier and emitted controller, complete finite invoice, exact moments and outer assembly; no all-size theorem is asserted.') + + +def controls(context, roles): + candidates = [] + first = roles[0] + bad = dict(first, family=896*T) + candidates.append(('private_namespace_collision', [bad] + roles[1:], 'private-namespace collision')) + index = next(i for i, z in enumerate(roles) if z['replica'] >= 1) + bad = dict(roles[index], replica=roles[index]['replica'] - 1) + candidates.append(('copy_replica_alias', [bad] + roles[:index] + roles[index+1:], 'role invocation time')) + candidates.append(('missing_whole_helper', roles[1:], 'complete helper role count')) + split = dict(first, width=first['width'] - 1) + fragment = dict(first, offset=first['offset'] + first['width'] - 1, width=1) + candidates.append(('split_whole_helper', [split, fragment] + roles[1:], 'complete helper role count')) + candidates.append(('truncated_helper_width', [split] + roles[1:], 'whole-helper residual width')) + # Keep the family and chart valid, but move one complete role past its + # actual idle event. Freeze the original invocation order for controls. + crossing = None + for index, z in enumerate(roles): + lo, hi = context['windows'][z['owner_replica'], z['child']] + later = next((key for key in context['order'] if context['callpos'][key] >= hi), None) + if later is not None: + crossing = [dict(z, stage=later[0], replica=later[1], time=context['at'][later])] + roles[:index] + roles[index+1:] + break + require(crossing is not None, 'no idle-boundary control could be constructed') + candidates.append(('cross_idle_boundary', crossing, 'strict bridge-aware idle window')) + rejected = [] + for name, bad, expected in candidates: + try: + check_roles(context, bad) + except ValueError as exc: + require(str(exc) == expected, 'control rejected at unexpected predicate: ' + name) + rejected.append(dict(name=name, reason=str(exc))) + else: + raise ValueError('accepted negative control: ' + name) + bad = dict(context, phases=copy.deepcopy(context['phases'])) + pair = next((a, b) for a in context['rank'] for b in context['rank'] + if a < b and (context['child_pair'][a], context['side'][a]) == + (context['child_pair'][b], context['side'][b])) + children = bad['phases']['recipes'][0]['idle_children'] + children[pair[1]]['orthogonal_axes'][0] = children[pair[0]]['orthogonal_axes'][0] + try: + check_pending_axes(bad) + except ValueError as exc: + require(str(exc) == 'overlapping pending children on one family', + 'pending-axis control rejected at unexpected predicate') + rejected.append(dict(name='cross_child_pending_axis_alias', reason=str(exc))) + else: + raise ValueError('accepted negative control: cross_child_pending_axis_alias') + return rejected + + +def main(): + global T, EXPECTED_IDLE, EXPECTED_WIDTHS + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--baseline-parent', type=Path, required=True) + parser.add_argument('--owners', type=Path, required=True) + parser.add_argument('--word', type=Path, required=True) + parser.add_argument('--phases', type=Path) + parser.add_argument('--local-replay', type=Path) + parser.add_argument('--out', type=Path, required=True) + parser.add_argument("--replicas", type=int, required=True) + parser.add_argument("--expected-idle", required=True) + parser.add_argument("--expected-widths", required=True) + args = parser.parse_args() + EXPECTED_WIDTHS = {int(k):v for k,v in json.loads(args.expected_widths).items()} + T = args.replicas + require(T == 37, "replica range") + EXPECTED_IDLE = {int(k): v for k,v in json.loads(args.expected_idle).items()} + phases_path = args.phases or args.baseline_parent.parent.parent / 'work/complex-nine-native/DATA-PHASES.json' + canonical_path = args.baseline_parent.parent / 'CANONICAL-WORD.json.gz' + replay_path = args.local_replay or args.word.parent / 'INDEPENDENT-LOCAL-REPLAY.json' + parent, phases, canonical, word, replay, roles = map(read, (args.baseline_parent, phases_path, canonical_path, args.word, replay_path, args.owners)) + require(replay['status'] == 'PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY', 'local replay status') + require(replay['canonical_word_sha256'] == filehash(args.word), 'local word/replay hash binding') + require(set(replay['local']) == {'forward', 'backward'}, 'both native prefix orientations') + require(word['ports'] == canonical['ports'], 'local/controller port interface') + require(len(word['center_frames']) == len(canonical['center_frames']) == 8, 'eight centre interfaces') + require([basis(word['frames'][f]) for f in word['center_frames']] == [basis(canonical['frames'][f]) for f in canonical['center_frames']], 'ordered centre-frame interface') + context = make_context(parent, phases, canonical['ports'], word, replay, roles) + pending = check_pending_axes(context) + receipt = check_roles(context, roles) + receipt['disjoint_pending_child_axis_checks'] = pending + receipt['controls_rejected'] = controls(context, roles) + receipt['input_sha256'] = {str(path): filehash(path) for path in (args.baseline_parent, phases_path, canonical_path, args.word, replay_path, args.owners)} + args.out.write_text(json.dumps(receipt, indent=2) + '\n', encoding='utf-8') + print(receipt['status'], 'roles=' + str(receipt['roles']), 'controls=' + str(len(receipt['controls_rejected']))) + + +if __name__ == '__main__': + main() diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/inputs/base.json.gz b/research/capped-fusion-t74-k554/vendor/pr1297/inputs/base.json.gz new file mode 100644 index 0000000000..ed6248e6b7 Binary files /dev/null and b/research/capped-fusion-t74-k554/vendor/pr1297/inputs/base.json.gz differ diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/inputs/extra.json.gz b/research/capped-fusion-t74-k554/vendor/pr1297/inputs/extra.json.gz new file mode 100644 index 0000000000..fd2456fb30 Binary files /dev/null and b/research/capped-fusion-t74-k554/vendor/pr1297/inputs/extra.json.gz differ diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/kernel543_controls.py b/research/capped-fusion-t74-k554/vendor/pr1297/kernel543_controls.py new file mode 100644 index 0000000000..43c88b86c7 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/kernel543_controls.py @@ -0,0 +1,20 @@ +"""Perturb the new pivot-543 donor segment and restoration, using the pinned independent rational auditor.""" +import argparse,copy,gzip,json,subprocess,sys,tempfile,hashlib +from pathlib import Path +ap=argparse.ArgumentParser();ap.add_argument('--word',type=Path,required=True);ap.add_argument('--main',type=Path,required=True);ap.add_argument('--out',type=Path,required=True);a=ap.parse_args();w0=json.loads(gzip.decompress(a.word.read_bytes()));aud=a.main/'research/gauge44-slots/independent/audit_local.py' +def locate(seq,gate): + ids=[i for i,g in enumerate(seq) if g[:5]==gate];assert len(ids)==1,(gate,ids);return ids[0] +def check(w,d): + p=d/'word.json.gz';p.write_bytes(gzip.compress(json.dumps(w,separators=(',',':')).encode(),mtime=0));r=subprocess.run([sys.executable,'-B',str(aud),'--word',str(p),'--main',str(a.main),'--output',str(d/'audit.json')],capture_output=True,text=True);return r.returncode,r.stdout+r.stderr +mutants={} +for name,gate in [('donor',['add',641,543,4,1]),('undo',['add',641,543,-4,1]),('partner',['add',367,543,-1,1])]: + i=locate(w0['B'],gate);w=copy.deepcopy(w0);del w['B'][i];mutants['drop_'+name]=w +w=copy.deepcopy(w0);i=locate(w['B'],['add',641,543,4,1]);w['B'][i][3]*=-1;mutants['flip_donor_sign']=w +ci=locate(w0['cleanup'],['add',367,543,1,1]);assert sum(i==ci for i,U in w0['early_cleanup'])==1 +w=copy.deepcopy(w0);del w['cleanup'][ci];w['early_cleanup']=[[i-int(i>ci),U] for i,U in w['early_cleanup'] if i!=ci];mutants['drop_restore']=w +w=copy.deepcopy(w0);w['cleanup'][ci][3]*=-1;mutants['flip_restore_sign']=w +with tempfile.TemporaryDirectory(dir=a.out.parent,prefix='kernel-controls-') as tmp: + d=Path(tmp);rc,msg=check(w0,d);assert rc==0,('honest',msg[-2000:]);rejected=[] + for name,w in mutants.items(): + rc,msg=check(w,d);assert rc!=0 and ('endpoint' in msg or 'entrance response' in msg),(name,rc,msg[-2000:]);rejected.append(dict(name=name,reason=msg.strip().splitlines()[-1]));print('REJECTED',name,flush=True) +a.out.write_text(json.dumps(dict(status='PASS_KERNEL543_MUTATION_CONTROLS',word_sha256=hashlib.sha256(a.word.read_bytes()).hexdigest(),honest='PASS',rejected=rejected),indent=2)+'\n') diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/kernel_controls.py b/research/capped-fusion-t74-k554/vendor/pr1297/kernel_controls.py new file mode 100644 index 0000000000..a5ab27352d --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/kernel_controls.py @@ -0,0 +1,23 @@ +"""Perturb each new donor, cancellation and restoration; reject with the retained full rational auditor.""" +import argparse,copy,gzip,json,subprocess,sys,tempfile,hashlib +from pathlib import Path +P=Path(__file__).resolve().parent +ap=argparse.ArgumentParser();ap.add_argument('--word',type=Path,required=True);ap.add_argument('--main',type=Path,required=True);ap.add_argument('--out',type=Path,required=True);a=ap.parse_args();w0=json.loads(gzip.decompress(a.word.read_bytes()));aud=a.main/'research/gauge44-slots/independent/audit_local.py' +def locate(seq,gate): + ids=[i for i,g in enumerate(seq) if g[:5]==gate[:5]];assert len(ids)==1,(gate,ids);return ids[0] +def check(w,d): + p=d/'word.json.gz';p.write_bytes(gzip.compress(json.dumps(w,separators=(',',':')).encode(),mtime=0));r=subprocess.run([sys.executable,'-B',str(aud),'--word',str(p),'--main',str(a.main),'--output',str(d/'audit.json')],capture_output=True,text=True);return r.returncode,r.stdout+r.stderr +mutants={} +for c in json.loads((P/'COMPOSITION.json').read_text())['chosen']: + q=c['pivot'];ed=c['ed'];gates=[g for i,g in ed['insert']];assert len(gates)==3 + for name,gate in zip(['donor','undo','partner'],gates): + i=locate(w0['B'],gate);w=copy.deepcopy(w0);del w['B'][i];mutants[f'drop_{name}@{q}']=w + w=copy.deepcopy(w0);i=locate(w['B'],gates[0]);w['B'][i][3]*=-1;mutants[f'flip_donor_sign@{q}']=w + ci=locate(w0['cleanup'],ed['tail'][0][1]);assert sum(i==ci for i,U in w0['early_cleanup'])==1 + w=copy.deepcopy(w0);del w['cleanup'][ci];w['early_cleanup']=[[i-int(i>ci),U] for i,U in w['early_cleanup'] if i!=ci];mutants[f'drop_restore@{q}']=w + w=copy.deepcopy(w0);w['cleanup'][ci][3]*=-1;mutants[f'flip_restore_sign@{q}']=w +with tempfile.TemporaryDirectory(dir=a.out.parent,prefix='kernel-controls-') as tmp: + d=Path(tmp);rc,msg=check(w0,d);assert rc==0,('honest',msg[-2000:]);rejected=[] + for name,w in mutants.items(): + rc,msg=check(w,d);assert rc!=0 and ('endpoint' in msg or 'entrance response' in msg),(name,rc,msg[-2000:]);rejected.append(dict(name=name,reason=msg.strip().splitlines()[-1]));print('REJECTED',name,flush=True) +a.out.write_text(json.dumps(dict(status='PASS_NEW_COLD_KERNEL_MUTATION_CONTROLS',word_sha256=hashlib.sha256(a.word.read_bytes()).hexdigest(),honest='PASS',rejected=rejected),indent=2)+'\n') diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/original-main/research/complex-t21-owners/vendor/pr870/t16/build_parent.py b/research/capped-fusion-t74-k554/vendor/pr1297/original-main/research/complex-t21-owners/vendor/pr870/t16/build_parent.py new file mode 100644 index 0000000000..bd9e28bd2d --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/original-main/research/complex-t21-owners/vendor/pr870/t16/build_parent.py @@ -0,0 +1,281 @@ +#!/usr/bin/env python3 +# SPDX-License-Identifier: Apache-2.0 +# Copyright (c) 2026 Hao Yan (@FanPUYen) +"""Lift the PR741 controller and PR799 provider plan to sixteen replicas. + +Authored with OpenAI Codex assistance. Precursor credit: the PR514/PR484/PR507 +controller lineage, PR558/PR589 admission, Chafik Boukhalfa's PR741 frames +and owner map, and Jeremy Kothe's PR799 paired-read-exchange provider. +This script changes only the global replica namespace and the nominated owner +map; it reuses the exact local programs and exact data-phase recipes. +""" +import argparse +import copy +import gzip +import hashlib +import json +from collections import Counter +from pathlib import Path + +SOURCE_PLAN_SHA256 = '5f40e7ccfca61f298539b4f41286d2a9d62caf947057f9cec82aa53f73f707fd' +SOURCE_OWNERS_SHA256 = '99d1c4caf85855c353d30f122d9efbd9e51562914facded13027f347b18a6082' + + +def require(condition, reason): + if not condition: + raise ValueError(reason) + + +def read(path): + raw = Path(path).read_bytes() + return json.loads(gzip.decompress(raw) if str(path).endswith('.gz') else raw) + + +def canonical(value): + return json.dumps(value, sort_keys=True, separators=(',', ':')).encode() + + +def portable_gzip(raw): + compressed = bytearray(gzip.compress(raw, mtime=0)) + compressed[9] = 255 # RFC1952 OS=unknown, independent of zlib/Python platform. + return bytes(compressed) + + +def sha(path): + return hashlib.sha256(Path(path).read_bytes()).hexdigest() + + +def content_sha(value): + return hashlib.sha256(canonical(value)).hexdigest() + + +def lift_parent(source, copies=2): + """A direct sum of bank/data stocks; erased private streams are shared. + + copies=1 is deliberately the identity, byte-for-byte after canonicalization. + The helper routes retain replica lanes 0..7 in each *separate* bank group. + No axis index is inferred from the new global replica label 8..15. + """ + require(type(copies) is int and copies in (1, 2), 'only identity or T16 lift') + t = copy.deepcopy(source) + if copies == 1: + return t + require(source['m'] == 73, 'source dimension') + require(len(source['calls']) == 72, 'source calls') + data = 8*8*112 + bank_stock = source['live'] - data + private_stock = source['physical'] - source['live'] + require((bank_stock, private_stock) == (9*504, 504+8+2), 'source namespace') + require({(c['stage'], c['replica']) for c in source['calls']} == + {(s, r) for s in range(9) for r in range(8)}, 'source coverage') + new_data = copies*data + new_live = copies*source['live'] + new_physical = new_live + private_stock + t['calls'] = [] + for c in source['calls']: + for group in range(copies): + new = copy.deepcopy(c) + new['replica'] = c['replica'] + 8*group + owners = [] + for family, route in c['owners']: + require(0 <= family < source['live'], 'owner outside live stock') + mapped = (family + data*group if family < data else + new_data + group*bank_stock + family - data) + owners.append([mapped, copy.deepcopy(route)]) + new['owners'] = owners + t['calls'].append(new) + # Every data/idle recipe is a portwise direct sum, hence only multiplicity + # changes. Its local axis labels and exact phase words stay unchanged. + for child in t['idle_children']: + require(child['replicas'] == 8, 'source idle multiplicity') + child['replicas'] *= copies + for event in t['execution_schedule']: + if 'replicas' in event: + require(event['replicas'] == list(range(8)), 'source sweep replicas') + event['replicas'] = list(range(8*copies)) + if event['kind'] == 'bank_padding_cover_sweep': + event['families'] = [new_data, new_live] + elif event['kind'] == 'translate_every_live_family': + event['families'] = [0, new_live] + event['charged_calls_per_cover'] = new_live + t['bank_padding']['families'] = [] + t['bank_padding']['children'] = [] + for group in range(copies): + for family in source['bank_padding']['families']: + t['bank_padding']['families'].append(new_data + group*bank_stock + family - data) + for child in source['bank_padding']['children']: + new = copy.deepcopy(child) + new['family'] = new_data + group*bank_stock + child['family'] - data + t['bank_padding']['children'].append(new) + t['cover_final_correction'].update(families=[0, new_live], charged_calls_per_cover=new_live) + t['private_namespace'] = { + key: [new_live + x - source['live'] for x in interval] + for key, interval in source['private_namespace'].items() + } + t.update(live=new_live, physical=new_physical, + version='t16-direct-sum-two-bank-groups-parent-v1') + t['route_semantics']['helper'] = ( + 'Two independent groups of nine dedicated banks. Group floor(replica/8) ' + 'selects the bank namespace; the stored original helper route retains ' + 'lane replica%8. All original residual/spectator axes are unchanged.') + t['loop_order'] = ( + 'For each recipe phase: the explicit calls order, then every cover class d; ' + 'each local invocation completes before the next. Each original replica ' + 'has a disjoint data and bank namespace in its group; private erased ' + 'streams are reused between completed calls.') + t['replica_lift'] = dict( + source_template_content_sha256=content_sha(source), groups=copies, + source_replicas=8, replicas=8*copies, data_stock=new_data, + bank_stock=copies*bank_stock, banks_per_stage=copies*504, + private_helpers=504, local_programs_content_sha256=content_sha(source['local_programs']), + construction='direct sum of data and dedicated banks; share only restored private streams', + phase_recipe_unchanged=True) + # Source data and helper owner routes are preserved literally in each copy. + for c in t['calls']: + group, replica = divmod(c['replica'], 8) + old = next(z for z in source['calls'] if (z['stage'], z['replica']) == (c['stage'], replica)) + require([r for f, r in c['owners']] == [r for f, r in old['owners']], 'route changed') + require(c['window'] == old['window'], 'local window changed') + require(len({f for f, r in c['owners']}) == len(c['owners']), 'per-call owner alias') + require(t['local_programs'] == source['local_programs'], 'program changed') + require(t['recipe'] == source['recipe'], 'data recipe changed') + require(len(t['bank_padding']['children']) == copies*bank_stock, 'bank padding count') + require(t['physical'] == t['live']+514, 'private namespace size') + return t + + +def expanded_schedule(parent, order): + blocks = {} + globals_ = [] + stage = None + for index, event in enumerate(parent['execution_schedule']): + if event['kind'] in ('bank_padding_cover_sweep', 'translate_every_live_family'): + globals_.append((index, event)) + continue + if event['kind'] == 'local_cover_sweep': + stage = event['stage'] + blocks[stage] = [] + require(stage is not None, 'event precedes first stage') + blocks[stage].append((index, event)) + schedule = [] + for time, (stage, replica) in enumerate(order): + for index, event in blocks[stage]: + new = copy.deepcopy(event) + new.update(source_event=index, replica=replica, replicas=[replica], time=time) + schedule.append(new) + for index, event in globals_: + schedule.append(dict(event, source_event=index)) + return schedule + + +def actual_windows(parent, order): + ranks = {c['child']: c['rank'] for c in parent['idle_children']} + stage_pair = {e['stage']: e['pair'] for e in parent['recipe'] if e['kind'] == 'local'} + last, intervals, callpos, perrep = {}, {}, {}, {} + schedule = expanded_schedule(parent, order) + for pos, event in enumerate(schedule): + if 'replica' not in event: + continue + replica = event['replica'] + perrep.setdefault(replica, []).append(event['source_event']) + if event['kind'] == 'local_cover_sweep': + last[replica, stage_pair[event['stage']]] = pos + callpos[event['time']] = pos + elif event['kind'] == 'bridge': + last[replica, event['src']] = last[replica, event['dst']] = pos + elif event['kind'] == 'idle_cover_sweep': + for child in event['child_indices']: + if child in ranks: + intervals[replica, child] = (last.get((replica, event['pair']), -1), pos) + require(all(events == list(range(30)) for events in perrep.values()), 'per-replica projection') + require([e['source_event'] for e in schedule if 'replica' not in e] == [30, 31], 'global tail') + require(set(callpos) == set(range(len(order))), 'complete schedule') + windows = {f'{replica},{child}': [ranks[child], [time for time, pos in sorted(callpos.items()) if start < pos < stop]] + for (replica, child), (start, stop) in intervals.items()} + return windows, schedule + + +def lift_plan(source, parent, owners, source_plan_sha, source_owners_sha, owners_sha): + p = copy.deepcopy(source) + require(source['T'] == 8 and len(source['order']) == 72, 'source plan dimensions') + order = [[stage, replica + 8*group] for stage, replica in source['order'] for group in range(2)] + windows, schedule = actual_windows(parent, order) + # These windows are recomputed from actual source-event touches, not copied + # from the old nomination. Their T8 restriction must recover the old plan. + rank = Counter({int(k): 2*v for k, v in source['profile'].items()}) + rank.update({48: 1, 44: -1, 3: -2, 2: 1}) + rank = +rank + p.update(status='FROZEN_EXPLICIT_T16_TWO_BANK_DIRECT_SUM_OWNER_NOMINATION', + mode='gauge44-all144-t16-idle-concentration', T=16, live=14336, + deficit=5120, profile=dict(sorted(rank.items())), order=order, windows=windows, + solver_status='explicit two-role augmenting path and two-bin recombination', gap=None, + source_plan_sha256=source_plan_sha, source_owners_sha256=source_owners_sha, + assignment_sha256=owners_sha, assignment_content_sha256=content_sha(owners)) + for field in ('provider_calls', 'per_call_widths'): + p[field] = [] + for old in source[field]: + for group in range(2): + new = copy.deepcopy(old) + new['replica'] += 8*group + if 'time' in new: + new['time'] = 2*old['time']+group + p[field].append(new) + at = {tuple(x): i for i, x in enumerate(order)} + for field in ('provider_calls', 'per_call_widths'): + p[field].sort(key=lambda c: at[c['stage'], c['replica']]) + p['replica_lift'] = dict(groups=2, source_replicas=8, replicas=16, + parent_template_content_sha256=content_sha(parent), owners_file_sha256=owners_sha, + window_semantics='strict physical source-event touch intervals, including bridges', + schedule_content_sha256=content_sha(schedule)) + require(len(owners) == 144*504, 'owner role count') + for role in owners: + require(role['time'] == at[role['stage'], role['replica']], 'role call time') + require(role['time'] in windows[f"{role['owner_replica']},{role['child']}"][1], + 'owner outside actual source-event window') + require(sum(int(k)*v for k,v in p['profile'].items()) == 73*p['live']-p['deficit'], 'rank mass') + return p, schedule + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--base', type=Path, required=True) + parser.add_argument('--source-plan', type=Path, required=True) + parser.add_argument('--source-owners', type=Path, required=True) + parser.add_argument('--owners', type=Path, required=True) + parser.add_argument('--out', type=Path, required=True) + args = parser.parse_args() + require(not args.out.exists(), 'output directory already exists') + require(sha(args.source_plan) == SOURCE_PLAN_SHA256, 'source plan byte pin') + require(sha(args.source_owners) == SOURCE_OWNERS_SHA256, 'source owners byte pin') + source_path = args.base/'split-centres/GLOBAL-TEMPLATE.json.gz' + source = read(source_path) + original_plan = read(args.source_plan) + require(lift_parent(source, 1) == source, 'T8 identity control') + require(actual_windows(source, original_plan['order'])[0] == original_plan['windows'], 'T8 source-window replay') + require(source['exact_data_phase_recipe_sha256'] == sha(args.base/'work/complex-nine-native/DATA-PHASES.json'), 'source exact data-phase binding') + parent = lift_parent(source) + owners = read(args.owners) + plan, schedule = lift_plan(original_plan, parent, owners, sha(args.source_plan), sha(args.source_owners), sha(args.owners)) + args.out.mkdir(parents=True) + (args.out/'GLOBAL-TEMPLATE.json.gz').write_bytes(portable_gzip(canonical(parent))) + (args.out/'PLAN.json').write_bytes((json.dumps(plan, indent=2)+'\n').encode('utf-8')) + receipt = dict(status='PASS_T16_DIRECT_SUM_PARENT_AND_LITERAL_SOURCE_WINDOWS', + source_template_file_sha256=sha(source_path), source_template_content_sha256=content_sha(source), + source_plan_sha256=sha(args.source_plan), source_owners_sha256=sha(args.source_owners), + owners_sha256=sha(args.owners), + parent_template_file_sha256=sha(args.out/'GLOBAL-TEMPLATE.json.gz'), + parent_template_content_sha256=content_sha(parent), plan_sha256=sha(args.out/'PLAN.json'), + T8_identity_control=True, T8_source_window_identity=True, + local_programs_identical=True, exact_data_phases_identical=True, + parent_live=parent['live'], parent_physical=parent['physical'], + bank_stock=9072, banks_per_stage=1008, private_helpers=504, + source_idle_children_charged=sum(c['replicas'] for c in parent['idle_children']), + events=len(schedule), replica_source_events=30, global_source_events=[30,31], + calls=len(plan['order']), roles=len(owners), actual_window_membership_checked=len(owners), + scope='Legal direct-sum parent namespace and actual source-event windows; full global emitter, geometry, finite invoice, and recurrence admission remain separate checks.') + (args.out/'PARENT-LIFT-RECEIPT.json').write_bytes((json.dumps(receipt, indent=2)+'\n').encode('utf-8')) + print(json.dumps(receipt, indent=2)) + + +if __name__ == '__main__': + main() diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/premise/inputs/CODED-CELLS-k8.json b/research/capped-fusion-t74-k554/vendor/pr1297/premise/inputs/CODED-CELLS-k8.json new file mode 100644 index 0000000000..cd23561e0b --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/premise/inputs/CODED-CELLS-k8.json @@ -0,0 +1,2826 @@ +[ + { + "cell": "01+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 1 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 0 + ], + "x2": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 1 + ], + "x3": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 0 + ], + "x4": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 1 + ], + "x5": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 0 + ], + "y0": [ + "target", + 65 + ], + "y1": [ + "target", + 64 + ], + "y2": [ + "target", + 33 + ], + "y3": [ + "target", + 32 + ], + "y4": [ + "target", + 25 + ], + "y5": [ + "target", + 24 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "-1/2" + ], + [ + "y0", + "x1", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "-1/2" + ], + [ + "y3", + "x0", + "-1/2" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y4", + "x1", + "-1/2" + ], + [ + "y5", + "x0", + "-1/2" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "23+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 23 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 3 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 1 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 0 + ], + "x4": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 1 + ], + "x5": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 0 + ], + "y0": [ + "target", + 71 + ], + "y1": [ + "target", + 67 + ], + "y2": [ + "target", + 97 + ], + "y3": [ + "target", + 96 + ], + "y4": [ + "target", + 89 + ], + "y5": [ + "target", + 88 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "-1/2" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "45+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 23 + ], + "x1": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 3 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 23 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 3 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 1 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 0 + ], + "y0": [ + "target", + 39 + ], + "y1": [ + "target", + 35 + ], + "y2": [ + "target", + 103 + ], + "y3": [ + "target", + 99 + ], + "y4": [ + "target", + 57 + ], + "y5": [ + "target", + 56 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "-1/2" + ], + [ + "x4", + "x3", + "-2" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "0", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "-1/2", + "0" + ] + ] + }, + { + "cell": "67+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 23 + ], + "x1": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 3 + ], + "x2": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 23 + ], + "x3": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 3 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 23 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 3 + ], + "y0": [ + "target", + 31 + ], + "y1": [ + "target", + 27 + ], + "y2": [ + "target", + 95 + ], + "y3": [ + "target", + 91 + ], + "y4": [ + "target", + 63 + ], + "y5": [ + "target", + 59 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "1" + ], + [ + "y3", + "x4", + "1" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "1" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "1" + ], + [ + "y0", + "x5", + "1" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "1", + "1" + ], + [ + "1", + "0", + "1", + "1", + "1", + "1" + ], + [ + "1", + "1", + "0", + "1", + "1", + "1" + ], + [ + "1", + "1", + "1", + "0", + "1", + "1" + ], + [ + "1", + "1", + "1", + "1", + "0", + "1" + ], + [ + "1", + "1", + "1", + "1", + "1", + "0" + ] + ] + }, + { + "cell": "67-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 2 + ], + "x1": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 21 + ], + "x2": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 2 + ], + "x3": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 21 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 2 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 21 + ], + "y0": [ + "target", + 26 + ], + "y1": [ + "target", + 30 + ], + "y2": [ + "target", + 90 + ], + "y3": [ + "target", + 94 + ], + "y4": [ + "target", + 58 + ], + "y5": [ + "target", + 62 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "1" + ], + [ + "y3", + "x4", + "1" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "1" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "1" + ], + [ + "y0", + "x5", + "1" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "1", + "1" + ], + [ + "1", + "0", + "1", + "1", + "1", + "1" + ], + [ + "1", + "1", + "0", + "1", + "1", + "1" + ], + [ + "1", + "1", + "1", + "0", + "1", + "1" + ], + [ + "1", + "1", + "1", + "1", + "0", + "1" + ], + [ + "1", + "1", + "1", + "1", + "1", + "0" + ] + ] + }, + { + "cell": "01-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 19 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 17 + ], + "x2": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 19 + ], + "x3": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 17 + ], + "x4": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 19 + ], + "x5": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 17 + ], + "y0": [ + "target", + 69 + ], + "y1": [ + "target", + 68 + ], + "y2": [ + "target", + 37 + ], + "y3": [ + "target", + 36 + ], + "y4": [ + "target", + 29 + ], + "y5": [ + "target", + 28 + ] + }, + "scaled": [ + [ + "y0", + "x1", + "-1/2" + ], + [ + "y1", + "x0", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "x1", + "x0", + "1" + ], + [ + "x3", + "x4", + "1" + ], + [ + "x5", + "x2", + "1" + ], + [ + "y0", + "x3", + "-1/2" + ], + [ + "y2", + "x1", + "-1/2" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y1", + "y4", + "1" + ], + [ + "y3", + "y2", + "1" + ], + [ + "y5", + "y0", + "1" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y5", + "x0", + "-1/2" + ], + [ + "y4", + "x1", + "-1/2" + ] + ], + "unit": [ + [ + "y0", + "x1", + 1 + ], + [ + "y1", + "x0", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "x1", + "x0", + 1 + ], + [ + "x3", + "x4", + 1 + ], + [ + "x5", + "x2", + 1 + ], + [ + "y0", + "x3", + 1 + ], + [ + "y2", + "x1", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y1", + "y4", + 1 + ], + [ + "y3", + "y2", + 1 + ], + [ + "y5", + "y0", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y5", + "x0", + 1 + ], + [ + "y4", + "x1", + 1 + ] + ], + "coefficients": [ + [ + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "23-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 2 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 21 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 19 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 17 + ], + "x4": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 19 + ], + "x5": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 17 + ], + "y0": [ + "target", + 66 + ], + "y1": [ + "target", + 70 + ], + "y2": [ + "target", + 101 + ], + "y3": [ + "target", + 100 + ], + "y4": [ + "target", + 93 + ], + "y5": [ + "target", + 92 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x3", + "x4", + "1" + ], + [ + "x5", + "x2", + "1" + ], + [ + "y1", + "x3", + "-1/2" + ], + [ + "y2", + "x0", + "1" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y0", + "y4", + "1" + ], + [ + "y3", + "y2", + "1" + ], + [ + "y5", + "y1", + "1" + ], + [ + "y1", + "x5", + "-1/2" + ], + [ + "y0", + "x4", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y5", + "x1", + "1" + ], + [ + "y4", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x3", + "x4", + 1 + ], + [ + "x5", + "x2", + 1 + ], + [ + "y1", + "x3", + 1 + ], + [ + "y2", + "x0", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y0", + "y4", + 1 + ], + [ + "y3", + "y2", + 1 + ], + [ + "y5", + "y1", + 1 + ], + [ + "y1", + "x5", + 1 + ], + [ + "y0", + "x4", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y5", + "x1", + 1 + ], + [ + "y4", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "45-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 2 + ], + "x1": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 21 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 2 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 21 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 19 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 17 + ], + "y0": [ + "target", + 34 + ], + "y1": [ + "target", + 38 + ], + "y2": [ + "target", + 98 + ], + "y3": [ + "target", + 102 + ], + "y4": [ + "target", + 61 + ], + "y5": [ + "target", + 60 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x4", + "-1/2" + ], + [ + "y3", + "x5", + "-1/2" + ], + [ + "y5", + "x3", + "1" + ], + [ + "y4", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x4", + "-1/2" + ], + [ + "x5", + "x3", + "-2" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y0", + "y4", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y5", + "y1", + "1" + ], + [ + "y1", + "x5", + "-1/2" + ], + [ + "y0", + "x4", + "-1/2" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y5", + "x1", + "1" + ], + [ + "y4", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x4", + 1 + ], + [ + "y3", + "x5", + 1 + ], + [ + "y5", + "x3", + 1 + ], + [ + "y4", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x4", + 1 + ], + [ + "x5", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y0", + "y4", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y5", + "y1", + 1 + ], + [ + "y1", + "x5", + 1 + ], + [ + "y0", + "x4", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y5", + "x1", + 1 + ], + [ + "y4", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "0", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "-1/2", + "0" + ] + ] + } +] diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/premise/inputs/TRI-LEAVER-k8.json b/research/capped-fusion-t74-k554/vendor/pr1297/premise/inputs/TRI-LEAVER-k8.json new file mode 100644 index 0000000000..e3bb24cc49 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/premise/inputs/TRI-LEAVER-k8.json @@ -0,0 +1,590 @@ +{ + "full_pairs": [ + [ + 0, + 1 + ], + [ + 2, + 3 + ], + [ + 4, + 5 + ], + [ + 6, + 7 + ] + ], + "triangles": [ + { + "p": [ + 0, + 1 + ], + "e": 1, + "reads": [ + [ + 57, + [ + 0, + 1, + 2, + 3 + ], + 0 + ], + [ + 56, + [ + 0, + 1, + 2, + 3 + ], + 1 + ], + [ + 25, + [ + 0, + 1, + 4, + 5 + ], + 0 + ], + [ + 24, + [ + 0, + 1, + 4, + 5 + ], + 1 + ], + [ + 17, + [ + 0, + 1, + 6, + 7 + ], + 0 + ], + [ + 16, + [ + 0, + 1, + 6, + 7 + ], + 1 + ] + ], + "coded": true, + "cell": 0 + }, + { + "p": [ + 2, + 3 + ], + "e": 1, + "reads": [ + [ + 63, + [ + 0, + 1, + 2, + 3 + ], + 3 + ], + [ + 59, + [ + 0, + 1, + 2, + 3 + ], + 23 + ], + [ + 89, + [ + 2, + 3, + 4, + 5 + ], + 0 + ], + [ + 88, + [ + 2, + 3, + 4, + 5 + ], + 1 + ], + [ + 81, + [ + 2, + 3, + 6, + 7 + ], + 0 + ], + [ + 80, + [ + 2, + 3, + 6, + 7 + ], + 1 + ] + ], + "coded": true, + "cell": 1 + }, + { + "p": [ + 4, + 5 + ], + "e": 1, + "reads": [ + [ + 31, + [ + 0, + 1, + 4, + 5 + ], + 3 + ], + [ + 27, + [ + 0, + 1, + 4, + 5 + ], + 23 + ], + [ + 95, + [ + 2, + 3, + 4, + 5 + ], + 3 + ], + [ + 91, + [ + 2, + 3, + 4, + 5 + ], + 23 + ], + [ + 49, + [ + 4, + 5, + 6, + 7 + ], + 0 + ], + [ + 48, + [ + 4, + 5, + 6, + 7 + ], + 1 + ] + ], + "coded": true, + "cell": 2 + }, + { + "p": [ + 6, + 7 + ], + "e": 1, + "reads": [ + [ + 23, + [ + 0, + 1, + 6, + 7 + ], + 3 + ], + [ + 19, + [ + 0, + 1, + 6, + 7 + ], + 23 + ], + [ + 87, + [ + 2, + 3, + 6, + 7 + ], + 3 + ], + [ + 83, + [ + 2, + 3, + 6, + 7 + ], + 23 + ], + [ + 55, + [ + 4, + 5, + 6, + 7 + ], + 3 + ], + [ + 51, + [ + 4, + 5, + 6, + 7 + ], + 23 + ] + ], + "coded": true, + "cell": 3 + }, + { + "p": [ + 6, + 7 + ], + "e": -1, + "reads": [ + [ + 18, + [ + 0, + 1, + 6, + 7 + ], + 21 + ], + [ + 22, + [ + 0, + 1, + 6, + 7 + ], + 2 + ], + [ + 82, + [ + 2, + 3, + 6, + 7 + ], + 21 + ], + [ + 86, + [ + 2, + 3, + 6, + 7 + ], + 2 + ], + [ + 50, + [ + 4, + 5, + 6, + 7 + ], + 21 + ], + [ + 54, + [ + 4, + 5, + 6, + 7 + ], + 2 + ] + ], + "coded": true, + "cell": 4 + }, + { + "p": [ + 0, + 1 + ], + "e": -1, + "reads": [ + [ + 61, + [ + 0, + 1, + 2, + 3 + ], + 17 + ], + [ + 60, + [ + 0, + 1, + 2, + 3 + ], + 19 + ], + [ + 29, + [ + 0, + 1, + 4, + 5 + ], + 17 + ], + [ + 28, + [ + 0, + 1, + 4, + 5 + ], + 19 + ], + [ + 21, + [ + 0, + 1, + 6, + 7 + ], + 17 + ], + [ + 20, + [ + 0, + 1, + 6, + 7 + ], + 19 + ] + ], + "coded": true, + "cell": 5 + }, + { + "p": [ + 2, + 3 + ], + "e": -1, + "reads": [ + [ + 58, + [ + 0, + 1, + 2, + 3 + ], + 21 + ], + [ + 62, + [ + 0, + 1, + 2, + 3 + ], + 2 + ], + [ + 93, + [ + 2, + 3, + 4, + 5 + ], + 17 + ], + [ + 92, + [ + 2, + 3, + 4, + 5 + ], + 19 + ], + [ + 85, + [ + 2, + 3, + 6, + 7 + ], + 17 + ], + [ + 84, + [ + 2, + 3, + 6, + 7 + ], + 19 + ] + ], + "coded": true, + "cell": 6 + }, + { + "p": [ + 4, + 5 + ], + "e": -1, + "reads": [ + [ + 26, + [ + 0, + 1, + 4, + 5 + ], + 21 + ], + [ + 30, + [ + 0, + 1, + 4, + 5 + ], + 2 + ], + [ + 90, + [ + 2, + 3, + 4, + 5 + ], + 21 + ], + [ + 94, + [ + 2, + 3, + 4, + 5 + ], + 2 + ], + [ + 53, + [ + 4, + 5, + 6, + 7 + ], + 17 + ], + [ + 52, + [ + 4, + 5, + 6, + 7 + ], + 19 + ] + ], + "coded": true, + "cell": 7 + } + ] +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/premise/premise_check.py b/research/capped-fusion-t74-k554/vendor/pr1297/premise/premise_check.py new file mode 100644 index 0000000000..98efec187d --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/premise/premise_check.py @@ -0,0 +1,15 @@ +#!/usr/bin/env python3 +"""premise_check.py WORD : PR1049's independent checks on a NEW word -- literal location of all eight coded cells, the leaver +premise (no post-cell touch, no early-tail touch, FULL-cleanup restoration, not a centre/entering/low-ended register), +the exact all-column endpoint, and the frame/profile recount. verify_1049.py is PR1049's verify.py, unchanged; its two +coded-cell inputs are copied byte-for-byte (sha256-pinned inside it).""" +import gzip, json, sys +from pathlib import Path +sys.path.insert(0, str(Path(__file__).resolve().parent)) +import verify_1049 as V +w = json.loads(gzip.decompress(Path(sys.argv[1]).read_bytes())) +cells = V.read_pinned('CODED-CELLS-k8.json'); tri = V.read_pinned('TRI-LEAVER-k8.json') +cells = cells['cells'] if isinstance(cells, dict) and 'cells' in cells else cells +found, rep = V.audit_word(w, cells, V.cell_targets(cells, tri)) +print(json.dumps(dict(status='PASS_LEAVER_PREMISE', cells=len(found), leavers=len(rep['leavers']), + paid_profile=rep['paid_profile']))) diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/premise/verify_1049.py b/research/capped-fusion-t74-k554/vendor/pr1297/premise/verify_1049.py new file mode 100644 index 0000000000..3e34e2c5a6 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/premise/verify_1049.py @@ -0,0 +1,430 @@ +#!/usr/bin/env python3 +# SPDX-License-Identifier: Apache-2.0 +# Prepared by Sagar Thakrar with substantial Anthropic Claude assistance. +"""Independent audit of the mutable-leaver all-K cells of PR1005, and of the same cells in PR1018's word. + +Standard library only. No code from the audited packages is imported; their words are read as data +(see SOURCES.json for how each pinned input was produced). The checks follow the documented +scalar/frame semantics of the gauge44 local words: + +E Endpoint. Each data column is replayed forward through precondition + A + cut + B + tail + + cleanup and must give x_t -> x_t + y_t-coordinate, i.e. x -> x, y_t -> y_t + x_t. Each helper + column is replayed through the inverse of the post-precondition program; the result must be + the unit vector plus a target-only residue. That is exactly the condition under which a + pre-main compensation y -= a*h exists. The residue must vanish for entering helpers. +F Frames. Monotone climbs over A, the centre paths, B, the early-cleanup tail and the terminal + ends. The FULL cleanup may touch only registers that end at FULL. The paid histogram must equal + the word's recorded local profile. +L Leaver cells. Each coded cell's 21 scaled gates are located literally (contiguous, in order) + in A + cut + B by unification. Each name binds to one register, the y-names bind to the cell's + six targets (TRI read indices; the coded index is t8 + 8), and the x-names bind to non-targets. + For every mutated leaver: it is not a centre, entering helper or low-ended helper. It is never + touched again in A/cut/B or the tail after its cell, and it is written later in the FULL + cleanup. Its value at the end of B differs from its input, so the restoration is real work. +D Profile deltas. The raw-stage paid profiles of the no-triangle, k5 and k8 words are recomputed + with F and differenced. +Every check raises AuditError directly (no assert), so it also runs under python -O. +""" +import argparse, copy, gzip, hashlib, json, sys +from collections import Counter +from fractions import Fraction as Q +from pathlib import Path + +HERE = Path(__file__).resolve().parent +IN = HERE / 'inputs' +PINS = { # sha256 of the decompressed JSON (of the file itself for .json) + 'k8-cell-word.json.gz': '58e14a02f2c1d4dcfeb363ebd5fa2e713064b5c724d90f6721419a8cfa67729b', + 'k8-final-word.json.gz': 'db2c7cfb3f8eee2b76c2e0154fc530520fb4d90cd9511a002cab527b16033b83', + 'k8-seven-slot-word.json.gz': 'c2b294300760e1fd6eeab8c22c4d13e4633dca40e52cac8da0d68163a76e3ca8', + 'notri-cold44-word.json.gz': '3e99ba778ab8a97853f50912776247802b529439937176363f6c42786163b1f9', + 'raw-notri.json.gz': '5a55ea28628e3d76ed31393505f4605d7a8d5b002716a44115fea60cdc3477e3', + 'raw-k5.json.gz': 'c9114254533c7e272504016764c93370e18734469587a86fb07652b85f8ae209', + 'raw-k8.json.gz': '85c0e64718a9ceafe094e7152ea27ec9d7f804e514b5efaab085a94b7ef1841f', + 'CODED-CELLS-k8.json': '7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563', + 'TRI-LEAVER-k8.json': 'b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30', +} + + +class AuditError(Exception): + pass + + +def need(ok, msg): + if not ok: + raise AuditError(msg) + + +def read_pinned(name): + data = (IN / name).read_bytes() + raw = gzip.decompress(data) if name.endswith('.gz') else data + need(hashlib.sha256(raw).hexdigest() == PINS[name], 'input pin mismatch: ' + name) + return json.loads(raw) + + +# ------------------------------------------------------------------ scalar semantics + +def regs(g): + return (g[1], g[2]) if g[0] == 'add' else (g[1],) + + +def coef(g): + return Q(g[3], g[4]) if g[0] == 'add' else Q(g[2], g[3]) + + +def forward(gates, col): + for g in gates: + if g[0] == 'add': + x = col.get(g[2]) + if x: + y = col.get(g[1], 0) + coef(g) * x + if y: + col[g[1]] = y + else: + col.pop(g[1], None) + elif g[0] == 'scale': + if g[1] in col: + col[g[1]] *= coef(g) + else: + raise AuditError('unknown gate ' + str(g[0])) + return col + + +def inverse(gates, col): + for g in reversed(gates): + if g[0] == 'add': + x = col.get(g[2]) + if x: + y = col.get(g[1], 0) - coef(g) * x + if y: + col[g[1]] = y + else: + col.pop(g[1], None) + elif g[1] in col: + col[g[1]] /= coef(g) + return col + + +def parts(w): + early = w.get('early_cleanup', []) + ids = [i for i, _ in early] + need(len(ids) == len(set(ids)), 'duplicate early-cleanup index') + tail = [list(w['cleanup'][i][:-1]) + [U] for i, U in early] + cleanup = [g for i, g in enumerate(w['cleanup']) if i not in set(ids)] + return w['precondition'], w['A'] + w['cut'] + w['B'], tail, cleanup + + +def endpoint(w): + v, R = w['report']['v'], w['report']['R'] + n = 2 * v + R + pre, main, tail, cleanup = parts(w) + for g in pre + main + tail + cleanup: + need(all(0 <= r < n for r in regs(g)), 'register out of range') + need(g[0] != 'add' or g[1] != g[2], 'self add') + q = coef(g) + need(q != 0 and q.denominator & (q.denominator - 1) == 0, 'non-dyadic or zero scalar') + need(all(v <= r < 2 * v for g in pre for r in regs(g)), 'precondition touches a non-target') + full, post = pre + main + tail + cleanup, main + tail + cleanup + entering = {int(k) for k in w.get('start_extra', {})} + bad, residue = [], 0 + for c in range(2 * v): + want = {c: Q(1)} + if c < v: + want[v + c] = Q(1) + if forward(full, {c: Q(1)}) != want: + bad.append(('data', c)) + for k in range(2 * v, n): + out = inverse(post, {k: Q(1)}) + rest = {r: x for r, x in out.items() if r != k} + if out.get(k) != 1 or any(not v <= r < 2 * v for r in rest): + bad.append(('helper', k)) + elif rest and k in entering: + bad.append(('entering-response', k)) + residue += len(rest) + need(not bad, 'endpoint failures %s' % bad[:6]) + return dict(columns=n, data_columns=2 * v, helper_columns=R, target_residue_entries=residue) + + +# ------------------------------------------------------------------ frames + +def span(vectors): + piv = {} + for x in vectors: + need(type(x) is int and x >= 0, 'bad frame vector') + while x: + b = x.bit_length() - 1 + if b in piv: + x ^= piv[b] + else: + piv[b] = x + break + for b in sorted(piv): + for u in piv: + if u > b and piv[u] >> b & 1: + piv[u] ^= piv[b] + return frozenset(piv.values()) + + +def frames(w): + v, h, R = w['report']['v'], w['report']['h'], w['report']['R'] + n = 2 * v + R + FULL = span([1 << i for i in range(h)]) + hyper = lambda p: span([x for x in range(1, 1 << h) if bin(x & p).count('1') % 2 == 0]) + cur = [span([p]) for p in w['ports']] + [span([])] * (v + R) + for q, U in w.get('start_extra', {}).items(): + need(2 * v <= int(q) < n, 'entrance on a non-helper') + cur[int(q)] = span(U) + start = list(cur) + end = [FULL] * v + [hyper(p) for p in w['ports']] + [FULL] * R + for q, U in w.get('helper_final', {}).items(): + end[int(q)] = span(U) + paid = Counter() + + def climb(r, U, where): + U = U if isinstance(U, frozenset) else span(U) + need(span(list(cur[r]) + list(U)) == U, 'non-monotone climb in %s, register %d' % (where, r)) + if len(U) > len(cur[r]): + paid[len(U) - len(cur[r])] += 1 + cur[r] = U + + pre, main, tail, cleanup = parts(w) + for g in w['A']: + for r in regs(g): + climb(r, g[-1], 'A') + need(not w.get('target_levels'), 'nonzero target levels are outside this audit') + need(all(cur[v + t] == span([]) for t in range(v)), 'targets not at level zero before B') + for q, U in zip(w['centers'], w['center_frames']): + need(cur[q] == span(U), 'centre carrier frame') + paid[len(span(U))] += 1 + for g in w['B']: + for r in regs(g): + climb(r, g[-1], 'B') + for g in tail: + for r in regs(g): + climb(r, g[-1], 'tail') + for r in range(n): + climb(r, end[r], 'end') + need(all(end[r] == FULL for g in cleanup for r in regs(g)), 'FULL cleanup touches a low end') + paid = {k: paid[k] for k in sorted(paid)} + need(paid == {int(k): x for k, x in w['report']['local_profile'].items()}, 'paid profile differs from the recorded profile') + return paid + + +# ------------------------------------------------------------------ leaver cells + +def cell_targets(cells, tri): + out = {} + for tr in tri['triangles']: + if tr.get('coded'): + c = cells[tr['cell']] + t8 = {r[0] for r in tr['reads']} + need({b[1] - 8 for b in c['bindings'].values() if b[0] == 'target'} == t8, 'TRI/coded index mismatch ' + c['cell']) + out[c['cell']] = t8 + need(len(out) == len(cells), 'a coded cell lacks a TRI entry') + return out + + +def locate(w, cells, targets): + v = w['report']['v'] + main = w['A'] + w['cut'] + w['B'] + found = [] + for cell in cells: + pat = [(t, s, Q(q)) for t, s, q in cell['scaled']] + T = {v + t for t in targets[cell['cell']]} + hits = [] + for i in range(len(main) - len(pat) + 1): + bind, ok = {}, True + for k, (tn, sn, q) in enumerate(pat): + g = main[i + k] + if g[0] != 'add' or Q(g[3], g[4]) != q: + ok = False + break + for name, reg in ((tn, g[1]), (sn, g[2])): + if bind.setdefault(name, reg) != reg or (name[0] == 'y') != (reg in T): + ok = False + if not ok: + break + if ok and len(set(bind.values())) == len(bind): + hits.append((i, bind)) + need(len(hits) == 1, 'cell %s located %d times' % (cell['cell'], len(hits))) + i, bind = hits[0] + need({bind[x] for x in bind if x[0] == 'y'} == T, 'cell %s target set' % cell['cell']) + found.append(dict(cell=cell['cell'], start=i, stop=i + len(pat), bind=bind, + leavers=sorted({bind[t] for t, s, q in pat if t[0] == 'x'}))) + ivals = sorted((c['start'], c['stop']) for c in found) + need(all(a[1] <= b[0] for a, b in zip(ivals, ivals[1:])), 'overlapping cells') + return found + + +def premise(w, found): + v, R = w['report']['v'], w['report']['R'] + pre, main, tail, cleanup = parts(w) + special = set(w['centers']) | {int(k) for k in w.get('start_extra', {})} | {int(k) for k in w.get('helper_final', {})} + tail_regs = {r for g in tail for r in regs(g)} + rows = [] + for c in found: + for r in c['leavers']: + need(r not in special, 'leaver %d is a centre, entering or low-ended register' % r) + later = [j for j in range(c['stop'], len(main)) if r in regs(main[j])] + need(not later, 'leaver %d touched in main after its cell (index %d)' % (r, later[0] if later else -1)) + need(r not in tail_regs, 'leaver %d touched in the early-cleanup tail' % r) + writes = [j for j, g in enumerate(cleanup) if g[1] == r] + need(writes, 'leaver %d is never written in the FULL cleanup' % r) + rows.append(dict(cell=c['cell'], register=r, kind='data' if r < v else 'helper', + first_full_cleanup_write=writes[0], full_cleanup_writes=len(writes))) + # value after precondition + main, as a linear form in the inputs + want = {row['register'] for row in rows} + form = {r: {r: Q(1)} for r in range(2 * v + R)} + for g in pre + main: + if g[0] == 'add': + dst, q = form[g[1]], coef(g) + for k, x in form[g[2]].items(): + y = dst.get(k, 0) + q * x + if y: + dst[k] = y + else: + dst.pop(k, None) + else: + form[g[1]] = {k: x * coef(g) for k, x in form[g[1]].items()} + need(all(form[r] != {r: Q(1)} for r in want), 'a leaver holds its input value at the end of B') + return rows + + +def audit_word(w, cells, targets): + found = locate(w, cells, targets) + rows = premise(w, found) + return found, dict(R=w['report']['R'], paid_profile=frames(w), endpoint=endpoint(w), + cells=[dict(cell=c['cell'], main_index=c['start'], leavers=c['leavers']) for c in found], + leavers=rows) + + +# ------------------------------------------------------------------ negative controls + +def controls(w, found, cells, targets): + by = {c['cell']: c for c in cells} + nA, nC = len(w['A']), len(w['cut']) + c0 = found[0] + pat = by[c0['cell']]['scaled'] + r0 = c0['leavers'][0] + + def at(i): + return ('A', i) if i < nA else (('cut', i - nA) if i < nA + nC else ('B', i - nA - nC)) + + def outcome(name, m, expect): + for check, fn in (('endpoint', lambda: endpoint(m)), ('frames', lambda: frames(m)), + ('premise', lambda: premise(m, found))): + try: + fn() + except AuditError as e: + need(check == expect, 'control %s rejected by %s, expected %s: %s' % (name, check, expect, e)) + return name, '%s: %s' % (check, str(e)[:70]) + raise SystemExit('CONTROL ACCEPTED: ' + name) + + out = [] + h = w['report']['h'] + FULLF = [1 << j for j in range(h)] + kx = next(k for k, (t, s, q) in enumerate(pat) if t[0] == 'x') + m = copy.deepcopy(w); sec, i = at(c0['start'] + kx); del m[sec][i] + out.append(outcome('N1_drop_leaver_write', m, 'endpoint')) + early = {i for i, _ in w.get('early_cleanup', [])} + k = next(i for i, g in enumerate(w['cleanup']) if i not in early and g[1] == r0) + m = copy.deepcopy(w); del m['cleanup'][k] + m['early_cleanup'] = [[i - (i > k), U] for i, U in w.get('early_cleanup', [])] + out.append(outcome('N2_drop_full_cleanup_restore', m, 'endpoint')) + # A semantically neutral pair at FULL: only the premise check can see it. + pre, main, tail, cleanup = parts(w) + busy = {r for g in tail for r in regs(g)} | set(w['centers']) | {int(q) for q in w.get('helper_final', {})} + v, R = w['report']['v'], w['report']['R'] + hh = max(r for r in range(2 * v, 2 * v + R) if r not in busy) + m = copy.deepcopy(w); m['B'] += [['add', hh, r0, 1, 2, FULLF], ['add', hh, r0, -1, 2, FULLF]] + out.append(outcome('N3_neutral_touch_of_leaver_after_cell', m, 'premise')) + m = copy.deepcopy(w); sec, i = at(c0['start']); m[sec][i][3] *= 3 + out.append(outcome('N4_wrong_cell_coefficient', m, 'endpoint')) + xn = pat[kx][0] + kr = next(k for k, (t, s, q) in enumerate(pat) if k > kx and s == xn) + m = copy.deepcopy(w); a, b = at(c0['start'] + kx), at(c0['start'] + kr) + need(a[0] == b[0], 'control N5 spans sections') + m[a[0]][a[1]], m[b[0]][b[1]] = m[b[0]][b[1]], m[a[0]][a[1]] + out.append(outcome('N5_leaver_write_after_its_read', m, 'endpoint')) + y = next(b for nm, b in c0['bind'].items() if nm[0] == 'y') + e = min(int(q) for q in w['start_extra']) + m = copy.deepcopy(w); m['B'].insert(0, ['add', y, e, 1, 1, FULLF]) + out.append(outcome('N6_entering_dirt_into_cell_target', m, 'endpoint')) + m = copy.deepcopy(w); sec, i = at(c0['start'] + kx); m[sec][i][-1] = [] + out.append(outcome('N7_leaver_gate_below_current_frame', m, 'frames')) + return dict(out) + + +# ------------------------------------------------------------------ driver + +def delta(a, b): + return {r: a.get(r, 0) - b.get(r, 0) for r in sorted(set(a) | set(b)) if a.get(r, 0) != b.get(r, 0)} + + +def scale(u, s): + return {r: s * x for r, x in u.items()} + + +def run(): + cells = read_pinned('CODED-CELLS-k8.json') + targets = cell_targets(cells, read_pinned('TRI-LEAVER-k8.json')) + words = {name: read_pinned(f) for name, f in [('cell', 'k8-cell-word.json.gz'), ('final', 'k8-final-word.json.gz'), + ('seven_slot', 'k8-seven-slot-word.json.gz')]} + res = dict(status=None, audited={}, controls={}) + keep = {} + for name, w in words.items(): + found, res['audited'][name] = audit_word(w, cells, targets) + res['audited'][name]['content_sha256'] = PINS[{'cell': 'k8-cell-word.json.gz', 'final': 'k8-final-word.json.gz', 'seven_slot': 'k8-seven-slot-word.json.gz'}[name]] + keep[name] = found + print('PASS', name, res['audited'][name]['paid_profile'], flush=True) + for name in ('final', 'seven_slot'): + res['controls'][name] = controls(words[name], keep[name], cells, targets) + print('PASS controls', name, len(res['controls'][name]), flush=True) + # Face events: data-register leavers receive one B-section write in both the base and the cell word. + base = read_pinned('notri-cold44-word.json.gz') + v = base['report']['v'] + data_leavers = sorted(r for c in keep['cell'] for r in c['leavers'] if r < v) + def bwrites(w): + return {x: [[g[2], str(coef(g))] for g in w['B'] if g[0] == 'add' and g[1] == x] for x in data_leavers} + wb, wc = bwrites(base), bwrites(words['cell']) + need(all(len(wb[x]) == 1 and len(wc[x]) == 1 for x in data_leavers), 'a data leaver lacks exactly one B write') + awrites = lambda w: [[g[1], g[2], str(coef(g))] for g in w['A'] if g[0] == 'add' and g[1] in data_leavers] + need(awrites(base) == awrites(words['cell']), 'A-section writes to data leavers changed') + res['face_events'] = dict(data_leavers=data_leavers, base_B_write=wb, cell_B_write=wc, + repaired=[x for x in data_leavers if wb[x] != wc[x]]) + # Profile deltas. + raw = {k: read_pinned(f) for k, f in [('notri', 'raw-notri.json.gz'), ('k5', 'raw-k5.json.gz'), ('k8', 'raw-k8.json.gz')]} + P = {k: frames(w) for k, w in raw.items()} + d5, d3 = delta(P['k5'], P['notri']), delta(P['k8'], P['k5']) + unit = {r: x // 5 for r, x in d5.items()} + need(scale(unit, 5) == d5 and scale(unit, 3) == d3, 'raw per-cell deltas are not additive') + need(raw['notri']['report']['R'] - raw['k5']['report']['R'] == 15 and raw['k5']['report']['R'] - raw['k8']['report']['R'] == 9, 'helper counts') + claimed = {1: -30, 2: 6, 3: 6} + slot = delta(res['audited']['seven_slot']['paid_profile'], res['audited']['final']['paid_profile']) + need(slot == scale({3: 2, 4: -4, 5: 2}, 7), 'seven-slot delta is not 7 x {3:+2,4:-4,5:+2}') + res['profile_deltas'] = dict(raw_profiles={k: P[k] for k in P}, k5_minus_notri=d5, k8_minus_k5=d3, + per_cell_raw=unit, helpers_removed_per_cell=3, + pr_description_per_cell=claimed, matches_pr_description=unit == claimed, + rank_mass_per_cell_raw=sum(r * x for r, x in unit.items()), + seven_slot_minus_final=slot) + res['status'] = 'PASS_INDEPENDENT_MUTABLE_LEAVER_AUDIT' + return res + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--write', action='store_true', help='write RESULT.json instead of comparing with it') + a = ap.parse_args() + try: + res = run() + except AuditError as e: + print('FAIL', e) + sys.exit(1) + text = json.dumps(res, indent=1, sort_keys=True) + '\n' + if a.write: + (HERE / 'RESULT.json').write_text(text) + else: + need((HERE / 'RESULT.json').read_text() == text, 'result differs from committed RESULT.json') + d = res['profile_deltas'] + print('%s cells=8 leavers=%d columns=%d controls=%d per_cell_raw=%s claimed_match=%s' % ( + res['status'], len(res['audited']['final']['leavers']), res['audited']['final']['endpoint']['columns'], + sum(map(len, res['controls'].values())), d['per_cell_raw'], d['matches_pr_description'])) diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/replay.py b/research/capped-fusion-t74-k554/vendor/pr1297/replay.py new file mode 100644 index 0000000000..0343c8c1ab --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/replay.py @@ -0,0 +1,32 @@ +import argparse,json,hashlib,os,shutil,subprocess,sys,time,collections +from pathlib import Path +P=Path(__file__).resolve().parent;F=P.parent;R=F/'owner37-round44';S=R/'source/research/r480-owner-optimum';N=F/'joint1148-round45';B=F/'demotions1148-round43/baseline-replay';ROOT=N/'source' +def rd(p):return json.loads(p.read_text()) +def sha(p):return hashlib.sha256(p.read_bytes()).hexdigest() +ap=argparse.ArgumentParser();ap.add_argument('--data',type=Path,required=True);ap.add_argument('--work',type=Path,required=True);ap.add_argument('--discover',action='store_true');ap.add_argument('--local',type=Path);a=ap.parse_args();data=a.data.resolve();work=a.work.resolve();assert not work.exists();work.mkdir();local=a.local.resolve() if a.local else B/'native/local';code=S/'code';upstream=ROOT/'research/complex-k492-owner-repair/vendor/multicold' +for rel,h in rd(S/'vendor/pr1074/UPSTREAM-PINS.json').items():assert sha(ROOT/rel)==h,rel +assert rd(B/'RESULT.json')['status']=='PASS_THREE_DEMOTIONS_COMPLETE_ADMISSION' +env=dict(os.environ,PYTHONDONTWRITEBYTECODE='1',PYTHONUTF8='1',PYTHONINTMAXSTRDIGITS='0',MULTICOLD_SOURCE=str(upstream),GAIN_PR564_SOURCE=str(upstream)) +for k in ('PYTHONOPTIMIZE','WITNESS_DISCOVER','WITNESS_RECORD','WITNESS_SPEC'):env.pop(k,None) +runtime=work/'runtime';(runtime/'data').mkdir(parents=True);shutil.copytree(S/'vendor/pr1074/construction',runtime/'construction');shutil.copy2(data/'SPEC.json',runtime/'data/SPEC.json');spec=runtime/'data/SPEC.json';env['WITNESS_SPEC']=str(spec) +if a.discover:env.update(WITNESS_DISCOVER='1',WITNESS_RECORD=str(work/'WITNESS-RECORD.jsonl')) +parent=work/'parent';shutil.copytree(B/'parent/t16/parent558',parent);shutil.copy2(data/'GLOBAL-TEMPLATE.json.gz',parent/'complex-global/base/split-centres/GLOBAL-TEMPLATE.json.gz');stages=[] +def run(name,script,*args): + t=time.monotonic();log=work/(name+'.log') + with log.open('w') as f:r=subprocess.run([sys.executable,'-B',str(upstream/'code/run_portable.py'),str(script),*map(str,args)],cwd=ROOT,env=env,stdout=f,stderr=subprocess.STDOUT) + stages.append(dict(name=name,seconds=time.monotonic()-t,exit_code=r.returncode,log_sha256=sha(log)));(work/'STAGES.json').write_text(json.dumps(stages,indent=2));assert r.returncode==0,(name,log.read_text()[-5000:]);print('PASS',name,flush=True) +g=work/'global' +run('bind',code/'bind_providers_portable.py','--baseline',parent,'--provider','gauge44='+str(local),'--provider','extra='+str(P/'native-extra/local'),'--plan',data/'PLAN.json','--out',g) +run('emit',code/'emit_allcold.py','--base',g/'base','--owners',data/'OWNERS.json.gz','--plan',g/'PLAN.json','--out',g/'hosted') +run('audit',code/'audit_allcold.py',g/'base',g/'hosted',g/'audit/ASYNC-AUDIT.json','--mutation-controls') +run('invoice',code/'invoice_allcold.py','--base',g/'base','--hosted',g/'hosted','--audit',g/'audit','--out',g/'audit','--retained-invoice',upstream/'vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/audit/PREFIX-AND-INVOICE.json') +run('assembly',code/'assemble.py',upstream,g,work/'ASSEMBLY.json') +if a.discover: + run('freeze',P/'freeze_spec.py','--spec',spec,'--discovery',work);shutil.copy2(spec,data/'SPEC.json') +else: + for name,script,filename in [('admission','assembly_controls.py','ADMISSION-CONTROLS.json'),('bit','bit_supplier_controls.py','BIT-CONTROLS.json')]:run(name,code/script,'--source-package',upstream,'--owner',g/'audit/OWNERS-AND-PROFILE.json','--invoice',g/'audit/PREFIX-AND-INVOICE.json','--out',work/filename) +plan=rd(data/'PLAN.json') +run('independent',P/'audit_mixed.py','--parent',B/'parent/t16/global8/base/split-centres/GLOBAL-TEMPLATE.json.gz','--data',data,'--provider','gauge44='+str(local),'--provider','extra='+str(P/'native-extra/local'),'--out',work/'INDEPENDENT.json') +asm=rd(work/'ASSEMBLY.json');ind=rd(work/'INDEPENDENT.json');inv=rd(g/'audit/PREFIX-AND-INVOICE.json');assert ind['profile']==asm['complex_profile']==plan['profile'];assert ind['prefix_bits']==inv['global_prefix_bits']<1024;assert ind['physical_row_coefficient']==inv['finite']['physical_row_coefficient']<20161;assert len(ind['controls_rejected'])==8 +if not a.discover:assert len(rd(work/'ADMISSION-CONTROLS.json')['rejected_controls'])==114 and len(rd(work/'BIT-CONTROLS.json')['rejected_controls'])==12 +receipt=dict(status='DISCOVERY' if a.discover else 'PASS_STRICT_MIXED_T37_ENTRANCES',kappa=asm['kappa'],kappa_decimal=asm['kappa_decimal'],steps=stages,independent=ind,scope='Conditional finite construction only; two freshly replayed source-holder fusion providers; all inherited theorem obligations retained.');(work/'RESULT.json').write_text(json.dumps(receipt,indent=2));print(receipt['status'],receipt['kappa_decimal'],flush=True) diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/search_relations.py b/research/capped-fusion-t74-k554/vendor/pr1297/search_relations.py new file mode 100644 index 0000000000..5959c3e39e --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/search_relations.py @@ -0,0 +1,61 @@ +"""Exact rational two-shock relations, retaining suffix effects on every register.""" +import argparse,gzip,json,collections,sys,time +from fractions import Fraction as Q +from pathlib import Path +P=Path(__file__).resolve().parent;F=P.parent +ap=argparse.ArgumentParser();ap.add_argument('--word',type=Path,default=P/'inputs/base.json.gz');ap.add_argument('--pivots',nargs='+',type=int,default=[555,567]);ap.add_argument('--out',type=Path,required=True);args=ap.parse_args() +w=json.loads(gzip.decompress(args.word.read_bytes()));B=w['B'];R=max(max(g[1:3]) if g[0]=='add' else g[1] for g in B)+1 +coef=lambda g:Q(g[3],g[4]) if g[0]=='add' else Q(g[2],g[3]) +def add(a,b,c): + d=dict(a) + for k,v in b.items(): + d[k]=d.get(k,Q(0))+c*v + if not d[k]:del d[k] + return d +def col(seq,q): + r={q:Q(1)} + for g in seq: + t=g[1] + if g[0]=='add':r[t]=r.get(t,Q(0))+coef(g)*r.get(g[2],Q(0)) + else:r[t]=r.get(t,Q(0))*coef(g) + if not r[t]:r.pop(t,None) + return r +def solve(u,v,d): + keys=set(u)|set(v)|set(d) + if not keys:return None + i=next(iter(keys));ui,vi,di=u.get(i,0),v.get(i,0),d.get(i,0) + for j in keys: + uj,vj,dj=u.get(j,0),v.get(j,0),d.get(j,0);det=ui*vj-uj*vi + if det: + a=(di*vj-dj*vi)/det;b=(ui*dj-uj*di)/det + if not a or not b:return None + a,b=Q(a),Q(b) + if any(c.denominator&(c.denominator-1) for c in [a,b]):return None + if all(a*u.get(k,0)+b*v.get(k,0)==d.get(k,0) for k in keys):return a,b + return None + return None +out=[] +for q in args.pivots: + first=next(i for i,g in enumerate(B) if g[1]==q);dele=[i for i,g in enumerate(B[:first]) if g[0]=='add' and g[2]==q];tail=[w['cleanup'][i] for i,U in w['early_cleanup']];seq=B+tail;new=[g for i,g in enumerate(B) if i not in dele]+tail;d=add(col(seq,q),col(new,q),-1) + cols={j:{j:Q(1)} for j in range(R)};hs=[];ts=[] + for i in range(len(seq)-1,-1,-1): + g=seq[i] + if i=224 and g[2]!=q and i not in dele: + h=g[2];effect=add(cols[h],{h:Q(1)},-1) + if effect:hs.append((i+1,h,effect)) + ts.append((i,g,dict(cols[g[1]]))) + if i in dele:continue + if g[0]=='add':t,s=g[1:3];cols[s]=add(cols[s],cols[t],coef(g)) + else:cols[g[1]]={k:v*coef(g) for k,v in cols[g[1]].items()} + start=time.monotonic();matches=[] + for cut,h,u in hs: + for i,g,v in ts: + if h==g[2]:continue + sol=solve(u,v,d) + if sol: + a,b=sol;c=b/coef(g) + if c.denominator&(c.denominator-1):continue + ed=dict(delete=dele,insert=[[i,['add',g[2],q,c.numerator,c.denominator,[]]],[i+1,['add',g[2],q,-c.numerator,c.denominator,[]]],[cut,['add',h,q,a.numerator,a.denominator,[]]]],tail=[[len(w['early_cleanup']),['add',h,q,-a.numerator,a.denominator,[]]]],prepend=[]) + matches.append(dict(pivot=q,helper=h,cut=cut,output=g[1],hook=i,donor=g[2],amount=str(a),correction=str(b),ed=ed)) + print('PIVOT',q,'pairs',len(hs)*len(ts),'matches',len(matches),'seconds',time.monotonic()-start,flush=True);print(matches[:3],flush=True);out+=matches +args.out.write_text(json.dumps(out,indent=2)+'\n') diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/upstream-layout.tar.gz b/research/capped-fusion-t74-k554/vendor/pr1297/upstream-layout.tar.gz new file mode 100644 index 0000000000..d627d37862 Binary files /dev/null and b/research/capped-fusion-t74-k554/vendor/pr1297/upstream-layout.tar.gz differ diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/CLAIM.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/CLAIM.json new file mode 100644 index 0000000000..b67172862c --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/CLAIM.json @@ -0,0 +1 @@ +{"T":37,"bit_lower":"1733427039589844234749/1000000000000000000000000","calls":333,"charged_prefix_bits":1024,"comparison":{"independently_replayed_pr1050":"0.001672241870811633","joint_entrances_t37":"0.001675568675201533","selected_pr1042":"0.001672188119205421","selected_pr942":"0.001661960547713947","seven_slot_t37_predecessor":"0.001674097969905390","uniform_three_demotions_t37":"0.001675129371412064"},"complex_lower":"167848528779417184507/100000000000000000000000","complex_profile":{"1":785550,"2":167498,"3":138028,"4":42458,"48":11374,"5":27306,"8":2664},"deficit":11840,"idle":{"1":2,"48":11374},"kappa":"1675672695827067/1000000000000000000","kappa_decimal":"0.001675672695827067","live":33152,"physical":33642,"physical_row_coefficient":17495,"prefix_bits":775,"provider_calls":{"demote3":125,"demote4":208},"rank_mass":2408256,"roles":159840,"scope":"Finite conditional construction under the retained compiler, whole-call hosting, common-label/mutable-source realization, precision/tape, analytic-transfer and bitH1-H5 hypotheses. No unconditional theorem or kappa=1 claim.","status":"UNADMITTED_TARGET_ONLY"} \ No newline at end of file diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/DEPENDENCY-PINS.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/DEPENDENCY-PINS.json new file mode 100644 index 0000000000..515f2998da --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/DEPENDENCY-PINS.json @@ -0,0 +1,1904 @@ +{ + "research/community-frontier1042-audit/ASSEMBLY.json": "093f35445812ea96fe1bfe6a3af7d769cb7f274e08f4fb30f71a17ed1161e54e", + "research/community-frontier1042-audit/BASELINE-BINDING.json": "22575ff21833fdfcfc7d67d7d9b3b433cf13a3165628ebcb9aaae239b8145472", + "research/community-frontier1042-audit/INDEPENDENT-T16.json": "f647dcc7b051c2766af08033afcb1427d1177b4d3ca9a467b3d9846ab2dc30fd", + "research/community-frontier1042-audit/RESULT.json": "bf12c6ed3b412539638b76addb40591a631609b2ab9e5ee0db1f6bbe067d0ec0", + "research/community-frontier1042-audit/SELECTED-SOURCE.json": "f2c1594a39facf5d634d02e8a684677831e97f41ab2e609e8c35b52c1fec814b", + "research/community-frontier1042-audit/STAGES.json": "ff52f110df600616b51aa657e0c1107f3c57f8fd2e89b13bb74448eb7a52984a", + "research/community-frontier1042-audit/T16-REPLAY.json": "1f9fd180e28b714f9c4734182db101591e1a9784748a4b54a82f1f6df9a54b56", + "research/community-frontier1042-audit/selected-replay.tar.gz": "22c3f4dce4b897a1d423d1388801933e288b6a6b1906cb15e1b16a5eb68db754", + "research/community-k492-audit/pr622/replay/baseline558/ASSEMBLY-CONTROLS.json": "aca6ddbcd8049e98c2ce36108488f756b08506ca558fa94e64b811774ea96d79", + "research/community-k492-audit/pr622/replay/baseline558/ASSEMBLY.json": "4782793661bf92c9f8281ca7b9ae92f79573a3623af49661fc445147d455dbdb", + "research/community-k492-audit/pr622/replay/baseline558/RECEIPT.json": "dee320a71985660f1ea7715f652fda110fe172a51a1194ac433734ccdce1e14c", + "research/community-k492-audit/pr622/replay/baseline558/RESULT.json": "a979ea3fce856e0826a61dc7fdfebea067f5a97bf118f9f186175c686a22c717", + "research/community-k492-audit/pr622/replay/baseline558/STAGES.json": "820727a3e743fc7aea400e8157b69e3f07af359bf38a763ee6fd77b73172d765", + "research/community-k492-audit/pr622/replay/baseline558/all-columns-native-frames.log": "1dcd4d21c10ec05f273f42334bfa158e1480bcaaa08a9a16873b371806e47fb1", + "research/community-k492-audit/pr622/replay/baseline558/all-phase-recipes.log": "c71de931024cd4f3421547ff3042126302cd62be7b9d0bfb92b66bd4e1eb2dac", + "research/community-k492-audit/pr622/replay/baseline558/assembly-admission-controls.log": "9cc0577eb648247a02f4352eaf5187000a8378657f388e8ffa8cbeb55a43b9ec", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/01-bind.log": "1ba8f0d5a08f617e637347d9c0c3761781b759af38df847306cca392913b01f4", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/02-emit.log": "e628c73c0caa87c49a67a9286a8c8339e5aebc1c2b78b98a8f9099f2a75fa817", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/03-physical.log": "177cfc604cd7085019b615945f33c04197eee181e8c30ec13831cf253c138e23", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/04-invoice.log": "680deb0f83fbc968b5436044dcea693782c6e8519fb49de59fa2ff8124c9a850", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/05-moments.log": "0abfdd96bd6a797c6aa5f6cd358a7e1276820e94de037d0c0a6054883d485953", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/PLAN.json": "8e64bb8a1a8f87998479316f4111801cb3eb1e64f898b7e577eebd72a460f844", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/PR510-EXPECTED.json": "19b861f69f7602e47b390d472b487d044bff4230b250520807537c213ad0249f", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/RESULT.json": "847097e0a7e0bcf66245e40481aaa25bad3d8d17232e0ff3a7f3b8a38b269011", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/STAGES.json": "37b5f9f3f47147851af0a0cd8cdd8d14d22a80fa7bdecffe6ea2fc499afdea6b", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/audit/ASYNC-AUDIT.json": "177cfc604cd7085019b615945f33c04197eee181e8c30ec13831cf253c138e23", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/audit/EXACT-ASSEMBLY.json": "a72a55cc90ca9f85a056f6fd62de6b788269ae459f73fb60fb7f486b7945e4d4", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/audit/GLOBAL-PREFIX.json": "bff8fb45c83550daf817dce92815b22adb21384591699813353b8e2a4e1aa60e", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/audit/IDLE-REMAINDER-FRAMES.json": "a142992c82237ef08852af7105f7d466bcccfa9e5da890e8d82559e433a4dda7", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/audit/OWNERS-AND-PROFILE.json": "050da7f024d6db1736315ed1b62772559febf2c71acc7bf17eb9339ffa055d3f", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/audit/PREFIX-AND-INVOICE.json": "680deb0f83fbc968b5436044dcea693782c6e8519fb49de59fa2ff8124c9a850", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INTEGRATION.json": "5c14538134dfffbc58fa4b4d2f26b270ec5f56d17d4bf23752c82964f45171db", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/controller-input/split-centres/CANONICAL-WORD.json.gz": "de2be0f4b6d24ace368fd5b834b7a00f9625d0a1824c4ff969f2db5f115db667", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/controller-input/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/hosted/HOSTED.json": "e628c73c0caa87c49a67a9286a8c8339e5aebc1c2b78b98a8f9099f2a75fa817", + "research/community-k492-audit/pr622/replay/baseline558/complex-local/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "research/community-k492-audit/pr622/replay/baseline558/complex-local/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "research/community-k492-audit/pr622/replay/baseline558/complex-local/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "research/community-k492-audit/pr622/replay/baseline558/complex-local/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-local/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "research/community-k492-audit/pr622/replay/baseline558/complex-local/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "research/community-k492-audit/pr622/replay/baseline558/complex-local/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/community-k492-audit/pr622/replay/baseline558/complex-local/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "research/community-k492-audit/pr622/replay/baseline558/complex-local/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/community-k492-audit/pr622/replay/baseline558/emit-both-reflected-ledgers.log": "f382385a67f705b446978a73fc6492ce127cb2ae76011e87e36fdbe9977f4347", + "research/community-k492-audit/pr622/replay/baseline558/independent-local-and-controls.log": "b694b4b22abb9d1de9a70bbbdf9e9b0e030ec00a7eddc264e4c18376dd859cee", + "research/community-k492-audit/pr622/replay/baseline558/literal-owners-full-invoice.log": "61522ff431dfca96293b7f6e13924f11f9004b0eefa1456308a600d053608964", + "research/community-k492-audit/pr622/replay/baseline558/normalized-wrappers.log": "284cce3149354d057b4e2f04163535c0d8b0a924898e5b771ba8af2740314154", + "research/community-k492-audit/pr622/replay/baseline558/reconstruct552-and-promote8.log": "b7b035547780f64e33ea2432fd2cc79ed5795bf88c9791cbb913d9ec2a7c6a2b", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/lifted/PORT.json": "873fe7e8a338738b545f3f34388a4f29f1939b48275f406022212f9ef5ef2b86", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/promoted/CONSTRUCTION.json": "208ea9f6669778a2326357171ca8b2088cb3c1f165c408fd5ee374469f5ddca5", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/promoted/PROMOTED8-SCALAR-AUDIT.json": "4275fc9a309f0ba27562858e434f3fc3bdf501a3625f8ff1a8d8ccf29d72d10f", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/promoted/PROMOTION.json": "9ad34faa8611a6ea7f161d2e1fe331ab1ba5ccec8fca3978e31c3e7bf789bc31", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/promoted/STATIC44-SCALAR-AUDIT.json": "05458940a7e12e90507403c5fb819dcf84ef328a524ecd6ceaf928e0ebd620b2", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/static44/REPLAY.json": "be018b79f66ef3814c2159ba174531ff4ea17762ab104715fe7177246d345322", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/static44/SCALAR-AUDIT.json": "9436f9b92196015e357e4974011cf1d0f960abb7f26b95eedac339a02c919624", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/static44/SELECTION.json": "16ecc4a5c08af6750ee8610b722f74eba82a9eeb9703f0f0e0ace08ce5c82ad3", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/syndrome/SYNDROME-CERTIFICATE.json": "56961ff2c99816751e051f8fe12ce01fc2be017a074917ed58b7004b13d08cf8", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/wave/WAVE-REVIEW.json": "ef97172e5020ce4158f7c8144a0b0b3d16b94d7c0415e2d33a81f02353d3d506", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/weighted/WEIGHTED-COSET-REPLAY.json": "1661a17a2a7f717fb27bb943f500756edaeff392787d20838264e4aa6d035454", + "research/community-k492-audit/pr622/replay/baseline558/two-engine-exact-assembly.log": "b50e71a1c084e221ca32b43001f5383c8cffb09d72e66b1436f22aa240795a9c", + "research/complex-k492-owner-repair/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-k492-owner-repair/MANIFEST.json": "c9d1bcb0c65de86a7554711212d4bb5e7490b3bc69d918f957b99a68a832144b", + "research/complex-k492-owner-repair/NOTICE.md": "e7e934433919b73f6088a68a444eed4cea029638ae7b0df3fde15099d5369fd1", + "research/complex-k492-owner-repair/PROOF-COMMUTING-PREFIX.md": "59899b2a1a76d88275e57f983c0aea391dc2c7f1d2d66c33b92429be0a1cf5e1", + "research/complex-k492-owner-repair/PROOF-NOTE-R.md": "22312bb347bdf159e6a01a45c47675e6170d33b258e2fd9ed52aee88fb92c0ed", + "research/complex-k492-owner-repair/PROOF-NOTE.md": "337d70fe7abd9afca1d90954c23bde87f4dc27888cc1a6b4bb80506fd6fbf8c5", + "research/complex-k492-owner-repair/README.md": "ee5a1ace4828f7a073be97e95c2d931988774dd3a29a877e65abdf429aeec902", + "research/complex-k492-owner-repair/code/assemble.py": "1b1a9024ac910dc9b9d9e30150684e1fa9cb228a4c1c275b75ab04b57fdef1dd", + "research/complex-k492-owner-repair/code/assembly_controls.py": "8a365b95c412d75d10db5bb59309d47cd56c5f8a77566f940a05977795130ce8", + "research/complex-k492-owner-repair/code/audit_allcold.py": "cea021ae79658ca7ca4d07f1e1a70bdb4947afaf95b362114c11032c0fef889a", + "research/complex-k492-owner-repair/code/bind_providers_portable.py": "2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea", + "research/complex-k492-owner-repair/code/build_cold_end.py": "27d5f540cb7f7e57b12f041196743761a5ecefaa2e04fd808abfffed25027f6e", + "research/complex-k492-owner-repair/code/build_frame_regroup.py": "e2549ccc7a90008831be3b59aeb37b47db696640f5f5c2b72dd888b2f1e7e5c9", + "research/complex-k492-owner-repair/code/build_gate_moves.py": "08bf1c2652307aeefbab089fdaf02f82e2c396ca23a1eb68e294a67e74c44252", + "research/complex-k492-owner-repair/code/build_hpe.py": "ba2001695d8c7547a82260c3b016e01dac686e95a61757ca124eb9879078ea8e", + "research/complex-k492-owner-repair/code/build_port_stage.py": "beb0d30fde1b9a30db091880b38c4a8ec906da3f715c43de7db8bf7932526e72", + "research/complex-k492-owner-repair/code/cold_end_controls.py": "f8b770eb3bfe387c9b878a954b0dcb0efd81bc4adb0c97b450b3ab7a66c78585", + "research/complex-k492-owner-repair/code/construct_k_triangle.py": "66fc460df8eb8067efe3d8a3f9e97a7244aacd7bf11650a6ce656e868ce053da", + "research/complex-k492-owner-repair/code/emit_allcold.py": "fe26f10fe5d30ed407a37540a45ef94f44576dd241d09e19aef5db1efb072746", + "research/complex-k492-owner-repair/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/complex-k492-owner-repair/code/generated_identity_controls.py": "a7b93207a673575d1fddc3e579153349c145c8f08d4575ae0a5d1e3cffec01de", + "research/complex-k492-owner-repair/code/hpe_adapters_local.py": "eb0b5c6c7161e18dc22168da3211448d321586edd15bcfb4b4741174d36993cf", + "research/complex-k492-owner-repair/code/hpe_audit_and_transport.py": "c9a05ff291016b870b4fc925b317abd9c3a604c73ffc8920dfdbbeb475e20aa3", + "research/complex-k492-owner-repair/code/hpe_audit_local.py": "6bd9a1e279c9c9e4f3767d9f82e537b559292906feb2ddab02f380fb6523a810", + "research/complex-k492-owner-repair/code/hpe_controls_atc.py": "63aa3909b5bfd3bf270c313bebb5c46e7789c67a8f2439f568bc4b2b4a35d17b", + "research/complex-k492-owner-repair/code/hpe_emit_local.py": "7e4a6fbc38c8228157b6311457d1496bf460291393043932d2c365f004f77805", + "research/complex-k492-owner-repair/code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "research/complex-k492-owner-repair/code/phase_timing_controls.py": "1692ccee3da4b1781408d126ee4999f3e31a505cd83c64823a404033da3a6339", + "research/complex-k492-owner-repair/code/witness.py": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "research/complex-k492-owner-repair/comparison/PR622-NATIVE-HASHES.json": "28479a183387bcb608bd9ee0572f617c17f316b79ce4a6fa1277ed8689fb3431", + "research/complex-k492-owner-repair/comparison/PR622-PLAN.json": "442d71a0a41e42503c645892f9fddd5b4d8fa722659974cedc27ae41b60319ac", + "research/complex-k492-owner-repair/comparison/PR622-README.md": "ea231e3836e8a0bc19815b66e2552a6daa452781e871ea4dd7280d3ad15bc9c3", + "research/complex-k492-owner-repair/comparison/PR622-SPEC.json": "a0efd32e51a98809e4312d529ad65e8ecd2f446a82c5eab5166b102b03244989", + "research/complex-k492-owner-repair/comparison/PR623-PLAN.json": "c919c366ef1d3528f1884e47dfce858ab3164b099740e4c17cde6f697b3ec458", + "research/complex-k492-owner-repair/comparison/PR623-README.md": "ccd9783f0557bb9c80f65a31c74914df11531106de8a840e1e1f2da62176cd2c", + "research/complex-k492-owner-repair/comparison/PR623-SPEC.json": "436d3df54e6ce2433d56435afd569708e5fb22bc638571f5134ab12a9f9099f5", + "research/complex-k492-owner-repair/data/EXPECTED.json": "7647bdbebfd33551fdf1a56eae16c9227fa79f7595ccd351d2d8492c2a65a680", + "research/complex-k492-owner-repair/data/OWNERS.json.gz": "251e82cec1f40e6c1289703667f403104b957f1254dc4f6baa6df9a3d0c751de", + "research/complex-k492-owner-repair/data/PLAN.json": "8c48ef6ce079916314126c5c3ff0003b32f24cf0fbfb2a033fc93e1e1949b5d5", + "research/complex-k492-owner-repair/data/SPEC.json": "2a2577ac526535826fed9d5f7f83f6e2e0ec058a146c64f7286720b995fa2323", + "research/complex-k492-owner-repair/data/TRI-SCHEDULE.json": "94da9d5575f5b237097a77ac7dd09aff594322dd9c35138bfd34ffc5e1a7a51e", + "research/complex-k492-owner-repair/data/WITNESS.json": "63fb94a452ac8a3485daa3cb52ab4890944afc07e94d1c89db0763f8cc311496", + "research/complex-k492-owner-repair/data/cand.json": "f210d4e4a208de6f110ea756c9c735354e1a8e80ecae4395792df98dd6ef685f", + "research/complex-k492-owner-repair/data/recipes/atm3-step0-promote.json": "9a7cafdf9b600ba43985c83969b75151f665b98f454afc1494b9f9ef3dd3916f", + "research/complex-k492-owner-repair/data/recipes/atm3-step1-greedy_kernels.json": "c4bc67f329fc22e226f26bbbf7e67018a639823d99fccfc5a1e798a7a82db43f", + "research/complex-k492-owner-repair/data/recipes/atm3-step2-frame_coalesce.json": "e6d7ea259a542f2b43a857998f677db4d68f8f36335e98a030bc91ab38ce758c", + "research/complex-k492-owner-repair/data/recipes/atm3-step3-gate_move_coalesce.json": "3a6b8fec6c8b56a45bf8fae683083636fa295a8914ffa68d11b1f78ba3a2eb9d", + "research/complex-k492-owner-repair/data/recipes/ck-step0-greedy_kernels.json": "c839199d0e6f8e976978fe97bc0c5579a65ba69dfb6864585b448cccc1113056", + "research/complex-k492-owner-repair/data/recipes/ck-step1-frame_coalesce.json": "0c8e5991e1338f03b837814dd060d4dd598c324e3538ee510913e0444a384ee3", + "research/complex-k492-owner-repair/data/recipes/ck-step2-gate_move_coalesce.json": "1f5b62c76915b1b8bbcf63b42dcbd87a536c34d3721c4a9b68e651404717bf00", + "research/complex-k492-owner-repair/data/recipes/k492-atm3-cold_end.json.gz": "a25ccab0c024aa9512df822032fca11683def03d0886b58f375c42834264c47c", + "research/complex-k492-owner-repair/data/recipes/k492-atm3-frame_regroup.json": "8d880d3d8e795575a3a3428e0031b2c45831eea512dc32cb99f7eae9e6e49e5e", + "research/complex-k492-owner-repair/data/recipes/k492-atm3-hyperplane_end.json": "30504ae76a2387677f05450d23413c7373c08ae2d9d171b2f4597bb63e294631", + "research/complex-k492-owner-repair/data/recipes/k492-ck-cold_end.json.gz": "d438123ecca120799a0b9835d0e7231ec12f61f10caff3ef466ad9f7c96e51a2", + "research/complex-k492-owner-repair/data/recipes/k492-ck-frame_regroup.json": "9894f9c93e931b61cf34b337c4b257a72bb1d06fbdc4e8b02368e6e29ab2b644", + "research/complex-k492-owner-repair/data/recipes/k492-ck-hyperplane_end.json": "c71c2b05550544c29ebb4696e63cffc44d6daa76f1bc25e9c7c97e994b2c7657", + "research/complex-k492-owner-repair/data/recipes/k492-jp8-cold_end.json.gz": "660d2438c5fd4dd4cc49eefff071ac53f50adb65f292005f182082d27555a6a9", + "research/complex-k492-owner-repair/data/recipes/k492-jp8-frame_regroup.json": "9bd347334de643f29865290be1ed37289f9cae6cd339547ac89b45fa7aaee65a", + "research/complex-k492-owner-repair/data/recipes/k492-jp8-hyperplane_end.json": "e4d4dfd83d0c64cb0a8ee8c8bbd95d0510ee68699859e568fe201cd6f8d250c1", + "research/complex-k492-owner-repair/data/search/DISPATCH.json": "b5f8f5779ebd972665ff7a4e1a454b940610305a867dd28ff61df8124e234dc9", + "research/complex-k492-owner-repair/data/search/LP-PATTERNS-AGG.json": "7e8f162a5d949cb1461c8c3b3bfa0a160b42c27a03bfeb6f09b9aa3c116aa953", + "research/complex-k492-owner-repair/data/search/LP-PATTERNS-EX.json": "1d345febd910eeedaa2dbde4d5856d4a3fe8825a16748374ba76655ff6cb6fdb", + "research/complex-k492-owner-repair/data/search/TEMPLATE-PLAN.json": "1879679a44b373006907cbca8261a9cd187c7b868472afab04e002bf95331d9e", + "research/complex-k492-owner-repair/extras/check_declarations.py": "34122816e616e4de6a0524f7feef9a3ece4be1f9d07e477f319404e08374216d", + "research/complex-k492-owner-repair/extras/check_owner_map.py": "d240458ad39a08c242d136c0f1edbda0cb0b93977897f6543c9f430576c9c7dd", + "research/complex-k492-owner-repair/extras/exact_intervals.py": "aa3c2327c5d3742248b720a87b2de0bbe2e34ed2af89a578e3c8d5bd2656a9cf", + "research/complex-k492-owner-repair/vendor/direct_delivery/MANIFEST.json": "c1997405c5c0ccd9bdb0a30b0eb9a5a2dc7dc7ce7b59c6a83a2152b80f6410d1", + "research/complex-k492-owner-repair/vendor/direct_delivery/code/construct_504.py": "a0d96ede40b957c38dcb64296d5f4a76c23dfb8c8875e01a80b5f1bdf6e8360e", + "research/complex-k492-owner-repair/vendor/direct_delivery/inputs/hamming/PACKET-PROGRAMS.json.gz": "d833ae0390d165d7da0c639a3c7aeb77156c2ddb52447087cb49b9d03b19e9b9", + "research/complex-k492-owner-repair/vendor/direct_delivery/inputs/hamming/PROTOTYPE.json": "327d2a868043e846381aa58a33053c24425e8cad522ff401b10ec8af1d649a3f", + "research/complex-k492-owner-repair/vendor/frame_coalescing/MANIFEST.json": "f336fd702c54422d79c1b9ba7d8699ae6c99518f66a5b5bbc5f3be331fa1fadd", + "research/complex-k492-owner-repair/vendor/frame_coalescing/NOTICE.md": "2285f8489d1588ea4deaf07a1ceb36fdc56dde5cecf228b82438284aea072050", + "research/complex-k492-owner-repair/vendor/frame_coalescing/README.md": "32b64f7638e6cb9bcd1d0e41779808ac1d5d6897152a00194e82e8c3754fd7b0", + "research/complex-k492-owner-repair/vendor/frame_coalescing/code/build_frames.py": "59f486c52293c76f1f6140c5f12f7a555a956b455e853c79136fc227deefbc3d", + "research/complex-k492-owner-repair/vendor/joint_prefix/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-k492-owner-repair/vendor/joint_prefix/MANIFEST.json": "fd30701bd9bd652985db18fa95bee08a34615ef417a2feb2f55efd60a0b5d665", + "research/complex-k492-owner-repair/vendor/joint_prefix/NOTICE.md": "ba2267f17bb2cad9dc706565c359fec98d6ec0feb3b32dcfb8c3277c59cbf8fe", + "research/complex-k492-owner-repair/vendor/joint_prefix/README.md": "1b2679bed02b9563e6f3a9951eef2cc5057444a78bf4aa7ab89d1ad83330e3e4", + "research/complex-k492-owner-repair/vendor/joint_prefix/SOURCE-PINS.json": "240e8ee75336e921663a0057f450b346bac305d2af4ffacef68dec1798d9bb85", + "research/complex-k492-owner-repair/vendor/joint_prefix/code/audit_joint_prefix.py": "c01836709f3650a39c46418ac1771980b4b96288e60b51032b5d31419e484c37", + "research/complex-k492-owner-repair/vendor/joint_prefix/code/audit_multicold_controls.py": "3ff631f0bdc7e707d4296ff441802cc26da9c6556650469f09ab7253558b4017", + "research/complex-k492-owner-repair/vendor/joint_prefix/code/build_joint_prefix.py": "d7804669e528b6fd8d80195a4a2e76efac9bc67440b82c73973f4bc9fe273783", + "research/complex-k492-owner-repair/vendor/joint_prefix/data/EIGHTCOLD-JOINT-KERNELS.json": "0381935d8d162eb48044bdf7e36a42af761f6d4032509b9b397ca02d3134f585", + "research/complex-k492-owner-repair/vendor/joint_prefix/data/JOINT-PREFIX.json": "0fddbd3f482b72a5197eacd75abe192e1d92f83aa2cde33a76dbc7be1682bcf2", + "research/complex-k492-owner-repair/vendor/larger_gain/MANIFEST.json": "54d67f45ad520f4a134e069336bd0ff639aaeada28d13539298e4f2655c9692d", + "research/complex-k492-owner-repair/vendor/larger_gain/README.md": "545f0138139ec1c5410128678818dfb13fbf374d4063de4f425f11e6a1b74eca", + "research/complex-k492-owner-repair/vendor/larger_gain/providers/build_entrance_promotions.py": "50737e20553b5d44381c58e5b35b5031a6797dfdda1c67a1656069f1f6203cd2", + "research/complex-k492-owner-repair/vendor/larger_gain/providers/coupled_frames_base.py": "b6033cd2959297a624b557f3d04665c8fbb680a4c0987daf0704ef93711700bd", + "research/complex-k492-owner-repair/vendor/larger_gain/providers/search_suffix_kernels.py": "0523c90f036ff01cac9299fe4e47dc40dd04f264f09415985d2c98b4da43371c", + "research/complex-k492-owner-repair/vendor/multicold/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-k492-owner-repair/vendor/multicold/MANIFEST.json": "328ce8023d33deb308b0f1ae2320424050f836d791cf60a613ae8408e7d6f3ab", + "research/complex-k492-owner-repair/vendor/multicold/NOTICE.md": "d14c070a8e237cb1912e413ce22e98eb41f164b769ebaa97224c121fcc5a0fc5", + "research/complex-k492-owner-repair/vendor/multicold/README.md": "638428654d34f0b72ed4b5fda948c91d01e57f8015813c6d8ab01c06c1da5322", + "research/complex-k492-owner-repair/vendor/multicold/SOURCE-PINS.json": "503764cd70c99a9652ec51a533c31ad7f2a615e6c230156d785daff2835cf028", + "research/complex-k492-owner-repair/vendor/multicold/code/assemble.py": "3fedbccb09d469f8ee366b4302e51448de6d25793a78a12c5f9a8d9667a755eb", + "research/complex-k492-owner-repair/vendor/multicold/code/assembly_controls.py": "a0f2349ba8fe8404b8b76c869f12dd7e250a775b2e05b3c9c00e6889ad4c8a45", + "research/complex-k492-owner-repair/vendor/multicold/code/audit_allcold.py": "7950e5c01488a9146bdbaf19ab4fd0c33cd25a4d63fb56ef995ef2e45ac7ec1a", + "research/complex-k492-owner-repair/vendor/multicold/code/audit_kernel_controls.py": "5100459211f43ba048bf82c3942bbedb8b224272b24722a14f0dcd808a38aafa", + "research/complex-k492-owner-repair/vendor/multicold/code/audit_multicold_controls.py": "3ff631f0bdc7e707d4296ff441802cc26da9c6556650469f09ab7253558b4017", + "research/complex-k492-owner-repair/vendor/multicold/code/bind_providers_portable.py": "01e62fee1f1dcf1b7b34338d555dacd5cd1d7d10d6b9a605d0913d959f8c7ecf", + "research/complex-k492-owner-repair/vendor/multicold/code/build_cold_kernel.py": "aa556a1988f7d4c52bd82fd2a648769f7094bd75ba79582c15ec441d710e213b", + "research/complex-k492-owner-repair/vendor/multicold/code/build_four_portable.py": "417b1dc4dca485dfbbaa820e552cae9bf3932bbace6ea16ce93aa0590c3c184e", + "research/complex-k492-owner-repair/vendor/multicold/code/build_multicut_kernels.py": "6ab3d73f81d5b2fb884a93a336ef1940e118d419d425b3356bab3b97f774c9aa", + "research/complex-k492-owner-repair/vendor/multicold/code/emit_allcold.py": "9d6c75af63fa8f53973734ccb1eef983511f4337ce644436a693fd8fb9ef8fe2", + "research/complex-k492-owner-repair/vendor/multicold/code/invoice_allcold.py": "ff8fee775ad97926454f3ad1183f8e05de654e276150e579ce612f3eb2f98d44", + "research/complex-k492-owner-repair/vendor/multicold/code/phase_timing_controls.py": "dcc4adfd139d6f65a88bdc6d183ea3777d4e4f688d2169dd41b54964f05591bb", + "research/complex-k492-owner-repair/vendor/multicold/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/data/EIGHT-COLD.json": "089617bdc33fd9f27b7fc8e9ae9e01c8e65a86a57c4b6f180f4f378f3f0e6160", + "research/complex-k492-owner-repair/vendor/multicold/data/EIGHT-MULTICOLD.json": "d18ea59995d384833c95a7a55d8167f83439b6881a524ab03df972ede3e0d7b9", + "research/complex-k492-owner-repair/vendor/multicold/data/FOUR-COLD.json": "643e07c25dac93ce1fe67532e377f9f1cf8c7bb83835abb3fad63c9c51514736", + "research/complex-k492-owner-repair/vendor/multicold/data/FOUR-MULTICOLD.json": "c1b42d7bacf9f31ab35294f7b8430a1164d6bc169a3d68fe2b3ea39cf791b323", + "research/complex-k492-owner-repair/vendor/multicold/data/FROZEN-FOUR-PROMOTION.json": "90417f8d54ea9272bb5041ed9144a58dcbc194a22dd0845e7de89d4b717f1b74", + "research/complex-k492-owner-repair/vendor/multicold/data/OWNERS.json.gz": "93349ec85f21811b5b247980f9fc4d8161100d5ee37bce7fda5ef65d0370240b", + "research/complex-k492-owner-repair/vendor/multicold/data/PLAN.json": "35a95fd9b5e46fdaf8a3929d516fa8c14dd4e3bd9a20eb546e0541a8ef85ff51", + "research/complex-k492-owner-repair/vendor/multicold/data/ZERO-COLD.json": "ea1cda1578464399077bb96e5c3c3d01e88ba5eeaa6c22d3b66ef4380bc3b820", + "research/complex-k492-owner-repair/vendor/multicold/data/ZERO-MULTICOLD.json": "cc09fab61aab468200d72f833ffb9e6572580d54da57bab02c5d63e3b280af1a", + "research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-k492-owner-repair/vendor/multicold/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-k492-owner-repair/vendor/multicold/proof/CONSTRUCTION.md": "27ece5e1c11b90d97a808b56eff897b998c10e61016db95867f84e6e6aef132f", + "research/complex-k492-owner-repair/vendor/multicold/proof/EXPLORATORY-EXACT-FRONTIER.json": "55050dbdc1ffa18b3cc1f9b8b94f7de7a04a39f65efbbb890de2e73db837ee38", + "research/complex-k492-owner-repair/vendor/multicold/proof/EXPLORATORY-OWNER-RECEIPT.json": "cf9992773c9ae4523dbc7f71753d7ecfa515618d7c2ab414b60d53887f518a30", + "research/complex-k492-owner-repair/vendor/multicold/proof/EXPLORATORY-PROVIDERS.json": "59196e2c93f4fb8fdbe74bd16d60242a3534eb5bb8c810fc29635ab0e65bd08f", + "research/complex-k492-owner-repair/vendor/multicold/proof/PR561-NOTICE.md": "180802791d3547d511a7af8bc4f800640abd72636d50631d2e61b35cfa17627d", + "research/complex-k492-owner-repair/vendor/multicold/proof/PR562-NATIVE-TRANSFER.txt": "f4ceeb2a412c9ec3f3bc06a78cf865e5fdb7c1080421ec5285ba02d04418eb37", + "research/complex-k492-owner-repair/vendor/multicold/proof/PR562-NOTICE.md": "a427502077fceaaffc7d44bb8520562160d0d76e4cb08c2b10337e62d8987fae", + "research/complex-k492-owner-repair/vendor/multicold/proof/PROOF-ALLCOLD-NATIVE.txt": "ca7a8b3f3fa6d3610ef9518c71d5186427ccf2b2bdf3511be84a6b2d7bbb1e25", + "research/complex-k492-owner-repair/vendor/multicold/proof/PROOF-REVIEW.txt": "0a807ea2c5fec29cbf994f94bd5a388914fb31de02dba03d18265040044c0dc6", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/MANIFEST.json": "f28c04eecbea7599fa9e0867dd8d0311a463af12cab79f90a43733b162527164", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/NOTICE.md": "fa76079e2566b8d644c4aa36cb1034aa2363d2e97978b26203f122d826918fce", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/README.md": "02181c5ff31cd1c2899608e5ab598b405df92ad5814df35f329d117956f7ee10", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/SOURCE-PINS.json": "b09437400a7f6f0dc86eee0f800aae91cd35a7e5e80eb3d348f87113a0bd0d76", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/assemble.py": "5d4946dcad7636bf2119bb7bc3a52ceb41454c1514d12cb77def2c2e02b17338", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/assembly_controls.py": "f3d703a63404bd655e66a520b3840a4ab72529751664eb634a52736b4bc95a29", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/audit_promoted_scalar.py": "1994e7116065636b53bf740000ff78dce8ea62390e597d293d183f33c67eaa6d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/phases_full.py": "a273c325ffd6793d5b63b79a289a9d2bbc9292e6940fb5a926924f3708627af4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/promote.py": "b69a27d53ec3f64ccbdbbd79f9632419f273b3eb4429f6cdec1315fd8798750c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/reconstruct.py": "e56d57d39cf787b8325de5a97dbc283f89d51c24169efae9ad2227277a6f8243", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/data/OWNERS.json.gz": "c72892f5b3b36e75ec4db7742b046bd9194f638ff32be9cc8843914af950e6dc", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/data/PLAN.json": "8e64bb8a1a8f87998479316f4111801cb3eb1e64f898b7e577eebd72a460f844", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/data/PROMOTION.json": "9ad34faa8611a6ea7f161d2e1fe331ab1ba5ccec8fca3978e31c3e7bf789bc31", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/proof/ASSEMBLY-PROVENANCE.json": "cf1710faaf5d4aa32e6a8a24b0087cdc24e5b680d974e5dd4e0cb4ef4787e395", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/proof/CONSTRUCTION.md": "9b0617dee9c044488b2f72b50059dd8d768f6ee0a29c35fe2cfdde85d25cdbd1", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/proof/EXPLORATORY-SCALAR-8-CONTROLS.json": "c0465364067e6392fa0d7e4cd0481a82afebe3e271b486a4984e7b2826025146", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/proof/RANK5-CAPS.json": "461ebc6c8816a0132c89a54c2ae56b07f31500bcb2c2bebfce783eb41bc29441", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/EXPECTED.json": "00c462828be76f6d65c1311ad9ef102f18f088029e039cffa599eaeb41668fb6", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/MANIFEST.json": "b0f5773b3ffa2c5305dade20ce6159cb8b5961285d2f7bc767c6353838bac4d3", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/README.md": "79cc63fc45ea52c04f32555676704a1664a3eafdd917b25689b1acd390a4636d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/code/alien-avalanche80.cpp": "0215152bd3ddf0282c8088843c4e8a89e821e747f884e03100fe79238b3061db", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/code/alien-flags.cpp": "0bd6ac192357ca71f6b84baf50efdc43fccc8394296c35a298b35306db7d88a3", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/code/assemble.py": "bf878beb64edc6bae4c321d7c964088c4d9aa0ae477597ac1adbe2b1078e3904", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/code/build_wave.py": "249669d046db49011b84345a14ec05a93270829e5e21f6046576972038da377e", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/README.md": "bd82df5b39c6ff26b93f41ad76471ac50131050a3cc0f84dbc6c57703a721353", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/RESOURCE-TRANSFERS.md": "6fd2bc82714060290f29b218c235c171395cf9be99bea01f8a7fa770dadd68c7", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SAT-OWNERS.json.gz": "b5a5339dd37d90a0adf40d90d6aed52aec2f94073a3b27763575eb069f85a903", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SAT534-PLAN.json": "221a38f18504e00da31a72a7b3a3f0d248e8f886d2b8fa7cae2d73e7ec86905e", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SCREEN-RECEIPT.json": "ed60f7e6b0b86f4401ada159c0d37ee283836a0b5d1967f7b0a236685f64daa3", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SOURCE-TRANSFERS.json": "e49fbbaa4533b6f15b56098c9d16ea3e1bc0cc98b19a2e990c51baad047e7839", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SOURCES.json": "85448ef4fb1d124ef8bd2f0b14451ef522465b14510bba4e53fdd24da0968643", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/TWO-RESOURCE-TECHNIQUES.md": "8cc6b582680ae8565444abc01f1dba729c94a827f1f8e89192190229e52183f4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/WAVE-MAJORISATION.json": "c445afc50e594c46932d8d799b446edc22717e664d828d4afd7810c643576475", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/replay.py": "2e1f11b5702b831622cea8b386bb82043ef9e58b2a0aab56b09c00f30ac73046", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/run_complex44.py": "5533e9e29c66b11f8feb22a2d3d37551787200ea69eb3d04a984c0b1d22c49bc", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/NOTICE.md": "b47da4b840ca9c8d1e2816359a603304ebd7ca442c82b94c049b00f142643f73", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/SOURCES.json": "c265f58b1ab29f9b662e9c5f943147ccc0527fb1f4803b06b48f71d96fa9bc60", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/adapters_local.py": "4e89a5c517cd87ff6a5aa9b7334c0d74821179ae5777d31284da25b9d8abf113", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/audit_and_transport.py": "a4fc272266785e1fffd44775c6fa6df783c4352de4c3f1d925cf953a23b84e7f", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/audit_local.py": "69b12c45d0a961175a824c1967353c7f3b94818a7dd6ac7bbcf56a6d1a5ed8e8", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/audit_supplier_hosted.py": "301e9b5c593b6d583065337eb7b3ef207cf039e265f099f89080a4bf25856b43", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/emit_local.py": "eefc76e0bee003015fe21ac685c2cce658033d5444add404d2d509c7d6f39bac", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/emit_supplier_hosted.py": "53c0b653b3a5100756d6a9473c90101b8c3ab72723d7047983906ab997bdf920", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/invoice_final.py": "96b6bed96ca8b60dfc064cd1c7962c45a5cb53c4e52cd90aaea6ccf8d109db97", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/phases_delta.py": "15723107eff03013b2e797fd9fa3635b1b46c5d1c8112d19fada98c178d4acb6", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/prepare_supplier_base.py": "f5eae94aca965d0008bc07cff8245ccb7509042ccad457d3bcb7d51c1e9409f0", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/audit/PREFIX-AND-INVOICE.json": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/local/CANONICAL-WORD.json.gz": "de2be0f4b6d24ace368fd5b834b7a00f9625d0a1824c4ff969f2db5f115db667", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/PR523-ANCESTRY.json": "76025ad06d8ac96fc6693092d674729fea2f04b9c1c89ec50dba7488b8e6657a", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/data-base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/data-base/work/pr361/code/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/data-base/work/pr361/code/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/data-base/work/pr361/code/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/vendor/clifford/clifford_exact.py": "2982ead07721e83358dc67c6f49c2b4c16a236a6bebdfd72f58221be1f5d0962", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/NOTICE.md": "1547136e6d269fdcef2b68c10a97a786a79a4732a12738363f679bfb282430cd", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/code/assemble_combined.py": "41216e8da3b647fe6eead9079858f25b2592cab090154aca43f3cc73ff36dc9b", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/inputs/PR510-EXPECTED.json": "19b861f69f7602e47b390d472b487d044bff4230b250520807537c213ad0249f", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/inputs/ROUND20-PARENT-TEMPLATE.json.gz": "025448abdf2012d327e50a009084e1501690d05e650300d2982836aa0350ae00", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/README.md": "f69ac71a8df62a5d0bf7ed45ad16642e1102faa9e7b95c03f08cdf264a608948", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/SOURCE-MANIFEST.json": "b91c0d923affac87ce0bad7083d4640758930f82628f042bed7aaccf528973cc", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/code/apply_syndrome.py": "496a91b9da15ef56e6df28a0459ca8318a4575441c7921e113bf636f31e3c5d8", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/code/port_frames.py": "8d25abc9c45c58a5b893e67f9abec3a660e8d7f743e86959f2d2fd62037e23d1", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/docs/OPENAI-SOURCES.json": "1a9c08d0c0190f0280c02e74c8a144f802efe2d7d8eb3a0b50b181d6dca686cd", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/docs/SEARCH-RECORD.md": "7b09479215c407e4258ef6af64c34dc865e3b9a60c845040258413a2a960f5b8", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/docs/TWO-SOURCE-PROOF.md": "4d6423f773ec47d2eea984e02f11f2d636e02ad3e6f3eb3e640a3768fa04fe75", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/PR534-WORD.json.gz": "a275792cb9f5729fac295cb04c556afbaa4513945c517190219fd0e44ab90095", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz": "e070ae2c78b4a1b644b418774af62b40d8d16e6ba89602f0474afb557d507c37", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/phase-baseline/CLIFFORD-RECIPES.json": "577a1be13f5140d9c3997637784b2f812f46b24c61877699430b02de4f662102", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/phase-baseline/CLIFFORD-REVIEW.json": "cd48fe6882a39c57021c4614747cc5c2c88ec07e806cebb914cf533997b73d9b", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/run_local.py": "8326e67400e5ff87580e93e4518efe397f1b29fffbb6d757a37e5f97c14c3695", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/META-SOURCES.json": "c8aeb9313f2c671a9a8766c249ceb6cffa106dfdab3ab761da8e8c534b115090", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/NOTICE-upstream.md": "1547136e6d269fdcef2b68c10a97a786a79a4732a12738363f679bfb282430cd", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/PROOF.md": "abfa6548b223893866094631aed61174575dc1b17bdd60627b2c55e6b9477e4f", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/README.md": "51d6ef7ad3e12e72daf29e0260a11cd985a0148fe1efa0574a533dae726c553c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/RECIPE.json": "8735ac9beadff3edcb4a4df8dae174415e0f83d9b4df8556c33ba7fd777505fa", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/SOURCE-MANIFEST.json": "4f5d92b4cd76eff0845a9f14d33131441535a232b5c91f00535aa076d44c45a8", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/audit_scalar.py": "a1cd720d281c7a9db7f17919c637cdcb8558e9f3c96e929706f0c21f317a7943", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/build.py": "b15192ff50fd99f5ca3cb5857b5e129c98a212de60ae76aafb1614139743c35a", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/gk/gk_common.py": "e68d190fd436b2f3955decb590adb53344d5d4ea0a19d62d86df1e4b55ecd198", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/gk/gk_word.py": "f027a9273bcf4e0971258c160b7d3b3c196366b32a529cff6e6a0e666b03826b", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/inputs/BASE535.json.gz": "edfffb8e8735e0d1f07c81d818022b705ef0889c2bccc193a2f7a661b9f7d390", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/inputs/OLD-RECIPE.json": "7e5c179246261edd9e1019e81e6e979537f02559da773b993a318f771cb7d763", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/inputs/RAW504.json.gz": "1c6144791dbedf6427e3ee7b4c24fb05b5bf407f6346592f50f8dd8d9638108d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/replay.py": "fd1ce7d1f8974b473aef8c6cec1e0c590e01d0d215b073e5573a771ce42fc74d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/DAG-STRUCTURES.json": "5461d7832386b2f7f3234b6786e148a7c49461d8527be5e76c8fe977783d9053", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-AVALANCHE-INDEPENDENT-REVIEW.json": "f084eaa33ea10fb0fe4d575f2abd503ad5dbdb2c03d2c8b6dd62fc5f387ae31c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-CODIM2.json": "2422fa6db50ca4b2e8226113aa30d608e7c6525990eb1faf370f9fee7718e698", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-ELIMINATION-AND-PATH-TRANSFER.md": "481001470bd22345a0baf652261351e015a2634b2572b0d4f78fa9e147edd0f9", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-SCREEN-REVIEW.json": "555024b7a90f8dbbb3f13623d504d36b3bc92dcf118f6f9ecaeff285ee13f2e5", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-SOURCES.json": "69a578efa22c12688ef442498f8b1d901c7056f5f1948ac921e1dca0d2be305b", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/FRAME-SOURCES.json": "e01063a60b24b3b21f9c1d472d890bb387e61d66ab8847cbdab4b92f06e0f91d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/FRAME-TRANSFERS.md": "1756461714ea55bd748d7245af14adf0a6a4e13a9bb7f498a381ec4282a30387", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/PR-LINEAGE.md": "2ec1c9b1f25e2f3d2556bee7369069ec2340cf126b54fa112e0bff9e269ef0e0", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/PUBLIC-PINS.json": "273e48abf63a49123f11fb4e56f000c648aaa6d17987378b413469a5976e5ebd", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/evidence/COMPLEX-INVOICE.json": "a21fd7e02d3001b1e8065e9eb6084d80e1f64c44035733ed1115a38675a01fd0", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/evidence/EXACT-ASSEMBLY.json": "4e7e5831683a1af861580a96db1fd717dc2a6fd01a29b220223868fb57d46e83", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/evidence/FINAL-RESOURCE.json": "b1463e5f7fe3663080e6021fea5424375538fabef942c7560cfed610f4242ef7", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/evidence/WAVE-REVIEW.json": "ef97172e5020ce4158f7c8144a0b0b3d16b94d7c0415e2d33a81f02353d3d506", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/inputs/WAVES.json": "262d0fccc6e8ffb1198436034a26c467ad28b3251823ac25c966f773afc3c3cf", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/COSET-PATH-APPLICATION.md": "56eba06ba109c39ab9ce9eb9769c724f532c06d8ffbb2b53706b8294cb4f9711", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/COSET-PATH-REVIEW.json": "39e813d3c0f48a1a6317edac9ffb9ba5b534a62948708595e43fc2e790eda168", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/COSET-SOURCE-BINDING.json": "b7531fb284ee11e16b875d5f82237e025cfcd95593f3e3eca23cb5d3249eedf2", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/audit_coset_paths.cpp": "47999863b7c5037754bf73cc94757095f45f6da510d7ce96fb7699e9188d89f2", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/coset-path-input.txt": "779b497d52b6896a04f41d6c55424e65030a939945ca80858c369a3a3320a341", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/export_coset_paths.py": "f36c06ecff72e4a2fd83ed44467d528c976d52da3d5bd6e8043084b1568a7fd9", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/CROSS-FIELD-PROOFS.md": "3d0a1b9ac989283400e7c1e3a025080a8f6837755baccdd55f5e51599ac0921e", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/README.md": "cfd349a83f5ab3d5bb4268ef93b46b1e4542038fb76fe5e7123b8e5fae977de1", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/SOURCE-MANIFEST.json": "946e3fb8bbd4efbc771dda183de01a2bd9bc5aacc28dbb86a88edcdec960af2a", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/SOURCES.json": "905c5860d9c920e41138e582c03010b2b03ee8bf071983ad737d2e57868f6857", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/WEIGHTED-COSET-SELECTION.json": "87c15240aaf48810d103ab3234689bb3ad58024d1b1c0b9106719fc18c5d1945", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/build_weighted_coset.py": "5face855c7e4fb8b6b3954bb20f6c0a662550ca7c6263a1a73c40c857816dd6c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/verify.py": "eb4bb8d1c6eaf5327c7d13fc20ebcf2ae2ecebff5b008d44fc1713a7b162084d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/verify.py": "66a20adaaac6850d3c8649f7ccc959cae19ba5bb17ee88a2b41fb1ceff68e431", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/EXPECTED.json": "a79dc7eec1301a69560a2e7fd6ed69634463272696ee96f09e15db1aad8ab0b0", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/EXPECTED558.json": "1e922eef350748956f4cd785d7fc5f73297b0ed6f53b130aca2da29d26777c34", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/MANIFEST.json": "32d31fe49c9a4977b1fe83c72320940bff2dececbd8313787fbd81e188b5166a", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/NOTICE.md": "02e74770785e31234d863b36ad2291e04267eaf32a4ba82f67cb1c804da1de44", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/PROOF-REVIEW-STATUS.json": "f54fcf048c5e24f5d3ccf308259b4b1b291b736e014fee81b4518980d358786c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/PROOF.md": "d5d498edc56fdef8c5798af7f5ec66948bd2f66c553b9efe366cdaab01bd3453", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/README.md": "74f5cd377861bdff57a2825b19ac6c2b0bb6aa62f3b0354c7ceec0a76866c61c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/REVIEW.json": "518fd773b1287c9be19563316f55acfa443667946d1f5bc7cc7b884bb9005094", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/SOURCES.json": "32e1466dd29be472e63e11e8ad76b228c0a1e3ec33596ce4319a64b89bd6d912", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-INDEPENDENT-REPLAY.json": "6db0dfeedce73cf9a6eb31bea0a499f06dc4961da40a60d91059bb9ab48fd73c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-PUBLISHED-INVOICE.json": "a21fd7e02d3001b1e8065e9eb6084d80e1f64c44035733ed1115a38675a01fd0", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-packaged311.json": "8a06db71ab002a9e080f0d60d22ee32a3a6a848a0cc633f37fc8fde22d21694b", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-packaged314.json": "53142566b590fdde9258e36e6fe62991c2f39331fc2822bf0105f812e52d6aa6", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-regression-final.json": "0c8bb51c2234a3190fab3e0e33187dee1bd4f2aab32483a69452366abb3b2567", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-COMPILER-LINEAGE.json": "db1e3390ade85f2299fc1ff0652e12fe1384c35bdcaf5c49e5403e4eb6b255b9", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-INDEPENDENT-RECEIPT.json": "c121cb83baeeb950a42eac4bec73676119dd836386b822e03bf7820fa1bf5262", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-INDEPENDENT-REPLAY.json": "b32113b56745cd5c142c982426ce31f0fe8d4f1a4ba219541e8c8befc69f017c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-packaged311.json": "fed5ee89ea9f6b3c3ffb150898fc95f9a057a0c598b18de6df59e66908342b2e", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-packaged314.json": "71251eee88024f14982a4e7328377f50eb9d04314f692b891b53b5911498e3c2", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR552-EXACT-ASSEMBLY.json": "c7495a6787f48a9c5184a00daa841f4a972e37c580c6ff3dacc07bd947914f99", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR552-EXPECTED.json": "00c462828be76f6d65c1311ad9ef102f18f088029e039cffa599eaeb41668fb6", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR552-INVOICE.json": "4ac060dbf2ea2624dd1f4bda23bdb81c0a3013dfe49b77c092b631885529947f", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR552-OWNERS.json": "ecac65c65418641abf598db74d588ba8f53b3f358505bd31e215f09562922e3f", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-BASELINE-ASSEMBLY.json": "9f5e050486c3c337793d09e4ce96769336a3653de0a3a84a77c39431cf062f16", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-EXPECTED.json": "6c16d41d9c10bc04c65b548ff34422ee2d90d63c37e9bdea4adbdf06fa959f44", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-INVOICE.json": "4b6977a049663ab958bd9a48c2864f7a7bddb26aef03e14f3068aede020ef76f", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-OWNERS.json": "0bcaa62bf4723672113f2acdc3ae30c6faa18e5aefa3992e0ec7dc46b9cdd552", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-RESULT.json": "81618cefc1df42f827d0a7da838b13b9167d3500ca5cd598963c3e09e62ceb4e", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/UPSTREAM-LINEAGE.md": "2ec1c9b1f25e2f3d2556bee7369069ec2340cf126b54fa112e0bff9e269ef0e0", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/notes/general-clifford-frames.tex": "c9bb9655b594583c6b4bab8cb485233f1d1e588f83858cf1e4c3530cee8fed54", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/notes/three-stage-cover-assembly.tex": "ccf34a6d37c4af14bebeab15be50ab204eb1caebe546385520050ec30089441d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/notes/three-stage-cover-bit.tex": "47123a756f823c83a0d48cca2bf5add6472cd88410b13aed345e70c8834fb511", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/notes/three-stage-cover-complex.tex": "1c5b638aa9b75365b8addec9c8eeee6bc5e499722901079b94c65fce033fde8a", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/verify.py": "6b444c686891b20b3a92385d025818fc86d9a6ddd2f77504d9223afaa47acd21", + "research/complex-k492-owner-repair/vendor/multicold/verify.py": "1a0e92f610f96a5e642310a2823b152cf573c0d1630b9c174fcc8388d1ffd2a2", + "research/complex-k492-owner-repair/vendor/structural_gain/MANIFEST.json": "eb0499a927665a48a25355075dcb7dc76d0fc43c67ea6d311d9e0242b6d4a25d", + "research/complex-k492-owner-repair/vendor/structural_gain/README.md": "b9132c6bfa65a6a1187ace1f42b938dfeb1d1c7544bdb4c56b0a47409e2822d2", + "research/complex-k492-owner-repair/vendor/structural_gain/frontier-composition/combined-prefix-word/FULL-WORD.json.gz": "a6cd88224427bad6d00b6fbe1d201a2c09e496c90e2cecdc04d7f2ff11a4ba42", + "research/complex-k492-owner-repair/verify.py": "dc069c48d1dce31fef2e567fa3ed81780bf07e00b39ac1a0761536e4a5c0b377", + "research/complex-k492-owner-repair/verify.sh": "7fa796bba785a108b681c7c558974c61d5900fbb5e41f2853053faedfb9d3f1f", + "research/complex-sw4-frame8/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/MANIFEST.json": "b9b39c206fcd2613382b0dcbda23a371e8781d1bedaf8e2f8e7df1e79dc1fa89", + "research/complex-sw4-frame8/NOTICE.md": "61b1e1d42b9e589979091cb2d44af2f4e1d9f71075b7bfc9dd7b5b9fb68c2aa5", + "research/complex-sw4-frame8/PROOF.md": "21d8ef267f9ee4c837bcbab0f659e5a8bbf16e0ee1e79e7775342d39c8c8dd7b", + "research/complex-sw4-frame8/PROVENANCE.md": "c7648719b01dd93af2c3a2c6e951a54711d13892dc4bd4339d16edb4c37c9bf0", + "research/complex-sw4-frame8/README.md": "9ae02da50779761637e34b6bc16556de82e97610a339ee9be0eb2e886cf842e9", + "research/complex-sw4-frame8/UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "research/complex-sw4-frame8/code/assemble.py": "bb32035aefe575da3335da4e907553e2e6fdca0a0f997db569cab651c2ddb008", + "research/complex-sw4-frame8/code/assembly_controls.py": "e4c0f7828af64fdaef1896e4448d0212bd3041805097140b8cfafd098f8a6162", + "research/complex-sw4-frame8/code/audit_allcold.py": "a87d7f4844ca963516637d249b14a0654f67f8047b6b265ae25b0cf30963e503", + "research/complex-sw4-frame8/code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "research/complex-sw4-frame8/code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "research/complex-sw4-frame8/code/emit_allcold.py": "17c110c7c8d219e79e7dce36b19c4781e7effa800086cec03384387ad9acc7aa", + "research/complex-sw4-frame8/code/freeze_spec.py": "f96c2b9cd886596bc7ab267f77abe9d16b6cbb5a724a5ad0a1d18d540369ed93", + "research/complex-sw4-frame8/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/complex-sw4-frame8/code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "research/complex-sw4-frame8/code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "research/complex-sw4-frame8/code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "research/complex-sw4-frame8/code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "research/complex-sw4-frame8/comparison/GEOMETRY.json": "2fbd5e24c217cc322fdda14ece627589be1fd6831444838db58901462938c090", + "research/complex-sw4-frame8/comparison/PR699-SPEC.json": "56eb544289c8bc4314bf1bb6cc00883f132f5c46b92c61bcc84488943b48a615", + "research/complex-sw4-frame8/construction/COLD44-RECIPE.json.gz": "22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c", + "research/complex-sw4-frame8/construction/COMPLETION-PRIORITY.json": "0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47", + "research/complex-sw4-frame8/construction/INPUTS.json": "edd32ad9a55d3c508ca2ad90c74b5c87c7f7ca509d96b856a2176fa452780f99", + "research/complex-sw4-frame8/construction/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/construction/NOTICE.md": "defe7e44af610e25a6c50c1c3b2efd0972d0690574995c0c872fc50eebf4c816", + "research/complex-sw4-frame8/construction/REBUILD-CHECKS.json": "1f9d754c89cfed632a6eee919a42d00c6677a8fb4fe1d40615c903242addbc91", + "research/complex-sw4-frame8/construction/UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "research/complex-sw4-frame8/construction/build_gauge_cold44.py": "ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb", + "research/complex-sw4-frame8/construction/construct_gauge_xcentre.py": "d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217", + "research/complex-sw4-frame8/construction/layers/build_pivot_swap.py": "8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8", + "research/complex-sw4-frame8/construction/layers/layer_end_controls.py": "7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef", + "research/complex-sw4-frame8/construction/layers/reproduce_layers.py": "435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e", + "research/complex-sw4-frame8/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz": "3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0", + "research/complex-sw4-frame8/construction/layers_np/HPE-RECIPE-NP.json": "43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1", + "research/complex-sw4-frame8/construction/layers_np/PIVOT-SWAP-NP.json": "d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5", + "research/complex-sw4-frame8/construction/layers_np/reproduce_np.py": "1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c", + "research/complex-sw4-frame8/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz": "17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4", + "research/complex-sw4-frame8/construction/layers_p6n/P6N-SPEC.json": "132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1", + "research/complex-sw4-frame8/construction/layers_p6n/layer_end_controls.py": "fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e", + "research/complex-sw4-frame8/construction/layers_p6n/reproduce_p6n.py": "aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca", + "research/complex-sw4-frame8/construction/notri/PRIO6.json": "de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15", + "research/complex-sw4-frame8/construction/notri/cgx.py": "3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418", + "research/complex-sw4-frame8/construction/notri/cold44x.py": "f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296", + "research/complex-sw4-frame8/construction/notri/port_stage_x.py": "38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7", + "research/complex-sw4-frame8/construction/notri/reproduce_notri.py": "90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8", + "research/complex-sw4-frame8/construction/promo/LOCAL-PINS-p6n-k4.json": "a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f", + "research/complex-sw4-frame8/construction/promo/PROMO-RECIPE-p6n-k4.json": "fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90", + "research/complex-sw4-frame8/construction/promo/build_promotion.py": "9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf", + "research/complex-sw4-frame8/construction/promo/make_recipe.py": "ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122", + "research/complex-sw4-frame8/construction/promo/promo_controls.py": "786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372", + "research/complex-sw4-frame8/construction/promo/reproduce_promo.py": "f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026", + "research/complex-sw4-frame8/construction/reproduce.py": "047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92", + "research/complex-sw4-frame8/construction/sw4/LOCAL-PINS-sw4-P6k4.json": "3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327", + "research/complex-sw4-frame8/construction/sw4/NOTES.md": "3a3ddb0c77b188e67fc453ccb3efe9323f87028092a6ce4d259b7dc99d702446", + "research/complex-sw4-frame8/construction/sw4/SW4-RECIPE-P6k4.json": "fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa", + "research/complex-sw4-frame8/construction/sw4/build_sw4.py": "9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66", + "research/complex-sw4-frame8/construction/sw4/reproduce_sw4.py": "3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac", + "research/complex-sw4-frame8/data/EXPECTED-IDLE.json": "2d382c518e56daf26a41e28dcd169f4e7d3ce64a67bc281b395ce367ffb06e86", + "research/complex-sw4-frame8/data/FRAME-RECIPE.json": "a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473", + "research/complex-sw4-frame8/data/FRONTIER.json": "70f211bb048cf19b7d50868fda830145d4073edb2eeedba89d77367129b3bb9f", + "research/complex-sw4-frame8/data/OWNER-CONSTRUCTION.json.gz": "bd3efa32765b30a2e18d113186d4ac94dfd3d080f6499731826f054246cd8f1e", + "research/complex-sw4-frame8/data/OWNERS.json.gz": "99d1c4caf85855c353d30f122d9efbd9e51562914facded13027f347b18a6082", + "research/complex-sw4-frame8/data/PLAN.json": "b94744674847a9f411a1072521754c605518971a6a96fead1eb3b479eb6455b2", + "research/complex-sw4-frame8/data/SPEC.json": "7fc2bd2e3c0ac13729c1fa1f0f327a4eb7c72373ba58e5ed3954b30e23c803be", + "research/complex-sw4-frame8/data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "research/complex-sw4-frame8/extras/build_frames.py": "a1e6530849499a812d4be2b920f4afe60e55c4a1ecc08f62849d2a3eae882019", + "research/complex-sw4-frame8/extras/check_owner_map.py": "6be8d8bc9ca09a195b25f3ccdfb9ada0d129d4cc7900ad5a26832dd8ae7809a4", + "research/complex-sw4-frame8/extras/exact_intervals.py": "aa3c2327c5d3742248b720a87b2de0bbe2e34ed2af89a578e3c8d5bd2656a9cf", + "research/complex-sw4-frame8/extras/frame_controls.py": "47d2f85df2317290687ee44eeb27526649d17a6cc2dba365695647a3cbc42a98", + "research/complex-sw4-frame8/extras/replay_owner_map.py": "8cab5bb2650e3caf1036aed0197663bf26b41c2fa645f732c3c7bfe3f1e2b481", + "research/complex-sw4-frame8/independent/README.md": "5d7bb5bde9710aa266a581b8d2938202b9302a05b47252faf8b1ca9a1e3bdd6a", + "research/complex-sw4-frame8/independent/audit_local.py": "03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd", + "research/complex-sw4-frame8/independent/price_profile.py": "d2f548ad6b99f64a8ca5fbaf822a89560bb99359957ce3420b497f6a46fc0acf", + "research/complex-sw4-frame8/inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/complex-sw4-frame8/local/build_cold_end.py": "864b4701dd73afd0c9d99761b7a749f3354c48985730f17054e18c052996a668", + "research/complex-sw4-frame8/local/cold_end_controls.py": "6f8cfe711aea1d688c255a1f1c158d94aab8ce4adaa526113d58ca58db87078c", + "research/complex-sw4-frame8/local/hpe_adapters_local.py": "eb0b5c6c7161e18dc22168da3211448d321586edd15bcfb4b4741174d36993cf", + "research/complex-sw4-frame8/local/hpe_audit_and_transport.py": "c9a05ff291016b870b4fc925b317abd9c3a604c73ffc8920dfdbbeb475e20aa3", + "research/complex-sw4-frame8/local/hpe_audit_local.py": "6bd9a1e279c9c9e4f3767d9f82e537b559292906feb2ddab02f380fb6523a810", + "research/complex-sw4-frame8/local/hpe_emit_local.py": "7e4a6fbc38c8228157b6311457d1496bf460291393043932d2c365f004f77805", + "research/complex-sw4-frame8/provenance/ADMISSION-DIFF.json": "a16ae3d0757c085212b83600163c9ca2304dbb4c86f489b654d95a66af75509d", + "research/complex-sw4-frame8/provenance/SOURCE-FILES.json": "065a87bcc51c0926666abe981c3a65ddb593fe1e6e315787927523683982dcdd", + "research/complex-sw4-frame8/provenance/upstream-gauge44/CONSTRUCTION.md": "7d96eb958a6b4274ea4c4c539b585f8ae2e89363b76aef930f90d2d513e164ea", + "research/complex-sw4-frame8/provenance/upstream-gauge44/NOTICE.md": "54305e39f346f658d49fe5a1e0938402ac0977a72f21c92557d887da592ec047", + "research/complex-sw4-frame8/provenance/upstream-gauge44/PROOF-NOTE-BIT.md": "1e2167a0cb69a7be7a5c98e6e5b270b4676d6c0ac209ff29e06e40507f2c9544", + "research/complex-sw4-frame8/provenance/upstream-gauge44/PROOF-NOTE-LAYERS.md": "92bb85b056803770882afa916277c5b49a7027159c113a106e7b2b33e57c097f", + "research/complex-sw4-frame8/provenance/upstream-gauge44/PROOF-NOTE-NOTRI.md": "774d1ff7b77844990da7bc1feff7f9ffff8b1f4f9b03232a620f1f9a29935414", + "research/complex-sw4-frame8/provenance/upstream-gauge44/PROOF-NOTE-PROMO.md": "58bc7e022950dde32252d8dd2cbc90bb44f9b7af1f03551a24d2d3a210e0d39b", + "research/complex-sw4-frame8/provenance/upstream-gauge44/README.md": "51416917014fa57205a86f03aba38619ac10d54f5a07e5015bf13e1c1fc9ae07", + "research/complex-sw4-frame8/provenance/upstream-independent/CENTRE-GUARD-REVIEW.md": "7b82518d7ddf042d6e71174bc286311fa72127e0dc6dc9e500025fcf7abbf897", + "research/complex-sw4-frame8/provenance/upstream-independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json": "9fb5265c4d2ddf3d615e46600954c79cd1a42481500a0973a5695fcb9f2558c9", + "research/complex-sw4-frame8/provenance/upstream-independent/GAUGE44-GLOBAL-GUARD-REVIEW.json": "631107a9a9acb02441ce80298f815e0c624f811b0d58c6fd78f8dc58d564bb5b", + "research/complex-sw4-frame8/provenance/upstream-independent/GAUGE44-INDEPENDENT-PRICE.json": "f5d1a19acc6cc5f6676f68ba60378b4a01841e54f015a8d6c18f7439093da268", + "research/complex-sw4-frame8/provenance/upstream-independent/README.md": "25668a62d8c91f6860f8412cf2fc750ba41bf1085dad3709ad5067c7956eac89", + "research/complex-sw4-frame8/provenance/upstream-independent/review_guards.py": "b83164d6c0122a055b3281f3381b305683a875760a2d727dd0188bb2aa59d67d", + "research/complex-sw4-frame8/provenance/upstream-pr699/CONSTRUCTION.md": "7d96eb958a6b4274ea4c4c539b585f8ae2e89363b76aef930f90d2d513e164ea", + "research/complex-sw4-frame8/provenance/upstream-pr699/NOTICE.md": "93f803ee9ae9d2f02801cf79335ff1731b71bd82b6b6d0bfc9a1130c1543b63c", + "research/complex-sw4-frame8/provenance/upstream-pr699/PROOF-NOTE-P6N.md": "cef8fad3d6644b4376ed15c4c5c46c68324009ab8f42d10bfa2da4b505b2c26d", + "research/complex-sw4-frame8/provenance/upstream-pr699/PROOF-NOTE-PROMO.md": "c170e5196d3081f86ac377c6fe614ca17f6281972837580275ce5af41cbc64ae", + "research/complex-sw4-frame8/provenance/upstream-pr699/PROOF-NOTE-SW4.md": "d7bb225f1a7f9fd363e819a67e92a5fe14c0942f6c3616d73609cc48042daf3d", + "research/complex-sw4-frame8/provenance/upstream-pr699/README.md": "f320dece84ea669dbe25f59ff14fa32b6c4d9c2cbddc0890a7fce9e5da16e2de", + "research/complex-sw4-frame8/provenance/upstream-pr699/SOURCES.json": "12eb983afb500a57c42e8f22f99d47453d39d1128a0b797e3d684fc7e544f5f5", + "research/complex-sw4-frame8/provenance/upstream-pr699/historical-FRONTIER.json": "56bed9070d5f0b7585d7b7fd62984696dbc5158e5187663030920a57e1cbfab2", + "research/complex-sw4-frame8/provenance/upstream-pr699/historical-PREPARATION.json": "1d576298bfafc509992113fdd58b5482655a88e321cbfafe9386588eb6fbb6e9", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INTEGRATION.json": "5c14538134dfffbc58fa4b4d2f26b270ec5f56d17d4bf23752c82964f45171db", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/controller-input/split-centres/CANONICAL-WORD.json.gz": "de2be0f4b6d24ace368fd5b834b7a00f9625d0a1824c4ff969f2db5f115db667", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/direct_delivery/MANIFEST.json": "c1997405c5c0ccd9bdb0a30b0eb9a5a2dc7dc7ce7b59c6a83a2152b80f6410d1", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/direct_delivery/code/construct_504.py": "a0d96ede40b957c38dcb64296d5f4a76c23dfb8c8875e01a80b5f1bdf6e8360e", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/direct_delivery/inputs/hamming/PACKET-PROGRAMS.json.gz": "d833ae0390d165d7da0c639a3c7aeb77156c2ddb52447087cb49b9d03b19e9b9", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/direct_delivery/inputs/hamming/PROTOTYPE.json": "327d2a868043e846381aa58a33053c24425e8cad522ff401b10ec8af1d649a3f", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/MANIFEST.json": "fd30701bd9bd652985db18fa95bee08a34615ef417a2feb2f55efd60a0b5d665", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/NOTICE.md": "ba2267f17bb2cad9dc706565c359fec98d6ec0feb3b32dcfb8c3277c59cbf8fe", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/README.md": "1b2679bed02b9563e6f3a9951eef2cc5057444a78bf4aa7ab89d1ad83330e3e4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/SOURCE-PINS.json": "240e8ee75336e921663a0057f450b346bac305d2af4ffacef68dec1798d9bb85", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/code/audit_joint_prefix.py": "c01836709f3650a39c46418ac1771980b4b96288e60b51032b5d31419e484c37", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/code/audit_multicold_controls.py": "3ff631f0bdc7e707d4296ff441802cc26da9c6556650469f09ab7253558b4017", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/code/build_joint_prefix.py": "d7804669e528b6fd8d80195a4a2e76efac9bc67440b82c73973f4bc9fe273783", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/data/EIGHTCOLD-JOINT-KERNELS.json": "0381935d8d162eb48044bdf7e36a42af761f6d4032509b9b397ca02d3134f585", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/data/JOINT-PREFIX.json": "0fddbd3f482b72a5197eacd75abe192e1d92f83aa2cde33a76dbc7be1682bcf2", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/MANIFEST.json": "328ce8023d33deb308b0f1ae2320424050f836d791cf60a613ae8408e7d6f3ab", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/NOTICE.md": "d14c070a8e237cb1912e413ce22e98eb41f164b769ebaa97224c121fcc5a0fc5", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/README.md": "638428654d34f0b72ed4b5fda948c91d01e57f8015813c6d8ab01c06c1da5322", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/SOURCE-PINS.json": "503764cd70c99a9652ec51a533c31ad7f2a615e6c230156d785daff2835cf028", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/assemble.py": "3fedbccb09d469f8ee366b4302e51448de6d25793a78a12c5f9a8d9667a755eb", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/assembly_controls.py": "a0f2349ba8fe8404b8b76c869f12dd7e250a775b2e05b3c9c00e6889ad4c8a45", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/audit_allcold.py": "7950e5c01488a9146bdbaf19ab4fd0c33cd25a4d63fb56ef995ef2e45ac7ec1a", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/audit_kernel_controls.py": "5100459211f43ba048bf82c3942bbedb8b224272b24722a14f0dcd808a38aafa", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/audit_multicold_controls.py": "3ff631f0bdc7e707d4296ff441802cc26da9c6556650469f09ab7253558b4017", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/bind_providers_portable.py": "01e62fee1f1dcf1b7b34338d555dacd5cd1d7d10d6b9a605d0913d959f8c7ecf", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/build_cold_kernel.py": "aa556a1988f7d4c52bd82fd2a648769f7094bd75ba79582c15ec441d710e213b", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/build_four_portable.py": "417b1dc4dca485dfbbaa820e552cae9bf3932bbace6ea16ce93aa0590c3c184e", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/build_multicut_kernels.py": "6ab3d73f81d5b2fb884a93a336ef1940e118d419d425b3356bab3b97f774c9aa", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/emit_allcold.py": "9d6c75af63fa8f53973734ccb1eef983511f4337ce644436a693fd8fb9ef8fe2", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/invoice_allcold.py": "ff8fee775ad97926454f3ad1183f8e05de654e276150e579ce612f3eb2f98d44", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/phase_timing_controls.py": "dcc4adfd139d6f65a88bdc6d183ea3777d4e4f688d2169dd41b54964f05591bb", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/data/EIGHT-COLD.json": "089617bdc33fd9f27b7fc8e9ae9e01c8e65a86a57c4b6f180f4f378f3f0e6160", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/data/EIGHT-MULTICOLD.json": "d18ea59995d384833c95a7a55d8167f83439b6881a524ab03df972ede3e0d7b9", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/data/FOUR-COLD.json": "643e07c25dac93ce1fe67532e377f9f1cf8c7bb83835abb3fad63c9c51514736", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/data/FOUR-MULTICOLD.json": "c1b42d7bacf9f31ab35294f7b8430a1164d6bc169a3d68fe2b3ea39cf791b323", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/data/FROZEN-FOUR-PROMOTION.json": "90417f8d54ea9272bb5041ed9144a58dcbc194a22dd0845e7de89d4b717f1b74", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/data/OWNERS.json.gz": "93349ec85f21811b5b247980f9fc4d8161100d5ee37bce7fda5ef65d0370240b", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/data/PLAN.json": "35a95fd9b5e46fdaf8a3929d516fa8c14dd4e3bd9a20eb546e0541a8ef85ff51", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/data/ZERO-COLD.json": "ea1cda1578464399077bb96e5c3c3d01e88ba5eeaa6c22d3b66ef4380bc3b820", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/data/ZERO-MULTICOLD.json": "cc09fab61aab468200d72f833ffb9e6572580d54da57bab02c5d63e3b280af1a", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/proof/CONSTRUCTION.md": "27ece5e1c11b90d97a808b56eff897b998c10e61016db95867f84e6e6aef132f", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/proof/EXPLORATORY-EXACT-FRONTIER.json": "55050dbdc1ffa18b3cc1f9b8b94f7de7a04a39f65efbbb890de2e73db837ee38", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/proof/EXPLORATORY-OWNER-RECEIPT.json": "cf9992773c9ae4523dbc7f71753d7ecfa515618d7c2ab414b60d53887f518a30", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/proof/EXPLORATORY-PROVIDERS.json": "59196e2c93f4fb8fdbe74bd16d60242a3534eb5bb8c810fc29635ab0e65bd08f", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/proof/PR561-NOTICE.md": "180802791d3547d511a7af8bc4f800640abd72636d50631d2e61b35cfa17627d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/proof/PR562-NATIVE-TRANSFER.txt": "f4ceeb2a412c9ec3f3bc06a78cf865e5fdb7c1080421ec5285ba02d04418eb37", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/proof/PR562-NOTICE.md": "a427502077fceaaffc7d44bb8520562160d0d76e4cb08c2b10337e62d8987fae", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/proof/PROOF-ALLCOLD-NATIVE.txt": "ca7a8b3f3fa6d3610ef9518c71d5186427ccf2b2bdf3511be84a6b2d7bbb1e25", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/proof/PROOF-REVIEW.txt": "0a807ea2c5fec29cbf994f94bd5a388914fb31de02dba03d18265040044c0dc6", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/MANIFEST.json": "f28c04eecbea7599fa9e0867dd8d0311a463af12cab79f90a43733b162527164", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/NOTICE.md": "fa76079e2566b8d644c4aa36cb1034aa2363d2e97978b26203f122d826918fce", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/README.md": "02181c5ff31cd1c2899608e5ab598b405df92ad5814df35f329d117956f7ee10", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/SOURCE-PINS.json": "b09437400a7f6f0dc86eee0f800aae91cd35a7e5e80eb3d348f87113a0bd0d76", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/assemble.py": "5d4946dcad7636bf2119bb7bc3a52ceb41454c1514d12cb77def2c2e02b17338", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/assembly_controls.py": "f3d703a63404bd655e66a520b3840a4ab72529751664eb634a52736b4bc95a29", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/audit_promoted_scalar.py": "1994e7116065636b53bf740000ff78dce8ea62390e597d293d183f33c67eaa6d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/phases_full.py": "a273c325ffd6793d5b63b79a289a9d2bbc9292e6940fb5a926924f3708627af4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/promote.py": "b69a27d53ec3f64ccbdbbd79f9632419f273b3eb4429f6cdec1315fd8798750c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/reconstruct.py": "e56d57d39cf787b8325de5a97dbc283f89d51c24169efae9ad2227277a6f8243", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/data/OWNERS.json.gz": "c72892f5b3b36e75ec4db7742b046bd9194f638ff32be9cc8843914af950e6dc", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/data/PLAN.json": "8e64bb8a1a8f87998479316f4111801cb3eb1e64f898b7e577eebd72a460f844", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/data/PROMOTION.json": "9ad34faa8611a6ea7f161d2e1fe331ab1ba5ccec8fca3978e31c3e7bf789bc31", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/proof/ASSEMBLY-PROVENANCE.json": "cf1710faaf5d4aa32e6a8a24b0087cdc24e5b680d974e5dd4e0cb4ef4787e395", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/proof/CONSTRUCTION.md": "9b0617dee9c044488b2f72b50059dd8d768f6ee0a29c35fe2cfdde85d25cdbd1", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/proof/EXPLORATORY-SCALAR-8-CONTROLS.json": "c0465364067e6392fa0d7e4cd0481a82afebe3e271b486a4984e7b2826025146", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/proof/RANK5-CAPS.json": "461ebc6c8816a0132c89a54c2ae56b07f31500bcb2c2bebfce783eb41bc29441", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/EXPECTED.json": "00c462828be76f6d65c1311ad9ef102f18f088029e039cffa599eaeb41668fb6", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/MANIFEST.json": "b0f5773b3ffa2c5305dade20ce6159cb8b5961285d2f7bc767c6353838bac4d3", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/README.md": "79cc63fc45ea52c04f32555676704a1664a3eafdd917b25689b1acd390a4636d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/code/alien-avalanche80.cpp": "0215152bd3ddf0282c8088843c4e8a89e821e747f884e03100fe79238b3061db", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/code/alien-flags.cpp": "0bd6ac192357ca71f6b84baf50efdc43fccc8394296c35a298b35306db7d88a3", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/code/assemble.py": "bf878beb64edc6bae4c321d7c964088c4d9aa0ae477597ac1adbe2b1078e3904", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/code/build_wave.py": "249669d046db49011b84345a14ec05a93270829e5e21f6046576972038da377e", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/README.md": "bd82df5b39c6ff26b93f41ad76471ac50131050a3cc0f84dbc6c57703a721353", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/RESOURCE-TRANSFERS.md": "6fd2bc82714060290f29b218c235c171395cf9be99bea01f8a7fa770dadd68c7", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SAT-OWNERS.json.gz": "b5a5339dd37d90a0adf40d90d6aed52aec2f94073a3b27763575eb069f85a903", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SAT534-PLAN.json": "221a38f18504e00da31a72a7b3a3f0d248e8f886d2b8fa7cae2d73e7ec86905e", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SCREEN-RECEIPT.json": "ed60f7e6b0b86f4401ada159c0d37ee283836a0b5d1967f7b0a236685f64daa3", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SOURCE-TRANSFERS.json": "e49fbbaa4533b6f15b56098c9d16ea3e1bc0cc98b19a2e990c51baad047e7839", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SOURCES.json": "85448ef4fb1d124ef8bd2f0b14451ef522465b14510bba4e53fdd24da0968643", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/TWO-RESOURCE-TECHNIQUES.md": "8cc6b582680ae8565444abc01f1dba729c94a827f1f8e89192190229e52183f4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/WAVE-MAJORISATION.json": "c445afc50e594c46932d8d799b446edc22717e664d828d4afd7810c643576475", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/replay.py": "2e1f11b5702b831622cea8b386bb82043ef9e58b2a0aab56b09c00f30ac73046", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/run_complex44.py": "5533e9e29c66b11f8feb22a2d3d37551787200ea69eb3d04a984c0b1d22c49bc", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/NOTICE.md": "b47da4b840ca9c8d1e2816359a603304ebd7ca442c82b94c049b00f142643f73", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/SOURCES.json": "c265f58b1ab29f9b662e9c5f943147ccc0527fb1f4803b06b48f71d96fa9bc60", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/adapters_local.py": "4e89a5c517cd87ff6a5aa9b7334c0d74821179ae5777d31284da25b9d8abf113", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/audit_and_transport.py": "a4fc272266785e1fffd44775c6fa6df783c4352de4c3f1d925cf953a23b84e7f", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/audit_local.py": "69b12c45d0a961175a824c1967353c7f3b94818a7dd6ac7bbcf56a6d1a5ed8e8", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/audit_supplier_hosted.py": "301e9b5c593b6d583065337eb7b3ef207cf039e265f099f89080a4bf25856b43", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/emit_local.py": "eefc76e0bee003015fe21ac685c2cce658033d5444add404d2d509c7d6f39bac", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/emit_supplier_hosted.py": "53c0b653b3a5100756d6a9473c90101b8c3ab72723d7047983906ab997bdf920", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/invoice_final.py": "96b6bed96ca8b60dfc064cd1c7962c45a5cb53c4e52cd90aaea6ccf8d109db97", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/phases_delta.py": "15723107eff03013b2e797fd9fa3635b1b46c5d1c8112d19fada98c178d4acb6", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/prepare_supplier_base.py": "f5eae94aca965d0008bc07cff8245ccb7509042ccad457d3bcb7d51c1e9409f0", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/audit/PREFIX-AND-INVOICE.json": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/local/CANONICAL-WORD.json.gz": "de2be0f4b6d24ace368fd5b834b7a00f9625d0a1824c4ff969f2db5f115db667", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/PR523-ANCESTRY.json": "76025ad06d8ac96fc6693092d674729fea2f04b9c1c89ec50dba7488b8e6657a", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/data-base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/data-base/work/pr361/code/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/data-base/work/pr361/code/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/data-base/work/pr361/code/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/vendor/clifford/clifford_exact.py": "2982ead07721e83358dc67c6f49c2b4c16a236a6bebdfd72f58221be1f5d0962", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/NOTICE.md": "1547136e6d269fdcef2b68c10a97a786a79a4732a12738363f679bfb282430cd", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/code/assemble_combined.py": "41216e8da3b647fe6eead9079858f25b2592cab090154aca43f3cc73ff36dc9b", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/inputs/PR510-EXPECTED.json": "19b861f69f7602e47b390d472b487d044bff4230b250520807537c213ad0249f", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/inputs/ROUND20-PARENT-TEMPLATE.json.gz": "025448abdf2012d327e50a009084e1501690d05e650300d2982836aa0350ae00", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/README.md": "f69ac71a8df62a5d0bf7ed45ad16642e1102faa9e7b95c03f08cdf264a608948", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/SOURCE-MANIFEST.json": "b91c0d923affac87ce0bad7083d4640758930f82628f042bed7aaccf528973cc", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/code/apply_syndrome.py": "496a91b9da15ef56e6df28a0459ca8318a4575441c7921e113bf636f31e3c5d8", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/code/port_frames.py": "8d25abc9c45c58a5b893e67f9abec3a660e8d7f743e86959f2d2fd62037e23d1", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/docs/OPENAI-SOURCES.json": "1a9c08d0c0190f0280c02e74c8a144f802efe2d7d8eb3a0b50b181d6dca686cd", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/docs/SEARCH-RECORD.md": "7b09479215c407e4258ef6af64c34dc865e3b9a60c845040258413a2a960f5b8", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/docs/TWO-SOURCE-PROOF.md": "4d6423f773ec47d2eea984e02f11f2d636e02ad3e6f3eb3e640a3768fa04fe75", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/PR534-WORD.json.gz": "a275792cb9f5729fac295cb04c556afbaa4513945c517190219fd0e44ab90095", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz": "e070ae2c78b4a1b644b418774af62b40d8d16e6ba89602f0474afb557d507c37", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/phase-baseline/CLIFFORD-RECIPES.json": "577a1be13f5140d9c3997637784b2f812f46b24c61877699430b02de4f662102", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/phase-baseline/CLIFFORD-REVIEW.json": "cd48fe6882a39c57021c4614747cc5c2c88ec07e806cebb914cf533997b73d9b", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/run_local.py": "8326e67400e5ff87580e93e4518efe397f1b29fffbb6d757a37e5f97c14c3695", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/META-SOURCES.json": "c8aeb9313f2c671a9a8766c249ceb6cffa106dfdab3ab761da8e8c534b115090", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/NOTICE-upstream.md": "1547136e6d269fdcef2b68c10a97a786a79a4732a12738363f679bfb282430cd", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/PROOF.md": "abfa6548b223893866094631aed61174575dc1b17bdd60627b2c55e6b9477e4f", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/README.md": "51d6ef7ad3e12e72daf29e0260a11cd985a0148fe1efa0574a533dae726c553c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/RECIPE.json": "8735ac9beadff3edcb4a4df8dae174415e0f83d9b4df8556c33ba7fd777505fa", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/SOURCE-MANIFEST.json": "4f5d92b4cd76eff0845a9f14d33131441535a232b5c91f00535aa076d44c45a8", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/audit_scalar.py": "a1cd720d281c7a9db7f17919c637cdcb8558e9f3c96e929706f0c21f317a7943", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/build.py": "b15192ff50fd99f5ca3cb5857b5e129c98a212de60ae76aafb1614139743c35a", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/gk/gk_common.py": "e68d190fd436b2f3955decb590adb53344d5d4ea0a19d62d86df1e4b55ecd198", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/gk/gk_word.py": "f027a9273bcf4e0971258c160b7d3b3c196366b32a529cff6e6a0e666b03826b", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/inputs/BASE535.json.gz": "edfffb8e8735e0d1f07c81d818022b705ef0889c2bccc193a2f7a661b9f7d390", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/inputs/OLD-RECIPE.json": "7e5c179246261edd9e1019e81e6e979537f02559da773b993a318f771cb7d763", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/inputs/RAW504.json.gz": "1c6144791dbedf6427e3ee7b4c24fb05b5bf407f6346592f50f8dd8d9638108d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/replay.py": "fd1ce7d1f8974b473aef8c6cec1e0c590e01d0d215b073e5573a771ce42fc74d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/DAG-STRUCTURES.json": "5461d7832386b2f7f3234b6786e148a7c49461d8527be5e76c8fe977783d9053", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-AVALANCHE-INDEPENDENT-REVIEW.json": "f084eaa33ea10fb0fe4d575f2abd503ad5dbdb2c03d2c8b6dd62fc5f387ae31c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-CODIM2.json": "2422fa6db50ca4b2e8226113aa30d608e7c6525990eb1faf370f9fee7718e698", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-ELIMINATION-AND-PATH-TRANSFER.md": "481001470bd22345a0baf652261351e015a2634b2572b0d4f78fa9e147edd0f9", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-SCREEN-REVIEW.json": "555024b7a90f8dbbb3f13623d504d36b3bc92dcf118f6f9ecaeff285ee13f2e5", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-SOURCES.json": "69a578efa22c12688ef442498f8b1d901c7056f5f1948ac921e1dca0d2be305b", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/FRAME-SOURCES.json": "e01063a60b24b3b21f9c1d472d890bb387e61d66ab8847cbdab4b92f06e0f91d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/FRAME-TRANSFERS.md": "1756461714ea55bd748d7245af14adf0a6a4e13a9bb7f498a381ec4282a30387", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/PR-LINEAGE.md": "2ec1c9b1f25e2f3d2556bee7369069ec2340cf126b54fa112e0bff9e269ef0e0", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/PUBLIC-PINS.json": "273e48abf63a49123f11fb4e56f000c648aaa6d17987378b413469a5976e5ebd", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/evidence/COMPLEX-INVOICE.json": "a21fd7e02d3001b1e8065e9eb6084d80e1f64c44035733ed1115a38675a01fd0", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/evidence/EXACT-ASSEMBLY.json": "4e7e5831683a1af861580a96db1fd717dc2a6fd01a29b220223868fb57d46e83", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/evidence/FINAL-RESOURCE.json": "b1463e5f7fe3663080e6021fea5424375538fabef942c7560cfed610f4242ef7", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/evidence/WAVE-REVIEW.json": "ef97172e5020ce4158f7c8144a0b0b3d16b94d7c0415e2d33a81f02353d3d506", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/inputs/WAVES.json": "262d0fccc6e8ffb1198436034a26c467ad28b3251823ac25c966f773afc3c3cf", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/COSET-PATH-APPLICATION.md": "56eba06ba109c39ab9ce9eb9769c724f532c06d8ffbb2b53706b8294cb4f9711", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/COSET-PATH-REVIEW.json": "39e813d3c0f48a1a6317edac9ffb9ba5b534a62948708595e43fc2e790eda168", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/COSET-SOURCE-BINDING.json": "b7531fb284ee11e16b875d5f82237e025cfcd95593f3e3eca23cb5d3249eedf2", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/audit_coset_paths.cpp": "47999863b7c5037754bf73cc94757095f45f6da510d7ce96fb7699e9188d89f2", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/coset-path-input.txt": "779b497d52b6896a04f41d6c55424e65030a939945ca80858c369a3a3320a341", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/export_coset_paths.py": "f36c06ecff72e4a2fd83ed44467d528c976d52da3d5bd6e8043084b1568a7fd9", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/CROSS-FIELD-PROOFS.md": "3d0a1b9ac989283400e7c1e3a025080a8f6837755baccdd55f5e51599ac0921e", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/README.md": "cfd349a83f5ab3d5bb4268ef93b46b1e4542038fb76fe5e7123b8e5fae977de1", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/SOURCE-MANIFEST.json": "946e3fb8bbd4efbc771dda183de01a2bd9bc5aacc28dbb86a88edcdec960af2a", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/SOURCES.json": "905c5860d9c920e41138e582c03010b2b03ee8bf071983ad737d2e57868f6857", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/WEIGHTED-COSET-SELECTION.json": "87c15240aaf48810d103ab3234689bb3ad58024d1b1c0b9106719fc18c5d1945", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/build_weighted_coset.py": "5face855c7e4fb8b6b3954bb20f6c0a662550ca7c6263a1a73c40c857816dd6c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/verify.py": "eb4bb8d1c6eaf5327c7d13fc20ebcf2ae2ecebff5b008d44fc1713a7b162084d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/verify.py": "66a20adaaac6850d3c8649f7ccc959cae19ba5bb17ee88a2b41fb1ceff68e431", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/EXPECTED.json": "a79dc7eec1301a69560a2e7fd6ed69634463272696ee96f09e15db1aad8ab0b0", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/EXPECTED558.json": "1e922eef350748956f4cd785d7fc5f73297b0ed6f53b130aca2da29d26777c34", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/MANIFEST.json": "32d31fe49c9a4977b1fe83c72320940bff2dececbd8313787fbd81e188b5166a", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/NOTICE.md": "02e74770785e31234d863b36ad2291e04267eaf32a4ba82f67cb1c804da1de44", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/PROOF-REVIEW-STATUS.json": "f54fcf048c5e24f5d3ccf308259b4b1b291b736e014fee81b4518980d358786c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/PROOF.md": "d5d498edc56fdef8c5798af7f5ec66948bd2f66c553b9efe366cdaab01bd3453", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/README.md": "74f5cd377861bdff57a2825b19ac6c2b0bb6aa62f3b0354c7ceec0a76866c61c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/REVIEW.json": "518fd773b1287c9be19563316f55acfa443667946d1f5bc7cc7b884bb9005094", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/SOURCES.json": "32e1466dd29be472e63e11e8ad76b228c0a1e3ec33596ce4319a64b89bd6d912", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-INDEPENDENT-REPLAY.json": "6db0dfeedce73cf9a6eb31bea0a499f06dc4961da40a60d91059bb9ab48fd73c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-PUBLISHED-INVOICE.json": "a21fd7e02d3001b1e8065e9eb6084d80e1f64c44035733ed1115a38675a01fd0", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-packaged311.json": "8a06db71ab002a9e080f0d60d22ee32a3a6a848a0cc633f37fc8fde22d21694b", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-packaged314.json": "53142566b590fdde9258e36e6fe62991c2f39331fc2822bf0105f812e52d6aa6", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-regression-final.json": "0c8bb51c2234a3190fab3e0e33187dee1bd4f2aab32483a69452366abb3b2567", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-COMPILER-LINEAGE.json": "db1e3390ade85f2299fc1ff0652e12fe1384c35bdcaf5c49e5403e4eb6b255b9", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-INDEPENDENT-RECEIPT.json": "c121cb83baeeb950a42eac4bec73676119dd836386b822e03bf7820fa1bf5262", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-INDEPENDENT-REPLAY.json": "b32113b56745cd5c142c982426ce31f0fe8d4f1a4ba219541e8c8befc69f017c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-packaged311.json": "fed5ee89ea9f6b3c3ffb150898fc95f9a057a0c598b18de6df59e66908342b2e", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-packaged314.json": "71251eee88024f14982a4e7328377f50eb9d04314f692b891b53b5911498e3c2", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR552-EXACT-ASSEMBLY.json": "c7495a6787f48a9c5184a00daa841f4a972e37c580c6ff3dacc07bd947914f99", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR552-EXPECTED.json": "00c462828be76f6d65c1311ad9ef102f18f088029e039cffa599eaeb41668fb6", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR552-INVOICE.json": "4ac060dbf2ea2624dd1f4bda23bdb81c0a3013dfe49b77c092b631885529947f", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR552-OWNERS.json": "ecac65c65418641abf598db74d588ba8f53b3f358505bd31e215f09562922e3f", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-BASELINE-ASSEMBLY.json": "9f5e050486c3c337793d09e4ce96769336a3653de0a3a84a77c39431cf062f16", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-EXPECTED.json": "6c16d41d9c10bc04c65b548ff34422ee2d90d63c37e9bdea4adbdf06fa959f44", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-INVOICE.json": "4b6977a049663ab958bd9a48c2864f7a7bddb26aef03e14f3068aede020ef76f", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-OWNERS.json": "0bcaa62bf4723672113f2acdc3ae30c6faa18e5aefa3992e0ec7dc46b9cdd552", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-RESULT.json": "81618cefc1df42f827d0a7da838b13b9167d3500ca5cd598963c3e09e62ceb4e", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/UPSTREAM-LINEAGE.md": "2ec1c9b1f25e2f3d2556bee7369069ec2340cf126b54fa112e0bff9e269ef0e0", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/notes/general-clifford-frames.tex": "c9bb9655b594583c6b4bab8cb485233f1d1e588f83858cf1e4c3530cee8fed54", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/notes/three-stage-cover-assembly.tex": "ccf34a6d37c4af14bebeab15be50ab204eb1caebe546385520050ec30089441d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/notes/three-stage-cover-bit.tex": "47123a756f823c83a0d48cca2bf5add6472cd88410b13aed345e70c8834fb511", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/notes/three-stage-cover-complex.tex": "1c5b638aa9b75365b8addec9c8eeee6bc5e499722901079b94c65fce033fde8a", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/verify.py": "6b444c686891b20b3a92385d025818fc86d9a6ddd2f77504d9223afaa47acd21", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/verify.py": "1a0e92f610f96a5e642310a2823b152cf573c0d1630b9c174fcc8388d1ffd2a2", + "research/complex-sw4-frame8/vendor/main/research/structural-gain/frontier-composition/global-replay/base/split-centres/FULL-WORD.json.gz": "375bd23001cd805707968005a9342827d5464e3f8e3a754197b31c46fc3f63c2", + "research/complex-sw4-frame8/vendor/main/research/structural-gain/frontier-composition/multicold-eight-word/FULL-WORD.json.gz": "4d4a59db7f74d7505447fbb2aa87735771cca1d04a0afafa455d21bd8dbf1f77", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/MANIFEST.json": "faa8559bc062cb1813c482580967de2de0669ee59e708908fd24b16b74d6c707", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/PROOF-COMMUTING-PREFIX.md": "59899b2a1a76d88275e57f983c0aea391dc2c7f1d2d66c33b92429be0a1cf5e1", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/PROOF-NOTE-R.md": "22312bb347bdf159e6a01a45c47675e6170d33b258e2fd9ed52aee88fb92c0ed", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/PROOF-NOTE.md": "e79d0920228107083be166a6733186816a38a8fa68d99f2038f07b157ea5690e", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/README.md": "d74a9499a23a729d3470bde7b06b85c4cf8602d06d10af9bf9991aea2da8ed7e", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/assemble.py": "1b1a9024ac910dc9b9d9e30150684e1fa9cb228a4c1c275b75ab04b57fdef1dd", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/assembly_controls.py": "8a365b95c412d75d10db5bb59309d47cd56c5f8a77566f940a05977795130ce8", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/audit_allcold.py": "cea021ae79658ca7ca4d07f1e1a70bdb4947afaf95b362114c11032c0fef889a", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/bind_providers_portable.py": "2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_cold_end.py": "864b4701dd73afd0c9d99761b7a749f3354c48985730f17054e18c052996a668", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_frame_regroup.py": "e2549ccc7a90008831be3b59aeb37b47db696640f5f5c2b72dd888b2f1e7e5c9", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_gate_moves.py": "08bf1c2652307aeefbab089fdaf02f82e2c396ca23a1eb68e294a67e74c44252", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_hpe.py": "ba2001695d8c7547a82260c3b016e01dac686e95a61757ca124eb9879078ea8e", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_port_stage.py": "beb0d30fde1b9a30db091880b38c4a8ec906da3f715c43de7db8bf7932526e72", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/cold_end_controls.py": "0c404f49e90457520f1788ee6741c9ac154a5814c54ad6cb83b59c44552ebc84", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/construct_k_triangle.py": "66fc460df8eb8067efe3d8a3f9e97a7244aacd7bf11650a6ce656e868ce053da", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/emit_allcold.py": "fe26f10fe5d30ed407a37540a45ef94f44576dd241d09e19aef5db1efb072746", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity_controls.py": "a7b93207a673575d1fddc3e579153349c145c8f08d4575ae0a5d1e3cffec01de", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_adapters_local.py": "eb0b5c6c7161e18dc22168da3211448d321586edd15bcfb4b4741174d36993cf", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_and_transport.py": "c9a05ff291016b870b4fc925b317abd9c3a604c73ffc8920dfdbbeb475e20aa3", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_local.py": "6bd9a1e279c9c9e4f3767d9f82e537b559292906feb2ddab02f380fb6523a810", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_controls_atc.py": "63aa3909b5bfd3bf270c313bebb5c46e7789c67a8f2439f568bc4b2b4a35d17b", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_emit_local.py": "7e4a6fbc38c8228157b6311457d1496bf460291393043932d2c365f004f77805", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/phase_timing_controls.py": "1692ccee3da4b1781408d126ee4999f3e31a505cd83c64823a404033da3a6339", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/witness.py": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/EXPECTED.json": "9eeb8b149bf7649a47b0d3266436b9bfe0ba155ffb9668fa66cfa21136f9b8ed", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/OWNERS.json.gz": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/PLAN.json": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/SPEC.json": "f5473e3e6d76901bca57616efda78c3e23b3d30aa2c05acb656b6e87c38abbff", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/TRI-SCHEDULE.json": "94da9d5575f5b237097a77ac7dd09aff594322dd9c35138bfd34ffc5e1a7a51e", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/WITNESS.json": "05f7127910a846210d8c75d67c58185b7cd15b9861d71d0cfea955ae62414436", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/cand.json": "f1f42cb6f1f272ca3690e65fe604c18427dd9ac51241095c133bf97af21d32e3", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step0-promote.json": "9a7cafdf9b600ba43985c83969b75151f665b98f454afc1494b9f9ef3dd3916f", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step1-greedy_kernels.json": "c4bc67f329fc22e226f26bbbf7e67018a639823d99fccfc5a1e798a7a82db43f", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step2-frame_coalesce.json": "e6d7ea259a542f2b43a857998f677db4d68f8f36335e98a030bc91ab38ce758c", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step3-gate_move_coalesce.json": "3a6b8fec6c8b56a45bf8fae683083636fa295a8914ffa68d11b1f78ba3a2eb9d", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step0-greedy_kernels.json": "c839199d0e6f8e976978fe97bc0c5579a65ba69dfb6864585b448cccc1113056", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step1-frame_coalesce.json": "0c8e5991e1338f03b837814dd060d4dd598c324e3538ee510913e0444a384ee3", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step2-gate_move_coalesce.json": "1f5b62c76915b1b8bbcf63b42dcbd87a536c34d3721c4a9b68e651404717bf00", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-cold_end.json.gz": "a25ccab0c024aa9512df822032fca11683def03d0886b58f375c42834264c47c", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-frame_regroup.json": "8d880d3d8e795575a3a3428e0031b2c45831eea512dc32cb99f7eae9e6e49e5e", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-hyperplane_end.json": "30504ae76a2387677f05450d23413c7373c08ae2d9d171b2f4597bb63e294631", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-cold_end.json.gz": "9f487a0c6e89f6f3aec38726c3a4e514ffe1248ce6cda3704676f2c86ad0866c", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-frame_regroup.json": "9894f9c93e931b61cf34b337c4b257a72bb1d06fbdc4e8b02368e6e29ab2b644", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-hyperplane_end.json": "c71c2b05550544c29ebb4696e63cffc44d6daa76f1bc25e9c7c97e994b2c7657", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-cold_end.json.gz": "90952fde4666724f783191d92f132e9f6aa84cdc6163a42974774e9957cd6f35", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-frame_regroup.json": "9bd347334de643f29865290be1ed37289f9cae6cd339547ac89b45fa7aaee65a", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-hyperplane_end.json": "e4d4dfd83d0c64cb0a8ee8c8bbd95d0510ee68699859e568fe201cd6f8d250c1", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/search/DISPATCH.json": "34f233d4976e59455c3f0e1fa6edef8091d04bf63e4268aeb4a73810bfd5e338", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/search/LP-PATTERNS-AGG.json": "5a1e2c3f7784cff71d4577e29d7a598a41198dac20aa35d5c87bb345d12f3e03", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/search/LP-PATTERNS-EX.json": "08dd7090b5fda8b0a2c936c12982b279333c5765cfd090361a58e74d68b22e80", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/search/TEMPLATE-PLAN.json": "1879679a44b373006907cbca8261a9cd187c7b868472afab04e002bf95331d9e", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/search/WARM-OWNERS.json.gz": "56aac182713cba7627b7ebfbb497975b5a7c76b9da9f835a1cb63192fc6134a4", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/search/WARM-PLAN.json": "89539c2b5d24225613c0ceb571a03a2165bcaf0a0bea06986e212649cbfef9e1", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/verify.py": "4c8dea601fe9255bd9fbbf7840d3bfacc3dcf0b1deaf7ffab467e3c10648a3b7", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/verify.sh": "18cf93f64fa5b7301f837950df181cf08ee8c3efe1b3fb6803354549a7462618", + "research/complex-sw4-frame8/verify.py": "7706065e3d2934ea493910638b40e6285348d337507e0fb695d8d1e536926637", + "research/complex-sw4-frame8/verify.sh": "51474403117d5ab4d6afe6dada67d9af6654964dc03aeaed8716ec15dfc0b1eb", + "research/complex-sw4-frame8/verify_global.py": "16bd5e54598592e92e210f99065348c5df261b8350fdc688072ce053d15b088a", + "research/complex-sw4-frame8/verify_manifest.py": "723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b", + "research/complex-t21-owners/DEPENDENCY-PINS.json": "7c47d44e8d5c24aa80afc70724e7c0381fec57ef80d085d2ee4611726a0f1254", + "research/complex-t21-owners/MANIFEST.json": "663a4300ec3abe2278ac6c8e49dd13dc58694c33bfadaa278c5406539e113a31", + "research/complex-t21-owners/NOTICE.md": "91fffbebc4bb0f3c1e4e81f239d3e7c44400c1f001a6fd5120572017bfb598f7", + "research/complex-t21-owners/PROOF.md": "78721b32fceb34b21b8e77c95381c38c60276e72e6d9c2e9c6262cb347457def", + "research/complex-t21-owners/README.md": "7d09210953f2fc66efd3bd0af0fdd899ed98c93645f80fc32934c8d19323dfa0", + "research/complex-t21-owners/VENDOR-PINS.json": "578100c9ed4812a161271a1b5c8036673f4b27d6cc1df560715ff2ea9a598f6d", + "research/complex-t21-owners/build_owners.py": "d1e6bbab8ea0de09048fc9737dd4a4713289ca69328efe71855e16fc55abfa57", + "research/complex-t21-owners/build_parent.py": "0b5a66641494e934e3e032982c31aa561b89975d6673e7db257f4efdf5b8c921", + "research/complex-t21-owners/check_parent.py": "0e158551680b06a7a3f4599b4dcb74bcfcb7f1e94fcaf9a46c9b7a95d1200a6e", + "research/complex-t21-owners/common.py": "41a2e8a4cc69251e7e31dd82b4776ccfe46033afa8dca59f45f5d3c377541ea7", + "research/complex-t21-owners/data/ADAPTER-EDITS.json": "507e45b14439c8a19e269ee3c92fe9f28c80bf93375696b51e6618494de2c46a", + "research/complex-t21-owners/data/CLAIM.json": "433d7bc4a371aaffeee35c12a1db6ea974722a85b799233626e1a57dcfdcb121", + "research/complex-t21-owners/data/EDITS.json": "a3bdecb4899af794427458eec0b7b13b404e2c822c1e8e152d4a4eb92cb10638", + "research/complex-t21-owners/data/SPEC.json": "f18777bc770f1c65d17c3fe3c5d04d341e42bec6c5beabc97b1ca599df7bfc5a", + "research/complex-t21-owners/data/T5-OWNERS.json.gz": "676e91f0ab18bdc93b3da067082506b779969dde32a38baacfc8576c327a3c54", + "research/complex-t21-owners/independent_check.py": "9d8c86bf45cdaef37f223c88704055ced503ee295645611e13f3fb9059a00e55", + "research/complex-t21-owners/owner_controls.py": "1b38c922aad0776a52ec47f0db6b0d53e8c556b872b908f1fe93892ff918804c", + "research/complex-t21-owners/package_controls.py": "6676ae2e17f13142e6d5df27367fd0633e0d5f592869b637fbf875e38ce7b642", + "research/complex-t21-owners/price.py": "b4510dd0d86322be627ff500e76a22f53cafa8405a699d04646dc3039167d569", + "research/complex-t21-owners/source_adapters.py": "d77c78189db392855b462b3bd11b690b0d0a066335b7b1ed25568c03bab04c09", + "research/complex-t21-owners/vendor/pr858/baseline_coverage.py": "c0cf6bb2035817a09e1abb5dc492d57af79f584bbd0c1cf5fe73ba0f8f604741", + "research/complex-t21-owners/vendor/pr858/independent_check.py": "dd552d627bbefc05ab3f6abbbd1640ba53b67e607002ebb7dd3d17bf03ae1e65", + "research/complex-t21-owners/vendor/pr870/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-t21-owners/vendor/pr870/NOTICE.md": "e67a7bf357e62c130ed0df184c27d3b439b55c30e1c4c003c97bb1c6d0ab58e1", + "research/complex-t21-owners/vendor/pr870/PROOF-NOTE-BARCH.md": "c24f211b09358b25d6cf47dd18e4bbd8bcf4ecf279e6f1c6c90613cfa230818d", + "research/complex-t21-owners/vendor/pr870/PROOF-NOTE-T16.md": "b13621111876dee62367d7ee8e9b46c3707145d5f08914b0932d0960ee700d43", + "research/complex-t21-owners/vendor/pr870/SOURCES.json": "a7c2f2d21d535439b729f4d1245fa6a9bb24a148d877c1298e9bbdbcf251067f", + "research/complex-t21-owners/vendor/pr870/UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "research/complex-t21-owners/vendor/pr870/code/assemble.py": "15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a", + "research/complex-t21-owners/vendor/pr870/code/assembly_controls.py": "da7e981ae1b9f099d4e1524cb4f3ba1116011936ebe378692889b5dbfa99029d", + "research/complex-t21-owners/vendor/pr870/code/audit_allcold.py": "1467a2acb654e62552c69fb9a7c4c85f70a02120881d222313865058ab71a6cc", + "research/complex-t21-owners/vendor/pr870/code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "research/complex-t21-owners/vendor/pr870/code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "research/complex-t21-owners/vendor/pr870/code/emit_allcold.py": "354367e1fd6185a67b04f4268bcae4d502e47b18cb2131e247f5bcab5b3a769e", + "research/complex-t21-owners/vendor/pr870/code/freeze_spec.py": "5971eecac6d6fbcb53244b80f1b9d7232012dc32876fab511214a5addebbe6c2", + "research/complex-t21-owners/vendor/pr870/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/complex-t21-owners/vendor/pr870/code/invoice_allcold.py": "71eb57514e28ced97251e0507105f654f59885ec4d40486a780bf166098858a8", + "research/complex-t21-owners/vendor/pr870/code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "research/complex-t21-owners/vendor/pr870/code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "research/complex-t21-owners/vendor/pr870/code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "research/complex-t21-owners/vendor/pr870/construction/barch/LOCAL-PINS-barch-U8.json": "2d16f99e1f71fd66378f5f767cf4cfa2a58264919a95074c7b31029f39a3c9f5", + "research/complex-t21-owners/vendor/pr870/construction/barch/RECIPE-U8.json": "292f0e9f82824c4111728cf4de929bf6e43320fbbdc77658aae9681906b0d652", + "research/complex-t21-owners/vendor/pr870/construction/barch/build_tri.py": "0fba65b31c2fd71864c291358bb0ad8d5f7e1be07e21df23f0ae73d7b966002e", + "research/complex-t21-owners/vendor/pr870/construction/barch/reproduce_barch.py": "19bc970aa6af25ab0e7fa96fb65c64dd0c5243976d8f2cb733cba839155482c1", + "research/complex-t21-owners/vendor/pr870/construction/barch/run_controls.py": "42639bf62bf57795e3ea615c1944c67efed00f28591333daeb3139bf63d04476", + "research/complex-t21-owners/vendor/pr870/construction/layers_np/PIVOT-SWAP-NP.json": "d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5", + "research/complex-t21-owners/vendor/pr870/construction/layers_p6n/layer_end_controls.py": "fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e", + "research/complex-t21-owners/vendor/pr870/data/T8/PLAN.json": "673fd8e812fadcfb757264aba2d7e1abee9199457ed52e678ac65796cd4c1b70", + "research/complex-t21-owners/vendor/pr870/data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "research/complex-t21-owners/vendor/pr870/independent/audit_local.py": "03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd", + "research/complex-t21-owners/vendor/pr870/independent/price_profile_t16.py": "53f8e62dcf27bee032c1bee0245d126a9c8a12ebcf24f6aaff65ea3122fffe29", + "research/complex-t21-owners/vendor/pr870/inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/complex-t21-owners/vendor/pr870/t16/NOTICE.md": "902370e6bfcd39dbea2ece474f15fccbcce3b8e966b2b94066bd03e5174591b5", + "research/complex-t21-owners/vendor/pr870/t16/build_owners.py": "faf14dd99b331a8bc5d35e3497bdb9c26fcea24ce2ee74f0dfeae87883af8db4", + "research/complex-t21-owners/vendor/pr870/t16/build_parent.py": "82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e", + "research/complex-t21-owners/verify.py": "2ee09291148a81ffead860c2237ebcef47a1f02ca5f0833cf5230532ba61243e", + "research/complex-t37-owners/ALL-T-PROOF.md": "4c0c71ccd0afb850538af1b467e5208b7eb3edd0260fded84e02a8c01dfc868b", + "research/complex-t37-owners/CLAIM.json": "a383da34ee22da831fa436ad3483568ae1fcd62cd76581f2c2dd2b6473b346fb", + "research/complex-t37-owners/DEPENDENCY-PINS.json": "0160ea2677cc9ceeb0f861dc2774d470a27cbaa58b8fd6c064cf0683d18f3e87", + "research/complex-t37-owners/EDITS.json": "cd28d8014fe6576a56a640d9a94b6b3fbd7715ea1a6c2858c1597b3c9fb51576", + "research/complex-t37-owners/MANIFEST.json": "38907d05fddac9be6bf7a7aff47fae43114a055d2259cead5651a08f9b983820", + "research/complex-t37-owners/NOTICE.md": "78887899d460a21fc6bf6e6021fea7f6864a93e079b639e7c92d4dc77ca30c1e", + "research/complex-t37-owners/ORDER.json": "2093ca4050e1ce95621f4702bebe8b01b36773b1ecfa2c0d6275e132bd33d578", + "research/complex-t37-owners/OWNERS.json.gz": "f89e00863c8415d1df1de9c481528f677eeda808ef3cd83bfa5ca3e7d9360f5a", + "research/complex-t37-owners/PREDECESSOR.json": "3639c960052fa67c350ae0fdd7b70e3fff99709fa35a54335cc38dc8a8f41ac4", + "research/complex-t37-owners/PROOF.md": "09b39ad0d5f1f59f54dcff15c16640f7a7acf27e6597660acaf957b95c7e8510", + "research/complex-t37-owners/README.md": "7f7fc22918132a20b4b6248f20e5850586394fe1d3356d49b5ade5df43053b0a", + "research/complex-t37-owners/binding_controls.py": "87216d5efce156e32cea3b9908ef0ace984a6fbe300a8eac5f5750a5171eabb5", + "research/complex-t37-owners/common.py": "b85769c7c29429da7ce9eed55f0ed5f672e2bedc0d894ae02bf9be8c86a638e1", + "research/complex-t37-owners/evidence/ALL-T-BOUND.json": "5101909cf84a2bfce777dcc34075ffcfe5c135debd16fa56ef7273523b434a35", + "research/complex-t37-owners/evidence/ASSEMBLY.json": "63dfe017fe0a955fd6b12aa04c542dc5ae669581811a96214de587440b0b81a7", + "research/complex-t37-owners/evidence/README.md": "859ada21a8f584b9f301758ef477059abf7d5db7dbf5f75f7ff273bd97d7e00b", + "research/complex-t37-owners/final_binding.py": "61e8a8856ebc36feee11cbf6e60f2ace3b9b89195c3282f565a651488cf947f7", + "research/complex-t37-owners/independent/all_t_bound.py": "3f8637a90baaa11ef18eab9e739d17b32fcff18fbc50c355f9ef32727a92e4f6", + "research/complex-t37-owners/independent/check_payload_controls.py": "5b59c6f50c0d79c5857dd4efefdd0fb472ba72fbaafa91596a5a3159500e98cf", + "research/complex-t37-owners/independent/check_t37.py": "af77010b89db12d58030579e19273f960abb301f651361b448e8caf82d8355a9", + "research/complex-t37-owners/independent/verify_construct.py": "094a93a7edd3c63890d0313a0ff8b71e335f570cfa548b9b20d8809e3d05abd2", + "research/complex-t37-owners/package.py": "7022764ffd5abb8c869cf2269cc8fb188f574560c379abb00b40aba671d22278", + "research/complex-t37-owners/package_controls.py": "f152d1cb57dd63af5abdaea88f03090ec7e24b8eb90d30b9b659030cb89c9991", + "research/complex-t37-owners/prepare.py": "8414859fc69885e5698fb3dbe0f7d9ee20d9782102e0abf7da991c904920fe47", + "research/complex-t37-owners/replay.py": "7834f469861df4a8ed82550762e7d1640123f547a715b55a937dea0cb381cedd", + "research/complex-t37-owners/verify.py": "4d880a6237c2f5d4f4e08374e2a4ddbe7bdcc972fe4ee0e879e9a547754f5fd0", + "research/direct-delivery504-global/EXPECTED.json": "0c4c7df98633ace6dd3f1604462dd509945f6b2d463a0b045442b785906101f1", + "research/direct-delivery504-global/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/direct-delivery504-global/LOCAL-VALIDATION.json": "e7dcbbe16d3a51288dddcc9022ba852ea6c9d428f8391c72d9b61429168a5561", + "research/direct-delivery504-global/MANIFEST.json": "c1997405c5c0ccd9bdb0a30b0eb9a5a2dc7dc7ce7b59c6a83a2152b80f6410d1", + "research/direct-delivery504-global/NOTICE.md": "a92f49c5ced455160fbedcc8954e3c9255e3605e88ad12ae5a84f1c4302986f1", + "research/direct-delivery504-global/README.md": "305497b4bf15e691bf0ea504f628a397ea40b814053948ca32c84ce5c16e6f5b", + "research/direct-delivery504-global/SOURCES.json": "9e8182e6e659f4671fe0873e324b622cc871df7344157093df40476c8687be5f", + "research/direct-delivery504-global/code/adapters_local.py": "4e89a5c517cd87ff6a5aa9b7334c0d74821179ae5777d31284da25b9d8abf113", + "research/direct-delivery504-global/code/assemble.py": "71b4cbbbc5acdfe06ac67879cf54ea761e29e52143af1cd8410ad672a5cc190b", + "research/direct-delivery504-global/code/audit_and_transport.py": "a4fc272266785e1fffd44775c6fa6df783c4352de4c3f1d925cf953a23b84e7f", + "research/direct-delivery504-global/code/audit_local.py": "69b12c45d0a961175a824c1967353c7f3b94818a7dd6ac7bbcf56a6d1a5ed8e8", + "research/direct-delivery504-global/code/audit_same_partition_frontier.py": "3a2a072304c0c112b4938070515035b49595c86565b454806fdcbbfacf0e1bd2", + "research/direct-delivery504-global/code/audit_supplier_hosted.py": "301e9b5c593b6d583065337eb7b3ef207cf039e265f099f89080a4bf25856b43", + "research/direct-delivery504-global/code/build_selected.py": "7fa8f981cbf3b01ac960226e6afc6be7bd76d94d9c01796941979deb77bd8875", + "research/direct-delivery504-global/code/coalesce_frames.py": "b3e53a17f2519e1afc5bee9b6518252eeb0cb7c56b6e0a1554fdfb54f2908915", + "research/direct-delivery504-global/code/construct_504.py": "a0d96ede40b957c38dcb64296d5f4a76c23dfb8c8875e01a80b5f1bdf6e8360e", + "research/direct-delivery504-global/code/emit_local.py": "eefc76e0bee003015fe21ac685c2cce658033d5444add404d2d509c7d6f39bac", + "research/direct-delivery504-global/code/emit_supplier_hosted.py": "53c0b653b3a5100756d6a9473c90101b8c3ab72723d7047983906ab997bdf920", + "research/direct-delivery504-global/code/invoice_final.py": "96b6bed96ca8b60dfc064cd1c7962c45a5cb53c4e52cd90aaea6ccf8d109db97", + "research/direct-delivery504-global/code/phases_delta.py": "15723107eff03013b2e797fd9fa3635b1b46c5d1c8112d19fada98c178d4acb6", + "research/direct-delivery504-global/code/prepare_supplier_base.py": "f5eae94aca965d0008bc07cff8245ccb7509042ccad457d3bcb7d51c1e9409f0", + "research/direct-delivery504-global/evidence/BEFORE-COALESCING.json.gz": "5381265008ec84dc0b3eb2870040215b8470620d234573c15e836dba928d910e", + "research/direct-delivery504-global/evidence/COALESCING.json": "f9175c204c084e083ba2f8f4bc66dc71feb75d90b1b57b36dfacbffe89568ae0", + "research/direct-delivery504-global/evidence/DISCOVERY-MOMENT.json": "d964db94f4a11840bbea57a47c203a2fe6b51a381072d403d1c1504ac2ba0c7b", + "research/direct-delivery504-global/evidence/ENTRANCE-SELECTION-SCREEN.json": "2d5c7db49077ea50f0877f1bd3a5839e5c49a7c75519ebaf549bce0e828b7b99", + "research/direct-delivery504-global/evidence/FAST-REPLAY.json": "b95028b7cd5a830bd5d702d5193f0bc93d981426ca6f8916eea7a2bf9dcc53a7", + "research/direct-delivery504-global/evidence/LINE-GAUGE-SELECTION.json": "1ecec9dd594653d54448ba9e2fd7b7b830e26bfd159d3b268672f80d8cb06250", + "research/direct-delivery504-global/evidence/PR523-FIXED-WORD-CEILING.json": "e971df6465b6a37d2042bd7e2169419578d68d7177c060599b16b3f67292935f", + "research/direct-delivery504-global/evidence/PUBLIC-SNAPSHOT.json": "d859621516bb33d1c77ea9413b53930fab42447360b7e6246ba839b95a834abb", + "research/direct-delivery504-global/evidence/SAME-PARTITION-FRONTIER.json": "3a02123a292730c1dfea8d6c1c8238115b4b07d19c8b8f119b54c345cd1f46af", + "research/direct-delivery504-global/evidence/VERIFICATION-SCOPE.json": "424ea699b0849c3e8dd41d585b271906cbbbbddb4c3464fd20dde30133bae367", + "research/direct-delivery504-global/evidence/audit/ASYNC-AUDIT.json": "01ea0015d4e08170ac65f1cdd051be64e07f622eba62eadbf39524317388cba7", + "research/direct-delivery504-global/evidence/audit/EXACT-ASSEMBLY.json": "550c6703e73b2dcfaae986706ceb1ac67ecd93dec8b591954abe51c7fa3b7a03", + "research/direct-delivery504-global/evidence/audit/GLOBAL-PREFIX.json": "378275e21f7ff147cd7cb0b33c972e75139d949195ddf13dd71b55a77a0f7cfb", + "research/direct-delivery504-global/evidence/audit/IDLE-REMAINDER-FRAMES.json": "7923ed6a528f006c353fe7e0639fd230ad140ca835b8e64ceadc7aefb0300ea8", + "research/direct-delivery504-global/evidence/audit/OWNERS-AND-PROFILE.json": "e5f11e7b920f9985f085546c641dbac5b8d98231d562e1e030ab2566ccea4bd6", + "research/direct-delivery504-global/evidence/audit/PREFIX-AND-INVOICE.json": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "research/direct-delivery504-global/evidence/hosted/ACTUAL-SIGMAS.json.gz": "dbced27348bd0ae2fb937a9c1fd03e2181d7268ccdea5d80ebbe6ec3fed314d9", + "research/direct-delivery504-global/evidence/hosted/GLOBAL-TEMPLATE.json.gz": "0c5ea47883fafc2aa0b2b9711e7c52a3fc8fdf96c84eb3043834e34ced550473", + "research/direct-delivery504-global/evidence/hosted/HOSTED.json": "a0b29d73f2beb821a59f356150a7a9475394643bf9fd8eb5a67a6fc4d46ad2f5", + "research/direct-delivery504-global/evidence/hosted/IDLE-REMAINDER-FRAMES.json.gz": "a21fb2c7395b7193d46752f7bd9cc670fbfffc7287f8370bd9f6df0aed6b21eb", + "research/direct-delivery504-global/evidence/local/CANONICAL-WORD.json.gz": "de2be0f4b6d24ace368fd5b834b7a00f9625d0a1824c4ff969f2db5f115db667", + "research/direct-delivery504-global/evidence/local/CLIFFORD-RECIPES.json": "1ac0a7d07a487bf58e59e82a8a656a3a3edca5731af9029ad7874b535407ceb9", + "research/direct-delivery504-global/evidence/local/CLIFFORD-REVIEW.json": "a917bb1abdc864b404dc4a869af3e29aaab2270d392b662cb60b70ebbe5d1975", + "research/direct-delivery504-global/evidence/local/FULL-WORD.json.gz": "bd6b004c4948d5ce80d4f81477338fe30434c2a94586463fdcc531df0dbc9509", + "research/direct-delivery504-global/evidence/local/INDEPENDENT-LOCAL-REPLAY.json": "4149f3d2ec3041965c5d72869748090d9aeed422f36d753550c543bb7808b30b", + "research/direct-delivery504-global/evidence/local/LEMMA-A.json": "f789357f75d562ec9c6f2ef75ced6f4286df2840b493600147b34a36ad0fa460", + "research/direct-delivery504-global/evidence/local/LOCAL-CHECKS.json": "c6807681d40cb46c21a50edc1058044ddc758f2dd3e6b0bab16d7cb28d41732f", + "research/direct-delivery504-global/evidence/local/LOCAL-PROGRAMS.json.gz": "755a5c4ebe958fd9f7b5d4a6e7a506d2c802e31c4d9da46b63db1994c4d8ffa6", + "research/direct-delivery504-global/evidence/local/RESIDUAL-ADAPTERS.json": "83a91fb9cbbe600328cd399f67fdb6ffb698ed3b20d050916d21f3af48b0db20", + "research/direct-delivery504-global/evidence/local/SCALAR-FRAME-AUDIT.json": "5bf884b9c5c9e65658974a8f5548f93a583fb48461e8125fa68893aa2b403718", + "research/direct-delivery504-global/inputs/ASYNC-6.json": "8a128d7c435f01d9f920c1353711eb0721ce3cbdd0b8799bf69b2d676266dbd3", + "research/direct-delivery504-global/inputs/OWNER-PLAN.json": "13d5284e3d95fd4718b538f7d0d1e6f8db3236d4608a755dce6deade440f4185", + "research/direct-delivery504-global/inputs/OWNERS.json.gz": "5e27eaf098214e3ab8159e322241aa90a1ae77b0bff78b426512b87f9f60c91f", + "research/direct-delivery504-global/inputs/PR493-EXPECTED.json": "3494ba83280cc86548fe0cc6695c50d23e6b6ffca85aeb1a33337c1196e280cb", + "research/direct-delivery504-global/inputs/PR523-ANCESTRY.json": "0bfce40d86c849f18e8872ee9e8462b0a69a34ed04e01e942a6614645f686f4b", + "research/direct-delivery504-global/inputs/PR523-EXACT-ASSEMBLY.json": "39900354203609a142d159096ccc221ddb21c1f714b2b74b9b1b325beaf15259", + "research/direct-delivery504-global/inputs/PR523-PREFIX-AND-INVOICE.json": "bb43ef04791037a37d2596c395e81191991fde6581326118995cf4318ee472a3", + "research/direct-delivery504-global/inputs/SELECTION.json": "46cfad0c5a4b8dacc18ed02b5e259f2168e6a93a8dff6ffb447fb0f20917a9bd", + "research/direct-delivery504-global/inputs/data-base/split-centres/CANONICAL-WORD.json.gz": "addf598581d2a20e13d0c18110607515ad90b06125616a2349e53a47bb5b6c80", + "research/direct-delivery504-global/inputs/data-base/split-centres/GLOBAL-TEMPLATE.json.gz": "5b913207775fcd87090cfa8776e8bd2bb872426923345fe1a1a4e1ea84bfae2c", + "research/direct-delivery504-global/inputs/data-base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/direct-delivery504-global/inputs/data-base/work/pr361/code/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/direct-delivery504-global/inputs/data-base/work/pr361/code/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/direct-delivery504-global/inputs/data-base/work/pr361/code/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/direct-delivery504-global/inputs/hamming/PACKET-PROGRAMS.json.gz": "d833ae0390d165d7da0c639a3c7aeb77156c2ddb52447087cb49b9d03b19e9b9", + "research/direct-delivery504-global/inputs/hamming/PROTOTYPE.json": "327d2a868043e846381aa58a33053c24425e8cad522ff401b10ec8af1d649a3f", + "research/direct-delivery504-global/inputs/phase-baseline/CANONICAL-WORD.json.gz": "addf598581d2a20e13d0c18110607515ad90b06125616a2349e53a47bb5b6c80", + "research/direct-delivery504-global/inputs/phase-baseline/CLIFFORD-RECIPES.json": "1f37afd5a9e14b113ba56e0ac8a5200a6b41c695d2cd308dc0fd6ec46a4c73d2", + "research/direct-delivery504-global/inputs/phase-baseline/CLIFFORD-REVIEW.json": "468a5df1937e82a0b8e8c1c2540e18480f354154325353c5596c68e7435c89c2", + "research/direct-delivery504-global/inputs/phase-baseline/LOCAL-CHECKS.json": "ead7163869ecb9fc276f477c0ec0ed85dc74d7901ce04f91213bcf7ee1f20382", + "research/direct-delivery504-global/proof/DELIVERY-AND-COALESCING.md": "7e719f01416cf312272dfabca8b355d327128859c01d686056e0833e83870bc7", + "research/direct-delivery504-global/proof/GLOBAL-HOSTING.md": "c47b61bf2e998583e4626eec068439600f3464aab2ddbdb0ac044b0136d7b502", + "research/direct-delivery504-global/proof/LOCAL-CONSTRUCTION.md": "3b1fc44f6f8290361cb24526cf91c3174c734f5da3cc9fb94559a96168d39e70", + "research/direct-delivery504-global/vendor/clifford/clifford_exact.py": "2982ead07721e83358dc67c6f49c2b4c16a236a6bebdfd72f58221be1f5d0962", + "research/direct-delivery504-global/vendor/gk/gk_common.py": "e68d190fd436b2f3955decb590adb53344d5d4ea0a19d62d86df1e4b55ecd198", + "research/direct-delivery504-global/vendor/gk/gk_word.py": "f027a9273bcf4e0971258c160b7d3b3c196366b32a529cff6e6a0e666b03826b", + "research/direct-delivery504-global/verify_fast.py": "ea4e33a17419009f0872fac42f7ae5a2f2090c4487cc9815721d907d1e9b1cae", + "research/e8-bit-carrier-skeleton/EXPECTED.json": "3494ba83280cc86548fe0cc6695c50d23e6b6ffca85aeb1a33337c1196e280cb", + "research/e8-bit-carrier-skeleton/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/e8-bit-carrier-skeleton/MANIFEST.sha256": "7f25c41d0400ef5adf763eae6e166003a9b59e5a655b860c04b052f6731c7297", + "research/e8-bit-carrier-skeleton/NOTICE.md": "5f4b7fcbf99f572be28b6da612ce775363908cdfc7810f7aca167be01c86e49a", + "research/e8-bit-carrier-skeleton/README.md": "e5212e8058c92a2b02cc12b4e174a65ce1cef7b4d7977ae770e64f5ff91b7204", + "research/e8-bit-carrier-skeleton/SOURCE-pr370.json": "03de1d341196cfa8cf1d39f3cc8648b25bb5f39c3c602a728cfbd089e8253ac0", + "research/e8-bit-carrier-skeleton/SOURCE-pr381.json": "16b1977240ca9acb58fa64572fb4231a423bc10bbf3e7bb30f1c8201fe369ba5", + "research/e8-bit-carrier-skeleton/SOURCE-pr386.json": "87c659ba932525631a40be14dca28a6a2efade8641f23bb08d6e1567fc991131", + "research/e8-bit-carrier-skeleton/SOURCE-pr436.json": "4a4f99f5bdb7530a0dcf9433f7f02afbf2abf908e718f7c63ffa5503d4f49693", + "research/e8-bit-carrier-skeleton/SOURCE-pr445.json": "e6f4a272442bb71ef68aaa3545b271236f9c99297e444fa01c62b0b5fb6a170f", + "research/e8-bit-carrier-skeleton/SOURCE-pr448.json": "c771fa9be492408a78d6d970c839e68c4dfd1b66f4f4a4748e3d12726a43cf27", + "research/e8-bit-carrier-skeleton/SOURCE-pr451.json": "a639956eec858341987a815b7464ef472505300db754b5f9ac012dd01d18c8df", + "research/e8-bit-carrier-skeleton/SOURCE-pr458.json": "cbdea984a46ab5de354b95e73fd76c1918fdc6676c658398a552772c4dc3dcaf", + "research/e8-bit-carrier-skeleton/SOURCE-pr471.json": "499d861e090c9e646d978dd67890a8e58a9ff6bf08512684e66605179132076b", + "research/e8-bit-carrier-skeleton/SOURCE-pr472.json": "6753bcf50c91806b75dd4dbe3963a79699a614d0dab8ce32b261cc3e76b288b1", + "research/e8-bit-carrier-skeleton/SOURCE-pr473.json": "2515c4f23dfa22a21913d92597669770f7f44c2a5b3ef069ef68a0c89779a656", + "research/e8-bit-carrier-skeleton/SOURCE-pr478.json": "9c7c4ea678865a955b0c89f0952927159976fdf55cadc6a488dec5757f03fe7d", + "research/e8-bit-carrier-skeleton/SOURCE-pr483.json": "24e3eab4a985e115adb7f8665a401423e9636e9f16cc4373ec68cc86950445a8", + "research/e8-bit-carrier-skeleton/SOURCE-pr484.json": "b92f43fbcba3921a1aa37bcb9f05cf5fa612ff708785e05512438a6317bf0867", + "research/e8-bit-carrier-skeleton/code/bit/checkers/columns_h.cpp": "d1297f9052be4f2496e1ff2a77e4db2c0cdbd7d460d489b4c03e50bf317238ce", + "research/e8-bit-carrier-skeleton/code/bit/checkers/columns_k.cpp": "1c344d18fcd494eeca93e259f10cafae7705780e6592f6dcb35b34752dab9bc2", + "research/e8-bit-carrier-skeleton/code/bit/checkers/gram_frames.py": "223a5a07731fc315a90a3e48177796babc155c1d9985c7ae5017eff6af2a0608", + "research/e8-bit-carrier-skeleton/code/bit/checkers/json.hpp": "aaf127c04cb31c406e5b04a63f1ae89369fccde6d8fa7cdda1ed4f32dfc5de63", + "research/e8-bit-carrier-skeleton/code/bit/checkers/legality_h.cpp": "6c1ef2b24e57781d6951c172a1024fc4300e6fd392c9d6672079a7806ab663b3", + "research/e8-bit-carrier-skeleton/code/bit/export_records.py": "8a5999601f917dbb492bb9ae9a344611f18cc7cedc53dc3c76496a369e530eb3", + "research/e8-bit-carrier-skeleton/code/bit/independent/checkword.py": "11bf9620ca9db16d52d9fe806b814fc9ec9a89c4d7645354d1861d96f6e805ad", + "research/e8-bit-carrier-skeleton/code/bit/independent/interface.py": "2c63a039f97e3a11ce5a6b83302d4f5beda160c1db14164a5a9b0855aeb19d3c", + "research/e8-bit-carrier-skeleton/code/bit/independent/mutate.py": "0ff65aace5da4b57d96235bf830f8f11969322e75134d498aeb70e9753ec6b0d", + "research/e8-bit-carrier-skeleton/code/bit/independent/mutate_mut.py": "3b002c19a5dcca76a5594f2a30fac7c01d2b45fc96b3e7cfbfd8b720f5ffb4e8", + "research/e8-bit-carrier-skeleton/code/bit/independent/relax.py": "d6e9f58de3fa41f538516b6227c249d61fb30f0f6843027cc8a07a1a372fa6b6", + "research/e8-bit-carrier-skeleton/code/bit/mutate_records.py": "b0e75d6550412a7be4017695e6b237392b611bb852ad8ff309d6682c9f166a4e", + "research/e8-bit-carrier-skeleton/code/bit/mutate_records_mut.py": "a9e085ec60d5657cd5d77832e3d95004e81b9f4f249d9e0fc95e345366cb2d2e", + "research/e8-bit-carrier-skeleton/code/bit/regression/stage_cohort.py": "6c288f6f234b528c1a7c0a4adfb724e91e0fe6b18c8dffad96af3f973de1829a", + "research/e8-bit-carrier-skeleton/code/cited.py": "a4c2dd4755f2a45ceda327b36d9ee400c2804893000626ca8ff3f6ee296fd842", + "research/e8-bit-carrier-skeleton/code/eleven/adapt.py": "d8a8c13b484d985f0133a5d06de4a78b8477314f922b9f693ba73640b7184d6b", + "research/e8-bit-carrier-skeleton/code/eleven/assemble.py": "c47889a606701ae592374dd82a13cee8c5a4e8449b7facfdad2d90563a30a18c", + "research/e8-bit-carrier-skeleton/code/eleven/audit.py": "5ad832830c19ec6c904d1b64480f6b1e71c5673fdd38d487d17e179b1d197c09", + "research/e8-bit-carrier-skeleton/code/eleven/emit.py": "b0b25955875625ed63f82690f83aef976e3e9a978ae6620b23a23fc1207acd46", + "research/e8-bit-carrier-skeleton/code/eleven/local_audit.py": "95275473d7f9811011bda760dd0f04de5169c2a6922456dc9a5725a5d671f941", + "research/e8-bit-carrier-skeleton/code/hub/e8-r715-whole-hosted/code/assemble.py": "abb60c35e448e0f94073f38a0352d11249aaf7bb8dbd7352414ae60a1d2b79c3", + "research/e8-bit-carrier-skeleton/code/hub/e8-r715-whole-hosted/code/audit.py": "d28062127a9b0d3866a3b79aad98a307233b20ebdb94cfb9f197d726b82ffea5", + "research/e8-bit-carrier-skeleton/code/hub/e8-r715-whole-hosted/code/emit.py": "98d77cefbc3a76f9f10bd7df3a2590ab88b411f6afe77b5f8d73f1602eb2bef3", + "research/e8-bit-carrier-skeleton/code/hub/e8-r715-whole-hosted/code/local_audit.py": "23eda3fe3d774e7f2dbf4dbdd4ff90d69ae7d1762ff95c8629cdc7667aa3fe71", + "research/e8-bit-carrier-skeleton/code/hub/e8-r715-whole-hosted/data/hosting.json": "765382d4fefd594e94c8c5826ec6300422ce9f79c816d7f7323ef85e99320f28", + "research/e8-bit-carrier-skeleton/code/hub/e8-r715-whole-hosted/data/residual-isometries.json": "750221cc66badd0ed0a74e7aad2d59f91f89c107370af21c6d929fbdd4a08a9f", + "research/e8-bit-carrier-skeleton/code/hub/e8-r715-whole-hosted/data/word.json.gz": "b2af02f593cd161bea64e6cd793508386914136be519f80726c071697379d5a9", + "research/e8-bit-carrier-skeleton/code/hub/e8-r740-replica32/code/bank_routes.py": "7c6997c455bd55acca3a1603797c34e7733d557c27a7694a1429ff15773a505d", + "research/e8-bit-carrier-skeleton/code/hub/e8-r740-replica32/code/e8core.py": "1cb286196c1530d06f50f0997febc5993b388f33464e295611b920ba30a24eeb", + "research/e8-bit-carrier-skeleton/code/hub/e8-r740-replica32/code/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/e8-bit-carrier-skeleton/code/hub/e8-r740-replica32/code/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/e8-bit-carrier-skeleton/code/hub/e8-r740-replica32/code/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/e8-bit-carrier-skeleton/code/hub/e8-r740-replica32/code/tile_m.py": "d6ae4a556472d403773cd2117c992bfc10e1187112da1b3893f3fae628a131dd", + "research/e8-bit-carrier-skeleton/code/hub/e8-r740-replica32/data/residual-isometries.json": "e12ed7ddd13cee101ba74a083b54665fd64d0b122b0bad5b83d817dcc8bae9d8", + "research/e8-bit-carrier-skeleton/code/hub/e8-r740-replica32/data/word.json.gz": "d8d6d3d3f336720302bc40b3c1504fe3c3583a7a8d707bb9bd7b21f85e5e69c6", + "research/e8-bit-carrier-skeleton/code/hub/idle-axis-hosting/hosting_core.py": "d8b90cd5d152df3c7c351230863d9e61816ad5e1f21d69bea1a86a5daad559a3", + "research/e8-bit-carrier-skeleton/code/hub/r740-hosted-eleven/code/emit.py": "ac63ee481f3d75cb9f0658faaa2412db81d55bc44d9f1ff1c0329ce1e75aa0d4", + "research/e8-bit-carrier-skeleton/code/hub/r740-hosted-eleven/code/geometry.py": "9554182d67e434ea84b4430f909a2c400abc755d8487b51454a8e6968e62859d", + "research/e8-bit-carrier-skeleton/code/hub/r740-hosted-eleven/code/row_bound.py": "de4a9b9cd797e1a05da56f62cfe725c8728cea3a4aa031b7d1b0a68f869760d6", + "research/e8-bit-carrier-skeleton/code/hub/r740-hosted-eleven/data/selection.json": "52dbbb68e8c147690d15eaa1d952df05d074b0c121885a4159d9f6732f391872", + "research/e8-bit-carrier-skeleton/code/hub/r740-hosted-rank149/code/emit.py": "ac63ee481f3d75cb9f0658faaa2412db81d55bc44d9f1ff1c0329ce1e75aa0d4", + "research/e8-bit-carrier-skeleton/code/hub/r740-hosted-rank149/data/residual-isometries.json": "b23fda74a7979179e8fd83ee9870c1e232442cc90c05077adaabfe31d050d1e4", + "research/e8-bit-carrier-skeleton/code/hub/r740-hosted-rank149/data/selection.json": "4d9c2cf6a3d31a6faa287731e0721cb16601b0bc5c1a186b9645bfb5760ce8db", + "research/e8-bit-carrier-skeleton/code/hub/r740-hosted-rank149/data/word.json.gz": "41626789888ee070e1b435fa380b10ab9b88e3cf7d8d8e166ecef17269bbcf47", + "research/e8-bit-carrier-skeleton/code/nine/geometry.py": "36eeda3184bd009e89462b65c8725d10860c444f8da8f1f87e5f6e50120011ca", + "research/e8-bit-carrier-skeleton/code/pricing/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/e8-bit-carrier-skeleton/code/pricing/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/e8-bit-carrier-skeleton/code/pricing/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/e8-bit-carrier-skeleton/code/pricing/prime_witnesses.py": "98cd03bc9582e7bd0ab194c191ea8eea940539e510051443ab9fd3e572a364ab", + "research/e8-bit-carrier-skeleton/code/provenance.py": "e28fd87d0e34a6f6f6f1fddb6c4891deac220662c954de855d7aa5a7f9cceca4", + "research/e8-bit-carrier-skeleton/code/skeleton/e8.py": "721d859a6517d665ca84d03ef89668da3aae7433ffb0ee47faf37f2aeb85450e", + "research/e8-bit-carrier-skeleton/code/skeleton/gen.py": "7cdcf48078ed4beacd2e240aa8145e4aa6984558748d07659cb1b252786e073a", + "research/e8-bit-carrier-skeleton/code/skeleton/geom.py": "bb356568fa05e7bfd5fcd9012903611cf742729a99b4dc3a13685355b2678ae3", + "research/e8-bit-carrier-skeleton/code/skeleton/wordkit.py": "2b6c12d96f24a4e81f2c807827c2b74cf80037367fc8034e8c871dd5ce008351", + "research/e8-bit-carrier-skeleton/data/bit/bitE8-r865.json.gz": "1fb726ea3818fe0837cceb0dd22a71a0814f064e5e781628104610d6468e0e55", + "research/e8-bit-carrier-skeleton/data/bit/bitE8mut-r489.json.gz": "835eb96e147740fc7454f8cfb3dbd34ae89524b1dbd89a61e9288eae8ab6a5b9", + "research/e8-bit-carrier-skeleton/data/complex-b.json": "dce3f4b76aa3f6c3ba826ce556ffa61398b33e81e4d1a226dd2a36ce684fb02e", + "research/e8-bit-carrier-skeleton/data/complex/pr448/EXPECTED.json": "18b42250c3faf6f0df76fcab6c3a483582192ad7bb09cb1985f4b0bb91d67024", + "research/e8-bit-carrier-skeleton/data/complex/pr458/EXPECTED.json": "a4312cb0c53c2066a28b683a971a41e7d76c5f6d828a96481c3ae7b3c01bb2f3", + "research/e8-bit-carrier-skeleton/data/complex/pr471/EXPECTED.json": "188f9d1a7450496dbfd8d64381febd20b0597141537eb1a003435297df2d1720", + "research/e8-bit-carrier-skeleton/data/complex/pr473/EXPECTED.json": "70e515f0a5a2f9508cd030d35a99f90981a6eccc027c9ad5a3c77f5860310910", + "research/e8-bit-carrier-skeleton/data/complex/pr478/EXPECTED.json": "07bd05d14c71df8925b0b03510b2b337334b73ac425a94e03b2ec34ed2680164", + "research/e8-bit-carrier-skeleton/data/complex/pr483/EXPECTED.json": "799fa4ab2f785c478c3cdcb6c1c0428a5ce6e3ddbe4a4b2fd88630d811a593f6", + "research/e8-bit-carrier-skeleton/data/complex/pr484/EXPECTED.json": "0c93018a23bc573c7d155d4786e0c3978e95be0fda974076697939a1a1d8e5be", + "research/e8-bit-carrier-skeleton/data/eleven/hosting.json": "61f790657c465d16d3455f48f90f816797b9ea08bf02dbd0c90d2cf41836257e", + "research/e8-bit-carrier-skeleton/data/eleven/residual-isometries.json": "0fa5b353a0321af2ce4e2045db1d4c2d6418a11663894e2afcdb1eaa1984bddc", + "research/e8-bit-carrier-skeleton/data/skeleton/d4part-pairs.json": "d69ffe3326140bc541b8f1639e02db43a5835ab8ca02cc742b5bee2bf2ef1ba9", + "research/e8-bit-carrier-skeleton/data/skeleton/plan-skB.json": "f6162bb4d8092bc233700fa7ebc6a0d79f2893135aee18e998369044abb3f44b", + "research/e8-bit-carrier-skeleton/discovery/README.md": "b09aa45d5651720e10326cde559c863ba3ea45fe2fb6b4aaa3bfaa66a8fcf69f", + "research/e8-bit-carrier-skeleton/discovery/d4part.py": "a64927c340a4772ce0682b349e0c90c80d1a766000ccf397fb41b36a31929179", + "research/e8-bit-carrier-skeleton/discovery/host_select.py": "2aaaac18e083d289d4341e734c32571c89c51fefba04b388d407c7372b906dc7", + "research/e8-bit-carrier-skeleton/discovery/plan.py": "40e8dea1b4b71c5afd5993625f57bcac089dd2f72dfbc4dbc23ce917e5a61010", + "research/e8-bit-carrier-skeleton/portable-include/bits/stdc++.h": "420094be2af295eed03a983dd66debbbe9cfb78d8252859f4498a615a0074b99", + "research/e8-bit-carrier-skeleton/requirements.txt": "6023d480f929cdfa4e2f35e361eea003451cd6695af806935a32038b0115abb5", + "research/e8-bit-carrier-skeleton/verify.sh": "0f9248aa3611dfe2b5d59dbe992c6f7d21a0cc4f1de2b5ed05a6110191191224", + "research/e8-bit-p111-tuned/DEPENDS.json": "fa9253078c444b8f4a57e849048f727c3c8233c3dc3c7f651bef2cf7bb0178c5", + "research/e8-bit-p111-tuned/EXPECTED.json": "7c2675fd49afd7e328606399a4421fd49c43fe8a6c5b57154cc908c00588abe2", + "research/e8-bit-p111-tuned/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/e8-bit-p111-tuned/MANIFEST.sha256": "8d8fc2625b71b835176b666385c69fa4d1e4c5839e8e601924db2c9261761310", + "research/e8-bit-p111-tuned/NOTICE.md": "5b88eb2b7de76aa2a3288ee3c7a08d18a5eadfa82f5e7a99e207d232aed71221", + "research/e8-bit-p111-tuned/README.md": "a054ce8453e2936d45c4edd1c3678993903fcf6705ac241b9f1a4c4f9accda2d", + "research/e8-bit-p111-tuned/SOURCE-pr510.json": "5e84c26ba837ce029acd1b5089e5533d2ebde793deede84215322112e95e06f8", + "research/e8-bit-p111-tuned/SOURCE-pr535.json": "74254fde5cff5580d5c199b139ff3ce31a3defded3f653a3ba83cf0c9204ddc4", + "research/e8-bit-p111-tuned/SOURCE-pr544.json": "9ae1cfa69158f678499510e9cf24396b2bdd9b68979e906cbb8d4ee29b63e0b9", + "research/e8-bit-p111-tuned/SOURCE-pr545.json": "4b868b05c092eb821b257eab0f429f7c502fde946dd6508e8f5161a8758b4904", + "research/e8-bit-p111-tuned/SOURCE-pr548.json": "4480cd4e1dd0dc2bf55c26a1ae4a8bbb8587a96cea3053687e5d4c874148043e", + "research/e8-bit-p111-tuned/code/adapt9p.py": "14365d0eb8f4a7352edd28816196148fd28d5bbcb36044ebeeb15ca051bca9de", + "research/e8-bit-p111-tuned/code/cited.py": "8f7852571a897e131cf964d4b7826dc7bb2b7a42e81892d436f8ea092b26ef7d", + "research/e8-bit-p111-tuned/code/gen_p3.py": "438b83f10d70ceca7cf78049420204b7de2dc61682f913c50a62596106ad84cd", + "research/e8-bit-p111-tuned/code/mutants.py": "e2fd3429e2db4389ae8a5ab47dda89f551b0d0952c42fad5ac8d38a85d670594", + "research/e8-bit-p111-tuned/code/mutants_p.py": "ee2a2cfb44072a214dd29eae5b96a71b258ac886a05456b84d600de94b339591", + "research/e8-bit-p111-tuned/code/mutrec_b.py": "231cbf26bfe5e6824347e4556959941d8b4dea1efa06d7f88d7a73cca8b03158", + "research/e8-bit-p111-tuned/code/nodeopt.py": "6a5896f60b1fe05c41ab28ce822dff782c635e12d0c74fad20b5ce2a4010fa3f", + "research/e8-bit-p111-tuned/code/planio.py": "c0a687f61aed29455cea953d8a3e49a32136edb3cd4213c46880c146a6ca7fa3", + "research/e8-bit-p111-tuned/code/provenance.py": "aade757c1e4e2714207cbc80a9a60793d84b5f009de2cac79ee8d3239986fd2a", + "research/e8-bit-p111-tuned/code/pwordl.py": "6d8fccd44508e4705b6446e0a64482a5221a3efc5663c5ca7ae90d44581ac50a", + "research/e8-bit-p111-tuned/code/receipt_kappa.py": "6ac4cb3c6015bd46f3b0a88dfffce741d8942a703cc68738ad61953fae485e9e", + "research/e8-bit-p111-tuned/code/summary.py": "c7599cafe1a2330a2fc8a956dca457f802dbb8b04e4dc4ffa9d90890e5efb428", + "research/e8-bit-p111-tuned/code/xcheck_p.py": "af3decc877e27c00001cf56f50c6c09566e8e101297ab34c7860aed96a06d80e", + "research/e8-bit-p111-tuned/data/bitE8mut-p111.json.gz": "1bc3c53d4baf4927c6a00c339ea3975516471a48074d4d97c6addaded2a4d858", + "research/e8-bit-p111-tuned/data/complex-b.json": "96943a080f371392381c70676638c7b3281ffc44f96b50d7ab064f59aa9897c0", + "research/e8-bit-p111-tuned/data/complex/pr535/EXACT-ASSEMBLY-PR493.json": "3f4be566309841e00e842d5686f7937a355ae1a6a2eaa3ccb07bdf8a9ca604fb", + "research/e8-bit-p111-tuned/data/complex/pr535/EXPECTED.json": "cb734055c36681d38cf431a6926b7713351a94073cfba37d70a5384a9ef0d178", + "research/e8-bit-p111-tuned/data/complex/pr544/EXACT-ASSEMBLY.json": "eaacbe5a9b971b20f59503a5e948c1ba76c5e082f81a012c9cc7394494bc4db5", + "research/e8-bit-p111-tuned/data/complex/pr544/EXPECTED.json": "8f48531cb1ccc6c1fe7c80ba5990f8aea4278dbe9394bcc4d3f471a3e8d75f1c", + "research/e8-bit-p111-tuned/data/complex/pr548/EXACT-ASSEMBLY.json": "8c40d6a7907c2ba71284d4f29a2d6e6bbe4dfc5da92a6da1bbac13488b916349", + "research/e8-bit-p111-tuned/data/complex/pr548/EXPECTED.json": "2e458dd9880d001b63153e37ef7954c6bcfceae378ab4b225cfa1c94ea8e23ce", + "research/e8-bit-p111-tuned/data/hosting11-p111.json": "1f5a1142e0119483cabf9a4d99094d988014d1adaa29370e93f4b4a63d9bfd7f", + "research/e8-bit-p111-tuned/data/plan-l3.json": "d5c2494b4baae801143049e172db303b3c8e25a002e9d9715a1d79dcb2d74c58", + "research/e8-bit-p111-tuned/data/punct.json": "dd371e1d6fe57602f242920b582ec4c133efc8ede4a849fd701ac90b7f6e1853", + "research/e8-bit-p111-tuned/data/selection9-p111.json": "4ab1ed4529683cd184987f8bc3031fb7408b9cd22c25ab9cf541a8aaf896eaf1", + "research/e8-bit-p111-tuned/discovery/choose.py": "18d77e8f62ffc671b3b3d3e50626c03481a2eaf6fb4abbc131e08226feebc180", + "research/e8-bit-p111-tuned/discovery/search.py": "edd876212edf0db3f6620534dcf50b5d2c23197c2d5f8af8c030ed5bc8447923", + "research/e8-bit-p111-tuned/requirements.txt": "e11a6f5c2a40b77fbf54a31a4c45bac575e9d2f765d35b657406d5f088fd0664", + "research/e8-bit-p111-tuned/tune/EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/e8-bit-p111-tuned/tune/README.md": "46c7917fb252949f38b7bcd88cf568efc282e3ea065b61d11e457e41673d0b2d", + "research/e8-bit-p111-tuned/tune/apply.py": "806ae4cb2648e4f05dcf56bd089891fd3ba33a6ee5fe76d3329e322c6770c1a1", + "research/e8-bit-p111-tuned/tune/bitE8mut-p111-tuned.json.gz": "e3e301e62bc2b41dbf1ceac0acf3d35824ebeab1848c5a2142d4577b109da52f", + "research/e8-bit-p111-tuned/tune/fastc.py": "ae51f1fbb22b8c8dac8aab787c798361f6aa5d4e1fefb29e43d0197899d4eab5", + "research/e8-bit-p111-tuned/tune/moves.json": "a113933002239eb2dd32726bd572ba8ca41b5bce0d438327dd770754c8d5e0f4", + "research/e8-bit-p111-tuned/tune/summary.py": "24841f9f5b039f05cfa934295203c982faf181cf28b9b1a71e50d1a35dc723d0", + "research/e8-bit-p111-tuned/tune/tune.py": "bdaf632852c514b257bcb1b81004a942fc022ab876565b4e5f6ff5a038d323c2", + "research/e8-bit-p111-tuned/tune/verify.sh": "efb1051d3e2c6119574a29a8e4efbe316307b5901d05079d029e12fae9ff1fb1", + "research/e8-bit-p111-tuned/tune/wlib.py": "a37fdf3cdf5f62945c2a90193401c0e9edc9dd3cda8d8cb36a3b9c329ebe4dbc", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-dead-totals/data/bitE8mut-r480.json.gz": "92e399e9a486b55229b5624632ac54f800dd9e022f2aee97f1e5f264bbc0ef5c", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/EXPECTED.json": "883f7a1a84f31d9e4430e348bc8d9c1ec10210b206ff602dbe126349056af13d", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/code/adapt.py": "27b6b77cc4ebf439f9019e63a22dedc1ef72ee65fe120aad3d17316b1df06d7b", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/code/assemble9.py": "4bf6768224a3fac81ccda26df24f3763f9a4fbc35ad62bef2888595cdae519fe", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/data/selection9-r480.json": "8176db518bed23ea8121543bfb18085ec6633064142ba40ac5db00f63b06553d", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r715-eleven-stage-whole/code/audit_hosted_k.py": "57e558c80a2fea6e291587b04afd76dfaee3550729997798b61f33daf90b8ec9", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r715-eleven-stage-whole/code/audit_parent_k.py": "374e1d983589463bbfa06b6e9f2ffafb9d2c14acf97b1f858593a3cef90e93d2", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r715-eleven-stage-whole/code/bank_routes_k.py": "ea678a7befda10c6f1b9dd38a36fe1437c6468472bd649f60b9f01522047e0bf", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r715-eleven-stage-whole/code/emit_k.py": "298b16c3d4f58a468ad1a64564c8500cb281414a3f3c0428fd467908eeb4a4b4", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r715-eleven-stage-whole/code/global_k.py": "6368196a393ac25bb2918880e4c4bd31ed733b762c27b6873ab391cbc0c5c3c8", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r715-eleven-stage-whole/code/hosting_k.py": "081c3b95b18d900d97ce82af64fb428f085b6adc6d8ca93ea920797dad7eb81e", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r740-replica32/code/bank_routes.py": "7c6997c455bd55acca3a1603797c34e7733d557c27a7694a1429ff15773a505d", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r740-replica32/code/config.py": "283d7fad45155ee91e704d63ec947cf4a60aeff5cc43510bc0e835f7da7d8767", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r740-replica32/code/e8core.py": "1cb286196c1530d06f50f0997febc5993b388f33464e295611b920ba30a24eeb", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r740-replica32/code/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r740-replica32/code/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r740-replica32/code/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r740-replica32/code/tile_m.py": "d6ae4a556472d403773cd2117c992bfc10e1187112da1b3893f3fae628a131dd", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/idle-axis-hosting/hosting_core.py": "d8b90cd5d152df3c7c351230863d9e61816ad5e1f21d69bea1a86a5daad559a3", + "research/e8-bit-p111-tuned/vendor/pr545/EXPECTED.json": "dd078d075b153ea2ed02a4bbd1fe467315930f4d7dc90f2c34cd2c33e06a5029", + "research/e8-bit-p111-tuned/vendor/pr545/code/adapt.py": "b9a50303147a3003ad94fc4b1a822d4fca7f9b9e917d165e3c45152575302a0e", + "research/e8-bit-p111-tuned/vendor/pr545/code/punct_cfg.py": "7cedd3416d6a8ce2e6393cea32dc1d11032190787a593a0ad964a0b62fc407f3", + "research/e8-bit-p111-tuned/vendor/pr545/data/bitE8mut-v111-r489.json.gz": "c78317ab05ea175dc380f4dce2bafdbcd7e8b46f0c9d6baf350c2f604bb3ae4e", + "research/e8-bit-p111-tuned/vendor/pr545/data/hosting-v111-r489.json": "862155e5c341053668ac1a18db05591417c38b9fe5f395d64a3b0a17a1502042", + "research/e8-bit-p111-tuned/verify.sh": "3bb8abf984e98fccf77914ae56d51eb60aab284db677905c1c4aafeacc44eee0", + "research/gauge44-frames-x/CONSTRUCTION.md": "7d96eb958a6b4274ea4c4c539b585f8ae2e89363b76aef930f90d2d513e164ea", + "research/gauge44-frames-x/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/gauge44-frames-x/LOCAL-VALIDATION.json": "f81fbd98eb608b8119f03f89a5692bcd610845fc97022337931586d8582b706e", + "research/gauge44-frames-x/MANIFEST.json": "e1b7998c8f7cb24f8674d250d0510f2b5b351b2ed0b35f17a17e6bacf3d9824b", + "research/gauge44-frames-x/NOTICE.md": "ca9031d8f3f91d074055a6675772be343f05ac3bd30d73259ff292fbe3196666", + "research/gauge44-frames-x/PROOF-NOTE-BIT.md": "e5e96ddd1e7b3cb6d30bed8e5979fc1e9233ed9f10d77a943bdaf4e52cce0b9d", + "research/gauge44-frames-x/PROOF-NOTE-FRAMES-X4.md": "39c50420ebb6e8813706a49b2cf759f277c4afac9f6780fc0a7ac6a5fb86e036", + "research/gauge44-frames-x/PROOF-NOTE-LAYERS.md": "92bb85b056803770882afa916277c5b49a7027159c113a106e7b2b33e57c097f", + "research/gauge44-frames-x/PROOF-NOTE-NOTRI.md": "774d1ff7b77844990da7bc1feff7f9ffff8b1f4f9b03232a620f1f9a29935414", + "research/gauge44-frames-x/PROOF-NOTE-P6N.md": "cef8fad3d6644b4376ed15c4c5c46c68324009ab8f42d10bfa2da4b505b2c26d", + "research/gauge44-frames-x/PROOF-NOTE-PROMO.md": "c170e5196d3081f86ac377c6fe614ca17f6281972837580275ce5af41cbc64ae", + "research/gauge44-frames-x/PROOF-NOTE-SW4.md": "d7bb225f1a7f9fd363e819a67e92a5fe14c0942f6c3616d73609cc48042daf3d", + "research/gauge44-frames-x/README.md": "a086b31dcbfe273006a9a90b56a9703f3679114c9f988f8868f3c5f1ff783f3d", + "research/gauge44-frames-x/RESULT.json": "793ef51c6fc919e092708d24aa1eebf8535d741bb5beb02461b11c9e33d00c8b", + "research/gauge44-frames-x/SOURCES.json": "22af1dcd24763ba391f0c950643a93f5fa83afc396272366518a9953d2942cff", + "research/gauge44-frames-x/UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "research/gauge44-frames-x/code/assemble.py": "4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec", + "research/gauge44-frames-x/code/assembly_controls.py": "e4c0f7828af64fdaef1896e4448d0212bd3041805097140b8cfafd098f8a6162", + "research/gauge44-frames-x/code/audit_allcold.py": "a87d7f4844ca963516637d249b14a0654f67f8047b6b265ae25b0cf30963e503", + "research/gauge44-frames-x/code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "research/gauge44-frames-x/code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "research/gauge44-frames-x/code/emit_allcold.py": "17c110c7c8d219e79e7dce36b19c4781e7effa800086cec03384387ad9acc7aa", + "research/gauge44-frames-x/code/freeze_spec.py": "f96c2b9cd886596bc7ab267f77abe9d16b6cbb5a724a5ad0a1d18d540369ed93", + "research/gauge44-frames-x/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/gauge44-frames-x/code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "research/gauge44-frames-x/code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "research/gauge44-frames-x/code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "research/gauge44-frames-x/code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "research/gauge44-frames-x/construction/COLD44-RECIPE.json.gz": "22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c", + "research/gauge44-frames-x/construction/COMPLETION-PRIORITY.json": "0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47", + "research/gauge44-frames-x/construction/INPUTS.json": "edd32ad9a55d3c508ca2ad90c74b5c87c7f7ca509d96b856a2176fa452780f99", + "research/gauge44-frames-x/construction/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/gauge44-frames-x/construction/NOTICE.md": "defe7e44af610e25a6c50c1c3b2efd0972d0690574995c0c872fc50eebf4c816", + "research/gauge44-frames-x/construction/REBUILD-CHECKS.json": "1f9d754c89cfed632a6eee919a42d00c6677a8fb4fe1d40615c903242addbc91", + "research/gauge44-frames-x/construction/UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "research/gauge44-frames-x/construction/build_gauge_cold44.py": "ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb", + "research/gauge44-frames-x/construction/construct_gauge_xcentre.py": "d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217", + "research/gauge44-frames-x/construction/frames/FRAME-RECIPE-sw4.json": "a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473", + "research/gauge44-frames-x/construction/frames/LOCAL-PINS-frames-sw4.json": "bc416b8f6443d59c715fb358c4d70fa27eae2d306388ffe0e2a303f60d929f7f", + "research/gauge44-frames-x/construction/frames/build_frames.py": "200847a7e8b3125cbeea0765dad67650e0bf83d32b66d72ba4977e99b8ee8eeb", + "research/gauge44-frames-x/construction/frames/frame_controls.py": "477de854ec9184a2c73d6ac3857a9d0cbd6bc04b71d10a105e7344434b492a77", + "research/gauge44-frames-x/construction/frames/reproduce_frames.py": "dc39ada9a2eb387310be181f3cea5dbd4b538632a888cd7372ece5e38a771832", + "research/gauge44-frames-x/construction/jx/LOCAL-PINS-jx-X4.json": "95c5114c8e937c2737a1b9f9da97303f2e5e129d39e6dfcc4010e99bfdb9c974", + "research/gauge44-frames-x/construction/jx/RECIPE-X4.json": "9d42c6b38e8124f5ffe15da56c260a7fba7260626bf3c5f8cbd93aa4a71ceadd", + "research/gauge44-frames-x/construction/jx/build_jx.py": "3cc7550b0c24bb54e245c6f7f16de489fd7844721fbb64aac628f38f43887916", + "research/gauge44-frames-x/construction/jx/reproduce_jx.py": "5c7afebb4eb7fcdeb7e971cfbc457cf071850e2da21c3c71295efdd453c2399c", + "research/gauge44-frames-x/construction/layers/build_pivot_swap.py": "8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8", + "research/gauge44-frames-x/construction/layers/layer_end_controls.py": "7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef", + "research/gauge44-frames-x/construction/layers/reproduce_layers.py": "435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e", + "research/gauge44-frames-x/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz": "3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0", + "research/gauge44-frames-x/construction/layers_np/HPE-RECIPE-NP.json": "43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1", + "research/gauge44-frames-x/construction/layers_np/PIVOT-SWAP-NP.json": "d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5", + "research/gauge44-frames-x/construction/layers_np/reproduce_np.py": "1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c", + "research/gauge44-frames-x/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz": "17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4", + "research/gauge44-frames-x/construction/layers_p6n/P6N-SPEC.json": "132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1", + "research/gauge44-frames-x/construction/layers_p6n/layer_end_controls.py": "fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e", + "research/gauge44-frames-x/construction/layers_p6n/reproduce_p6n.py": "aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca", + "research/gauge44-frames-x/construction/notri/PRIO6.json": "de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15", + "research/gauge44-frames-x/construction/notri/cgx.py": "3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418", + "research/gauge44-frames-x/construction/notri/cold44x.py": "f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296", + "research/gauge44-frames-x/construction/notri/port_stage_x.py": "38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7", + "research/gauge44-frames-x/construction/notri/reproduce_notri.py": "90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8", + "research/gauge44-frames-x/construction/promo/LOCAL-PINS-p6n-k4.json": "a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f", + "research/gauge44-frames-x/construction/promo/PROMO-RECIPE-p6n-k4.json": "fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90", + "research/gauge44-frames-x/construction/promo/build_promotion.py": "9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf", + "research/gauge44-frames-x/construction/promo/make_recipe.py": "ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122", + "research/gauge44-frames-x/construction/promo/promo_controls.py": "786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372", + "research/gauge44-frames-x/construction/promo/reproduce_promo.py": "f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026", + "research/gauge44-frames-x/construction/reproduce.py": "047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92", + "research/gauge44-frames-x/construction/sw4/LOCAL-PINS-sw4-P6k4.json": "3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327", + "research/gauge44-frames-x/construction/sw4/NOTES.md": "3a3ddb0c77b188e67fc453ccb3efe9323f87028092a6ce4d259b7dc99d702446", + "research/gauge44-frames-x/construction/sw4/SW4-RECIPE-P6k4.json": "fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa", + "research/gauge44-frames-x/construction/sw4/build_sw4.py": "9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66", + "research/gauge44-frames-x/construction/sw4/reproduce_sw4.py": "3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac", + "research/gauge44-frames-x/data/FRONTIER.json": "56bed9070d5f0b7585d7b7fd62984696dbc5158e5187663030920a57e1cbfab2", + "research/gauge44-frames-x/data/OWNERS.json.gz": "99d1c4caf85855c353d30f122d9efbd9e51562914facded13027f347b18a6082", + "research/gauge44-frames-x/data/PLAN.json": "5f40e7ccfca61f298539b4f41286d2a9d62caf947057f9cec82aa53f73f707fd", + "research/gauge44-frames-x/data/PREPARATION.json": "1d576298bfafc509992113fdd58b5482655a88e321cbfafe9386588eb6fbb6e9", + "research/gauge44-frames-x/data/SPEC.json": "64817c60a4a2c1839bf12239cb1b7515a40bf8988229d81d4c9faa17b488c7d5", + "research/gauge44-frames-x/data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "research/gauge44-frames-x/evidence/ADMISSION-CONTROLS.json": "5ebcc945c53f8279ac3bb6249e1d46422b7c7ddeb41c580ab5cbb3ca886dcf28", + "research/gauge44-frames-x/evidence/ASSEMBLY.json": "847f339db218f62ffabacb4655ba4dc6e8a15f67014ca01b1146083f393b009f", + "research/gauge44-frames-x/evidence/BINDING.json": "f80ad585c9cf94989d459971189fbb176084aedbe27edf5b5cccc5c2a44de43b", + "research/gauge44-frames-x/evidence/CENTER-COMPATIBILITY.json": "c66c7da1099ac8618381e2a7cb48b09b43ccf8d125ff124e129aba8ddb922cf3", + "research/gauge44-frames-x/evidence/LOCAL-STAGES.json": "64165b81b7119a2b23e99d3f3dfe8aa1702f373efe90d82d136c17786ffb6591", + "research/gauge44-frames-x/evidence/REPLAY.json": "45a6065c41df0c2b04e185b4727c7ad8eac5ebeb637dbb7bebffc184415b49a2", + "research/gauge44-frames-x/evidence/STAGES.json": "09d7c6daf1e93c58863267141dedc3873264d3baede0cddefda0d56ecb560458", + "research/gauge44-frames-x/evidence/audit/ASYNC-AUDIT.json": "df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662", + "research/gauge44-frames-x/evidence/audit/GLOBAL-PREFIX.json": "5a6fd0d91a650ad5aa830771fb4333b015f06bc4ded02807d65aee260ce9e671", + "research/gauge44-frames-x/evidence/audit/IDLE-REMAINDER-FRAMES.json": "95f5165a10dd187000dba9e55afbc1b7dce5a315cfedfa72e4f8344471149048", + "research/gauge44-frames-x/evidence/audit/OWNERS-AND-PROFILE.json": "a32ecc0d5387d65648e1ff284209122860ee37aaba43ce2dd12024c4bc394313", + "research/gauge44-frames-x/evidence/audit/PREFIX-AND-INVOICE.json": "14b0f41c88209e800236ce4ebbf91d83537e22e18807153d90013f7eee57a582", + "research/gauge44-frames-x/evidence/global/ACTUAL-SIGMAS.json.gz": "bf3b7814b54b30c726cae1dfabd3c09211c8f34cc943534565b131a0006b483f", + "research/gauge44-frames-x/evidence/global/GLOBAL-TEMPLATE.json.gz": "f713f8e66aaeaebb8202fe72bf36c7d23497152497342c27892e0fda3092f95b", + "research/gauge44-frames-x/evidence/global/HOSTED.json": "60866eb6ced5b9eb259bfc1d59ea7b80fb439164b629e868586ad5bef845a88e", + "research/gauge44-frames-x/evidence/global/IDLE-REMAINDER-FRAMES.json.gz": "734fd9bbe0afa2cc1e492bb7effef1aa8f0d8926ab1d9420d64c30045b30e784", + "research/gauge44-frames-x/evidence/layers/LOCAL-AUDIT-LAYERED.json": "678a69702a946e6e3ac80ec7b3defda65d0fed63bc5cff1a08ec9c1c8a84bc51", + "research/gauge44-frames-x/evidence/local/CANONICAL-WORD.json.gz": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "research/gauge44-frames-x/evidence/local/CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "research/gauge44-frames-x/evidence/local/CLIFFORD-REVIEW.json": "4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12", + "research/gauge44-frames-x/evidence/local/FULL-WORD.json.gz": "0ad202612f010df4ab66432a628247b37ad8b497dd6b27595b1685cbd7eb119e", + "research/gauge44-frames-x/evidence/local/INDEPENDENT-LOCAL-REPLAY.json": "18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e", + "research/gauge44-frames-x/evidence/local/LOCAL-CHECKS.json": "2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c", + "research/gauge44-frames-x/evidence/local/LOCAL-PROGRAMS.json.gz": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2", + "research/gauge44-frames-x/evidence/local/RESIDUAL-ADAPTERS.json": "bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94", + "research/gauge44-frames-x/evidence/local/SCALAR-FRAME-AUDIT.json": "cfc73040079b43ea82a42f3cf4c910edda1362deb09ec21c816c329347313bcb", + "research/gauge44-frames-x/evidence/local/WRAPPER-CHECKS.json": "84c727930f85f1c91900d6d12c523735c8b5d6907cd3eb1bd1030fe1fd4161d7", + "research/gauge44-frames-x/hosting/PROOF.md": "45bb3de8a10298a4cf5a278c3343be22a7d2e735be93a4e9454f24df7275faf0", + "research/gauge44-frames-x/hosting/README.md": "004bcdf6c78bd0316f0606d9e636511f94e1e80cbd79cce1a7e3bc55076d9bf1", + "research/gauge44-frames-x/hosting/audit_frozen.py": "a8d9c7c894cb44453aea93b33141559824f6c3ff81a85a6d066f4a10a2757659", + "research/gauge44-frames-x/hosting/expand_owners.py": "0f826377881d0c9405f90d9f5feac857c7c7cf8aef5bcf22d326bc274f038a70", + "research/gauge44-frames-x/hosting/frozen/FROZEN-AUDIT.json": "df6c7181a097900ee9d37db17bd25436a570f21caaa0cc2108712907ab02904b", + "research/gauge44-frames-x/hosting/frozen/MAJORIZATION.json.gz": "ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf", + "research/gauge44-frames-x/hosting/frozen/MANIFEST.json": "9df028adfa5120c60d2c78bfab06822cf4e6ed55502816b7d6dec19c1a2e4967", + "research/gauge44-frames-x/hosting/frozen/MATCHING-RECEIPT.json": "e1af2ac2c6e2457646d52dd693fb961f6279e10fe50eae9873f2ed149b6735b2", + "research/gauge44-frames-x/hosting/frozen/OWNERS.json.gz": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "research/gauge44-frames-x/hosting/frozen/REPRODUCTION.json": "8354f63148621c5fcf09cd16b496dedd677d813f83974e1f341ce38a1fffec81", + "research/gauge44-frames-x/hosting/frozen/SEED-OWNERS.json.gz": "eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048", + "research/gauge44-frames-x/hosting/frozen/SEED-RECEIPT.json": "aecfef753379106f5289f31251584c642e2cf7e4fa2d0886bb4ef9e922f8d9ba", + "research/gauge44-frames-x/hosting/frozen/SEED-REPRODUCTION.json": "4f6d49a85f43c98c816877d783470ca717be2349caceb991bf756eedece1b194", + "research/gauge44-frames-x/hosting/reproduce.py": "7551004d8d15cebcecc6793ebd17385830390935ccd1a8957f1c5472bce6ec82", + "research/gauge44-frames-x/hosting/reuse_owners.py": "2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402", + "research/gauge44-frames-x/independent/CENTRE-GUARD-REVIEW.md": "7b82518d7ddf042d6e71174bc286311fa72127e0dc6dc9e500025fcf7abbf897", + "research/gauge44-frames-x/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json": "9fb5265c4d2ddf3d615e46600954c79cd1a42481500a0973a5695fcb9f2558c9", + "research/gauge44-frames-x/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json": "631107a9a9acb02441ce80298f815e0c624f811b0d58c6fd78f8dc58d564bb5b", + "research/gauge44-frames-x/independent/GAUGE44-INDEPENDENT-PRICE.json": "e8cecbb4f05ca1a115512b246530278ed86558d0fae1229d09d7d9188f5f330f", + "research/gauge44-frames-x/independent/README.md": "25668a62d8c91f6860f8412cf2fc750ba41bf1085dad3709ad5067c7956eac89", + "research/gauge44-frames-x/independent/audit_local.py": "03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd", + "research/gauge44-frames-x/independent/price_profile.py": "d2f548ad6b99f64a8ca5fbaf822a89560bb99359957ce3420b497f6a46fc0acf", + "research/gauge44-frames-x/independent/review_guards.py": "b83164d6c0122a055b3281f3381b305683a875760a2d727dd0188bb2aa59d67d", + "research/gauge44-frames-x/inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/gauge44-frames-x/verify_global.py": "16bd5e54598592e92e210f99065348c5df261b8350fdc688072ce053d15b088a", + "research/gauge44-frames-x/verify_manifest.py": "723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b", + "research/gauge44-slots/CONSTRUCTION.md": "7d96eb958a6b4274ea4c4c539b585f8ae2e89363b76aef930f90d2d513e164ea", + "research/gauge44-slots/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/gauge44-slots/LOCAL-VALIDATION.json": "f81fbd98eb608b8119f03f89a5692bcd610845fc97022337931586d8582b706e", + "research/gauge44-slots/MANIFEST.json": "9a6f239b1618a43262e56735a99cc59b6f5a6e8816a794a34413e89cc33f4976", + "research/gauge44-slots/NOTICE.md": "7a8d17b04da1e6c9d0ec217fb5bda72faa09d9a21695128722dd1e2827870fcf", + "research/gauge44-slots/PROOF-NOTE-BARCH.md": "c24f211b09358b25d6cf47dd18e4bbd8bcf4ecf279e6f1c6c90613cfa230818d", + "research/gauge44-slots/PROOF-NOTE-BIT.md": "dd771adb12f6f0bef0e2931c28b21b243b04d5f512370cbad1207275c342aaf7", + "research/gauge44-slots/PROOF-NOTE-FRAMES-X4.md": "39c50420ebb6e8813706a49b2cf759f277c4afac9f6780fc0a7ac6a5fb86e036", + "research/gauge44-slots/PROOF-NOTE-LAYERS.md": "92bb85b056803770882afa916277c5b49a7027159c113a106e7b2b33e57c097f", + "research/gauge44-slots/PROOF-NOTE-LEAVER.md": "e4f9482ef551d6d4300d8ed8bb7c34dc9327fbcfa30a502bf3476b78468e60c3", + "research/gauge44-slots/PROOF-NOTE-NOTRI.md": "774d1ff7b77844990da7bc1feff7f9ffff8b1f4f9b03232a620f1f9a29935414", + "research/gauge44-slots/PROOF-NOTE-P6N.md": "cef8fad3d6644b4376ed15c4c5c46c68324009ab8f42d10bfa2da4b505b2c26d", + "research/gauge44-slots/PROOF-NOTE-PROMO.md": "c170e5196d3081f86ac377c6fe614ca17f6281972837580275ce5af41cbc64ae", + "research/gauge44-slots/PROOF-NOTE-SW4.md": "d7bb225f1a7f9fd363e819a67e92a5fe14c0942f6c3616d73609cc48042daf3d", + "research/gauge44-slots/README.md": "bd4248499e577321f17aacba1d7815a5eb0f9cbe88faeb8fef38b71bdf3a684c", + "research/gauge44-slots/RESULT.json": "6cbc5f16cb2bdc279cf518b8670cedec1869069daa609a6803d4d377f13b813c", + "research/gauge44-slots/SOURCES.json": "abb903d9b46388f99325a3939eb68171ac163c66b4b62b7961ea46daa20a88f0", + "research/gauge44-slots/UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "research/gauge44-slots/code/assemble.py": "4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec", + "research/gauge44-slots/code/assembly_controls.py": "e4c0f7828af64fdaef1896e4448d0212bd3041805097140b8cfafd098f8a6162", + "research/gauge44-slots/code/audit_allcold.py": "a87d7f4844ca963516637d249b14a0654f67f8047b6b265ae25b0cf30963e503", + "research/gauge44-slots/code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "research/gauge44-slots/code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "research/gauge44-slots/code/emit_allcold.py": "17c110c7c8d219e79e7dce36b19c4781e7effa800086cec03384387ad9acc7aa", + "research/gauge44-slots/code/freeze_spec.py": "f96c2b9cd886596bc7ab267f77abe9d16b6cbb5a724a5ad0a1d18d540369ed93", + "research/gauge44-slots/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/gauge44-slots/code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "research/gauge44-slots/code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "research/gauge44-slots/code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "research/gauge44-slots/code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "research/gauge44-slots/construction/COLD44-RECIPE.json.gz": "22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c", + "research/gauge44-slots/construction/COMPLETION-PRIORITY.json": "0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47", + "research/gauge44-slots/construction/INPUTS.json": "edd32ad9a55d3c508ca2ad90c74b5c87c7f7ca509d96b856a2176fa452780f99", + "research/gauge44-slots/construction/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/gauge44-slots/construction/NOTICE.md": "defe7e44af610e25a6c50c1c3b2efd0972d0690574995c0c872fc50eebf4c816", + "research/gauge44-slots/construction/REBUILD-CHECKS.json": "1f9d754c89cfed632a6eee919a42d00c6677a8fb4fe1d40615c903242addbc91", + "research/gauge44-slots/construction/UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "research/gauge44-slots/construction/barch/LOCAL-PINS-barch-U8.json": "2d16f99e1f71fd66378f5f767cf4cfa2a58264919a95074c7b31029f39a3c9f5", + "research/gauge44-slots/construction/barch/RECIPE-U8.json": "292f0e9f82824c4111728cf4de929bf6e43320fbbdc77658aae9681906b0d652", + "research/gauge44-slots/construction/barch/build_tri.py": "0fba65b31c2fd71864c291358bb0ad8d5f7e1be07e21df23f0ae73d7b966002e", + "research/gauge44-slots/construction/barch/reproduce_barch.py": "19bc970aa6af25ab0e7fa96fb65c64dd0c5243976d8f2cb733cba839155482c1", + "research/gauge44-slots/construction/barch/run_controls.py": "42639bf62bf57795e3ea615c1944c67efed00f28591333daeb3139bf63d04476", + "research/gauge44-slots/construction/build_gauge_cold44.py": "ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb", + "research/gauge44-slots/construction/construct_gauge_xcentre.py": "d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217", + "research/gauge44-slots/construction/frames/FRAME-RECIPE-sw4.json": "a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473", + "research/gauge44-slots/construction/frames/LOCAL-PINS-frames-sw4.json": "bc416b8f6443d59c715fb358c4d70fa27eae2d306388ffe0e2a303f60d929f7f", + "research/gauge44-slots/construction/frames/build_frames.py": "200847a7e8b3125cbeea0765dad67650e0bf83d32b66d72ba4977e99b8ee8eeb", + "research/gauge44-slots/construction/frames/frame_controls.py": "477de854ec9184a2c73d6ac3857a9d0cbd6bc04b71d10a105e7344434b492a77", + "research/gauge44-slots/construction/frames/reproduce_frames.py": "dc39ada9a2eb387310be181f3cea5dbd4b538632a888cd7372ece5e38a771832", + "research/gauge44-slots/construction/jx/LOCAL-PINS-jx-X4.json": "95c5114c8e937c2737a1b9f9da97303f2e5e129d39e6dfcc4010e99bfdb9c974", + "research/gauge44-slots/construction/jx/RECIPE-X4.json": "9d42c6b38e8124f5ffe15da56c260a7fba7260626bf3c5f8cbd93aa4a71ceadd", + "research/gauge44-slots/construction/jx/build_jx.py": "3cc7550b0c24bb54e245c6f7f16de489fd7844721fbb64aac628f38f43887916", + "research/gauge44-slots/construction/jx/reproduce_jx.py": "5c7afebb4eb7fcdeb7e971cfbc457cf071850e2da21c3c71295efdd453c2399c", + "research/gauge44-slots/construction/layers/build_pivot_swap.py": "8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8", + "research/gauge44-slots/construction/layers/layer_end_controls.py": "7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef", + "research/gauge44-slots/construction/layers/reproduce_layers.py": "435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e", + "research/gauge44-slots/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz": "3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0", + "research/gauge44-slots/construction/layers_np/HPE-RECIPE-NP.json": "43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1", + "research/gauge44-slots/construction/layers_np/PIVOT-SWAP-NP.json": "d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5", + "research/gauge44-slots/construction/layers_np/reproduce_np.py": "1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c", + "research/gauge44-slots/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz": "17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4", + "research/gauge44-slots/construction/layers_p6n/P6N-SPEC.json": "132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1", + "research/gauge44-slots/construction/layers_p6n/layer_end_controls.py": "fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e", + "research/gauge44-slots/construction/layers_p6n/reproduce_p6n.py": "aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca", + "research/gauge44-slots/construction/leaver/CHAIN-PINS-k8.json": "9dfcecf963d8fa6d1cf5ba212336437a51f03c1444a1c6d33e54d2bf762970a9", + "research/gauge44-slots/construction/leaver/CODED-CELLS-k8.json": "7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563", + "research/gauge44-slots/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz": "6416043008fca68463c0026fb7be500bafbf6b592b1caf42701101531814df33", + "research/gauge44-slots/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz": "24a304493f28d7b419d3023598ff728deb63e1582cd65011e438951ae22c0beb", + "research/gauge44-slots/construction/leaver/FRAME-RECIPE-LV-k8.json": "b53b97ecbefb60cddceec08172438f1902178d9438bcd98ecc736c43773c3065", + "research/gauge44-slots/construction/leaver/HPE-RECIPE-k8.json": "907db3b20e2e54e230567259575ac89e7eac2b60ce0daac11b6b98849ce45ee9", + "research/gauge44-slots/construction/leaver/LEAVER-PINS-k8.json": "ab6ce39246d102f55d63c819c4cded2450c515b0e99afe5023f726054afc73f6", + "research/gauge44-slots/construction/leaver/LEC-REASON-PINS-STACK-k8.json": "d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19", + "research/gauge44-slots/construction/leaver/LEC-REASON-PINS-k8.json": "b07279e41ec9d8f89e8509081e1e7f2c8e8b062fd951b22608a03ac461982914", + "research/gauge44-slots/construction/leaver/PIVOT-SWAP-k8.json": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "research/gauge44-slots/construction/leaver/PROMO-RECIPE-k8.json": "bc017d6d5126f5f975e7fdae84642963c86ff74f7056ec4764192b5f4497dc83", + "research/gauge44-slots/construction/leaver/RECIPE-U8-k8.json": "51e5e37bfcd1dd1f4e2ce1bb60d23f645e5881e36f3aa556f1533543a40e548e", + "research/gauge44-slots/construction/leaver/RECIPE-X4-k8.json": "4199b9b6bb28f3f79fa01744a0520a60fdf783eddca459f86830535f759b67c1", + "research/gauge44-slots/construction/leaver/REGROUP-LEAVER-k8.json": "b846ea56bc8c58d2513b257f9bea7de5136484b7d66c5bf3d8e3211fc48e4b8e", + "research/gauge44-slots/construction/leaver/TRI-LEAVER-k8.json": "b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30", + "research/gauge44-slots/construction/leaver/build_frames_lv.py": "2eb80d612aa59a7bd8b04a122045e3bd2b83a21954e3164943cd20cf6050a21b", + "research/gauge44-slots/construction/leaver/cells-k8/CORE-01+.json": "3d2afc4986f1f3aceacd1e0572daebfb79134ba6af7677150083d0912676427c", + "research/gauge44-slots/construction/leaver/cells-k8/CORE-01-.json": "8f8620f47ce5ba5abf6179d1a5a986c25903ba71b6711a7035815968b5888927", + "research/gauge44-slots/construction/leaver/cells-k8/CORE-23+.json": "53b65cbaeb24bb2a4625f107a39c0ba3797f37aa4980096f22dff7cdbd76440d", + "research/gauge44-slots/construction/leaver/cells-k8/CORE-23-.json": "e34431338f5527838c6e0d0caff885bde82624b0791f2a072c5b4e49faa6b98d", + "research/gauge44-slots/construction/leaver/cells-k8/CORE-45+.json": "ba8f3aa26032dc36e2db4073e2cac9fc61d7a475d534a749bdfcbecf3aa103a9", + "research/gauge44-slots/construction/leaver/cells-k8/CORE-45-.json": "302024488efff30c820b5bbf6b422c6106bb5a9ee851bef8fccc16512ca789e7", + "research/gauge44-slots/construction/leaver/cells-k8/CORE-67+.json": "0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05", + "research/gauge44-slots/construction/leaver/cells-k8/CORE-67-.json": "0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05", + "research/gauge44-slots/construction/leaver/cgx_leaver.py": "3af491c63dd96204a7c36006c7e419c2e5ce77e5bc453ccd2495c1e41f83f87c", + "research/gauge44-slots/construction/leaver/layer_end_controls_leaver.py": "4ba676f1ea326b739a64c3477f64eeb295f8151514f78fa7e62b71e4373a6206", + "research/gauge44-slots/construction/leaver/reproduce_leaver.py": "831bfdf2247b5d864b74c3b2b6a475718053d48570851d48bd1c5471d410ee30", + "research/gauge44-slots/construction/leaver/reproduce_leaver_chain.py": "2bc3fc3f32e0f957a0731b79254c553ca48fc6d4d47c4f99d6cd31e1901d85b5", + "research/gauge44-slots/construction/notri/PRIO6.json": "de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15", + "research/gauge44-slots/construction/notri/cgx.py": "3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418", + "research/gauge44-slots/construction/notri/cold44x.py": "f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296", + "research/gauge44-slots/construction/notri/port_stage_x.py": "38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7", + "research/gauge44-slots/construction/notri/reproduce_notri.py": "90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8", + "research/gauge44-slots/construction/promo/LOCAL-PINS-p6n-k4.json": "a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f", + "research/gauge44-slots/construction/promo/PROMO-RECIPE-p6n-k4.json": "fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90", + "research/gauge44-slots/construction/promo/build_promotion.py": "9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf", + "research/gauge44-slots/construction/promo/make_recipe.py": "ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122", + "research/gauge44-slots/construction/promo/promo_controls.py": "786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372", + "research/gauge44-slots/construction/promo/reproduce_promo.py": "f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026", + "research/gauge44-slots/construction/reproduce.py": "047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92", + "research/gauge44-slots/construction/slots/RECIPE-SLOTS-k8.json": "0bfffa6a90a3a9635d168f7f55e2003c773c422ded75822b6947cf499f59a55b", + "research/gauge44-slots/construction/slots/SLOT-PINS-k8.json": "55dd229684febecb80638eff9c6b3986623e8539c6c956753b350209c3e0efe2", + "research/gauge44-slots/construction/slots/verify_slots.py": "bc1c0e3e3d7c81dc1649f5be82cdd2399e543d46c24879cb975877bf9b7957be", + "research/gauge44-slots/construction/sw4/LOCAL-PINS-sw4-P6k4.json": "3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327", + "research/gauge44-slots/construction/sw4/NOTES.md": "3a3ddb0c77b188e67fc453ccb3efe9323f87028092a6ce4d259b7dc99d702446", + "research/gauge44-slots/construction/sw4/SW4-RECIPE-P6k4.json": "fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa", + "research/gauge44-slots/construction/sw4/build_sw4.py": "9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66", + "research/gauge44-slots/construction/sw4/reproduce_sw4.py": "3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac", + "research/gauge44-slots/data/FRONTIER.json": "56bed9070d5f0b7585d7b7fd62984696dbc5158e5187663030920a57e1cbfab2", + "research/gauge44-slots/data/OWNERS.json.gz": "32ca30cd1c652ef6ad43657273a08a157e1df3545e759ab36306a0d0b516fb4a", + "research/gauge44-slots/data/PLAN.json": "1dec4ca3af6d45d82286005cae4c5e56e7253adefb117d797da55c55c891af08", + "research/gauge44-slots/data/PREPARATION.json": "1d576298bfafc509992113fdd58b5482655a88e321cbfafe9386588eb6fbb6e9", + "research/gauge44-slots/data/SPEC.json": "8e95ae8087124189cbd366d0e9d1c5ebededff536ff3501927b4b2a2e8dac70e", + "research/gauge44-slots/data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "research/gauge44-slots/evidence/ADMISSION-CONTROLS.json": "5ebcc945c53f8279ac3bb6249e1d46422b7c7ddeb41c580ab5cbb3ca886dcf28", + "research/gauge44-slots/evidence/ASSEMBLY.json": "847f339db218f62ffabacb4655ba4dc6e8a15f67014ca01b1146083f393b009f", + "research/gauge44-slots/evidence/BINDING.json": "f80ad585c9cf94989d459971189fbb176084aedbe27edf5b5cccc5c2a44de43b", + "research/gauge44-slots/evidence/CENTER-COMPATIBILITY.json": "c66c7da1099ac8618381e2a7cb48b09b43ccf8d125ff124e129aba8ddb922cf3", + "research/gauge44-slots/evidence/LOCAL-STAGES.json": "64165b81b7119a2b23e99d3f3dfe8aa1702f373efe90d82d136c17786ffb6591", + "research/gauge44-slots/evidence/REPLAY.json": "45a6065c41df0c2b04e185b4727c7ad8eac5ebeb637dbb7bebffc184415b49a2", + "research/gauge44-slots/evidence/STAGES.json": "09d7c6daf1e93c58863267141dedc3873264d3baede0cddefda0d56ecb560458", + "research/gauge44-slots/evidence/audit/ASYNC-AUDIT.json": "df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662", + "research/gauge44-slots/evidence/audit/GLOBAL-PREFIX.json": "5a6fd0d91a650ad5aa830771fb4333b015f06bc4ded02807d65aee260ce9e671", + "research/gauge44-slots/evidence/audit/IDLE-REMAINDER-FRAMES.json": "95f5165a10dd187000dba9e55afbc1b7dce5a315cfedfa72e4f8344471149048", + "research/gauge44-slots/evidence/audit/OWNERS-AND-PROFILE.json": "a32ecc0d5387d65648e1ff284209122860ee37aaba43ce2dd12024c4bc394313", + "research/gauge44-slots/evidence/audit/PREFIX-AND-INVOICE.json": "14b0f41c88209e800236ce4ebbf91d83537e22e18807153d90013f7eee57a582", + "research/gauge44-slots/evidence/global/ACTUAL-SIGMAS.json.gz": "bf3b7814b54b30c726cae1dfabd3c09211c8f34cc943534565b131a0006b483f", + "research/gauge44-slots/evidence/global/GLOBAL-TEMPLATE.json.gz": "f713f8e66aaeaebb8202fe72bf36c7d23497152497342c27892e0fda3092f95b", + "research/gauge44-slots/evidence/global/HOSTED.json": "60866eb6ced5b9eb259bfc1d59ea7b80fb439164b629e868586ad5bef845a88e", + "research/gauge44-slots/evidence/global/IDLE-REMAINDER-FRAMES.json.gz": "734fd9bbe0afa2cc1e492bb7effef1aa8f0d8926ab1d9420d64c30045b30e784", + "research/gauge44-slots/evidence/layers/LOCAL-AUDIT-LAYERED.json": "a596d7262374a023ae079e0da41d20189bd3ca4594101e5e6f402ce5799df9ff", + "research/gauge44-slots/evidence/leaver/CELL-MUTANTS-LV.json": "308975b8288cb9c853ee6b69e68b25e6f3727d259dccfb7509042f103bb03220", + "research/gauge44-slots/evidence/leaver/FRAME-CONTROLS-LV-k8.json": "9629e499a7f01f2db1e41873344a1476708f41698a0b145888ee569e580a31dd", + "research/gauge44-slots/evidence/local/CANONICAL-WORD.json.gz": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "research/gauge44-slots/evidence/local/CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "research/gauge44-slots/evidence/local/CLIFFORD-REVIEW.json": "4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12", + "research/gauge44-slots/evidence/local/FULL-WORD.json.gz": "0ad202612f010df4ab66432a628247b37ad8b497dd6b27595b1685cbd7eb119e", + "research/gauge44-slots/evidence/local/INDEPENDENT-LOCAL-REPLAY.json": "18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e", + "research/gauge44-slots/evidence/local/LOCAL-CHECKS.json": "2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c", + "research/gauge44-slots/evidence/local/LOCAL-PROGRAMS.json.gz": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2", + "research/gauge44-slots/evidence/local/RESIDUAL-ADAPTERS.json": "bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94", + "research/gauge44-slots/evidence/local/SCALAR-FRAME-AUDIT.json": "cfc73040079b43ea82a42f3cf4c910edda1362deb09ec21c816c329347313bcb", + "research/gauge44-slots/evidence/local/WRAPPER-CHECKS.json": "84c727930f85f1c91900d6d12c523735c8b5d6907cd3eb1bd1030fe1fd4161d7", + "research/gauge44-slots/hosting/PROOF.md": "45bb3de8a10298a4cf5a278c3343be22a7d2e735be93a4e9454f24df7275faf0", + "research/gauge44-slots/hosting/README.md": "004bcdf6c78bd0316f0606d9e636511f94e1e80cbd79cce1a7e3bc55076d9bf1", + "research/gauge44-slots/hosting/audit_frozen.py": "a8d9c7c894cb44453aea93b33141559824f6c3ff81a85a6d066f4a10a2757659", + "research/gauge44-slots/hosting/expand_owners.py": "0f826377881d0c9405f90d9f5feac857c7c7cf8aef5bcf22d326bc274f038a70", + "research/gauge44-slots/hosting/frozen/FROZEN-AUDIT.json": "df6c7181a097900ee9d37db17bd25436a570f21caaa0cc2108712907ab02904b", + "research/gauge44-slots/hosting/frozen/MAJORIZATION.json.gz": "ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf", + "research/gauge44-slots/hosting/frozen/MANIFEST.json": "9df028adfa5120c60d2c78bfab06822cf4e6ed55502816b7d6dec19c1a2e4967", + "research/gauge44-slots/hosting/frozen/MATCHING-RECEIPT.json": "e1af2ac2c6e2457646d52dd693fb961f6279e10fe50eae9873f2ed149b6735b2", + "research/gauge44-slots/hosting/frozen/OWNERS.json.gz": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "research/gauge44-slots/hosting/frozen/REPRODUCTION.json": "8354f63148621c5fcf09cd16b496dedd677d813f83974e1f341ce38a1fffec81", + "research/gauge44-slots/hosting/frozen/SEED-OWNERS.json.gz": "eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048", + "research/gauge44-slots/hosting/frozen/SEED-RECEIPT.json": "aecfef753379106f5289f31251584c642e2cf7e4fa2d0886bb4ef9e922f8d9ba", + "research/gauge44-slots/hosting/frozen/SEED-REPRODUCTION.json": "4f6d49a85f43c98c816877d783470ca717be2349caceb991bf756eedece1b194", + "research/gauge44-slots/hosting/reproduce.py": "7551004d8d15cebcecc6793ebd17385830390935ccd1a8957f1c5472bce6ec82", + "research/gauge44-slots/hosting/reuse_owners.py": "2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402", + "research/gauge44-slots/independent/CENTRE-GUARD-REVIEW.md": "7b82518d7ddf042d6e71174bc286311fa72127e0dc6dc9e500025fcf7abbf897", + "research/gauge44-slots/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json": "9fb5265c4d2ddf3d615e46600954c79cd1a42481500a0973a5695fcb9f2558c9", + "research/gauge44-slots/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json": "631107a9a9acb02441ce80298f815e0c624f811b0d58c6fd78f8dc58d564bb5b", + "research/gauge44-slots/independent/GAUGE44-INDEPENDENT-PRICE.json": "6e222b252f3453446d0e41b08f00a9bf9449ce3588b6ddc00c9accc1c00e7683", + "research/gauge44-slots/independent/README.md": "25668a62d8c91f6860f8412cf2fc750ba41bf1085dad3709ad5067c7956eac89", + "research/gauge44-slots/independent/audit_local.py": "03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd", + "research/gauge44-slots/independent/price_profile.py": "d2f548ad6b99f64a8ca5fbaf822a89560bb99359957ce3420b497f6a46fc0acf", + "research/gauge44-slots/independent/review_guards.py": "b83164d6c0122a055b3281f3381b305683a875760a2d727dd0188bb2aa59d67d", + "research/gauge44-slots/inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/gauge44-slots/verify_global.py": "16bd5e54598592e92e210f99065348c5df261b8350fdc688072ce053d15b088a", + "research/gauge44-slots/verify_manifest.py": "723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b", + "research/structural-gain/frontier-composition/ADAPTATION.json": "c47b1dfcfb1d78da7b1ab0d7d2c17cdf5947b4ec9ffb508f39dca572a59be3cb", + "research/structural-gain/frontier-composition/ADAPTATION.patch": "85baf9166f5f7fb40bdfa9372cf5eb05f91c9fb6a5df9f9df486b18e914558e9", + "research/structural-gain/frontier-composition/COMBINED-EIGHT-CEILING.json": "45d341b83067b7b71df6463be118dfd02612eacb4f2040c576fd3aa936a9247e", + "research/structural-gain/frontier-composition/COMBINED-PREFIX-CEILING.json": "de86cd880f285c8d3b279fac5056623b75cc52a7fbb2590078d8a6ba64fdc7a4", + "research/structural-gain/frontier-composition/COMBINED-PREFIX-PROSPECTIVE.json": "c6460a16b59868b7e8184f4ac34eec5035e0256428fc8779a16f89f8acceaeb7", + "research/structural-gain/frontier-composition/NOTICE.md": "09d4d08c655b426d83570b0ee6498330835283a9ec930754f4fa57f60c193e3b", + "research/structural-gain/frontier-composition/README.md": "70f0f791cbe3b2603f85d85bb9055aa0ee1df6dc06ba82fc1921356948312887", + "research/structural-gain/frontier-composition/REPRODUCTION-PINS.json": "8c185dfc046c4d0d00b104b4b3e283b8606d3ec6f8415d2cc400e8a8c0ddd1d4", + "research/structural-gain/frontier-composition/RESULT.json": "70ce494d27389933412f2497804489ea881a1572bf00680951b2eceeb422441f", + "research/structural-gain/frontier-composition/SOURCE-PINS.json": "8eda96e9726663a32a39435eacb5f057a76e08e047e95cb205b0552f2f081e5b", + "research/structural-gain/frontier-composition/adapt_global.py": "c61f573a97e67bae4c8c2b9263771d95e566ea9e734f29c41faae3a48d1861b9", + "research/structural-gain/frontier-composition/admission-nomination/NOMINATION.json": "9de86ae70d1162117657e6e9b5d2819cb264dc86e3c4b1b9414382aed5bfca0f", + "research/structural-gain/frontier-composition/admission-nomination/OWNERS.json.gz": "35ce2ebf98907d0fbe1c3759dd58f2fa0e8a1bd3b97f65fb101092df657ce4b8", + "research/structural-gain/frontier-composition/admission-nomination/PLAN.json": "c4c9f4f5db481c982f1d0f9396249ab0593165c1b7ec5d4d2ab850b92c80beac", + "research/structural-gain/frontier-composition/combined-eight-local/CANONICAL-WORD.json.gz": "9670a30e834517612f17942eb564ebad32152d81445ac4b9c0dfb70f69d932ec", + "research/structural-gain/frontier-composition/combined-eight-local/FULL-WORD.json.gz": "ee0fecf86bddcc5f4e675c60fbd5c572bd48269368a37a38c070346eefa3dd4a", + "research/structural-gain/frontier-composition/combined-eight-local/INDEPENDENT-LOCAL-REPLAY.json": "c2da85f4f343ee1a7bd0c191756a2faea5669b4bed10644e678d5778688da97a", + "research/structural-gain/frontier-composition/combined-eight-local/LOCAL-CHECKS.json": "43c49979bcf3f29f575c10022c3052bfb9846860b13227b3d08cf90a37c382a1", + "research/structural-gain/frontier-composition/combined-eight-local/LOCAL-PROGRAMS.json.gz": "3260547acabf80f1856e3de9a1bf47e4a6a522e7b2d4b1f960b475b3637d31b3", + "research/structural-gain/frontier-composition/combined-eight-local/SCALAR-FRAME-AUDIT.json": "02363c4cb5081319b695dee65f1a01e08a40f272b1b212264a5ad12ef240b33f", + "research/structural-gain/frontier-composition/combined-eight-word/CONSTRUCTION.json": "5387ebfcb072bc9e94b74bf16c25153d3513df6a70b378bf354a0fbc7cdbb248", + "research/structural-gain/frontier-composition/combined-eight-word/FULL-WORD.json.gz": "ee0fecf86bddcc5f4e675c60fbd5c572bd48269368a37a38c070346eefa3dd4a", + "research/structural-gain/frontier-composition/combined-eight-word/RECIPES.json": "4ee838e1cb9258cd330d73b4c58333d35156cd29e4d7b70e4f543280a317ba53", + "research/structural-gain/frontier-composition/combined-prefix-local/CANONICAL-WORD.json.gz": "81ef773a4b22b91ac74880c5b8606d93794c0b98b2e7e7291a01580cba79ceac", + "research/structural-gain/frontier-composition/combined-prefix-local/CLIFFORD-RECIPES.json": "3323144380012a59c59e56348dd56d17da0f93e7783415efdaabe6fd5d3edadc", + "research/structural-gain/frontier-composition/combined-prefix-local/CLIFFORD-REVIEW.json": "1689bc0c187686bc547eac22033b5f781dbf71621cb02d134cba0263e45b88b7", + "research/structural-gain/frontier-composition/combined-prefix-local/FULL-WORD.json.gz": "a6cd88224427bad6d00b6fbe1d201a2c09e496c90e2cecdc04d7f2ff11a4ba42", + "research/structural-gain/frontier-composition/combined-prefix-local/INDEPENDENT-LOCAL-REPLAY.json": "895080ffbe54cf6a7ea148ee902308205ba9fa72248a8f7e4b7b375bf9e38d16", + "research/structural-gain/frontier-composition/combined-prefix-local/LOCAL-CHECKS.json": "66a2f5d82e13179626dec71bb5a4b49bcae32f91e4812fa4056fe1f3c3ecadcb", + "research/structural-gain/frontier-composition/combined-prefix-local/LOCAL-PROGRAMS.json.gz": "4fd7b2ad67b037c17fcc68d12663d0d70c45e66d802e2eb558daa859802f499c", + "research/structural-gain/frontier-composition/combined-prefix-local/RESIDUAL-ADAPTERS.json": "b55f994f7cad5b0be48084362f1461f7587689eb35ad4bb253de138792b1c526", + "research/structural-gain/frontier-composition/combined-prefix-local/SCALAR-FRAME-AUDIT.json": "2acacc4ce6a76de1df817361f619bc2c4dce171601e96003bab7e19375bbf9bd", + "research/structural-gain/frontier-composition/combined-prefix-local/WRAPPER-CHECKS.json": "bdfda50952f2781811a234ed5186ee3a3ce445e2f68ff88a068713981c580506", + "research/structural-gain/frontier-composition/combined-prefix-word/ALL-KERNEL-CONTROLS.json": "8fafe450dc99d5ae5f52c9b943dfd335560db0ce7fa04cecc6079a185c41afd2", + "research/structural-gain/frontier-composition/combined-prefix-word/ALL-KERNEL-OMISSIONS.json": "836d839e744b1cbee5b3a47b4d6f766e9d822161fe3640794f9a0f051d2ad20d", + "research/structural-gain/frontier-composition/combined-prefix-word/CONSTRUCTION.json": "dd4e03987a81cc655885eeadc9ed3aa17e575d6d2568d24878329cc8e98ab3e6", + "research/structural-gain/frontier-composition/combined-prefix-word/FULL-WORD.json.gz": "a6cd88224427bad6d00b6fbe1d201a2c09e496c90e2cecdc04d7f2ff11a4ba42", + "research/structural-gain/frontier-composition/combined-prefix-word/PROMOTION.json": "9ad34faa8611a6ea7f161d2e1fe331ab1ba5ccec8fca3978e31c3e7bf789bc31", + "research/structural-gain/frontier-composition/combined-prefix-word/RANK5-OMISSION-CONTROLS.json": "449566dc724a285764dbaabc1a448f974f0608c7c68cd0406139c21aa1cf4647", + "research/structural-gain/frontier-composition/compact_owners.py": "0a1745ab326aa4af2ee72d5e6eaf93330b04bb3800a0c7d7747225c09293d2a6", + "research/structural-gain/frontier-composition/compacted-nomination/NOMINATION.json": "545a106d8d76888b916433c36544640602fac6234d8f36fcdab2cc551a7440b6", + "research/structural-gain/frontier-composition/compacted-nomination/OWNERS.json.gz": "92d29bd48582aa87eed2153b2e8f0f41f7d47087d215bebd7dac20fe79c4f8f9", + "research/structural-gain/frontier-composition/compose_prefix.py": "9b76cbe9d5840ba448ac1621fe3dca7ca6c3ea63d4590d595a6ddd8091d22390", + "research/structural-gain/frontier-composition/global-code/assemble.py": "e2e61c092803f9c9c15dc72b8a2cafa57ac8969ec70261b33d390055c911b2b7", + "research/structural-gain/frontier-composition/global-code/assembly_controls.py": "65ac20c51225143b3ec1966e1da8e2405dfd8f0f5e7765c04f07d55e86fba535", + "research/structural-gain/frontier-composition/global-code/audit_allcold.py": "20ed33a1f98240c73a3364d136f28b1e79d9b8cdf03d812f38da850dabf663dd", + "research/structural-gain/frontier-composition/global-code/bind_providers_portable.py": "c914b0161601cd982f0a4700326c505906a3eee5e71529973d5c7ad9caaad3fc", + "research/structural-gain/frontier-composition/global-code/emit_allcold.py": "9e7c53d9760391584ea3c80977fde4337f603a5732b2fe4f0dd36fd96c9c4627", + "research/structural-gain/frontier-composition/global-code/invoice_allcold.py": "6a14639e2849d50978a7821dcda97746b5a66722bb3ca2d6fc8c611d2eaf4e49", + "research/structural-gain/frontier-composition/global-code/phase_timing_controls.py": "edd53ac292132ba894ab17ca783909ffa5140742c45f796e8546383567fa924f", + "research/structural-gain/frontier-composition/global-replay/ASSEMBLY-CONTROLS.json": "5dae5fde9663c497f9d4e545fc8d5dc6d8b99251c4d995a9699c6b03c30e789e", + "research/structural-gain/frontier-composition/global-replay/ASSEMBLY.json": "b8d100f1adcaf818102b38f061cd462479ca37ce0d56d899538a98684f6c099a", + "research/structural-gain/frontier-composition/global-replay/BINDING.json": "6a15b287a04f703e76b6d34c4f092482df8afb3b47c9d4ea606d9c12589224a4", + "research/structural-gain/frontier-composition/global-replay/PHASE-TIMING-CONTROLS.json": "7b286b838470bed5225deabd9f6e70760af3c56d09780753b5c060711045ac7c", + "research/structural-gain/frontier-composition/global-replay/PLAN.json": "46e97c0b6d245d2a471df8e641aeaabc63efc5e5606b16fb6b6efe7e054e9431", + "research/structural-gain/frontier-composition/global-replay/audit/ASYNC-AUDIT.json": "26f1445c0be85a0093ef6e695ef3f34363cd26bfa4dc342440876ca1832175b4", + "research/structural-gain/frontier-composition/global-replay/audit/GLOBAL-PREFIX.json": "c2f8d032275a27c3aceadbda7cfccbe9a4888a2f64f0fc923bf0d536897387a3", + "research/structural-gain/frontier-composition/global-replay/audit/IDLE-REMAINDER-FRAMES.json": "f76c46723a1ded4243aee4f81c441b7eba4798014358a091aba2f50ab79371b6", + "research/structural-gain/frontier-composition/global-replay/audit/OWNERS-AND-PROFILE.json": "7c42b0d506831843ff23a673f0459d41eda2046a3d114d393bccd22920a8ae9e", + "research/structural-gain/frontier-composition/global-replay/audit/PREFIX-AND-INVOICE.json": "15baebfd6c4b3fb1a6b45bf9cffd0b592168af078ddbe898390212173f84ba5c", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/CANONICAL-WORD.json.gz": "9d2467e9200fca9aea31bda6f54aec74ee1d0d41e2c0ec64c081691de8536b31", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/CLIFFORD-RECIPES.json": "9f7b1d5bfcd937fb25778402cda7e71ccc1ae0e0e7f2b65a380dc231ad6f36fa", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/CLIFFORD-REVIEW.json": "093762e2d5e751c26d5e82043773e6d7d77e902dcfadcd38bedc1502241eb455", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/FULL-WORD.json.gz": "4bb27af5d2142114ac59d24c8fc9bb638b932cf1cdffaf17733b5372ee101f3b", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/INDEPENDENT-LOCAL-REPLAY.json": "037ed24855a93ff5104667ceafcbc541dce26dfbccb125933281818e065a2b2c", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/LOCAL-CHECKS.json": "a66926b91a1d383b056e58c9c72024d228e710dae7c28af8514f1a2761e31f2a", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/LOCAL-PROGRAMS.json.gz": "eacd3c25390d7190ae1a54f6899e5e6a66003049665c3dd11648ae91123f4b2a", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/SCALAR-FRAME-AUDIT.json": "8087ceb5539a7a43bf5dc973547dc63ac87a764fff708a11f93c54df2ca711cb", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/CANONICAL-WORD.json.gz": "81ef773a4b22b91ac74880c5b8606d93794c0b98b2e7e7291a01580cba79ceac", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/CLIFFORD-RECIPES.json": "3323144380012a59c59e56348dd56d17da0f93e7783415efdaabe6fd5d3edadc", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/CLIFFORD-REVIEW.json": "1689bc0c187686bc547eac22033b5f781dbf71621cb02d134cba0263e45b88b7", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/FULL-WORD.json.gz": "a6cd88224427bad6d00b6fbe1d201a2c09e496c90e2cecdc04d7f2ff11a4ba42", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/INDEPENDENT-LOCAL-REPLAY.json": "895080ffbe54cf6a7ea148ee902308205ba9fa72248a8f7e4b7b375bf9e38d16", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/LOCAL-CHECKS.json": "66a2f5d82e13179626dec71bb5a4b49bcae32f91e4812fa4056fe1f3c3ecadcb", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/LOCAL-PROGRAMS.json.gz": "4fd7b2ad67b037c17fcc68d12663d0d70c45e66d802e2eb558daa859802f499c", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/RESIDUAL-ADAPTERS.json": "b55f994f7cad5b0be48084362f1461f7587689eb35ad4bb253de138792b1c526", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/SCALAR-FRAME-AUDIT.json": "2acacc4ce6a76de1df817361f619bc2c4dce171601e96003bab7e19375bbf9bd", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/WRAPPER-CHECKS.json": "bdfda50952f2781811a234ed5186ee3a3ce445e2f68ff88a068713981c580506", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/CLIFFORD-REVIEW.json": "f9a5d85a91abe1518fd5b9a1f31d191409ad37860390d3bb05cb1f0ce89768b9", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/FULL-WORD.json.gz": "375bd23001cd805707968005a9342827d5464e3f8e3a754197b31c46fc3f63c2", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/GLOBAL-TEMPLATE.json.gz": "ab8448de2036a23d9b55a196a8846512dc24fdf09855c1e0f0caa5b7a6965f7b", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/INTEGRATION.json": "2acde3dd247c50737ad42a2468775be1bdb21cb5751f4c156a1dcc5cac9e13bd", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/SCALAR-FRAME-AUDIT.json": "143ced2876c0fe33dadedce49e7e9ab5e458321c752ae1a0dedcec9cc2486406", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/structural-gain/frontier-composition/global-replay/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/structural-gain/frontier-composition/global-replay/base/work/pr361/code/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/structural-gain/frontier-composition/global-replay/base/work/pr361/code/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/structural-gain/frontier-composition/global-replay/base/work/pr361/code/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/structural-gain/frontier-composition/global-replay/hosted/ACTUAL-SIGMAS.json.gz": "936df489d3deb6d6986bec7e31f553535d04e3ad417c600fc700785bc2574d2b", + "research/structural-gain/frontier-composition/global-replay/hosted/GLOBAL-TEMPLATE.json.gz": "d9ffee95dba7d05cfc444e582fa652ab157855e796b5a03969e1ce873803c83b", + "research/structural-gain/frontier-composition/global-replay/hosted/HOSTED.json": "53fd81d8b95f59d56f2ddc0375507d166eeb63bcc6f6e215319843011603ad9f", + "research/structural-gain/frontier-composition/global-replay/hosted/IDLE-REMAINDER-FRAMES.json.gz": "466656a9a6b7270f5b3c5d69539df07555a43f0b14f53fa1740c74d3738c24b3", + "research/structural-gain/frontier-composition/multicold-eight-local/CANONICAL-WORD.json.gz": "94dba75199d70b744be5604386b8eca6767f0b0e1aeee06b2bd0e4e1db858940", + "research/structural-gain/frontier-composition/multicold-eight-local/FULL-WORD.json.gz": "4d4a59db7f74d7505447fbb2aa87735771cca1d04a0afafa455d21bd8dbf1f77", + "research/structural-gain/frontier-composition/multicold-eight-local/SCALAR-FRAME-AUDIT.json": "2f2f0f18aa3a560b2d274f2a61d1a2e8e93e7b677bdea69f8dd07e5b92f3fbb4", + "research/structural-gain/frontier-composition/multicold-eight-word/FULL-WORD.json.gz": "4d4a59db7f74d7505447fbb2aa87735771cca1d04a0afafa455d21bd8dbf1f77", + "research/structural-gain/frontier-composition/multicold-eight-word/KERNEL-CONSTRUCTION.json": "6f1fd8e202891558084ac9ee00606bbff0659c869f1bf6414461d87f6b67c53c", + "research/structural-gain/frontier-composition/nominate_combined.py": "ee96ba6b0f57e3a6418b851498a304e2d5f6bbec30c68d39e7bfa589b1cfa4fb", + "research/structural-gain/frontier-composition/portable-replay/RECEIPT.json": "181148f6262f4d38c365e1431424a3c6fdc72e3eb655c8b9e8d229ad74d966f4", + "research/structural-gain/frontier-composition/portable-replay/RESULT.json": "6814b7d49fb28dc7eb7f7a143b62a0e562457b8526c9d6155121a7190cf25636", + "research/structural-gain/frontier-composition/portable-replay/STAGES.json": "5cd026ffaf115c06b6372d66e4a94e7d5a65b1a55601d081a3862f1783dfe00b", + "research/structural-gain/frontier-composition/portable-replay/composed-word/ALL-KERNEL-CONTROLS.json": "8fafe450dc99d5ae5f52c9b943dfd335560db0ce7fa04cecc6079a185c41afd2", + "research/structural-gain/frontier-composition/portable-replay/composed-word/CONSTRUCTION.json": "1b66e7c6de00f0ea5cfb0b064c8d61f7353faad08a9f96153eba1de7df7e4efb", + "research/structural-gain/frontier-composition/portable-replay/composed-word/FULL-WORD.json.gz": "a6cd88224427bad6d00b6fbe1d201a2c09e496c90e2cecdc04d7f2ff11a4ba42", + "research/structural-gain/frontier-composition/portable-replay/composed-word/PROMOTION.json": "9ad34faa8611a6ea7f161d2e1fe331ab1ba5ccec8fca3978e31c3e7bf789bc31", + "research/structural-gain/frontier-composition/portable-replay/composed-word/RANK5-OMISSION-CONTROLS.json": "449566dc724a285764dbaabc1a448f974f0608c7c68cd0406139c21aa1cf4647", + "research/structural-gain/frontier-composition/portable-replay/global/ASSEMBLY-CONTROLS.json": "4ca8c100c735e46c0aaa54e8222b13f44a8fbd8bc1ecb2e169796dc07b828181", + "research/structural-gain/frontier-composition/portable-replay/global/ASSEMBLY.json": "458bf63f1e5019fef9b1653f68cd0d35de5a8e9183d5cdd0608696f9a80fe20d", + "research/structural-gain/frontier-composition/portable-replay/global/BINDING.json": "b90811aa2011210b603de24e79f45e6f8f5bca7d3687fa6f55fff31694e6d7cb", + "research/structural-gain/frontier-composition/portable-replay/global/PHASE-TIMING-CONTROLS.json": "4fac9ed2d96bcba7fa646045428e931363bbe06cc98283857a6c5d072b6d0a75", + "research/structural-gain/frontier-composition/portable-replay/global/PLAN.json": "528fe700ac5998cc4abb4edd008dcace6ca47db49b431fbf2cc021df885de6a3", + "research/structural-gain/frontier-composition/portable-replay/global/audit/ASYNC-AUDIT.json": "fb374c7f823f5db2162b50801d52a4282b54e36a49df67360d0a26160cdc200f", + "research/structural-gain/frontier-composition/portable-replay/global/audit/GLOBAL-PREFIX.json": "7a4c5d98bc35b2541df3d058292dba3d479b639dd13e6c2db31d9c2dc088e9ef", + "research/structural-gain/frontier-composition/portable-replay/global/audit/IDLE-REMAINDER-FRAMES.json": "7b77927a83f949534d5935579445c4505c3812b7a1403b164c1fa8f9082d33e7", + "research/structural-gain/frontier-composition/portable-replay/global/audit/OWNERS-AND-PROFILE.json": "0246da5a86b87c450db132b875e7dfd1d36b4ea0f388ea02f5d4d77e84751db7", + "research/structural-gain/frontier-composition/portable-replay/global/audit/PREFIX-AND-INVOICE.json": "9f2c2e71ee3a84b1cd65563d038b3a21a2a5de0a0321097c4804b9ae0254f0eb", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/CANONICAL-WORD.json.gz": "9d2467e9200fca9aea31bda6f54aec74ee1d0d41e2c0ec64c081691de8536b31", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/CLIFFORD-RECIPES.json": "9f7b1d5bfcd937fb25778402cda7e71ccc1ae0e0e7f2b65a380dc231ad6f36fa", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/CLIFFORD-REVIEW.json": "093762e2d5e751c26d5e82043773e6d7d77e902dcfadcd38bedc1502241eb455", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/FULL-WORD.json.gz": "4bb27af5d2142114ac59d24c8fc9bb638b932cf1cdffaf17733b5372ee101f3b", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/INDEPENDENT-LOCAL-REPLAY.json": "037ed24855a93ff5104667ceafcbc541dce26dfbccb125933281818e065a2b2c", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/LOCAL-CHECKS.json": "a66926b91a1d383b056e58c9c72024d228e710dae7c28af8514f1a2761e31f2a", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/LOCAL-PROGRAMS.json.gz": "eacd3c25390d7190ae1a54f6899e5e6a66003049665c3dd11648ae91123f4b2a", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/SCALAR-FRAME-AUDIT.json": "8087ceb5539a7a43bf5dc973547dc63ac87a764fff708a11f93c54df2ca711cb", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/CANONICAL-WORD.json.gz": "81ef773a4b22b91ac74880c5b8606d93794c0b98b2e7e7291a01580cba79ceac", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/CLIFFORD-RECIPES.json": "3323144380012a59c59e56348dd56d17da0f93e7783415efdaabe6fd5d3edadc", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/CLIFFORD-REVIEW.json": "98e70bd3e56f563c1cb51174cc0f3029d20f58a565a4f993d336c24e2f3e53c2", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/FULL-WORD.json.gz": "a6cd88224427bad6d00b6fbe1d201a2c09e496c90e2cecdc04d7f2ff11a4ba42", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/INDEPENDENT-LOCAL-REPLAY.json": "895080ffbe54cf6a7ea148ee902308205ba9fa72248a8f7e4b7b375bf9e38d16", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/LOCAL-CHECKS.json": "66a2f5d82e13179626dec71bb5a4b49bcae32f91e4812fa4056fe1f3c3ecadcb", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/LOCAL-PROGRAMS.json.gz": "4fd7b2ad67b037c17fcc68d12663d0d70c45e66d802e2eb558daa859802f499c", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/RESIDUAL-ADAPTERS.json": "b55f994f7cad5b0be48084362f1461f7587689eb35ad4bb253de138792b1c526", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/SCALAR-FRAME-AUDIT.json": "04835172c369aa8a0edd31a5161e86c3474f2bc748bea80a37750d37c66118c6", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/WRAPPER-CHECKS.json": "bdfda50952f2781811a234ed5186ee3a3ce445e2f68ff88a068713981c580506", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/CLIFFORD-REVIEW.json": "f9a5d85a91abe1518fd5b9a1f31d191409ad37860390d3bb05cb1f0ce89768b9", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/FULL-WORD.json.gz": "375bd23001cd805707968005a9342827d5464e3f8e3a754197b31c46fc3f63c2", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/GLOBAL-TEMPLATE.json.gz": "ab8448de2036a23d9b55a196a8846512dc24fdf09855c1e0f0caa5b7a6965f7b", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/INTEGRATION.json": "2acde3dd247c50737ad42a2468775be1bdb21cb5751f4c156a1dcc5cac9e13bd", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/SCALAR-FRAME-AUDIT.json": "143ced2876c0fe33dadedce49e7e9ab5e458321c752ae1a0dedcec9cc2486406", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/structural-gain/frontier-composition/portable-replay/global/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/structural-gain/frontier-composition/portable-replay/global/base/work/pr361/code/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/structural-gain/frontier-composition/portable-replay/global/base/work/pr361/code/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/structural-gain/frontier-composition/portable-replay/global/base/work/pr361/code/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/structural-gain/frontier-composition/portable-replay/global/hosted/ACTUAL-SIGMAS.json.gz": "936df489d3deb6d6986bec7e31f553535d04e3ad417c600fc700785bc2574d2b", + "research/structural-gain/frontier-composition/portable-replay/global/hosted/GLOBAL-TEMPLATE.json.gz": "049d649d121b5d9bd1947338413ed3b3a07e2429cd99294c914dd4c20b90d35a", + "research/structural-gain/frontier-composition/portable-replay/global/hosted/HOSTED.json": "8d376143853fccfaac130444641a9cd792b94a9e1f2a8449fc6cc37fa622043a", + "research/structural-gain/frontier-composition/portable-replay/global/hosted/IDLE-REMAINDER-FRAMES.json.gz": "466656a9a6b7270f5b3c5d69539df07555a43f0b14f53fa1740c74d3738c24b3", + "research/structural-gain/frontier-composition/portable-replay/local/CANONICAL-WORD.json.gz": "81ef773a4b22b91ac74880c5b8606d93794c0b98b2e7e7291a01580cba79ceac", + "research/structural-gain/frontier-composition/portable-replay/local/CLIFFORD-RECIPES.json": "3323144380012a59c59e56348dd56d17da0f93e7783415efdaabe6fd5d3edadc", + "research/structural-gain/frontier-composition/portable-replay/local/CLIFFORD-REVIEW.json": "98e70bd3e56f563c1cb51174cc0f3029d20f58a565a4f993d336c24e2f3e53c2", + "research/structural-gain/frontier-composition/portable-replay/local/FULL-WORD.json.gz": "a6cd88224427bad6d00b6fbe1d201a2c09e496c90e2cecdc04d7f2ff11a4ba42", + "research/structural-gain/frontier-composition/portable-replay/local/INDEPENDENT-LOCAL-REPLAY.json": "895080ffbe54cf6a7ea148ee902308205ba9fa72248a8f7e4b7b375bf9e38d16", + "research/structural-gain/frontier-composition/portable-replay/local/LOCAL-CHECKS.json": "66a2f5d82e13179626dec71bb5a4b49bcae32f91e4812fa4056fe1f3c3ecadcb", + "research/structural-gain/frontier-composition/portable-replay/local/LOCAL-PROGRAMS.json.gz": "4fd7b2ad67b037c17fcc68d12663d0d70c45e66d802e2eb558daa859802f499c", + "research/structural-gain/frontier-composition/portable-replay/local/RESIDUAL-ADAPTERS.json": "b55f994f7cad5b0be48084362f1461f7587689eb35ad4bb253de138792b1c526", + "research/structural-gain/frontier-composition/portable-replay/local/SCALAR-FRAME-AUDIT.json": "04835172c369aa8a0edd31a5161e86c3474f2bc748bea80a37750d37c66118c6", + "research/structural-gain/frontier-composition/portable-replay/local/WRAPPER-CHECKS.json": "bdfda50952f2781811a234ed5186ee3a3ce445e2f68ff88a068713981c580506", + "research/structural-gain/frontier-composition/portable-replay/logs/admission-controls.log": "659e7183284b11bc7f4bc4a54aae250f7a53993720ef9e88906908ba4590ab2e", + "research/structural-gain/frontier-composition/portable-replay/logs/all-columns-native.log": "7e097e0c37a6f961db5ea0a4b6ccfba1c8d336100dc65435cbc97939b5da88a9", + "research/structural-gain/frontier-composition/portable-replay/logs/all-kernel-omissions.log": "13fae47d3799fead98d1c0df5702516c3cbebf27636a35ae3e7d494274fef5cf", + "research/structural-gain/frontier-composition/portable-replay/logs/all-phase-edges.log": "316379dfe5c469e3f5e64545e786e0d501a3d67ee227cad8a957393fdd44213b", + "research/structural-gain/frontier-composition/portable-replay/logs/bind-providers.log": "71f679ce5a123fb58397fd6852ba64ce3832fd20e81a096bfda9a1cf3237237a", + "research/structural-gain/frontier-composition/portable-replay/logs/compose-prefix.log": "c8233c0c3b0e31aa798896cef089e55c72cd8471f71cd04c1e6a5ecd0067ecdd", + "research/structural-gain/frontier-composition/portable-replay/logs/construct-multicold.log": "6f1fd8e202891558084ac9ee00606bbff0659c869f1bf6414461d87f6b67c53c", + "research/structural-gain/frontier-composition/portable-replay/logs/construct-width7.log": "5387ebfcb072bc9e94b74bf16c25153d3513df6a70b378bf354a0fbc7cdbb248", + "research/structural-gain/frontier-composition/portable-replay/logs/emit-owners.log": "8d376143853fccfaac130444641a9cd792b94a9e1f2a8449fc6cc37fa622043a", + "research/structural-gain/frontier-composition/portable-replay/logs/exact-assembly.log": "9dbe4dfe1a7d8bc255008b3d1a2b00865da6f2e3404bf0a27f318640b8280595", + "research/structural-gain/frontier-composition/portable-replay/logs/fresh-invoice.log": "37caff4657f84fa89c1ac13ec93285ff9fa21f6e9ae8a406b28194e83f3ae079", + "research/structural-gain/frontier-composition/portable-replay/logs/independent-local.log": "b694b4b22abb9d1de9a70bbbdf9e9b0e030ec00a7eddc264e4c18376dd859cee", + "research/structural-gain/frontier-composition/portable-replay/logs/independent-owners.log": "fb374c7f823f5db2162b50801d52a4282b54e36a49df67360d0a26160cdc200f", + "research/structural-gain/frontier-composition/portable-replay/logs/normalized-wrappers.log": "084996d2f72ec61b58fd63cabd85c6d01a82c217a8d3f4639f99c5fb32afe978", + "research/structural-gain/frontier-composition/portable-replay/logs/phase-timing-controls.log": "d4300a182a615922dd73ff2b945ff671086b86d5b80dbc009539e96d9b4dfe82", + "research/structural-gain/frontier-composition/portable-replay/logs/rank5-omissions.log": "bab3028f59a9b024df5f20d2c0f3755933cea161bfd49ab676fa6133f58a05db", + "research/structural-gain/frontier-composition/portable-replay/logs/reflected-ledgers.log": "ec8f89251df20f30f32bf57dc61ef643ed0646e629cbeaf406e0d3cdf448ea5b", + "research/structural-gain/frontier-composition/portable-replay/logs/relabel-owners.log": "100be6d961212fe518657e577b7089401067f845fffa4fee9bdcc3d88850f940", + "research/structural-gain/frontier-composition/portable-replay/multicold-word/FULL-WORD.json.gz": "4d4a59db7f74d7505447fbb2aa87735771cca1d04a0afafa455d21bd8dbf1f77", + "research/structural-gain/frontier-composition/portable-replay/multicold-word/KERNEL-CONSTRUCTION.json": "6f1fd8e202891558084ac9ee00606bbff0659c869f1bf6414461d87f6b67c53c", + "research/structural-gain/frontier-composition/portable-replay/nomination/NOMINATION.json": "d5d23da576ad2b981287048d01b395fb92a241d1fd9a120da45e280a7e83d5d0", + "research/structural-gain/frontier-composition/portable-replay/nomination/OWNERS.json.gz": "35ce2ebf98907d0fbe1c3759dd58f2fa0e8a1bd3b97f65fb101092df657ce4b8", + "research/structural-gain/frontier-composition/portable-replay/nomination/PLAN.json": "aff99bac638d9707bd894f9241ea0576f5e7e33eaecc070880f450581d37c5c5", + "research/structural-gain/frontier-composition/portable-replay/width7-word/CONSTRUCTION.json": "5387ebfcb072bc9e94b74bf16c25153d3513df6a70b378bf354a0fbc7cdbb248", + "research/structural-gain/frontier-composition/portable-replay/width7-word/FULL-WORD.json.gz": "ee0fecf86bddcc5f4e675c60fbd5c572bd48269368a37a38c070346eefa3dd4a", + "research/structural-gain/frontier-composition/portable-replay/width7-word/RECIPES.json": "4ee838e1cb9258cd330d73b4c58333d35156cd29e4d7b70e4f543280a317ba53", + "research/structural-gain/frontier-composition/prefix-input/CONSTRUCTION.json": "33febf6fd2ec1361d3c378be5d58eb2da495537987bc5326cd1bf89fa41d20a4", + "research/structural-gain/frontier-composition/prefix-input/FULL-WORD.json.gz": "a8d37cddb9c430569271a25b0af1fe7ff78fd23d183f443ec7c1075898094d4c", + "research/structural-gain/frontier-composition/prefix-input/SOURCE.json": "1598d3d7cc9d7b2e0c400896065d2d149166290320556cb598a3923a1dc59c3f", + "research/structural-gain/frontier-composition/relabel_owners.py": "7f273d712fa9917dd220895b59bacdc776d5b9e6cc5dceb72b92036eff0363f4", + "research/structural-gain/frontier-composition/relabeled-nomination/NOMINATION.json": "9de86ae70d1162117657e6e9b5d2819cb264dc86e3c4b1b9414382aed5bfca0f", + "research/structural-gain/frontier-composition/relabeled-nomination/OWNERS.json.gz": "35ce2ebf98907d0fbe1c3759dd58f2fa0e8a1bd3b97f65fb101092df657ce4b8", + "research/structural-gain/frontier-composition/relabeled-nomination/PLAN.json": "c4c9f4f5db481c982f1d0f9396249ab0593165c1b7ec5d4d2ab850b92c80beac", + "research/structural-gain/frontier-composition/repacked-nomination-expanded/WINDOW-SOLUTION.json": "7df5fe77a32eb4dd95b032c522b51f957d1a4b6845ba34b6dfad8d489589cc3b", + "research/structural-gain/frontier-composition/reproduce.py": "8caa2e9d29df773a86a18d6b50b20379a616a22577e8c4fafb926d8c7d24aec7", + "research/structural-gain/frontier-composition/upstream567/data/EIGHT-SECOND.json": "eff4c7cf18a2aca50d4684af5df0fe2d134892354704f65f3d36066200db1cc0", + "research/structural-gain/frontier-composition/upstream567/data/FOUR-SECOND.json": "103afaab0459014cfa67da7cf78d79f9fae41f5f34c002e550b067a7a9ef8ae2", + "research/structural-gain/frontier-composition/upstream567/data/ZERO-SECOND.json": "0dedad089bfa54a0bdf0be77c2aa5e56c098cfb85ccceb9c797a79a13be32357", + "research/structural-gain/frontier-composition/upstream567/proof/CONSTRUCTION.md": "4090072319ae982c2477a6aaa888f204382e80b745b928737cdc1a707547c38b", + "research/structural-gain/frontier-composition/upstream568/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/structural-gain/frontier-composition/upstream568/MANIFEST.json": "328ce8023d33deb308b0f1ae2320424050f836d791cf60a613ae8408e7d6f3ab", + "research/structural-gain/frontier-composition/upstream568/NOTICE.md": "d14c070a8e237cb1912e413ce22e98eb41f164b769ebaa97224c121fcc5a0fc5", + "research/structural-gain/frontier-composition/upstream568/README.md": "638428654d34f0b72ed4b5fda948c91d01e57f8015813c6d8ab01c06c1da5322", + "research/structural-gain/frontier-composition/upstream568/code/audit_multicold_controls.py": "3ff631f0bdc7e707d4296ff441802cc26da9c6556650469f09ab7253558b4017", + "research/structural-gain/frontier-composition/upstream568/code/build_multicut_kernels.py": "6ab3d73f81d5b2fb884a93a336ef1940e118d419d425b3356bab3b97f774c9aa", + "research/structural-gain/frontier-composition/upstream568/data/EIGHT-MULTICOLD.json": "d18ea59995d384833c95a7a55d8167f83439b6881a524ab03df972ede3e0d7b9", + "research/structural-gain/frontier-composition/upstream568/data/FOUR-MULTICOLD.json": "c1b42d7bacf9f31ab35294f7b8430a1164d6bc169a3d68fe2b3ea39cf791b323", + "research/structural-gain/frontier-composition/upstream568/data/ZERO-MULTICOLD.json": "cc09fab61aab468200d72f833ffb9e6572580d54da57bab02c5d63e3b280af1a", + "research/structural-gain/frontier-composition/upstream568/proof/CONSTRUCTION.md": "27ece5e1c11b90d97a808b56eff897b998c10e61016db95867f84e6e6aef132f", + "scripts/audit_additive_labels.py": "fa12eb2c102dc3ea176b6b5ac22618bf1cd2ff15cefc458d3a4274661abcfe6f", + "scripts/audit_affine_vectors.py": "a3fccaeadb9a5db72c33787a055a54374504a6aa231907080396b2cf822e94a7", + "scripts/audit_assembly_domain.py": "02af0a14a4a049d1bb6d073dc4af972f4c2a3b4065fdd32ec5882b5f3b7addea", + "scripts/audit_bit_compression.py": "f0ed48592a885b54669d3f9086530fc84c467c39fd9281b357ba7550549aaa25", + "scripts/audit_block_carry.py": "2835f9262e0f835259a18c11aa3469643a19483d62daff90dbb91ddcb46e4505", + "scripts/audit_block_core.py": "a6ee56d5c238691701e9f17e9f2e7ed109a192d974614f58bdeca57a441ab968", + "scripts/audit_block_labels.py": "5455255446aaca07caae5187487cac5129fdbd823de778bae74ea16ca1f78f10", + "scripts/audit_cancellation.py": "508934ee4d9514a5519813603b6192a0d53103b6e30d65b8d53a1a774de244b6", + "scripts/audit_coded_carries.py": "b914227845265e856e5c343bb8588bb6621477afab40ba6a08ced95eca595ef3", + "scripts/audit_community_candidate.py": "fe687e20639a26c852fcd336411636e5c4293c0d7ba1880cf570bcad2f9d6ac9", + "scripts/audit_compact_controls.py": "c3513cd6b41a20bc33b392d66c1536f0a5fcaa76088848361a3aef64074fa989", + "scripts/audit_complex_centers.py": "166b18f560cd0d520d23fa29ee8147e0ea056358c4268a466ec458195a97a960", + "scripts/audit_core_limits.py": "33060eda83c47372daf887fbdbb5e684d2a0a193e527449443948880cbb0c70c", + "scripts/audit_cube_cores.py": "eaf815316abe1a55b43a62e71252243562486248f3275f4a28ee286a34c5cb07", + "scripts/audit_cyclic_topology.py": "b20ece2cf1337e1808e35b602a0120c6aedaf602fa2315560726a149e9838c29", + "scripts/audit_disjoint_tensor.py": "477db540e972b82751fac6a3a6d6e38fb4141e967261b1f9c260e2c686479a78", + "scripts/audit_early_sharing.py": "2cf08ee65f8f8610578614d0ff0308eb432732e779f1e8c03e67f1979e75fdc6", + "scripts/audit_fano_completion.py": "427c369eb2adec9214c5e804bb4413c5a1c4ecbe74ed81c4d65e1b11faa60ed0", + "scripts/audit_fano_permutation.py": "168d286a09c9c25852c3edd8832c1dab3c30e8fec87c050a6daec8d075822bc5", + "scripts/audit_followup_candidate.py": "dfb65258d08097acd6a4c29719f4d7459646801de56f33e78d9ae1cee55c2cfc", + "scripts/audit_fused_block.py": "2afb83ca8e5f193ca8a4c242becf267ad1d9dc2578ba238b820e98d5185f6288", + "scripts/audit_gather_schedules.py": "d7b4f64a672404a4d46fb2dd46a9e71db70fc61e3e2e8ba4ad20a8a07eb724b6", + "scripts/audit_general_guard.py": "885743e70450f8da77dd8eee619eb784bd10b3078d4229baf4af2791a2e483c1", + "scripts/audit_inplace_side.py": "16d295f9f9250d35f6f1de2843d5e13c7adbf88d595ebcd0b65b00d1a938acd9", + "scripts/audit_joint_candidate.py": "41a5ef6425561eeaa49a4dc1783afbce723ef31944e3f7d30cc91f4a1e0b64ff", + "scripts/audit_joint_frames.py": "3df8061392ce0ba42bbde8c02f2a30c8141145e70e9a48c18da73d3aafb14423", + "scripts/audit_joint_return.py": "da515bbd86dc9597e016c39ce2ea189343699a2d36f51f2224f4c2e39fa69601", + "scripts/audit_mixed_point.py": "2eead5d410d1c96f1a7ef47c9c35d16ca6bb6d9c2a6a8d24273290add842214d", + "scripts/audit_packed_movement.py": "d283f6900c97e04c687f77697ea8b29d5cac5a2f69cf2a79766099573dd66517", + "scripts/audit_pair_candidate.py": "29f38baeaa66e854eb5b235fb9708575137df30da277d439e0a08c5c4c4cb61a", + "scripts/audit_parity_side.py": "7cbdd405ce11fa6f7ffcbef3811174f8685ad4640e9330176601d3b3d3e95390", + "scripts/audit_positive_side.py": "b021aad944d8a6c023e57b1b48937854803bbb370240c93e0fe359d831c838c9", + "scripts/audit_positive_skip_exact.py": "fb4aa8af4e8a0a8a0ce21b8b647efd982fa1da2bb93aaaac72a42496c201d25f", + "scripts/audit_prime_subset_limits.py": "8f5c51d415c3248ce965d93469518e8d219020a1192c7be544a1a5f4b95dc1c9", + "scripts/audit_quadratic_affine.py": "9b7b3a7b8bcf417d95f19e44ff488733e7a3f4757fd12bd98d417e1d01d70425", + "scripts/audit_rank_product_core.py": "1471f17e86d6c02d5c288116cc3a53544c881ded47a3500f70dac97b366e46a7", + "scripts/audit_scratch_pooling.py": "12748b9915aaa5b59f0e32ee0b4f8bf0cdb86d5bf90d633cd12bdfb832e414a3", + "scripts/audit_shared_core.py": "fd257e22b8eef948bd29c2934d15f96ea93bea439e51229965bed53d75e09307", + "scripts/audit_short_guards.py": "c2c929c956e617bee739963b517b9069e0d067cfebc6820f401a4e90a1769eb1", + "scripts/audit_signed_sparse.py": "5b64f4098fcf9092d3e24526f4d6ba90528104fe66396e3e7ee64a7eaf3c8a51", + "scripts/audit_single_intersection.py": "1de7f9a62edc93c624ff2693ae9bb725cf6dc9735ff1caad56f6913aae9448ee", + "scripts/audit_sparse_fusion.py": "bbaa32f9786f083409e363b081bfb7a1e597c8d32e4183c13a4105c2170934ce", + "scripts/audit_split_centers.py": "c5cfd0e89120c918b81c4ef0b69b767342457daa1b29ce2b7821658ea7ba6f2a", + "scripts/audit_stage_pair.py": "f4823525abb553f76ea33adf61ed51e88ec38dd6c346dbcac86f69ffa8fb0375", + "scripts/audit_stronger_screens.py": "9678b66043b384f1454181bc2069c6d72685eda6576e284ce799d4b9aeb79860", + "scripts/audit_subset_cores.py": "ae38397693540a8cc26d416a6edcda271fd0fa2eb88566df690fb569e812f0a3", + "scripts/audit_ternary_side.py": "5e86566eee32031e1829d26ea17a7372e4802e2f7d76a2caa3ae16de3ab072c1", + "scripts/batched_bit_rank_moment.py": "f23bcecb8a71fcc89bc69f8e9f7845483f4b150951099bb296f82c4eba29820c", + "scripts/batched_network.py": "45d918d5a064339299c21a12f02462ac3fe7e18380fa6a5a6e2542566865b830", + "scripts/binary_phase_frames.py": "4148cfa313cf050ed25296e8db36d35871520b8318fd086c7d1facf0c6af67d7", + "scripts/block_label_targets.py": "3bfc422d60db0d79d8cd955a77d8b72c581bc0d4e288589f359fbf8ee6a76c52", + "scripts/bulk_complex_guard.py": "e64bb4e086205155fddf85cea86dbc8f9dcd09af4654d8e4b5c3b2c9b4d04e66", + "scripts/certify.py": "2348d95008276c5d5764f7e028c3918e484582cd589bd4d9b82919161745e53e", + "scripts/check_lean_axioms.py": "63b7c34c4faf1b2234af7489c3728dc848e7950ec98300ff8bd61cc0d67a10cc", + "scripts/compact_control_layer.py": "e814c9f8d84f2e5d3aa2e06c36697f27f110218addc40ff8df2801fde861ff9f", + "scripts/complex_circuit.py": "d623617f7c5cb3189580883a8ab30c0bd3832688ae3f1f0c1f881bbbbff8e0c1", + "scripts/complex_compression.py": "9b6f758a5985ba5d9fdd726fe6556b3d3b4bd9d98aaf8ba06a7bb58093c4c504", + "scripts/complex_network.py": "0da395e67ac04fa213494e71012c1b19b544596d34cdce5a3b172b1fb6af5f1b", + "scripts/controlled_bit_rank_moment.py": "572a1aea08b5b62da000588862d4724fdb47326b95282b76b8e49dd6923f73a0", + "scripts/copied_centers/README.md": "8d348a28fc11615fb686f7d47548db06a5000378b54e0e47438d17292b5942b9", + "scripts/copied_centers/__init__.py": "13db4f09038a2ff5335cbd4dbd93274b0fb16b3c7b51e4de67cbb2801a3f78e1", + "scripts/copied_centers/corners.py": "9eecdc39c67cc18c806a33f0be03986c28591d322881fd60c11f52c625c8067b", + "scripts/copied_centers/physical.py": "837345d1f8753eab0e70f105b1d1bb0db965b993da037b1825ddef3672609d7d", + "scripts/copied_centers_network.py": "409ebfbd8a41c4c4d089aa0949fcf5a949415dc26f57440ffd48b7bd8881e6a9", + "scripts/copied_centers_producer.py": "33afa6fe25677e13656fa8a200a25ed3510ef70c1ff9f1186612cbd9ee75d209", + "scripts/dag_network.py": "820f1f6e9f26251f58510ae7312e37a91bb5fefc37f8eeaaa648d0c68c48ed2e", + "scripts/endpoint_gauge/README.md": "044eb10845ca3c25adfda4d0abe728fd890d7f1c6ecc5da3e254073c189d08c1", + "scripts/endpoint_gauge/__init__.py": "ec74b81eb64a8167df4597a5ab94bd7a99f65acf0186bca684a74bcbec91113a", + "scripts/endpoint_gauge/bit.py": "5b2817bd1b35a42fabb636541907fcbdc394ed2ef1405099a10de9c9cf524b09", + "scripts/endpoint_gauge/complex.py": "dd0e1ff9729eadb65a18dba48fdbe824f423e025003f081f532b443b939f610a", + "scripts/endpoint_gauge/match_complex_general.cpp": "fb83c08125521128a38f5ee53f91d192904cc3372ad8f196ad9576e5f4f727da", + "scripts/endpoint_gauge_network.py": "7af181e30093d593ca58d0a133dca6862b06f2d350db1c5d745e588856258704", + "scripts/endpoint_gauge_producer.py": "484490dda84716f7077b07aa14fa510fbef2f77124c8b0b99e2adef50c232690", + "scripts/exclusion_circuit.py": "b253f9d7318becda1c1f3b24e2287ed44a9c27fcea00cf9d531afb950d0457a0", + "scripts/experiments/affine_vector_screens.py": "756778eeca27f490adc7354a122dc50c40375156259991469c47a90949118ea1", + "scripts/experiments/affine_vector_witnesses.json": "672a4318c48f5286ce088d34736c38957b7f662a5f753d440dbc638e7da5f62a", + "scripts/experiments/balanced_fano.py": "1586fb1db4f40e79e97bae59f47192675663403bbcacbf5f4e0b702edfd22b0a", + "scripts/experiments/binary_frame_compiler.py": "bc6910c8bbe8224285164323d3c06e9035ad3eaa55416abc2867ae0066454a0c", + "scripts/experiments/binary_frame_math.py": "1f96e8aafc8ae89f8eeec5d03800131d93d58e01bf8a7fca8feb03702d1740d0", + "scripts/experiments/binary_frame_profile_prepare.py": "16dea3d3ef3dc90db928ed3e35d002f6926d2e7388da4766fc2fd725550f739e", + "scripts/experiments/binary_frame_profiles.cpp": "8e2e391d3ee57cbb1372c68e4aa031e1b861321536eabd642ada54e12e678669", + "scripts/experiments/binary_frame_replay.py": "1a572dbb33faba6695b3293768a7e61392d11cb4c2d5f708eedcd2cb95d0aff9", + "scripts/experiments/bit_compression.py": "d1e6726341b3619262cc07246c3420584f46bdf57d44f1946d8dab18334cbca8", + "scripts/experiments/block_completion.py": "58d928accb928fff0230eef4901a876e6d7a2ec24a3694e4784614f340a03b8d", + "scripts/experiments/block_core.py": "af94018e8f4b80219a8e9e104eae21e34b66fc670217d03ef54862b59c051fc9", + "scripts/experiments/complex_centers.py": "3744396587d729253d80980f6310b56e7bf0ea21b165bd178d0d6d4c49faf2e2", + "scripts/experiments/core_limits.py": "a31a27cc24cf0349a507d1141a2b965ea25f1c60f355d7e13c581305a12d3a43", + "scripts/experiments/cube_core_family.py": "e58f1f4067bda2d4838343f42ec2505316f006561f0702e869847d88b85413a8", + "scripts/experiments/disjoint_tensor.py": "102dd59bf96033f96ba0dab4c2aba77b3a7a73b67b0f96929ff8b20a98b91cd8", + "scripts/experiments/early_sharing.py": "1dd42768536bac13727528e51a999152cf9516a53c4001f2c390323e7f453378", + "scripts/experiments/exclusion_greedy.py": "d8fa918119a6d944174522a5f7a2f55dc9f905aeca98e1864dc9bbf672876902", + "scripts/experiments/fano_completion.py": "6cade2a36b910bf7e68a872dc4fd3560837935cffe80f9526cd012a28b247738", + "scripts/experiments/fano_permuted_completion.py": "0b48e0ba6399ac9864b733998ff32222e7c25c99de052ab8ea5196872f8010d4", + "scripts/experiments/fano_permuted_routing_witnesses.json": "b7093d006713f0b026c49b62ac4c502731630d17d15f56a2b63284ad8f4f8102", + "scripts/experiments/fano_routing_witnesses.json": "2017a4401c16ac58ccd7911b1d2128f1a93a98b108672db709e0c21cda4bb693", + "scripts/experiments/inplace_side.py": "4e7cb3df2e263f6c7f5907c55e3ee04c08926e6dbc984bbda1722a27b0a48ff6", + "scripts/experiments/inplace_side_witnesses.json": "90fe710f5daa35cc9e4892b29d712d66110b7b2b4c404da95a960ea7041618b9", + "scripts/experiments/intersection_circuit.py": "a877cb59aca1f003fc5db4bff5cd873af57be6d8d2465835d6fbe2c396ee5c09", + "scripts/experiments/intersection_greedy.py": "e7faceecad5d1efdc849c52ebe7258453e1579308fc8e31d9a4b3256f6ca9d0e", + "scripts/experiments/joint_dual_compiler.py": "853d3fc4a740c5b74c23b3a6af5d4dc9b41fb38e9b55678539a7e0ee71947c13", + "scripts/experiments/joint_dual_compose.py": "3554e957570e2d3f65c5bd7c945338c9e2fc5f3e79efa2b436a4dfc61899c394", + "scripts/experiments/joint_dual_reclaim_compiler.py": "9984aaccf880e4840402322d76678bfddb33ce7e494af78430a43429f51b85fd", + "scripts/experiments/mixed_point_circuit.py": "f509362b5031976a22af351fd158ae0b4520fa4f286a5176ec37023d672a7ddc", + "scripts/experiments/parity_phase_repair.py": "1f76f3b96ed556ed901835bd101d0e2588c997d2ed39bdfca097f0187aa86d40", + "scripts/experiments/parity_side.py": "1363ebf82d4c39e458e7bede8253688271008374db70ed4284df84253c8d092b", + "scripts/experiments/partial_routing.py": "dd67bf46aa70f1372d49c30c4fbbaff5664e27331a79ca3319251ceeec11ec00", + "scripts/experiments/pin_joint_dual_sources.py": "5d41535a73ad62fae7acb5365c5b7f40d7c99e52b6bc4266e44572018080acc5", + "scripts/experiments/positive_side_core.py": "0d453ab7e869d2cf6a43d6865de82583edb390d3c75038271f0fc09e0f3828ba", + "scripts/experiments/prime_core.py": "080a89a2c91505b509068698542843c9d7af3cdec01b5c88972107dc9c688c62", + "scripts/experiments/prime_subset_limits.py": "3768743ebfd982b7704fdda9c8ee8dd8cfbb4fd126a78396349d075560c047fb", + "scripts/experiments/probe_pair_ranked.py": "aed43df0d61701b5819cd50fd4e028b26f32e65fd7b9074d93e1423a3453fe7d", + "scripts/experiments/quadratic_affine.py": "8f9252bd092eb14779997c6767e090377e91f4d57e6526e9840ae0dd7dcc8f9c", + "scripts/experiments/quadratic_affine_witnesses.json": "3efcebf41650681a8a21a901cd2f81dc07a0c4d28064b883af16b10c3e0036c3", + "scripts/experiments/rank_product_core.py": "7a91c1188c5d42e864a5d2e42397b09c435b526ae4f4210c44bf615de488708e", + "scripts/experiments/shared_core.py": "d3c59b61229956cb54ae1ef9145ed213abdf1ae743929de145a77c43656f01a8", + "scripts/experiments/signed_sparse_core.py": "21da8e1de5ab6ac8479183326c2000313d24b47cc5be2f46b4fe6ac3cd59779f", + "scripts/experiments/single_intersection.py": "08ddae46e5621a5b4c525b504e67ae655abe9b49461d894feaa7abc89a51847d", + "scripts/experiments/single_intersection_witnesses.json": "c2308a3d21991f5828b0519b191b470f48b2fbbcaa5af0f7aed3986cc7534185", + "scripts/experiments/skip_frame_README.txt": "c92a53e608edb95a266ad27f4543c27668451a009c72fd5860619e6f0a355852", + "scripts/experiments/skip_frame_compiler.py": "8ffd079fd2e4f055b5befefecc5f33e686de9898219e9252f5d3913df8b195d8", + "scripts/experiments/skip_frame_compose.py": "d48e688ebb9a490f4eaf50d9ab0a4d4e3e76b6588b55d213df14c703c27a7f66", + "scripts/experiments/subset_core_family.py": "373a45a8fb4294cdf72d510d54e16d21535227b085aefb008aa092b3ad26e4de", + "scripts/experiments/ternary_side.py": "93379b6e70cf58bb55432d9f2d1c0e0305c20a075bfe3cc219deabd927afd375", + "scripts/experiments/verify_joint_dual.py": "7a31bba1e9c0ded32ae285df2ca9bc91ef20c330f6789fdba361876f3c7a1985", + "scripts/experiments/verify_skip_frame.py": "fc42dc3d59239ee3908d0e3e95402eb53fd6815a100521911fde1b541070c292", + "scripts/fast_gaussian.py": "11430c2df0783b933dc91080595bb7514bb052b8c7b12107e27a1ef701e31e43", + "scripts/fetch_upstream.py": "2109ad8965d88dec73f8e851731eb949d95164f6afd8dfd0e57c11dbc2dd1f31", + "scripts/finite_bit_contract.py": "3cff26a332cb6056f656b824e3a523fb8937d15206ddcc4118b911ac8df1b2a7", + "scripts/general_network_guard.py": "790a2064449afdbffd6dbd4adbcf4a28eaf41931ce7134e4a4e8766f3764270c", + "scripts/incidence_network.py": "033c934acb838e5222d60e09929d724281bb58ad9c2dfc02e89996788ff39ac7", + "scripts/incidence_rectangles.py": "5240fd33dcc3096f5685d10ca360186cad36b355a00d55686a4ea4449417d00e", + "scripts/make_batched_patch.py": "dbf2e939833a282e261511a89cf6fd1c59d51c73db0c6ef65f0605c7ebd7ae6a", + "scripts/make_compact_control_patch.py": "8eb6776b9049267c5a0b3209cf9668d4cc37622a9b111795a68819291db5dd08", + "scripts/make_complex_circuit_patch.py": "17d13ca9ff43a2fc411aa14fd7c8e1f25648b41f09c17a7bbe40a6cfa09862c3", + "scripts/make_complex_compression_patch.py": "4e32d120462812953109c0f7cf18db001ae0e7ae59e6e2fa7923f142df9ad96e", + "scripts/make_dag_patch.py": "1d8e693926f0c770b9a971aba5174fb77422b19f28326d62c0bb6ff62b2dd721", + "scripts/make_fast_gaussian_patch.py": "ce2013dc3a674b920ddacf25fd17329b262885af0a19279e084238318dff4760", + "scripts/make_incidence_patch.py": "11745d761a94c8dc3f150de1da06bd0c4f6841bacc07ff24a3e1807e68cfcec0", + "scripts/make_nonadjacent_patch.py": "4b1ed6115f0919afa5b375688e13dfcbe4eabafbbe32917eb912230ad8421294", + "scripts/make_paired_patch.py": "35cef140ea2656dc30f751414c10d50c6de62e52625fbad85b74f34c2739a273", + "scripts/make_patch.py": "a38a04c3e829b37a61291dd497247ccbe7204d61b505ddf36cca8bc112c11fd4", + "scripts/make_prime_field_patch.py": "a05974b4431cfdd4c5571add995cfaec0288b0c8ed6608142c790b2c61943c5a", + "scripts/make_reuse_patch.py": "c90384c4b0d3b7000e4e2b0f886280140f06627ab976ca8f21d4a32b8dd25166", + "scripts/make_shared_point_patch.py": "06c5f1d7b52fe7493aa249dbbcb9880e7c77cf8c4418ed8d1dc617910295f79c", + "scripts/make_ternary_patch.py": "fa41b5822503538e50fc56d1ee9f4bdbb45deaaf3c10c892244cc7697e0632e1", + "scripts/nonadjacent.py": "dca1e533611ac898a29e176214eb21c152853e68f97f7af533aba1ccb3b1b0f0", + "scripts/paired_complex.py": "4f4c28102bfc528e264896e6c32bbd0e66da0973237e96e4044d8ccf7e78a1de", + "scripts/paired_cube/README.md": "bf2adf1d1c5a412730be66e019bd73a08826ef8dcd6ffc833b9d1656b755dfb2", + "scripts/paired_cube/__init__.py": "b5fb17c79fd41a75c0648e7a5f99076f9f42a619857d5e34e71699bf00ef0c91", + "scripts/paired_cube/frames.py": "7d897418dbfee47de0723ea4983098a982610ccba45e1bac9000a79626d8421c", + "scripts/paired_cube/gauges.py": "8a501c66e1330f054e0e11a35e9321d2deea7b51cd03ca56b6a41765e43fe061", + "scripts/paired_cube/graph.py": "c757d47997f2fa42a95c16f6e6855cf8b125216ae3335b3891e305cf1da82855", + "scripts/paired_cube/modules.py": "18a1ad8af0a7832b7c5c4791f5b95f76386cfa7e82ad52bfd2758c081ada68c4", + "scripts/paired_cube/verify.py": "e13747916a58b631f10c36eaae230b91b63b427d0a80aa3a530dd9dd90159147", + "scripts/paired_cube_bit.py": "677ff674f48860336ca96c4ab6d7fa9053bf7137d20ba368445d20e236765dbe", + "scripts/paired_cube_network.py": "293662b7f8772dd398399a1c19966faf7d155f024543d0c06601eabb800f35cf", + "scripts/paired_cube_producer.py": "c84ea3e3ce3eb9563906b6ee4b7411d93dcddfed4bdbc2d4e39936642261cab2", + "scripts/paired_exclusion_circuit.py": "8f05f04cf06217befd6d0ee0f2d7d0c5c5eb32cfab8c9a8ca7917fd6d620b7d2", + "scripts/paired_network.py": "991223dc3c1374284c361ed017e42bf732dd971fa0bea2be2282cfb18257b3f7", + "scripts/paired_triple_circuit.py": "8f5f2de32fdbd8e0005154638660ff416e5a8cd59623bd0dc03f6f7f97ce2fb1", + "scripts/partial_gauge/README.md": "8725c7c0d3b2287904026caea8e94d62c2f66dbbd085e4fd6e5c10933ad9a72f", + "scripts/partial_gauge/__init__.py": "298aa57fbc2de1ff3f9fcfea0fcc02ee7f6758576c52879cb60e9b9c38d471ee", + "scripts/partial_gauge/binary.py": "b29e2f37d7f32a959a378190d7f1da3c2da534fbdaf878044800301957bffc03", + "scripts/partial_gauge/cube.py": "304b653ae6a30f08cee07b5285d48c3793559d63e623bb9bbe8383d8ce68aa24", + "scripts/partial_gauge/interval.py": "c7cf97aa327c92feedfcc098c77d51f3ba8075ccc6f94ecb064bb7a27e44df0a", + "scripts/partial_gauge/lift.py": "895874399113faa090d168d6168f0664136df6e21205671e7f7f9239cad93d1d", + "scripts/partial_gauge/match.cpp": "12b8b7c93bb78324e7328e624b166be2067ae8861540531c024040220d86f368", + "scripts/partial_gauge/scalar.py": "c9fb22e8643ab6d63f7f64ed8143bc5c469794a53e4914cf482e9ad7fcc10cc4", + "scripts/partial_gauge/select.py": "e23f6af42ee5e96d7b2eb29fccf15892f210253a45623255642a62ba93e20cf7", + "scripts/partial_gauge/verify.py": "d31683af845c1de75ac90c0a208b2d335806b6fb346f9960279204812f92bc63", + "scripts/partial_gauge/word.py": "96015b7b08a261673ab8be1ea47f89302f8a1d62a822d657a09f6a1fcfb51e58", + "scripts/partial_gauge_bit.py": "7d58e86061da2d73991531e9bc431589019359391adea866c61c7dd1f99ac855", + "scripts/partial_gauge_network.py": "76b09c4b8f9570766d94b77b265914e4662f8f782e5fa7b4749a1092972b0d68", + "scripts/partial_gauge_producer.py": "8d9284b02ed5915008bfe2e8186ef18f882306192ddd4873b7856341b061305f", + "scripts/partial_swap/README.md": "a81a6a59b89f7db539bc317a7dce23ab84a75c7abebae105091de4e2aeb3f941", + "scripts/partial_swap/__init__.py": "0438eaa34134600467a5864f93c3e15142eb025b35cef189c2e969cffea72a7f", + "scripts/partial_swap/binary.py": "d32d7a23548cc738e974e8e55dd1fa2a8b11d2b80228515617ffe35410bb8805", + "scripts/partial_swap/binary_io.hpp": "d0be783f61ac4b7981e7e48a8c1139b52572302ba76c191c0e9a1b16a1a05e0e", + "scripts/partial_swap/graph.py": "fd8c567759e26a10d2bad05508fd0355eb70fb116664d4e06e1858d0d8cb2ef9", + "scripts/partial_swap/match_exported_dag.cpp": "7901b0fb1b80b628a24cfd7fda57bbc32f58771594d08b318b90e4b8cdf0ef82", + "scripts/partial_swap/match_positive_dag.cpp": "8a6d64e2d0ac2c69210fb0b8a5bd0d714ad40b3609f75a5fddfcba3291a3d552", + "scripts/partial_swap/paired.py": "ddcecace3a8e04d690914cbd64873ab8dde8c0c3477a255767b0ed6f639bb0c7", + "scripts/partial_swap/positive.py": "1dadf771226d6e4f3bf9ce3aae2e6a2ad7173f4d1c900299d0663fc4c432f3e8", + "scripts/partial_swap/shared.py": "81e9af92cdf38243a540cdcff2062778e449467848d444da37a9553c12ca4c34", + "scripts/partial_swap_network.py": "acdd81b4dea2815f8838a0c3ea8ac4968f2bc13fd7c99173473d865779096782", + "scripts/partial_swap_producer.py": "dba07d742c68e8e4aedd1d93fc4c47a0481778268f7480997463e2b269fdd0a0", + "scripts/prepare_layers.py": "a6e2adc612f264b1c0e51d18ce6315de9ae5e2ae2420aa22e99a22d8bf304947", + "scripts/prime_field_checks.py": "be21a411cdca5fa331fb9f36352ce98c055cb5e973553255e4530d07e99ae5c4", + "scripts/prime_field_circuit.py": "50485ac5a65b2707aab2b870477fbf503f4776699f6dd5ce38fb2006cc95d0f6", + "scripts/prime_field_network.py": "16629edd6aa8357b3fabcd5e1a70027860864a64475e8c0e7c822ee81dcd1ab9", + "scripts/prime_field_supports.cpp": "927dbb2ac2a411f06d8d9e0c440548f7ab965311fd83f4a573668d94d0cff1fe", + "scripts/rank_obstructions.py": "af0bb5d7c21409bf0318ec4ec7d5f391163b7ad9564ed9e35de92ada14bca975", + "scripts/rational_span_frames.py": "766d342dd73ca5efd784c5733282a93d379a58beea763e703238dfbb4eacce82", + "scripts/rational_tensor.py": "629b3f00a1aaab32fe908a73ca8f8412918209a300e6b1e5afe6325b9cfed3c3", + "scripts/reconcile_pr_queue.py": "54447bcc19f927f521373b3f215618a5a96ec4a88066f8558fd3b40fd6a6c728", + "scripts/replay_bank_endpoint_family.py": "5f9e592f87b3f903c851425e165d2866bf791a647561cd8a2c8facd6bb1b2b33", + "scripts/replay_batch1047_t16.py": "8e7d3d8f3e0b906142a219527c4f653444c58cbdfe22646d65077735f2a274e2", + "scripts/research_networks.py": "3db82e1aa5faec2f76bcfd19a996a447048af56b25000af3324884a751e8e864", + "scripts/reuse_network.py": "f345f4f015a17497c173ed331aad2133908e2a67d683455ffd60dbb3b3ed1aa1", + "scripts/routing_smt.py": "25d2dfb09a34c0c0ecfdf870abe2d3883c95677189836dcce25421b9443e8a44", + "scripts/run_isolated_tests.py": "96ea543e6c707424afe247e77bd86c82152f90fc76a0773c4232145da5cdf8d1", + "scripts/search_incidence_partitions.py": "d2e5a98d07dee702064671d9d081b8dc18e7a1bfeb45e4217905141732abd1bf", + "scripts/search_network.py": "3a4faa5037d9b8e7ca5828afac193a96b6966a8b114f14937921795b24ec4f6a", + "scripts/search_network_variants.py": "069a80a1ac504e83c5da60f4737440552df1ca4c57218ab2e32523f88199cbbc", + "scripts/shared_point_circuit.py": "c9bb7a5df92d260a4e3ad532b53e26936730d7c93f7facfb0784957c1e81c8ba", + "scripts/shared_point_network.py": "a85e7f0d8c42d6a27e3846308571ca324a1824ac5c2d59e4daa5c7673c33c697", + "scripts/small_block_witness.py": "a8bff53b5e6a13808305cab3d53c2532b1fcb5ff172653d02761b028eb60d79b", + "scripts/stopped_product/README.md": "6c1805dda45b01ed0ef420c674ec2cd0048fb9d7a1b015ab6cd837067fe66176", + "scripts/stopped_product/__init__.py": "7b794c22bccc00bb6ae8ba4d3379f469570565bbcb1a86090699133b8cf1b7d3", + "scripts/stopped_product/complex.py": "407650d56dceb5cb09d74928658cebed1bb42f4d7e28ca9e3fd36eea075f1ad0", + "scripts/stopped_product_network.py": "a8baaa87dd7679db4f2dd1a18a720397ee6f443262ad04fa26cf51b39909b74c", + "scripts/stopped_product_producer.py": "2c5c71399136ebcfebb8e5277317d5f334eb8df5716ad287391d0996fcc1492c", + "scripts/structured_bulk/README.md": "7d6a91d324019628c842db7ef2deb1fa035fbe39dd7c22877c83f190516fc0bf", + "scripts/structured_bulk/__init__.py": "9c6d0e9c71caa218263b636359b7d6c88f8428cba3cbd27b9f549045d4609b7d", + "scripts/structured_bulk/complex.py": "ee769039ea2111de5488fdc4abba28d50ed8885fa7e8dcd12728c5dbe6170b92", + "scripts/structured_bulk/exactness.py": "2e04898ee4463bf4d2f7ad6b50dd0801e4ebe195d06a33ce428ffd1c0beeb67f", + "scripts/structured_bulk/rankone_profiles.cpp": "5e003fde6e4779078988ce5ba1adf988cb846afbd8fd44faa920a3baa4126848", + "scripts/structured_bulk_assembly.py": "e99467e14211fba699878ed036e1e2362eb8e395dc22f9ecdcecc7fbf2cc736d", + "scripts/structured_bulk_network.py": "82608e2e7eb622f3ff78ce9bdc3e6c97087c6785aecd1a0eab947e389856600f", + "scripts/structured_bulk_producer.py": "c20e04b5216b04b9343cb28f1b1d164c6ac42ceaac067d82d2850f908dd7d5f6", + "scripts/ternary_assembly.py": "38d12b09dd9074ca56cb658e25f4e0b9e50fad9c36d0d837fc5c059ae4ddb5b2", + "scripts/three_stage_cover/README.md": "b39a28fa8da5d7d3188dfed4c0e0af1e2397f0f5c8f69cfb69671ed27ddca4bb", + "scripts/three_stage_cover/__init__.py": "b964b59af038e70cc15af655a22bcf6aaafc9c842b213765781bc8bea7166430", + "scripts/three_stage_cover/lift.py": "ae5f4c56cd32b5232d6dcdcaed1e24efb81fe20467a2d915ee51479bced06cfc", + "scripts/three_stage_cover/select.py": "457e636ced9bbd368198f78e015660a929ba1aaccbe34122d18da09ebb488f33", + "scripts/three_stage_cover/verify.py": "4bd2347e87e4edb699968bc31dfb94f2ab89bf1227576e59f43c779ba74e4e06", + "scripts/three_stage_cover_network.py": "7e0ad6fd1921b6905a53ce1eeaa03d3bb3a8a8bbaa0382516ea98b636f46335e", + "scripts/three_stage_cover_producer.py": "ea6dd4f06173304bbcb74b8e5bcc02357b7bb162a6d26b4a6f7a9e886158123f", + "scripts/tune_routing.py": "5728c848e23c905f37a9d77928283e64ace5e7b69c3572780c1291800d005e6e", + "scripts/verify_cold617_interface.py": "95d7a9094c05ad975fb72f5ab7605593003245a503c8456764987e512028fa6a", + "scripts/verify_complex741_parallel.py": "616cff67233958647dd1e6f33dcc5ffc6132df68e0e1230dc768e820d00155a1", + "scripts/verify_frontier1042.py": "700fdcaeb6e8f57f6e63c71c2dd1652fc5b183e8d706cd092779bdc0d271e854", + "scripts/verify_frontier1094.py": "c7e20f59968ed5736fb859735de4de207de3418083e37012310ebcded946b949", + "scripts/verify_frontier531.py": "5b96c8c9ac5568e564f708b19a8081f16da5d26bca2e21adc001f0d115b1da72", + "scripts/verify_frontier531_bindings.py": "8a92970fb4e2a3d94056e58b3fb8245dc1bd1bab4c7329caf5797459c7df8d03", + "scripts/verify_frontier531_wrapper_swap.py": "fe6a948e67366825f6c22e7c69a661a727b4092b2aa9cb3e877d6c3002e592a9", + "scripts/verify_frontier535.py": "addc0102539e33b49548342addcbb27518849a12c9eb2422d6291336a03fa3b0", + "scripts/verify_frontier535_bindings.py": "f0aa2e4003706a5d271eea70e81cae85fc708ad43e1b5f0cc46979fc09b8e502", + "scripts/verify_frontier588.py": "28a7e275465e8552d8183bbdc89be9930dc5c0f1e9266524a864b6787bed41c6", + "scripts/verify_frontier588_bindings.py": "6d1932eea7b1936598118ea8e607b09c29b6e31b749ec41bbe0744ea4f0b606d", + "scripts/verify_frontier596.py": "ad3373bb412b8275600377160b50592c63aefbed796e0ef02a18cfd89a86a251", + "scripts/verify_frontier596_bindings.py": "0fb48ee079317709f4fc2ca3ccbc16aac3b96697a2af84ab3ee90aa4d125a51e", + "scripts/verify_frontier617.py": "f80f043ba299512763e43c8a37705b1cc6b445e56479c98fd63856856b422c5a", + "scripts/verify_frontier617_bindings.py": "b4d996f671db2df651c19e3c297811f0e4752bb18492a6cf00c7122714c05086", + "scripts/verify_frontier626.py": "2207bd0ef04a19ef276869085afdedad80a0938fa75db5e1aa7ab73fd3429444", + "scripts/verify_frontier626_bindings.py": "cda63ff41c6d6e2e352c7bf75b84e690c0ce57e4ec6c0355573bb5d9b1f98280", + "scripts/verify_frontier741.py": "215ee6a12de8dc2392e6811a1b8f2140035f6b2d2a0d2100ff4bd2fdcb8bb39b", + "scripts/verify_frontier741_bindings.py": "eff455167e2fd0bc9a67d35241d0e69d8edc58f3a23e776dcfe8f500ca8e8d67", + "scripts/verify_frontier741_bridge_coverage.py": "9a14f26762b6126eb54ed43db90371773374fe98733ada80ee871a74afa3b836", + "scripts/verify_frontier799.py": "19fe1b32079095160dc00fe2f7df75e0fcbc82cff37f7159b755c8a63bd5ce99", + "scripts/verify_frontier799_bindings.py": "43897b3c99212d6134870898a1840f32898aa1b3679b299e654901568ad7e19b", + "scripts/verify_frontier890.py": "88ea38dbef62dd7c0dd46e212618520cc89213edddb2032800e5509993958175", + "scripts/verify_frontier942.py": "27c6713532d9f53f55dfff4884d55a2d9ae74b68156e37a44596c0418fbed5b7", + "scripts/verify_frontier_complete.py": "28e10c23971d2f629395da28b5deaba886c7f35b579ff362c4d409325ff47d94", + "scripts/verify_frontier_replay.py": "fd928cdcaaa6ff049c79d7f01ada7ba88f3c50bab838d08e0b8ad46e742c803f", + "scripts/verify_hpe608.py": "57c2475e572873d3a2fbfba93464f73a9fcb9096868ede75b165a902bb477aff", + "scripts/verify_hpe_lean_binding.py": "52aa1d23641e4c716b43c98f6b883ad042087dd03a9d01369e8e6a735b07aa03", + "scripts/verify_pr_reconciliation.py": "ed04fed33a01e75bd61c28d15e89c9613bd90cf12b2a5834a646c2252c87c8e9", + "scripts/verify_replay_coverage.py": "babe5941d7e6dac4248613ef01f950ee7bb6199e7355021aea4cf854fd1b91c5", + "scripts/verify_selected_result.py": "d7fd929726b326aeeaf0a3996475adec88eee9aac09ae0bebeeaa0bc1fc8f199", + "scripts/verify_supplier_consolidation.py": "3be2fde1186bfb03f1cf4b5cd8f4c816583815f428ddacce9503f26a47f3a8b6" +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/MANIFEST.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/MANIFEST.json new file mode 100644 index 0000000000..20082f0ea3 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/MANIFEST.json @@ -0,0 +1,72 @@ +{ + "CLAIM.json": "b9db2fbfb004b505ad535e4763915275dc5908feaefef32e65863fa65de061ff", + "DEPENDENCY-PINS.json": "c9330aa6a4226c804060499429cb450820d7142ab17696eb47408b04b410b5bc", + "NOTICE.md": "c7a17a0a35dc249f8ebcc550b3791e214aa65872eab8a6458c5167dd7b948e5b", + "PROOF.md": "b2a38120ddb75e90764d0b81913d60b46cddac4d943cb731bd9c7134f1c236d1", + "README.md": "cdcf62624912150ce4e6e05356c27299251eef4cfc130e4f209839cdabc05e08", + "SOURCE-PINS.json": "08eed0d6822a1c17053161929591e7ac36b9f91f8fd61190183a6d975948db85", + "audit.py": "1118d483b6abbe7036390c0a1053bcfec2038dbac273fd1bac92a68f38e6d7da", + "build_word.py": "effb72aecfff9958fe078ee89e0d37b85d601eddb19fec4520d7ee6e936edfae", + "common.py": "274274df31f8ef2a47b801d1f30ec226f94bce674fe15586d814ca754f6b7785", + "construct.py": "3dd333b50f4bd1d86956a6df4a334ed746d75d0a9e03dfadbb6724b4356e0cd6", + "controller.py": "d93ed519a0f2316b87b66f44c5ea615f0768a263dbd800815b536d8b7c86b8b7", + "controls.py": "574c55a01cfc34f5b9688cdec5646160cf22b403decee36d18b11f1b07e71f21", + "data/FLOW.json.gz": "e8e6dfa66e083ff8f3617a8441b5b2d766c3c9d9ac62ddc37d99edc24051f79e", + "data/FOUR-RECIPE.json": "384b32c5b0e9b3baa1c7232db884809596d30fc55553094245f7b739b1a43484", + "data/FOUR-WORD.json.gz": "7d09ee1b8b9881313e5fb1f623c0961d59b0c6352a019bc9164a6cad8c58e27f", + "data/MIX.json": "dd86bbb792a5c9f0d7507d55bd2f8392c66716023934b03b24f48ca737204eea", + "data/ORDER.json": "7757df3b54ca5e84c6dba9563b10bc6215c5e289313392b5a4b493179a245c29", + "data/OWNERS.json.gz": "3a56f578b2db5647cf6cb811bc6263c7a802ae3e31e9e672596d43185e4e5c9f", + "data/PLAN.json.gz": "1f1085beb84b516b9a96ceaedc6c3de1c58941fd00b6e70f0d0c686b6546ff79", + "data/SPEC.json": "82b263990afdc5efdc1dfe38ae16d7815004dff8d70f85c28fd8286c31f688bb", + "evidence/ANCESTRY.json": "cd880b2d1c2fb8d9050458bd13f228385c417a95e4d1985607d9f4bb60b5c109", + "evidence/ENTRANCE-CONTROLS.json": "7b101dd97c1025667fb3615930a9d6cd2ec443169d263a3bc1191b80fc712a1f", + "evidence/FLOW-CONTROLS.json": "43fe7e94bd72607d502ed947ac1463405be18728eb0b8faabd7ba63ab1d28ab4", + "evidence/INDEPENDENT-OWNERS.json": "4c295ff53f51631e1720b0dc2ea895c34861435fa92112ee52439e4569de968a", + "evidence/PARENT-CHECK.json": "2b729fd666ffe4e34a355223b57f74ba460fb171b19c84f260378dd109f0b9a0", + "evidence/PRICE.json": "a1dac219b019f8d40d5b434b0e0c25b0d1f097fe5ae13eae45c76869aec4758b", + "evidence/RAW-demote3.json": "02150d4cb1b2f4763b5c5c20ce979c740cbdfc1066e021a8aa5d407de5c4b9d3", + "evidence/RAW-demote4.json": "7adf0070125b2c61e04d46c5f1cbf57af079eb733799bbfcc3fe9b0551d964b1", + "evidence/REPLAY-SOURCE.json": "a5a290aa8c75fffa45c9ad2e3441d5051d3adaf7934f4d0311875fb4d8f023cf", + "evidence/RESULT.json": "62aca8286cbb021d2535d81494f7ba7a3aec20898fd7c40a895a461bbd303ac4", + "evidence/STAGES.json": "0dce559b2a8f371f369a05ae25ca5dd6a48019b5685b0097f001a23bd849429d", + "evidence/WORD-RECIPE.json": "b6750c8123c205b63786fb825da26a819592f71736a82009809ae1cf96173a5c", + "evidence/constructed/CONSTRUCTION.json": "e8236655e3f9e061514259dbb114b7e9b77b9be7459977ec613833de1a088073", + "evidence/demote3/STEPS.json": "e3a94ed349c2298d21ed96b0ab6dc02e8b0a7f523028366803df511d7b9200c7", + "evidence/demote3/local/CLIFFORD-REVIEW.json": "2ef79c2ed574a97c109906fc41f69793e19dd010c96240bd788907bbafdc818a", + "evidence/demote3/local/INDEPENDENT-LOCAL-REPLAY.json": "2bcb926b433bfc223997efd5d7212899c850a1ddb204269589b1f3a7151d82c6", + "evidence/demote3/local/LOCAL-CHECKS.json": "654ca95a7f9af260d088f29c1791686f54f66cbbe735b9ea2fd5114b377727aa", + "evidence/demote3/local/SCALAR-FRAME-AUDIT.json": "ebc0b07acae7c8cab1c673407d462ecc357cbe829bdce99d0d8b62149739d96f", + "evidence/demote3/local/WRAPPER-CHECKS.json": "f2a005b54bea64d66633d8a82d0454348172da3b88361081a72126bf1d51744d", + "evidence/demote4/STEPS.json": "934e851f2a79314077019fbfdde9fdce6353ed9ecb468bde7ed426826993c92b", + "evidence/demote4/local/CLIFFORD-REVIEW.json": "7dbaf548ff9a515a2c3e352ecff536c619d546339eaef1b408451a3f65c3f08d", + "evidence/demote4/local/INDEPENDENT-LOCAL-REPLAY.json": "3aa0b38079d2af52e6f94cc9f128d7bbb776fccbe57aaad630a5054edb39dc48", + "evidence/demote4/local/LOCAL-CHECKS.json": "7bafc7964d527a1feb6fff01ca8018236aee7f4e9223926d612ed6ce3b72d756", + "evidence/demote4/local/SCALAR-FRAME-AUDIT.json": "487409568e9ca43922c47362ca634003fda6957bbb02ab4a2dd5c231e3b92ff0", + "evidence/demote4/local/WRAPPER-CHECKS.json": "0e281983e139a29c2a28eaed51383f14d8acbe0161eb8e437b7f7ea5dd1c11a0", + "evidence/t37/ADAPTATIONS.json": "c4ee575e66a69dedd81ffe790f60ad422a51446c7c8bff860786e6e58e11b255", + "evidence/t37/strict/ADMISSION-CONTROLS.json": "02fcaf60f2db93ed84043c66bfb49e6fb63468a40cc6eb3ef9673bf6f03f9b14", + "evidence/t37/strict/ASSEMBLY.json": "ad612be9b551469cbd776496dbde4638937a184742ae9c380b41569a56253081", + "evidence/t37/strict/BIT-CONTROLS.json": "1e14fa3a1b5ed051e1da5661a4c9c4249a089c9c510553e83574e520a23b91b7", + "evidence/t37/strict/STAGES.json": "284ed86eb0590ce33ec2020d1e2d44b225d2cbc1ab91cb5a972683bcd300e480", + "evidence/t37/strict/global/audit/ASYNC-AUDIT.json": "028d1a2486ac64cba41d03320ccdf3bcff24c62a96bbbe629d55b28c02aeba9f", + "evidence/t37/strict/global/audit/OWNERS-AND-PROFILE.json": "c64cb2197f98b123a55d30a47b0c8e251873d7635a4de4c13a5e34b2e9483996", + "evidence/t37/strict/global/audit/PREFIX-AND-INVOICE.json": "512e824c274a656f4d4e1e4fdf267d9c38aa1568169716cc833d2d3816d81516", + "local_controls.py": "fe3d13491fa7523eedb8d24577ffe4bbd6c36a87b4a7d1178e5795d223bed4b8", + "native.py": "1fb596fbafdb19140f483cd34db2994c571e3b962e33b8ea9b3ddc486e37def6", + "package.py": "cde0b2d66125649ee84440fc0a67f0d91f900fc838fbda069b579422289ea3be", + "prepare.py": "9fe454a5f857ff73c70a5b276bc9e289422b051a4cbbbb51123a91bb2200e6d8", + "price.py": "d45042f4c1fea352349377b43def363cf75a742546a1d5c790ad30da91791803", + "vendor/pr1148/JOINT-WORD.json.gz": "a0622d86259c4163e58cf0677ce575b6039a8ae4c95aa6d8b82a8163cbd42718", + "vendor/pr1148/NOTICE.md": "afbd38d6c8a232ea566c296424a86420f204e6cfaac565c0a147340bda3d3da6", + "vendor/pr1148/PLAN.json.gz": "e963ed64b9970858902b9388bcf1c5f9cc704859ad021ce8bda465a4dcef8310", + "vendor/pr1148/SPEC.json": "55bdb68d5d126c6be0e0acc419bd62301a978afd514f9834ed1e08b1aa4f563e", + "vendor/pr1148/k8-coordinated-owners-NOTICE.md": "442756fc1c5ecfd7b7b7694b53b1ecc70aa525004cd80f7d748ccd7270555189", + "vendor/pr1148/k8-eight-ends-NOTICE.md": "820fa13161f857c221f2c4099dd2985c7ff72249dc7a0221bc00fd0c1b9760e5", + "vendor/pr1148/k8-eight-ends-t16-NOTICE.md": "a9e85b59dde61fbff0b006923b441cbd1419e24fa9802426785bca667437fdc0", + "vendor/pr1148/k8-three-demotions-NOTICE.md": "a0fe85fb2207f0e6831a96deaeefb65afa379c1377a29f0b586f1db4bb4b2137", + "vendor/pr1152/NOTICE.md": "8e556b5407a49d9a07eb1d3de1d3c4d331fcab24d223af8f72b91048dbbac70a", + "vendor/pr1152/construct.py": "ba8303351220727e5602730fabade5b2630eff61dd9b7173a259ffc535ee88c6", + "vendor/pr1152/controls.py": "963fc23e72277fbec0e105917f9cc18595f18a806ac90d9d4a279c1fe1e76033", + "verify.py": "e5c952989344a65b7e63fa112dda4d464979814205644a8ec34e407a0d96be29" +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/NOTICE.md b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/NOTICE.md new file mode 100644 index 0000000000..8ead68d658 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/NOTICE.md @@ -0,0 +1,14 @@ +SPDX-License-Identifier: Apache-2.0 +Prepared for Jeremy Diviney with substantial OpenAI Codex assistance. + +This contribution is the heterogeneous D3/D4 call dispatch, exact integer pattern-flow nomination, literal whole-helper matching realization, independent call-indexed audit, and complete composition of the resulting witness. It builds directly on the following work and does not claim authorship of those constructions. + +* Thomas DiFiore / PR1148, source head `3ba07f19` (full commit and file digests in SOURCE-PINS.json), supplies the joint-entrance D3 word. The complete raw word and notices are retained in vendor/pr1148. Its joint choice builds on seslly / shipstuff PR1111's group-635 demotion lead, PR664's promotion idea, and the preceding k8 coordinated/eight-endpoint/three-demotion packages. +* D4 uses PR1148's already explored codimension-one group-627 entrance and the PR864 frame model (navinor / Claude), as adapted by Thomas DiFiore. Our discovery refit uses that model. Reproduction uses a frozen old/new recipe and exact independent native checks, not the optimizer. +* `construct.py`, `controls.py`, and the initial T37 wrapper structure derive from Chafik Boukhalfa's PR1152 (head `d376209304f0…`). The perfect-matching technique and owner-flow lineage also credit Ali Romman / PR1129, PR1131's wave ordering, and Hao Yan / FanPUYen's PR858 physical windows. Upstream copies and exact digests identify the adapted sources. +* The independent geometry checker is retained PR890, adapted from Hao Yan's PR858 checker; the signed prices and all-replica reasoning credit Chafik Boukhalfa's PR795/890 and jon314159's PR942. Retained PR870/1074 code provides strict multi-provider bindings and mutations. The T37 geometry adapters are PR942's retained source, with explicit, hash-recorded changes. +* Rohan Arun's concurrent PR1169 reached the uniform joint-entrance T37 target 0.001675568675201533 while this mixed-dispatch experiment was running. Our initial uniform result tied its earlier version. This submission instead mixes two words and claims only the additional improvement stated here. PR1169's payload is not used by this verifier. +* PR1176 and PR1183 concurrently explored mixed-provider gap augmentation. Their payloads are not consumed. PR1183's observed head `2dc3d14f54bac2a97811ea27f095bd7b6e28da40` nominates 69 extra group instances by local exchanges; this package independently reconstructs a global integer flow supporting 208. The mixed-provider idea is not claimed as exclusive to this submission. +* Retain PR1018 and Rohan Arun's PR987 scalar-word ancestry, PR1030's endpoint lead, E8/k8/frame and controller predecessors, PR589's unchanged bit supplier, the PR559 recurrence correction, and all original notices in the retained repository dependency closure. + +All-source and package manifests preserve exact immutable source identities. Generated compression and phase timing are treated according to the repository's reproducibility policy. No unconditional theorem, full formal proof, search optimality, or observed runtime improvement is claimed. diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/PROOF.md b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/PROOF.md new file mode 100644 index 0000000000..e23ea42ce3 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/PROOF.md @@ -0,0 +1,35 @@ +# Accounting and finite witness + +Let D3 be the joint-entrance word from Thomas DiFiore's updated PR1148, with entrance groups 603, 611 and 635 demoted. Its local profile is `{1:2364,2:498,3:412,4:130,5:82,8:8}` and its 480 helper widths have inventory `{4:44,5:44,7:38,8:114,9:240}`. + +D4 additionally changes helpers 627, 629, 630 and 631 to entrance subspace `[68,34,24,1]`. Twelve B-frame assignments are refitted. The scalar operations, registers, coefficients, ordering, ports and centre interface stay identical. The explicit old/new recipe is in `data/FOUR-RECIPE.json`; fresh exact native replay decides validity, independently of the floating frame search. + +D4's profile is `{1:2356,2:506,3:416,4:126,5:82,8:8}` and its width inventory is `{4:40,5:48,7:38,8:114,9:240}`. Thus each substitution changes the local profile by `−8H1+8H2+4H3−4H4` and increases occupied helper width by four. + +The frozen dispatch has 125 D3 and 208 D4 calls on the PR1131/1152 wave order, sorted by `(37*stage+8*replica,stage,replica)`. The source-event geometry is the retained PR942 five-bank T37 lift. There are 33,152 live and 33,642 physical wires. No call is fragmented; each of its 480 helpers belongs to a distinct available physical family. + +The flow uses these nine bin patterns (a zero-width pattern means empty): + +| Capacity | Pattern | Count | +| --- | --- | ---: | +| 8 | 8 | 20,556 | +| 8 | 4+4 | 4,308 | +| 16 | 8+8 | 6,102 | +| 16 | 7+9 | 10,474 | +| 32 | 5+9+9+9 | 15,484 | +| 32 | 4+9+9+9 | 2 | +| 32 | 7+7+9+9 | 1,090 | +| 48 | empty | 11,374 | +| 48 | 4+8+9+9+9+9 | 5,202 | + +`construct.py` checks exact pattern and call-width conservation, legal physical windows, and every integral flow entry. For each physical window group and pattern it completes the flow to a regular bipartite multigraph, decomposes it into perfect matchings, and assigns actual helpers of the nominated provider. This yields all 159,840 literal roles. The independent audit separately reconstructs the source events, strict bridge boundaries, physical family identities, 73-axis charts, occupied prefixes and complete per-call width inventories. It reads and recounts both admitted local words and selects them using the frozen call dispatch; it does not import the owner constructor or controller auditor. + +The resulting idle profile is `{1:2,48:11374}`. Adding it to the two local profiles weighted by their exact call counts gives: + +`{1:785550,2:167498,3:138028,4:42458,5:27306,8:2664,48:11374}`. + +Its rank mass is 2,408,256 and deficit is 11,840. The global prefix bound is 775 bits, below the charged 1,024; the finite physical row coefficient is 17,495, below 20,161. Those charges are checked by the complete retained invoice and independent owner audit, not inferred merely from profile feasibility. + +The PR795/890 signed prices explain the choice of mixture. The uniform D3 inventory has rank-one dual credit 20,850 per replica. Each extra demotion group consumes 3,700 units. Across 37 replicas the budget is 771,450, permitting 208 such substitutions while leaving credit 1,850, exactly two rank-one idle units at 925 each. This guides the search; the literal witness and full admission are still required. It is not a proof of optimality for mixed suppliers. + +The two retained rational engines bracket the complex root and the unchanged full PR589 supplier supplies the bit endpoint. `CLAIM.json` records the exact rational choices. The strict outer assembly selects κ = `1675672695827067/1000000000000000000`. The conditions and scope are the same as the retained framework; finite certificate success does not discharge the all-size multiplication theorem. diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/README.md b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/README.md new file mode 100644 index 0000000000..03b83367a9 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/README.md @@ -0,0 +1,26 @@ +# Mixed joint entrances on 37 replicas + +This candidate uses **125 calls of PR1148's joint-entrance word and 208 calls of a four-group variant**. Its conditional target is **κ = 0.001675672695827067**. It improves the uniform-word T37 target 0.001675568675201533 in PR1169 by approximately 0.0062%. These are conditional finite construction prices, not an unconditional multiplication theorem or runtime measurements. + +The contribution is the mixed dispatch and its literal whole-helper realization. Changing four more entrance frames increases local recursive cost but reduces the unused rank-one capacity. A mixture balances those costs more effectively than using either word uniformly. The 333 calls have 159,840 whole helpers; the remaining idle profile is `{1:2,48:11374}`. See [PROOF.md](PROOF.md) for the accounting and [NOTICE.md](NOTICE.md) for predecessors. + +The complete local replay passed on the source commit identified in [the evidence record](evidence/REPLAY-SOURCE.json). The [result](evidence/RESULT.json), [two-engine price](evidence/PRICE.json), and [strict assembly](evidence/t37/strict/ASSEMBLY.json) retain exact inputs, charges and controls. Hosted checks and maintainer acceptance are separate. + +## Reproduce + +Use Python 3.11+, the repository's cold-replay dependencies (including a C++ compiler, Boost headers, NumPy/SciPy/SymPy ), and a new output directory outside the checkout: + +```sh +OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 nice -n 15 \ + python -B research/mixed-demotions-t37/verify.py --work /tmp/mixed-t37-fresh +``` + +If Boost is not on the compiler's normal include path, set `CPLUS_INCLUDE_PATH` to its header directory. Verification does not use OR-Tools, an allocation optimizer, a network connection, or discovery-mode admission. The frozen integer flow is expanded by deterministic perfect matchings; every integer equation is checked. + +A completed cold PR799 replay can be reused with `--ancestry799 /path/to/completed/replay`. The retained maintainer checker rechecks its source, artifacts, logs and PR589/741/799 bindings; an independent fixed coverage check rejects omitted stages. This option still rebuilds both new local providers and every new global stage. + +The driver checks both exact scalar maps and all 704 columns in both orientations, all native phase edges, local entrance mutations, the full helper map against literal bridge-aware windows, provider substitutions, the emitted controller and its 23 mutations, the complete invoice, 114 admission mutations, 12 bit-supplier mutations, two rational moment engines, and 47 strict outer inequalities. It also checks eight parent controls, eight frozen-flow controls, and eight independent owner controls. Successful completion writes `RESULT.json` with status `PASS_MIXED_JOINT_ENTRANCES_T37_COMPLETE_ADMISSION`. + +Immutable upstream archives retain byte pins. Fresh compressed outputs are compared by their complete decompressed content or documented semantic identity; only validated phase timing and compression references are rebound. The committed `SPEC.json` remains frozen throughout verification. + +The all-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and exact recovery, analytic transfer, PR559 recurrence correction and bit H1–H5 obligations remain. This package changes the local-word family; it makes no optimality claim for mixed words or other circuits. No selected certificate is changed by this research submission. diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/SOURCE-PINS.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/SOURCE-PINS.json new file mode 100644 index 0000000000..dcfb60ec38 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/SOURCE-PINS.json @@ -0,0 +1,29 @@ +{ + "allocation_solver": { + "not_required_for_verification": true, + "seed": 836, + "source_sha256": "e126848aa68a85854aa69b736ae5159261dd43f9385806f26c36397139603289", + "status": "OPTIMAL feasible integer witness", + "tool": "OR-Tools CP-SAT", + "workers": 2 + }, + "commits": { + "main": "ce7ad1b6ab09452c3478723a2e96ed5ff212dc08", + "pr1148": "3ba07f190e64bf7748f669d40fc5c37f77ce5dc4", + "pr1152": "d376209304f05551f975b0ddf6eaa84edc4ae31a", + "pr1169_observed_not_consumed": "c79df8e3c61676445f8e1782814450199d8221e6" + }, + "immutable_inputs": { + "vendor/pr1148/JOINT-WORD.json.gz": "a0622d86259c4163e58cf0677ce575b6039a8ae4c95aa6d8b82a8163cbd42718", + "vendor/pr1148/NOTICE.md": "afbd38d6c8a232ea566c296424a86420f204e6cfaac565c0a147340bda3d3da6", + "vendor/pr1148/PLAN.json.gz": "e963ed64b9970858902b9388bcf1c5f9cc704859ad021ce8bda465a4dcef8310", + "vendor/pr1148/SPEC.json": "55bdb68d5d126c6be0e0acc419bd62301a978afd514f9834ed1e08b1aa4f563e", + "vendor/pr1148/k8-coordinated-owners-NOTICE.md": "442756fc1c5ecfd7b7b7694b53b1ecc70aa525004cd80f7d748ccd7270555189", + "vendor/pr1148/k8-eight-ends-NOTICE.md": "820fa13161f857c221f2c4099dd2985c7ff72249dc7a0221bc00fd0c1b9760e5", + "vendor/pr1148/k8-eight-ends-t16-NOTICE.md": "a9e85b59dde61fbff0b006923b441cbd1419e24fa9802426785bca667437fdc0", + "vendor/pr1148/k8-three-demotions-NOTICE.md": "a0fe85fb2207f0e6831a96deaeefb65afa379c1377a29f0b586f1db4bb4b2137", + "vendor/pr1152/NOTICE.md": "8e556b5407a49d9a07eb1d3de1d3c4d331fcab24d223af8f72b91048dbbac70a", + "vendor/pr1152/construct.py": "ba8303351220727e5602730fabade5b2630eff61dd9b7173a259ffc535ee88c6", + "vendor/pr1152/controls.py": "963fc23e72277fbec0e105917f9cc18595f18a806ac90d9d4a279c1fe1e76033" + } +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/audit.py b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/audit.py new file mode 100644 index 0000000000..a350fcec65 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/audit.py @@ -0,0 +1,79 @@ +"""Independent call-indexed local recount and PR890 literal owner geometry audit. + +The owner constructor and emitted controller are never imported. Both native +words are independently recounted, then selected by the frozen call dispatch. +Every modification to the retained geometric checker is explicit and hashed. +""" +import argparse, copy +from collections import Counter +from pathlib import Path +from common import P,ROOT,read,dump,load,sha + +INVENTORIES={'demote3':{4:44,5:44,7:38,8:114,9:240},'demote4':{4:40,5:48,7:38,8:114,9:240}} + +def check(base,providers,owners_path,out): + source=ROOT/'research/complex-t21-owners/independent_check.py' + text=source.read_text() + edits=[('2 * 512','2 * 1024'),('prefix < 512','prefix < 1024'), + ('charged_prefix_bits=512','charged_prefix_bits=1024'), + ('Counter(widths) == {4: 80, 5: 32, 7: 54, 8: 122, 9: 216}', + 'Counter(widths) in ({4:44,5:44,7:38,8:114,9:240},{4:40,5:48,7:38,8:114,9:240})'), + ("width == c['widths'][helper]", "width == c['widths_by_call'][call][helper]"), + ("Counter({rank: 9 * T * count for rank, count in c['paid'].items()})", "Counter(c['paid_total'])"), + ("max(x['prefix_bits_upper'] for x in c['replay']['local'].values())", "c['localbits']"), + ("local_profile=dict(sorted(c['paid'].items())), width_inventory=dict(sorted(Counter(c['widths']).items())),", "local_profiles=c['local_profiles'], width_inventories=c['inventories'], provider_call_counts=c['call_counts'],"), + ("if context['callpos'][key] >= hi", "if context['callpos'][key] >= hi and context['widths_by_call'][key][z['helper']] == z['width']")] + for before,after in edits: + assert text.count(before)==1,(before,text.count(before));text=text.replace(before,after) + adapter=out.parent/'mixed_independent_owner_adapter.py';assert not adapter.exists();adapter.write_text(text) + ck=load(adapter,'independent_mixed_owner_checker');ck.T=37;ck.R=480;ck.EXPECTED_IDLE={1:2,48:11374} + refs=[base/'split-centres/GLOBAL-TEMPLATE.json.gz',base/'work/complex-nine-native/DATA-PHASES.json', + base/'split-centres/CANONICAL-WORD.json.gz',owners_path,P/'data/MIX.json',P/'data/ORDER.json'] + parent,phases,canonical,owners,mix,order=map(read,refs) + assert [[s,r]for pid,s,r in mix]==order + assert len({(s,r)for pid,s,r in mix})==333 + counts=Counter(pid for pid,s,r in mix);assert counts=={'demote3':125,'demote4':208} + assert set(providers)==set(counts) + widths={};paid={};words={};receipts={};bits=[] + for pid,directory in sorted(providers.items()): + paths=[directory/'CANONICAL-WORD.json.gz',directory/'INDEPENDENT-LOCAL-REPLAY.json'];refs+=paths + word,receipt=map(read,paths);words[pid]=word;receipts[pid]=receipt + assert receipt['canonical_word_sha256']==sha(paths[0]) + assert receipt['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert word['ports']==canonical['ports'] + assert [ck.basis(word['frames'][f])for f in word['center_frames']]==[ck.basis(canonical['frames'][f])for f in canonical['center_frames']] + widths[pid],paid[pid]=ck.local_inventory(word,receipt) + assert Counter(widths[pid])==INVENTORIES[pid] + bits.extend(v['prefix_bits_upper']for v in receipt['local'].values()) + context=ck.make_context(parent,phases,words['demote3']['ports'],words['demote3'],receipts['demote3'],owners) + assert [list(k)for k in context['order']]==order + total=Counter() + for pid,s,r in mix:total.update(paid[pid]) + context.update(widths_by_call={(s,r):widths[pid]for pid,s,r in mix},paid_total=total,localbits=max(bits), + local_profiles={pid:dict(v)for pid,v in paid.items()},inventories=INVENTORIES,call_counts=dict(counts)) + result=ck.check_roles(context,owners);result['controls_rejected']=ck.controls(context,owners) + # Substituting the other admitted word changes four specific whole-helper + # widths. Keep the geometry fixed and require rejection at that predicate. + for pid in sorted(providers): + call=next((s,r)for p,s,r in mix if p==pid);bad=copy.copy(context) + bad['widths_by_call']=dict(context['widths_by_call']) + bad['widths_by_call'][call]=widths['demote4'if pid=='demote3'else'demote3'] + try:ck.check_roles(bad,owners) + except ValueError as e: + assert str(e)=='whole-helper residual width' + result['controls_rejected'].append(dict(name='wrong_provider_'+pid,reason=str(e))) + else:raise AssertionError('wrong provider accepted') + result.update(edits=edits,source_sha256=sha(source),adapter_sha256=sha(adapter),inputs={str(p):sha(p)for p in refs}) + claim=read(P/'CLAIM.json') + for field in ('roles','calls','live','physical','rank_mass','deficit','prefix_bits','physical_row_coefficient'): + assert result[field]==claim[field],field + assert {str(r):n for r,n in result['profile'].items()}==claim['complex_profile'] + dump(out,result);return result + +def main(): + ap=argparse.ArgumentParser(description=__doc__) + for k in ('base','local3','local4','owners','out'):ap.add_argument('--'+k,type=Path,required=True) + a=ap.parse_args();out=a.out.resolve();assert not out.exists() and not out.is_relative_to(ROOT) + out.parent.mkdir(parents=True,exist_ok=True) + r=check(a.base,{'demote3':a.local3,'demote4':a.local4},a.owners,out);print(r['status'],r['roles'],flush=True) +if __name__=='__main__':main() diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/build_word.py b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/build_word.py new file mode 100644 index 0000000000..b98987baf9 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/build_word.py @@ -0,0 +1,27 @@ +"""Apply a frozen four-helper entrance/frame recipe, without optimization.""" +import argparse +from pathlib import Path +from common import P,read,dump,identity,sha + +def build(out): + assert not out.exists() + word=read(P/'vendor/pr1148/JOINT-WORD.json.gz') + recipe=read(P/'data/FOUR-RECIPE.json') + assert set(recipe)=={'B','report','start_extra'} + for helper,old,new in recipe['start_extra']: + assert word['start_extra'][helper]==old + word['start_extra'][helper]=new + for index,old,new in recipe['B']: + assert word['B'][index]==old + # Scalar operation, registers and coefficient are unchanged. + assert old[:-1]==new[:-1] + word['B'][index]=new + word['report']=recipe['report'] + assert word==read(P/'data/FOUR-WORD.json.gz') + dump(out,word) + return dict(status='PASS_FROZEN_FOUR_ENTRANCE_RECIPE',content_sha256=identity(word), + source_sha256=sha(P/'vendor/pr1148/JOINT-WORD.json.gz'),recipe_sha256=sha(P/'data/FOUR-RECIPE.json')) + +if __name__=='__main__': + ap=argparse.ArgumentParser(description=__doc__);ap.add_argument('--out',type=Path,required=True);a=ap.parse_args() + print(build(a.out)['status']) diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/common.py b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/common.py new file mode 100644 index 0000000000..4af6dc3374 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/common.py @@ -0,0 +1,26 @@ +"""Strict shared I/O; construction and independent audit remain separate.""" +import gzip, hashlib, importlib.util, json, sys +from pathlib import Path +P=Path(__file__).resolve().parent +ROOT=P.parents[1] +if not __debug__:raise RuntimeError('Assertions must remain enabled') +def read(path): + path=Path(path);raw=path.read_bytes() + return json.loads(gzip.decompress(raw)if path.suffix=='.gz'else raw) +def canonical(value):return json.dumps(value,sort_keys=True,separators=(',',':')).encode() +def sha(path):return hashlib.sha256(Path(path).read_bytes()).hexdigest() +def identity(value):return hashlib.sha256(canonical(value)).hexdigest() +def dump(path,value): + raw=canonical(value) + if path.suffix=='.gz': + raw=bytearray(gzip.compress(raw,mtime=0));raw[9]=255 + path.write_bytes(raw) +def load(path,name): + previous=sys.modules.pop('common',None);sys.path.insert(0,str(path.parent)) + try: + spec=importlib.util.spec_from_file_location(name,path) + module=importlib.util.module_from_spec(spec);sys.modules[name]=module;spec.loader.exec_module(module) + return module + finally: + sys.path.pop(0);sys.modules.pop('common',None) + if previous is not None:sys.modules['common']=previous diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/construct.py b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/construct.py new file mode 100644 index 0000000000..00429f1e62 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/construct.py @@ -0,0 +1,116 @@ +"""Expand the frozen integer pattern flows without a solver or third-party library. + +Credit: PR858 physical windows; local promo4 pattern-flow formulation; standard +regular bipartite multigraph decomposition by successive perfect matchings. +Every matching and every integer conservation equation is checked explicitly. +""" +import argparse +from collections import Counter,defaultdict,deque +from common import P,ROOT,read,dump,load,identity,sha + +def matching(A): + n=len(A);left=[-1]*n;right=[-1]*n + while True: + distance=[-1]*n;q=deque() + for u in range(n): + if left[u]<0:distance[u]=0;q.append(u) + while q: + u=q.popleft() + for v in sorted(A[u]): + z=right[v] + if z>=0 and distance[z]<0:distance[z]=distance[u]+1;q.append(z) + def augment(u): + for v in sorted(A[u]): + z=right[v] + if z<0 or(distance[z]==distance[u]+1 and augment(z)): + left[u]=v;right[v]=u;return True + distance[u]=-1;return False + count=sum(augment(u) for u in range(n)if left[u]<0) + if all(v>=0 for v in left):break + assert count,'Regular bipartite graph has no perfect matching' + assert sorted(left)==list(range(n)) and all(A[u][v]>0 for u,v in enumerate(left)) + return left + +def construct(parent,words,flow,order,mix): + expected_order=sorted([[s,r]for s in range(9)for r in range(37)],key=lambda k:(37*k[0]+8*k[1],k[0],k[1])) + assert order==expected_order,'Frozen wave order' + mod=load(ROOT/'research/complex-t21-owners/vendor/pr870/t16/build_parent.py','original_actual_windows') + windows,schedule=mod.actual_windows(parent,order) + original=read(P/'vendor/pr1148/PLAN.json.gz') + assert [[s,r] for pid,s,r in mix]==order + assert Counter(pid for pid,s,r in mix)=={'demote3':125,'demote4':208} + inventories={'demote3':{4:44,5:44,7:38,8:114,9:240},'demote4':{4:40,5:48,7:38,8:114,9:240}} + widths={} + for pid,word in words.items(): + widths[pid]=[len(word['frames'][word['final'][h]])-len(word['frames'][word['start'][h]])for h in range(224,224+word['R'])] + assert Counter(widths[pid])==inventories[pid] + pools=defaultdict(list) + for t,(pid,s,r) in enumerate(mix): + for h,w in enumerate(widths[pid]):pools[t,w].append(h) + roles=[];seen=set();flow_edges=0;bin_count=0 + for group in flow: + keys=group['physical_windows'];assert keys and len(keys)==len(set(keys)) + assert not seen.intersection(keys);seen.update(keys) + cap,times=windows[keys[0]] + assert all(windows[key]==[cap,times]for key in keys) + n=len(times);portbase=0 + for pattern in group['patterns']: + widths_p=pattern['widths'];N=pattern['count'];flows={} + assert type(N)is int and 0=0 + for row in range(K,n): + need=N + while need: + while deficit[ti]==0:ti+=1 + take=min(need,deficit[ti]);A[row][ti]+=take;deficit[ti]-=take;need-=take + assert not any(deficit) and all(sum(row.values())==N for row in A) + actual=Counter() + for color in range(N): + match=matching(A);slots=sorted((times[match[i]],row_widths[i])for i in range(K)) + for i,t in enumerate(match): + A[i][t]-=1 + if not A[i][t]:del A[i][t] + index,port=divmod(portbase+color,112);owner,child=map(int,keys[index].split(','));offset=0 + for t,w in slots: + actual[t,w]+=1;assert pools[t,w];helper=pools[t,w].pop();stage,replica=order[t] + roles.append(dict(stage=stage,replica=replica,time=t,helper=helper,width=w,owner_replica=owner,child=child,port=port,offset=offset,copy=112*owner+port,family=896*owner+112*(2*original['pairs'][str(child)]+original['sides'][str(child)])+port)) + offset+=w + assert offset==sum(widths_p) + assert not any(A) and actual==flows + portbase+=N;bin_count+=N + assert portbase==112*len(keys) + assert seen==set(windows) and not any(pools.values()) and len(roles)==159840 + roles.sort(key=lambda z:(z['time'],z['helper'])) + return roles,dict(status='PASS_FROZEN_INTEGER_FLOW_AND_REGULAR_MATCHING',roles=len(roles),bins=bin_count,windows=len(windows),flow_edges=flow_edges,owner_content_sha256=identity(roles),schedule_content_sha256=identity(schedule)) + +def main(): + ap=argparse.ArgumentParser(description=__doc__) + for k in ('parent','word3','word4','out'):ap.add_argument('--'+k,type=__import__('pathlib').Path,required=True) + a=ap.parse_args();out=a.out.resolve();assert not out.exists() and not out.is_relative_to(ROOT);out.mkdir(parents=True) + roles,receipt=construct(read(a.parent),{'demote3':read(a.word3),'demote4':read(a.word4)},read(P/'data/FLOW.json.gz'),read(P/'data/ORDER.json'),read(P/'data/MIX.json')) + dump(out/'OWNERS.json.gz',roles) + receipt['inputs']={str(p):sha(p)for p in (a.parent,a.word3,a.word4,P/'data/FLOW.json.gz',P/'data/ORDER.json',P/'data/MIX.json')} + dump(out/'CONSTRUCTION.json',receipt);print(receipt['status'],len(roles),flush=True) +if __name__=='__main__':main() diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/controller.py b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/controller.py new file mode 100644 index 0000000000..50387d2973 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/controller.py @@ -0,0 +1,55 @@ +"""Run the retained emitted-controller checks and bind their final receipts.""" +from fractions import Fraction +import os,subprocess,sys,time +from common import P,ROOT,read,dump,sha + +def replay(work,providers,discovery=False): + source=ROOT/'research/complex-k492-owner-repair/vendor/multicold' + code=work/'runtime/code';spec=work/'runtime/data/SPEC.json' + mode='discovery'if discovery else'strict';out=work/mode;out.mkdir();g=out/'global' + env=dict(os.environ,PYTHONDONTWRITEBYTECODE='1',PYTHONUTF8='1',PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(source),GAIN_PR564_SOURCE=str(source),WITNESS_SPEC=str(spec)) + for k in ('PYTHONOPTIMIZE','WITNESS_DISCOVER','WITNESS_RECORD'):env.pop(k,None) + if discovery:env.update(WITNESS_DISCOVER='1',WITNESS_RECORD=str(out/'WITNESS-RECORD.jsonl')) + stages=[] + def run(name,script,*args): + start=time.monotonic();log=out/(name+'.log') + with log.open('w')as f:r=subprocess.run([sys.executable,'-B',str(source/'code/run_portable.py'),str(code/script),*map(str,args)],env=env,cwd=ROOT,stdout=f,stderr=subprocess.STDOUT) + stages.append(dict(name=name,exit_code=r.returncode,seconds=round(time.monotonic()-start,3),log_sha256=sha(log))) + dump(out/'STAGES.json',stages) + if r.returncode:raise RuntimeError(name+'\n'+log.read_text()[-6000:]) + print('PASS',mode,name,flush=True) + provider_args=[arg for pid,local in sorted(providers.items()) for arg in ('--provider',pid+'='+str(local))] + run('bind','bind_providers_portable.py','--baseline',work/'parent',*provider_args,'--plan',work/'lift/PLAN.json','--out',g) + run('emit','emit_allcold.py','--base',g/'base','--owners',P/'data/OWNERS.json.gz','--plan',g/'PLAN.json','--out',g/'hosted') + run('audit','audit_allcold.py',g/'base',g/'hosted',g/'audit/ASYNC-AUDIT.json','--mutation-controls') + run('invoice','invoice_allcold.py','--base',g/'base','--hosted',g/'hosted','--audit',g/'audit','--out',g/'audit','--retained-invoice',source/'vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/audit/PREFIX-AND-INVOICE.json') + run('assembly','assemble.py',source,g,out/'ASSEMBLY.json') + if discovery: + run('freeze','freeze_spec.py','--spec',spec,'--discovery',out) + return read(out/'ASSEMBLY.json') + for name,script,target in [('admission-controls','assembly_controls.py','ADMISSION-CONTROLS.json'),('bit-controls','bit_supplier_controls.py','BIT-CONTROLS.json')]: + run(name,script,'--source-package',source,'--owner',g/'audit/OWNERS-AND-PROFILE.json','--invoice',g/'audit/PREFIX-AND-INVOICE.json','--out',out/target) + asm=read(out/'ASSEMBLY.json');owner=read(g/'audit/OWNERS-AND-PROFILE.json') + invoice=read(g/'audit/PREFIX-AND-INVOICE.json');audit=read(g/'audit/ASYNC-AUDIT.json') + ac=read(out/'ADMISSION-CONTROLS.json');bc=read(out/'BIT-CONTROLS.json');claim=read(P/'CLAIM.json') + for k in ('kappa','kappa_decimal','complex_lower','bit_lower','complex_profile'):assert asm[k]==claim[k],k + for k in ('live','physical','rank_mass','deficit'):assert owner[k]==claim[k],k + assert owner['hosted_residuals']==audit['complex_hosted_residuals']==claim['roles']==159840 + assert audit['complete_invocations']==invoice['complete_invocation_sweeps']==333 + assert invoice['global_prefix_bits']==775 and invoice['charged_prefix_bits']==1024 + assert invoice['finite']['physical_row_coefficient']==174950 for v in asm['outer'].values()) + assert not ac['discovery_accepted_controls'] and len(ac['rejected_controls'])==114 + assert len(bc['rejected_controls'])==12 and bc['derived_deficit']==10272 + assert audit['mutation_controls_run'] and len(audit['mutations_rejected'])==23 + assert asm['template_sha256']==owner['template_sha256']==invoice['template_sha256'] + assert invoice['owner_audit_sha256']==sha(g/'audit/OWNERS-AND-PROFILE.json') + assert invoice['controller_audit_sha256']==sha(g/'audit/ASYNC-AUDIT.json') + for pid,local in providers.items(): + for name in ('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json','INDEPENDENT-LOCAL-REPLAY.json','RESIDUAL-ADAPTERS.json','CLIFFORD-RECIPES.json','CLIFFORD-REVIEW.json'): + assert read(g/'base/providers'/pid/name)==read(local/name),'Fresh provider binding: '+pid+'/'+name + return dict(status='PASS_MIXED_DEMOTIONS_T37_STRICT_CONTROLLER',kappa=asm['kappa'],kappa_decimal=asm['kappa_decimal'], + complex_profile=asm['complex_profile'],roles=159840,calls=333,prefix_bits=775,row_coefficient=17495, + controls=dict(admission=114,bit_supplier=12,controller=23),scope=claim['scope'],stages=stages) diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/controls.py b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/controls.py new file mode 100644 index 0000000000..a5cbce2d30 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/controls.py @@ -0,0 +1,25 @@ +"""Reject malformed frozen flow inputs before accepting any reconstructed map.""" +import copy +from construct import construct +from common import P,read,dump + +def check(parent,words,out): + flow=read(P/'data/FLOW.json.gz');order=read(P/'data/ORDER.json');mix=read(P/'data/MIX.json') + result=[] + for name in ('boolean_bin_count','negative_bin_count','duplicate_window','duplicate_flow', + 'out_of_window_time','invalid_width','overfull_call','reordered_wave'): + bad=copy.deepcopy(flow);badorder=copy.deepcopy(order) + group=bad[0];pattern=next(p for p in group['patterns']if p['flow']) + if name=='boolean_bin_count':group['patterns'][0]['count']=True + elif name=='negative_bin_count':group['patterns'][0]['count']=-1 + elif name=='duplicate_window':group['physical_windows'].append(group['physical_windows'][0]) + elif name=='duplicate_flow':pattern['flow'].append(pattern['flow'][0].copy()) + elif name=='out_of_window_time':pattern['flow'][0][0]=333 + elif name=='invalid_width':pattern['flow'][0][1]=6 + elif name=='overfull_call':pattern['flow'][0][2]=pattern['count']+1 + else:badorder[0],badorder[1]=badorder[1],badorder[0] + try:construct(parent,words,bad,badorder,mix) + except AssertionError:result.append(name) + else:raise AssertionError('Accepted malformed flow: '+name) + receipt=dict(status='PASS_FROZEN_FLOW_NEGATIVE_CONTROLS',rejected=result) + dump(out,receipt);return receipt diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FLOW.json.gz b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FLOW.json.gz new file mode 100644 index 0000000000..71246bb8e4 Binary files /dev/null and b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FLOW.json.gz differ diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FOUR-RECIPE.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FOUR-RECIPE.json new file mode 100644 index 0000000000..1fdb9bb71c --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FOUR-RECIPE.json @@ -0,0 +1,479 @@ +{ + "B": [ + [ + 384, + [ + "add", + 624, + 627, + -1, + 1, + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "add", + 624, + 627, + -1, + 1, + [ + 68, + 34, + 24, + 1 + ] + ] + ], + [ + 385, + [ + "add", + 625, + 627, + -1, + 1, + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "add", + 625, + 627, + -1, + 1, + [ + 68, + 34, + 24, + 1 + ] + ] + ], + [ + 386, + [ + "add", + 626, + 627, + 1, + 1, + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "add", + 626, + 627, + 1, + 1, + [ + 68, + 34, + 24, + 1 + ] + ] + ], + [ + 387, + [ + "add", + 624, + 629, + -2, + 1, + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "add", + 624, + 629, + -2, + 1, + [ + 68, + 34, + 24, + 1 + ] + ] + ], + [ + 388, + [ + "add", + 625, + 629, + 2, + 1, + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "add", + 625, + 629, + 2, + 1, + [ + 68, + 34, + 24, + 1 + ] + ] + ], + [ + 389, + [ + "add", + 628, + 629, + -1, + 1, + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "add", + 628, + 629, + -1, + 1, + [ + 68, + 34, + 24, + 1 + ] + ] + ], + [ + 390, + [ + "add", + 624, + 630, + -2, + 1, + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "add", + 624, + 630, + -2, + 1, + [ + 68, + 34, + 24, + 1 + ] + ] + ], + [ + 391, + [ + "add", + 626, + 630, + 2, + 1, + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "add", + 626, + 630, + 2, + 1, + [ + 68, + 34, + 24, + 1 + ] + ] + ], + [ + 392, + [ + "add", + 628, + 630, + -1, + 1, + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "add", + 628, + 630, + -1, + 1, + [ + 68, + 34, + 24, + 1 + ] + ] + ], + [ + 393, + [ + "add", + 625, + 631, + 2, + 1, + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "add", + 625, + 631, + 2, + 1, + [ + 68, + 34, + 24, + 1 + ] + ] + ], + [ + 394, + [ + "add", + 626, + 631, + -2, + 1, + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "add", + 626, + 631, + -2, + 1, + [ + 68, + 34, + 24, + 1 + ] + ] + ], + [ + 395, + [ + "add", + 628, + 631, + -1, + 1, + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "add", + 628, + 631, + -1, + 1, + [ + 68, + 34, + 24, + 1 + ] + ] + ] + ], + "report": { + "R": 480, + "borrowed_output_pairs": 56, + "centre_ranks": [ + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8 + ], + "cst": 64, + "first_load_join_counts": { + "4": 64 + }, + "h": 9, + "local_profile": { + "1": 2356, + "2": 506, + "3": 416, + "4": 126, + "5": 82, + "8": 8 + }, + "local_rank_mass": 5594, + "m": 73, + "scope": "Clean scalar identity and all literal monotone local frames only; arbitrary-dirt compensation, entrance kernels, exact phase recipes, and global hosting/pricing are not yet certified.", + "selected_load_join_counts": { + "6": 64 + }, + "selected_partitions": [ + 0, + 0 + ], + "source_and_helper_cleanup_exact_on_clean_columns": true, + "source_columns_exact": 112, + "status": "EXACT_CLEAN_OWN_Y_EARLY_CENTER_WORD_NOT_ADMITTED", + "tri_join_counts": {}, + "v": 112, + "width_inventory": { + "4": 40, + "5": 48, + "7": 38, + "8": 114, + "9": 240 + } + }, + "start_extra": [ + [ + "627", + [ + 390, + 68, + 34, + 24, + 1 + ], + [ + 68, + 34, + 24, + 1 + ] + ], + [ + "629", + [ + 390, + 68, + 34, + 24, + 1 + ], + [ + 68, + 34, + 24, + 1 + ] + ], + [ + "630", + [ + 390, + 68, + 34, + 24, + 1 + ], + [ + 68, + 34, + 24, + 1 + ] + ], + [ + "631", + [ + 390, + 68, + 34, + 24, + 1 + ], + [ + 68, + 34, + 24, + 1 + ] + ] + ] +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FOUR-WORD.json.gz b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FOUR-WORD.json.gz new file mode 100644 index 0000000000..46f164ba39 Binary files /dev/null and b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FOUR-WORD.json.gz differ diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/MIX.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/MIX.json new file mode 100644 index 0000000000..52e8bdd775 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/MIX.json @@ -0,0 +1,1667 @@ +[ + [ + "demote4", + 0, + 0 + ], + [ + "demote4", + 0, + 1 + ], + [ + "demote4", + 0, + 2 + ], + [ + "demote4", + 0, + 3 + ], + [ + "demote4", + 0, + 4 + ], + [ + "demote4", + 1, + 0 + ], + [ + "demote4", + 0, + 5 + ], + [ + "demote4", + 1, + 1 + ], + [ + "demote4", + 0, + 6 + ], + [ + "demote4", + 1, + 2 + ], + [ + "demote4", + 0, + 7 + ], + [ + "demote4", + 1, + 3 + ], + [ + "demote4", + 0, + 8 + ], + [ + "demote4", + 1, + 4 + ], + [ + "demote4", + 0, + 9 + ], + [ + "demote4", + 2, + 0 + ], + [ + "demote4", + 1, + 5 + ], + [ + "demote4", + 0, + 10 + ], + [ + "demote4", + 2, + 1 + ], + [ + "demote4", + 1, + 6 + ], + [ + "demote4", + 0, + 11 + ], + [ + "demote4", + 2, + 2 + ], + [ + "demote4", + 1, + 7 + ], + [ + "demote4", + 0, + 12 + ], + [ + "demote4", + 2, + 3 + ], + [ + "demote4", + 1, + 8 + ], + [ + "demote4", + 0, + 13 + ], + [ + "demote4", + 2, + 4 + ], + [ + "demote4", + 1, + 9 + ], + [ + "demote4", + 3, + 0 + ], + [ + "demote4", + 0, + 14 + ], + [ + "demote4", + 2, + 5 + ], + [ + "demote4", + 1, + 10 + ], + [ + "demote4", + 3, + 1 + ], + [ + "demote4", + 0, + 15 + ], + [ + "demote4", + 2, + 6 + ], + [ + "demote4", + 1, + 11 + ], + [ + "demote4", + 3, + 2 + ], + [ + "demote4", + 0, + 16 + ], + [ + "demote4", + 2, + 7 + ], + [ + "demote4", + 1, + 12 + ], + [ + "demote4", + 3, + 3 + ], + [ + "demote4", + 0, + 17 + ], + [ + "demote4", + 2, + 8 + ], + [ + "demote4", + 1, + 13 + ], + [ + "demote4", + 3, + 4 + ], + [ + "demote4", + 0, + 18 + ], + [ + "demote4", + 2, + 9 + ], + [ + "demote4", + 4, + 0 + ], + [ + "demote4", + 1, + 14 + ], + [ + "demote4", + 3, + 5 + ], + [ + "demote4", + 0, + 19 + ], + [ + "demote4", + 2, + 10 + ], + [ + "demote4", + 4, + 1 + ], + [ + "demote4", + 1, + 15 + ], + [ + "demote4", + 3, + 6 + ], + [ + "demote4", + 0, + 20 + ], + [ + "demote4", + 2, + 11 + ], + [ + "demote4", + 4, + 2 + ], + [ + "demote4", + 1, + 16 + ], + [ + "demote4", + 3, + 7 + ], + [ + "demote4", + 0, + 21 + ], + [ + "demote4", + 2, + 12 + ], + [ + "demote4", + 4, + 3 + ], + [ + "demote4", + 1, + 17 + ], + [ + "demote4", + 3, + 8 + ], + [ + "demote4", + 0, + 22 + ], + [ + "demote4", + 2, + 13 + ], + [ + "demote4", + 4, + 4 + ], + [ + "demote4", + 1, + 18 + ], + [ + "demote4", + 3, + 9 + ], + [ + "demote4", + 0, + 23 + ], + [ + "demote4", + 5, + 0 + ], + [ + "demote4", + 2, + 14 + ], + [ + "demote4", + 4, + 5 + ], + [ + "demote4", + 1, + 19 + ], + [ + "demote4", + 3, + 10 + ], + [ + "demote4", + 0, + 24 + ], + [ + "demote4", + 5, + 1 + ], + [ + "demote4", + 2, + 15 + ], + [ + "demote4", + 4, + 6 + ], + [ + "demote4", + 1, + 20 + ], + [ + "demote4", + 3, + 11 + ], + [ + "demote4", + 0, + 25 + ], + [ + "demote4", + 5, + 2 + ], + [ + "demote4", + 2, + 16 + ], + [ + "demote4", + 4, + 7 + ], + [ + "demote4", + 1, + 21 + ], + [ + "demote4", + 3, + 12 + ], + [ + "demote4", + 0, + 26 + ], + [ + "demote4", + 5, + 3 + ], + [ + "demote4", + 2, + 17 + ], + [ + "demote4", + 4, + 8 + ], + [ + "demote4", + 1, + 22 + ], + [ + "demote4", + 3, + 13 + ], + [ + "demote4", + 0, + 27 + ], + [ + "demote4", + 5, + 4 + ], + [ + "demote4", + 2, + 18 + ], + [ + "demote4", + 4, + 9 + ], + [ + "demote4", + 1, + 23 + ], + [ + "demote4", + 6, + 0 + ], + [ + "demote4", + 3, + 14 + ], + [ + "demote4", + 0, + 28 + ], + [ + "demote4", + 5, + 5 + ], + [ + "demote4", + 2, + 19 + ], + [ + "demote4", + 4, + 10 + ], + [ + "demote4", + 1, + 24 + ], + [ + "demote4", + 6, + 1 + ], + [ + "demote4", + 3, + 15 + ], + [ + "demote4", + 0, + 29 + ], + [ + "demote4", + 5, + 6 + ], + [ + "demote4", + 2, + 20 + ], + [ + "demote4", + 4, + 11 + ], + [ + "demote4", + 1, + 25 + ], + [ + "demote4", + 6, + 2 + ], + [ + "demote4", + 3, + 16 + ], + [ + "demote4", + 0, + 30 + ], + [ + "demote4", + 5, + 7 + ], + [ + "demote4", + 2, + 21 + ], + [ + "demote4", + 4, + 12 + ], + [ + "demote4", + 1, + 26 + ], + [ + "demote4", + 6, + 3 + ], + [ + "demote4", + 3, + 17 + ], + [ + "demote4", + 0, + 31 + ], + [ + "demote4", + 5, + 8 + ], + [ + "demote4", + 2, + 22 + ], + [ + "demote4", + 4, + 13 + ], + [ + "demote4", + 1, + 27 + ], + [ + "demote4", + 6, + 4 + ], + [ + "demote4", + 3, + 18 + ], + [ + "demote4", + 0, + 32 + ], + [ + "demote4", + 5, + 9 + ], + [ + "demote4", + 2, + 23 + ], + [ + "demote4", + 7, + 0 + ], + [ + "demote4", + 4, + 14 + ], + [ + "demote4", + 1, + 28 + ], + [ + "demote4", + 6, + 5 + ], + [ + "demote4", + 3, + 19 + ], + [ + "demote4", + 0, + 33 + ], + [ + "demote4", + 5, + 10 + ], + [ + "demote4", + 2, + 24 + ], + [ + "demote4", + 7, + 1 + ], + [ + "demote4", + 4, + 15 + ], + [ + "demote4", + 1, + 29 + ], + [ + "demote4", + 6, + 6 + ], + [ + "demote4", + 3, + 20 + ], + [ + "demote4", + 0, + 34 + ], + [ + "demote4", + 5, + 11 + ], + [ + "demote4", + 2, + 25 + ], + [ + "demote4", + 7, + 2 + ], + [ + "demote4", + 4, + 16 + ], + [ + "demote4", + 1, + 30 + ], + [ + "demote4", + 6, + 7 + ], + [ + "demote4", + 3, + 21 + ], + [ + "demote4", + 0, + 35 + ], + [ + "demote4", + 5, + 12 + ], + [ + "demote4", + 2, + 26 + ], + [ + "demote4", + 7, + 3 + ], + [ + "demote4", + 4, + 17 + ], + [ + "demote4", + 1, + 31 + ], + [ + "demote4", + 6, + 8 + ], + [ + "demote4", + 3, + 22 + ], + [ + "demote4", + 0, + 36 + ], + [ + "demote4", + 5, + 13 + ], + [ + "demote4", + 2, + 27 + ], + [ + "demote4", + 7, + 4 + ], + [ + "demote4", + 4, + 18 + ], + [ + "demote4", + 1, + 32 + ], + [ + "demote4", + 6, + 9 + ], + [ + "demote4", + 3, + 23 + ], + [ + "demote4", + 8, + 0 + ], + [ + "demote4", + 5, + 14 + ], + [ + "demote4", + 2, + 28 + ], + [ + "demote4", + 7, + 5 + ], + [ + "demote4", + 4, + 19 + ], + [ + "demote4", + 1, + 33 + ], + [ + "demote4", + 6, + 10 + ], + [ + "demote4", + 3, + 24 + ], + [ + "demote4", + 8, + 1 + ], + [ + "demote4", + 5, + 15 + ], + [ + "demote4", + 2, + 29 + ], + [ + "demote4", + 7, + 6 + ], + [ + "demote4", + 4, + 20 + ], + [ + "demote4", + 1, + 34 + ], + [ + "demote4", + 6, + 11 + ], + [ + "demote4", + 3, + 25 + ], + [ + "demote4", + 8, + 2 + ], + [ + "demote4", + 5, + 16 + ], + [ + "demote4", + 2, + 30 + ], + [ + "demote4", + 7, + 7 + ], + [ + "demote4", + 4, + 21 + ], + [ + "demote4", + 1, + 35 + ], + [ + "demote4", + 6, + 12 + ], + [ + "demote4", + 3, + 26 + ], + [ + "demote4", + 8, + 3 + ], + [ + "demote4", + 5, + 17 + ], + [ + "demote4", + 2, + 31 + ], + [ + "demote4", + 7, + 8 + ], + [ + "demote4", + 4, + 22 + ], + [ + "demote4", + 1, + 36 + ], + [ + "demote4", + 6, + 13 + ], + [ + "demote4", + 3, + 27 + ], + [ + "demote4", + 8, + 4 + ], + [ + "demote4", + 5, + 18 + ], + [ + "demote4", + 2, + 32 + ], + [ + "demote4", + 7, + 9 + ], + [ + "demote4", + 4, + 23 + ], + [ + "demote4", + 6, + 14 + ], + [ + "demote3", + 3, + 28 + ], + [ + "demote3", + 8, + 5 + ], + [ + "demote3", + 5, + 19 + ], + [ + "demote3", + 2, + 33 + ], + [ + "demote3", + 7, + 10 + ], + [ + "demote3", + 4, + 24 + ], + [ + "demote3", + 6, + 15 + ], + [ + "demote3", + 3, + 29 + ], + [ + "demote3", + 8, + 6 + ], + [ + "demote3", + 5, + 20 + ], + [ + "demote3", + 2, + 34 + ], + [ + "demote3", + 7, + 11 + ], + [ + "demote3", + 4, + 25 + ], + [ + "demote3", + 6, + 16 + ], + [ + "demote3", + 3, + 30 + ], + [ + "demote3", + 8, + 7 + ], + [ + "demote3", + 5, + 21 + ], + [ + "demote3", + 2, + 35 + ], + [ + "demote3", + 7, + 12 + ], + [ + "demote3", + 4, + 26 + ], + [ + "demote3", + 6, + 17 + ], + [ + "demote3", + 3, + 31 + ], + [ + "demote3", + 8, + 8 + ], + [ + "demote3", + 5, + 22 + ], + [ + "demote3", + 2, + 36 + ], + [ + "demote3", + 7, + 13 + ], + [ + "demote3", + 4, + 27 + ], + [ + "demote3", + 6, + 18 + ], + [ + "demote3", + 3, + 32 + ], + [ + "demote3", + 8, + 9 + ], + [ + "demote3", + 5, + 23 + ], + [ + "demote3", + 7, + 14 + ], + [ + "demote3", + 4, + 28 + ], + [ + "demote3", + 6, + 19 + ], + [ + "demote3", + 3, + 33 + ], + [ + "demote3", + 8, + 10 + ], + [ + "demote3", + 5, + 24 + ], + [ + "demote3", + 7, + 15 + ], + [ + "demote3", + 4, + 29 + ], + [ + "demote3", + 6, + 20 + ], + [ + "demote3", + 3, + 34 + ], + [ + "demote3", + 8, + 11 + ], + [ + "demote3", + 5, + 25 + ], + [ + "demote3", + 7, + 16 + ], + [ + "demote3", + 4, + 30 + ], + [ + "demote3", + 6, + 21 + ], + [ + "demote3", + 3, + 35 + ], + [ + "demote3", + 8, + 12 + ], + [ + "demote3", + 5, + 26 + ], + [ + "demote3", + 7, + 17 + ], + [ + "demote3", + 4, + 31 + ], + [ + "demote3", + 6, + 22 + ], + [ + "demote3", + 3, + 36 + ], + [ + "demote3", + 8, + 13 + ], + [ + "demote3", + 5, + 27 + ], + [ + "demote3", + 7, + 18 + ], + [ + "demote3", + 4, + 32 + ], + [ + "demote3", + 6, + 23 + ], + [ + "demote3", + 8, + 14 + ], + [ + "demote3", + 5, + 28 + ], + [ + "demote3", + 7, + 19 + ], + [ + "demote3", + 4, + 33 + ], + [ + "demote3", + 6, + 24 + ], + [ + "demote3", + 8, + 15 + ], + [ + "demote3", + 5, + 29 + ], + [ + "demote3", + 7, + 20 + ], + [ + "demote3", + 4, + 34 + ], + [ + "demote3", + 6, + 25 + ], + [ + "demote3", + 8, + 16 + ], + [ + "demote3", + 5, + 30 + ], + [ + "demote3", + 7, + 21 + ], + [ + "demote3", + 4, + 35 + ], + [ + "demote3", + 6, + 26 + ], + [ + "demote3", + 8, + 17 + ], + [ + "demote3", + 5, + 31 + ], + [ + "demote3", + 7, + 22 + ], + [ + "demote3", + 4, + 36 + ], + [ + "demote3", + 6, + 27 + ], + [ + "demote3", + 8, + 18 + ], + [ + "demote3", + 5, + 32 + ], + [ + "demote3", + 7, + 23 + ], + [ + "demote3", + 6, + 28 + ], + [ + "demote3", + 8, + 19 + ], + [ + "demote3", + 5, + 33 + ], + [ + "demote3", + 7, + 24 + ], + [ + "demote3", + 6, + 29 + ], + [ + "demote3", + 8, + 20 + ], + [ + "demote3", + 5, + 34 + ], + [ + "demote3", + 7, + 25 + ], + [ + "demote3", + 6, + 30 + ], + [ + "demote3", + 8, + 21 + ], + [ + "demote3", + 5, + 35 + ], + [ + "demote3", + 7, + 26 + ], + [ + "demote3", + 6, + 31 + ], + [ + "demote3", + 8, + 22 + ], + [ + "demote3", + 5, + 36 + ], + [ + "demote3", + 7, + 27 + ], + [ + "demote3", + 6, + 32 + ], + [ + "demote3", + 8, + 23 + ], + [ + "demote3", + 7, + 28 + ], + [ + "demote3", + 6, + 33 + ], + [ + "demote3", + 8, + 24 + ], + [ + "demote3", + 7, + 29 + ], + [ + "demote3", + 6, + 34 + ], + [ + "demote3", + 8, + 25 + ], + [ + "demote3", + 7, + 30 + ], + [ + "demote3", + 6, + 35 + ], + [ + "demote3", + 8, + 26 + ], + [ + "demote3", + 7, + 31 + ], + [ + "demote3", + 6, + 36 + ], + [ + "demote3", + 8, + 27 + ], + [ + "demote3", + 7, + 32 + ], + [ + "demote3", + 8, + 28 + ], + [ + "demote3", + 7, + 33 + ], + [ + "demote3", + 8, + 29 + ], + [ + "demote3", + 7, + 34 + ], + [ + "demote3", + 8, + 30 + ], + [ + "demote3", + 7, + 35 + ], + [ + "demote3", + 8, + 31 + ], + [ + "demote3", + 7, + 36 + ], + [ + "demote3", + 8, + 32 + ], + [ + "demote3", + 8, + 33 + ], + [ + "demote3", + 8, + 34 + ], + [ + "demote3", + 8, + 35 + ], + [ + "demote3", + 8, + 36 + ] +] diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/ORDER.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/ORDER.json new file mode 100644 index 0000000000..b32f07b09b --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/ORDER.json @@ -0,0 +1 @@ +[[0,0],[0,1],[0,2],[0,3],[0,4],[1,0],[0,5],[1,1],[0,6],[1,2],[0,7],[1,3],[0,8],[1,4],[0,9],[2,0],[1,5],[0,10],[2,1],[1,6],[0,11],[2,2],[1,7],[0,12],[2,3],[1,8],[0,13],[2,4],[1,9],[3,0],[0,14],[2,5],[1,10],[3,1],[0,15],[2,6],[1,11],[3,2],[0,16],[2,7],[1,12],[3,3],[0,17],[2,8],[1,13],[3,4],[0,18],[2,9],[4,0],[1,14],[3,5],[0,19],[2,10],[4,1],[1,15],[3,6],[0,20],[2,11],[4,2],[1,16],[3,7],[0,21],[2,12],[4,3],[1,17],[3,8],[0,22],[2,13],[4,4],[1,18],[3,9],[0,23],[5,0],[2,14],[4,5],[1,19],[3,10],[0,24],[5,1],[2,15],[4,6],[1,20],[3,11],[0,25],[5,2],[2,16],[4,7],[1,21],[3,12],[0,26],[5,3],[2,17],[4,8],[1,22],[3,13],[0,27],[5,4],[2,18],[4,9],[1,23],[6,0],[3,14],[0,28],[5,5],[2,19],[4,10],[1,24],[6,1],[3,15],[0,29],[5,6],[2,20],[4,11],[1,25],[6,2],[3,16],[0,30],[5,7],[2,21],[4,12],[1,26],[6,3],[3,17],[0,31],[5,8],[2,22],[4,13],[1,27],[6,4],[3,18],[0,32],[5,9],[2,23],[7,0],[4,14],[1,28],[6,5],[3,19],[0,33],[5,10],[2,24],[7,1],[4,15],[1,29],[6,6],[3,20],[0,34],[5,11],[2,25],[7,2],[4,16],[1,30],[6,7],[3,21],[0,35],[5,12],[2,26],[7,3],[4,17],[1,31],[6,8],[3,22],[0,36],[5,13],[2,27],[7,4],[4,18],[1,32],[6,9],[3,23],[8,0],[5,14],[2,28],[7,5],[4,19],[1,33],[6,10],[3,24],[8,1],[5,15],[2,29],[7,6],[4,20],[1,34],[6,11],[3,25],[8,2],[5,16],[2,30],[7,7],[4,21],[1,35],[6,12],[3,26],[8,3],[5,17],[2,31],[7,8],[4,22],[1,36],[6,13],[3,27],[8,4],[5,18],[2,32],[7,9],[4,23],[6,14],[3,28],[8,5],[5,19],[2,33],[7,10],[4,24],[6,15],[3,29],[8,6],[5,20],[2,34],[7,11],[4,25],[6,16],[3,30],[8,7],[5,21],[2,35],[7,12],[4,26],[6,17],[3,31],[8,8],[5,22],[2,36],[7,13],[4,27],[6,18],[3,32],[8,9],[5,23],[7,14],[4,28],[6,19],[3,33],[8,10],[5,24],[7,15],[4,29],[6,20],[3,34],[8,11],[5,25],[7,16],[4,30],[6,21],[3,35],[8,12],[5,26],[7,17],[4,31],[6,22],[3,36],[8,13],[5,27],[7,18],[4,32],[6,23],[8,14],[5,28],[7,19],[4,33],[6,24],[8,15],[5,29],[7,20],[4,34],[6,25],[8,16],[5,30],[7,21],[4,35],[6,26],[8,17],[5,31],[7,22],[4,36],[6,27],[8,18],[5,32],[7,23],[6,28],[8,19],[5,33],[7,24],[6,29],[8,20],[5,34],[7,25],[6,30],[8,21],[5,35],[7,26],[6,31],[8,22],[5,36],[7,27],[6,32],[8,23],[7,28],[6,33],[8,24],[7,29],[6,34],[8,25],[7,30],[6,35],[8,26],[7,31],[6,36],[8,27],[7,32],[8,28],[7,33],[8,29],[7,34],[8,30],[7,35],[8,31],[7,36],[8,32],[8,33],[8,34],[8,35],[8,36]] diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/OWNERS.json.gz b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/OWNERS.json.gz new file mode 100644 index 0000000000..34fa5d69aa Binary files /dev/null and b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/OWNERS.json.gz differ diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/PLAN.json.gz b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/PLAN.json.gz new file mode 100644 index 0000000000..09adb56689 Binary files /dev/null and b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/PLAN.json.gz differ diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/SPEC.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/SPEC.json new file mode 100644 index 0000000000..3298bd4683 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/SPEC.json @@ -0,0 +1,4287 @@ +{ + "call_order": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 0, + 2 + ], + [ + 0, + 3 + ], + [ + 0, + 4 + ], + [ + 1, + 0 + ], + [ + 0, + 5 + ], + [ + 1, + 1 + ], + [ + 0, + 6 + ], + [ + 1, + 2 + ], + [ + 0, + 7 + ], + [ + 1, + 3 + ], + [ + 0, + 8 + ], + [ + 1, + 4 + ], + [ + 0, + 9 + ], + [ + 2, + 0 + ], + [ + 1, + 5 + ], + [ + 0, + 10 + ], + [ + 2, + 1 + ], + [ + 1, + 6 + ], + [ + 0, + 11 + ], + [ + 2, + 2 + ], + [ + 1, + 7 + ], + [ + 0, + 12 + ], + [ + 2, + 3 + ], + [ + 1, + 8 + ], + [ + 0, + 13 + ], + [ + 2, + 4 + ], + [ + 1, + 9 + ], + [ + 3, + 0 + ], + [ + 0, + 14 + ], + [ + 2, + 5 + ], + [ + 1, + 10 + ], + [ + 3, + 1 + ], + [ + 0, + 15 + ], + [ + 2, + 6 + ], + [ + 1, + 11 + ], + [ + 3, + 2 + ], + [ + 0, + 16 + ], + [ + 2, + 7 + ], + [ + 1, + 12 + ], + [ + 3, + 3 + ], + [ + 0, + 17 + ], + [ + 2, + 8 + ], + [ + 1, + 13 + ], + [ + 3, + 4 + ], + [ + 0, + 18 + ], + [ + 2, + 9 + ], + [ + 4, + 0 + ], + [ + 1, + 14 + ], + [ + 3, + 5 + ], + [ + 0, + 19 + ], + [ + 2, + 10 + ], + [ + 4, + 1 + ], + [ + 1, + 15 + ], + [ + 3, + 6 + ], + [ + 0, + 20 + ], + [ + 2, + 11 + ], + [ + 4, + 2 + ], + [ + 1, + 16 + ], + [ + 3, + 7 + ], + [ + 0, + 21 + ], + [ + 2, + 12 + ], + [ + 4, + 3 + ], + [ + 1, + 17 + ], + [ + 3, + 8 + ], + [ + 0, + 22 + ], + [ + 2, + 13 + ], + [ + 4, + 4 + ], + [ + 1, + 18 + ], + [ + 3, + 9 + ], + [ + 0, + 23 + ], + [ + 5, + 0 + ], + [ + 2, + 14 + ], + [ + 4, + 5 + ], + [ + 1, + 19 + ], + [ + 3, + 10 + ], + [ + 0, + 24 + ], + [ + 5, + 1 + ], + [ + 2, + 15 + ], + [ + 4, + 6 + ], + [ + 1, + 20 + ], + [ + 3, + 11 + ], + [ + 0, + 25 + ], + [ + 5, + 2 + ], + [ + 2, + 16 + ], + [ + 4, + 7 + ], + [ + 1, + 21 + ], + [ + 3, + 12 + ], + [ + 0, + 26 + ], + [ + 5, + 3 + ], + [ + 2, + 17 + ], + [ + 4, + 8 + ], + [ + 1, + 22 + ], + [ + 3, + 13 + ], + [ + 0, + 27 + ], + [ + 5, + 4 + ], + [ + 2, + 18 + ], + [ + 4, + 9 + ], + [ + 1, + 23 + ], + [ + 6, + 0 + ], + [ + 3, + 14 + ], + [ + 0, + 28 + ], + [ + 5, + 5 + ], + [ + 2, + 19 + ], + [ + 4, + 10 + ], + [ + 1, + 24 + ], + [ + 6, + 1 + ], + [ + 3, + 15 + ], + [ + 0, + 29 + ], + [ + 5, + 6 + ], + [ + 2, + 20 + ], + [ + 4, + 11 + ], + [ + 1, + 25 + ], + [ + 6, + 2 + ], + [ + 3, + 16 + ], + [ + 0, + 30 + ], + [ + 5, + 7 + ], + [ + 2, + 21 + ], + [ + 4, + 12 + ], + [ + 1, + 26 + ], + [ + 6, + 3 + ], + [ + 3, + 17 + ], + [ + 0, + 31 + ], + [ + 5, + 8 + ], + [ + 2, + 22 + ], + [ + 4, + 13 + ], + [ + 1, + 27 + ], + [ + 6, + 4 + ], + [ + 3, + 18 + ], + [ + 0, + 32 + ], + [ + 5, + 9 + ], + [ + 2, + 23 + ], + [ + 7, + 0 + ], + [ + 4, + 14 + ], + [ + 1, + 28 + ], + [ + 6, + 5 + ], + [ + 3, + 19 + ], + [ + 0, + 33 + ], + [ + 5, + 10 + ], + [ + 2, + 24 + ], + [ + 7, + 1 + ], + [ + 4, + 15 + ], + [ + 1, + 29 + ], + [ + 6, + 6 + ], + [ + 3, + 20 + ], + [ + 0, + 34 + ], + [ + 5, + 11 + ], + [ + 2, + 25 + ], + [ + 7, + 2 + ], + [ + 4, + 16 + ], + [ + 1, + 30 + ], + [ + 6, + 7 + ], + [ + 3, + 21 + ], + [ + 0, + 35 + ], + [ + 5, + 12 + ], + [ + 2, + 26 + ], + [ + 7, + 3 + ], + [ + 4, + 17 + ], + [ + 1, + 31 + ], + [ + 6, + 8 + ], + [ + 3, + 22 + ], + [ + 0, + 36 + ], + [ + 5, + 13 + ], + [ + 2, + 27 + ], + [ + 7, + 4 + ], + [ + 4, + 18 + ], + [ + 1, + 32 + ], + [ + 6, + 9 + ], + [ + 3, + 23 + ], + [ + 8, + 0 + ], + [ + 5, + 14 + ], + [ + 2, + 28 + ], + [ + 7, + 5 + ], + [ + 4, + 19 + ], + [ + 1, + 33 + ], + [ + 6, + 10 + ], + [ + 3, + 24 + ], + [ + 8, + 1 + ], + [ + 5, + 15 + ], + [ + 2, + 29 + ], + [ + 7, + 6 + ], + [ + 4, + 20 + ], + [ + 1, + 34 + ], + [ + 6, + 11 + ], + [ + 3, + 25 + ], + [ + 8, + 2 + ], + [ + 5, + 16 + ], + [ + 2, + 30 + ], + [ + 7, + 7 + ], + [ + 4, + 21 + ], + [ + 1, + 35 + ], + [ + 6, + 12 + ], + [ + 3, + 26 + ], + [ + 8, + 3 + ], + [ + 5, + 17 + ], + [ + 2, + 31 + ], + [ + 7, + 8 + ], + [ + 4, + 22 + ], + [ + 1, + 36 + ], + [ + 6, + 13 + ], + [ + 3, + 27 + ], + [ + 8, + 4 + ], + [ + 5, + 18 + ], + [ + 2, + 32 + ], + [ + 7, + 9 + ], + [ + 4, + 23 + ], + [ + 6, + 14 + ], + [ + 3, + 28 + ], + [ + 8, + 5 + ], + [ + 5, + 19 + ], + [ + 2, + 33 + ], + [ + 7, + 10 + ], + [ + 4, + 24 + ], + [ + 6, + 15 + ], + [ + 3, + 29 + ], + [ + 8, + 6 + ], + [ + 5, + 20 + ], + [ + 2, + 34 + ], + [ + 7, + 11 + ], + [ + 4, + 25 + ], + [ + 6, + 16 + ], + [ + 3, + 30 + ], + [ + 8, + 7 + ], + [ + 5, + 21 + ], + [ + 2, + 35 + ], + [ + 7, + 12 + ], + [ + 4, + 26 + ], + [ + 6, + 17 + ], + [ + 3, + 31 + ], + [ + 8, + 8 + ], + [ + 5, + 22 + ], + [ + 2, + 36 + ], + [ + 7, + 13 + ], + [ + 4, + 27 + ], + [ + 6, + 18 + ], + [ + 3, + 32 + ], + [ + 8, + 9 + ], + [ + 5, + 23 + ], + [ + 7, + 14 + ], + [ + 4, + 28 + ], + [ + 6, + 19 + ], + [ + 3, + 33 + ], + [ + 8, + 10 + ], + [ + 5, + 24 + ], + [ + 7, + 15 + ], + [ + 4, + 29 + ], + [ + 6, + 20 + ], + [ + 3, + 34 + ], + [ + 8, + 11 + ], + [ + 5, + 25 + ], + [ + 7, + 16 + ], + [ + 4, + 30 + ], + [ + 6, + 21 + ], + [ + 3, + 35 + ], + [ + 8, + 12 + ], + [ + 5, + 26 + ], + [ + 7, + 17 + ], + [ + 4, + 31 + ], + [ + 6, + 22 + ], + [ + 3, + 36 + ], + [ + 8, + 13 + ], + [ + 5, + 27 + ], + [ + 7, + 18 + ], + [ + 4, + 32 + ], + [ + 6, + 23 + ], + [ + 8, + 14 + ], + [ + 5, + 28 + ], + [ + 7, + 19 + ], + [ + 4, + 33 + ], + [ + 6, + 24 + ], + [ + 8, + 15 + ], + [ + 5, + 29 + ], + [ + 7, + 20 + ], + [ + 4, + 34 + ], + [ + 6, + 25 + ], + [ + 8, + 16 + ], + [ + 5, + 30 + ], + [ + 7, + 21 + ], + [ + 4, + 35 + ], + [ + 6, + 26 + ], + [ + 8, + 17 + ], + [ + 5, + 31 + ], + [ + 7, + 22 + ], + [ + 4, + 36 + ], + [ + 6, + 27 + ], + [ + 8, + 18 + ], + [ + 5, + 32 + ], + [ + 7, + 23 + ], + [ + 6, + 28 + ], + [ + 8, + 19 + ], + [ + 5, + 33 + ], + [ + 7, + 24 + ], + [ + 6, + 29 + ], + [ + 8, + 20 + ], + [ + 5, + 34 + ], + [ + 7, + 25 + ], + [ + 6, + 30 + ], + [ + 8, + 21 + ], + [ + 5, + 35 + ], + [ + 7, + 26 + ], + [ + 6, + 31 + ], + [ + 8, + 22 + ], + [ + 5, + 36 + ], + [ + 7, + 27 + ], + [ + 6, + 32 + ], + [ + 8, + 23 + ], + [ + 7, + 28 + ], + [ + 6, + 33 + ], + [ + 8, + 24 + ], + [ + 7, + 29 + ], + [ + 6, + 34 + ], + [ + 8, + 25 + ], + [ + 7, + 30 + ], + [ + 6, + 35 + ], + [ + 8, + 26 + ], + [ + 7, + 31 + ], + [ + 6, + 36 + ], + [ + 8, + 27 + ], + [ + 7, + 32 + ], + [ + 8, + 28 + ], + [ + 7, + 33 + ], + [ + 8, + 29 + ], + [ + 7, + 34 + ], + [ + 8, + 30 + ], + [ + 7, + 35 + ], + [ + 8, + 31 + ], + [ + 7, + 36 + ], + [ + 8, + 32 + ], + [ + 8, + 33 + ], + [ + 8, + 34 + ], + [ + 8, + 35 + ], + [ + 8, + 36 + ] + ], + "data": { + "owners_sha256": "3a56f578b2db5647cf6cb811bc6263c7a802ae3e31e9e672596d43185e4e5c9f", + "plan_sha256": "8b9cfb7b9a4cad69ed02c7a39e12cad37d9abe2154a7b2e14570957c11180bd9" + }, + "dispatch": [ + [ + 0, + 0, + "demote4" + ], + [ + 0, + 1, + "demote4" + ], + [ + 0, + 2, + "demote4" + ], + [ + 0, + 3, + "demote4" + ], + [ + 0, + 4, + "demote4" + ], + [ + 1, + 0, + "demote4" + ], + [ + 0, + 5, + "demote4" + ], + [ + 1, + 1, + "demote4" + ], + [ + 0, + 6, + "demote4" + ], + [ + 1, + 2, + "demote4" + ], + [ + 0, + 7, + "demote4" + ], + [ + 1, + 3, + "demote4" + ], + [ + 0, + 8, + "demote4" + ], + [ + 1, + 4, + "demote4" + ], + [ + 0, + 9, + "demote4" + ], + [ + 2, + 0, + "demote4" + ], + [ + 1, + 5, + "demote4" + ], + [ + 0, + 10, + "demote4" + ], + [ + 2, + 1, + "demote4" + ], + [ + 1, + 6, + "demote4" + ], + [ + 0, + 11, + "demote4" + ], + [ + 2, + 2, + "demote4" + ], + [ + 1, + 7, + "demote4" + ], + [ + 0, + 12, + "demote4" + ], + [ + 2, + 3, + "demote4" + ], + [ + 1, + 8, + "demote4" + ], + [ + 0, + 13, + "demote4" + ], + [ + 2, + 4, + "demote4" + ], + [ + 1, + 9, + "demote4" + ], + [ + 3, + 0, + "demote4" + ], + [ + 0, + 14, + "demote4" + ], + [ + 2, + 5, + "demote4" + ], + [ + 1, + 10, + "demote4" + ], + [ + 3, + 1, + "demote4" + ], + [ + 0, + 15, + "demote4" + ], + [ + 2, + 6, + "demote4" + ], + [ + 1, + 11, + "demote4" + ], + [ + 3, + 2, + "demote4" + ], + [ + 0, + 16, + "demote4" + ], + [ + 2, + 7, + "demote4" + ], + [ + 1, + 12, + "demote4" + ], + [ + 3, + 3, + "demote4" + ], + [ + 0, + 17, + "demote4" + ], + [ + 2, + 8, + "demote4" + ], + [ + 1, + 13, + "demote4" + ], + [ + 3, + 4, + "demote4" + ], + [ + 0, + 18, + "demote4" + ], + [ + 2, + 9, + "demote4" + ], + [ + 4, + 0, + "demote4" + ], + [ + 1, + 14, + "demote4" + ], + [ + 3, + 5, + "demote4" + ], + [ + 0, + 19, + "demote4" + ], + [ + 2, + 10, + "demote4" + ], + [ + 4, + 1, + "demote4" + ], + [ + 1, + 15, + "demote4" + ], + [ + 3, + 6, + "demote4" + ], + [ + 0, + 20, + "demote4" + ], + [ + 2, + 11, + "demote4" + ], + [ + 4, + 2, + "demote4" + ], + [ + 1, + 16, + "demote4" + ], + [ + 3, + 7, + "demote4" + ], + [ + 0, + 21, + "demote4" + ], + [ + 2, + 12, + "demote4" + ], + [ + 4, + 3, + "demote4" + ], + [ + 1, + 17, + "demote4" + ], + [ + 3, + 8, + "demote4" + ], + [ + 0, + 22, + "demote4" + ], + [ + 2, + 13, + "demote4" + ], + [ + 4, + 4, + "demote4" + ], + [ + 1, + 18, + "demote4" + ], + [ + 3, + 9, + "demote4" + ], + [ + 0, + 23, + "demote4" + ], + [ + 5, + 0, + "demote4" + ], + [ + 2, + 14, + "demote4" + ], + [ + 4, + 5, + "demote4" + ], + [ + 1, + 19, + "demote4" + ], + [ + 3, + 10, + "demote4" + ], + [ + 0, + 24, + "demote4" + ], + [ + 5, + 1, + "demote4" + ], + [ + 2, + 15, + "demote4" + ], + [ + 4, + 6, + "demote4" + ], + [ + 1, + 20, + "demote4" + ], + [ + 3, + 11, + "demote4" + ], + [ + 0, + 25, + "demote4" + ], + [ + 5, + 2, + "demote4" + ], + [ + 2, + 16, + "demote4" + ], + [ + 4, + 7, + "demote4" + ], + [ + 1, + 21, + "demote4" + ], + [ + 3, + 12, + "demote4" + ], + [ + 0, + 26, + "demote4" + ], + [ + 5, + 3, + "demote4" + ], + [ + 2, + 17, + "demote4" + ], + [ + 4, + 8, + "demote4" + ], + [ + 1, + 22, + "demote4" + ], + [ + 3, + 13, + "demote4" + ], + [ + 0, + 27, + "demote4" + ], + [ + 5, + 4, + "demote4" + ], + [ + 2, + 18, + "demote4" + ], + [ + 4, + 9, + "demote4" + ], + [ + 1, + 23, + "demote4" + ], + [ + 6, + 0, + "demote4" + ], + [ + 3, + 14, + "demote4" + ], + [ + 0, + 28, + "demote4" + ], + [ + 5, + 5, + "demote4" + ], + [ + 2, + 19, + "demote4" + ], + [ + 4, + 10, + "demote4" + ], + [ + 1, + 24, + "demote4" + ], + [ + 6, + 1, + "demote4" + ], + [ + 3, + 15, + "demote4" + ], + [ + 0, + 29, + "demote4" + ], + [ + 5, + 6, + "demote4" + ], + [ + 2, + 20, + "demote4" + ], + [ + 4, + 11, + "demote4" + ], + [ + 1, + 25, + "demote4" + ], + [ + 6, + 2, + "demote4" + ], + [ + 3, + 16, + "demote4" + ], + [ + 0, + 30, + "demote4" + ], + [ + 5, + 7, + "demote4" + ], + [ + 2, + 21, + "demote4" + ], + [ + 4, + 12, + "demote4" + ], + [ + 1, + 26, + "demote4" + ], + [ + 6, + 3, + "demote4" + ], + [ + 3, + 17, + "demote4" + ], + [ + 0, + 31, + "demote4" + ], + [ + 5, + 8, + "demote4" + ], + [ + 2, + 22, + "demote4" + ], + [ + 4, + 13, + "demote4" + ], + [ + 1, + 27, + "demote4" + ], + [ + 6, + 4, + "demote4" + ], + [ + 3, + 18, + "demote4" + ], + [ + 0, + 32, + "demote4" + ], + [ + 5, + 9, + "demote4" + ], + [ + 2, + 23, + "demote4" + ], + [ + 7, + 0, + "demote4" + ], + [ + 4, + 14, + "demote4" + ], + [ + 1, + 28, + "demote4" + ], + [ + 6, + 5, + "demote4" + ], + [ + 3, + 19, + "demote4" + ], + [ + 0, + 33, + "demote4" + ], + [ + 5, + 10, + "demote4" + ], + [ + 2, + 24, + "demote4" + ], + [ + 7, + 1, + "demote4" + ], + [ + 4, + 15, + "demote4" + ], + [ + 1, + 29, + "demote4" + ], + [ + 6, + 6, + "demote4" + ], + [ + 3, + 20, + "demote4" + ], + [ + 0, + 34, + "demote4" + ], + [ + 5, + 11, + "demote4" + ], + [ + 2, + 25, + "demote4" + ], + [ + 7, + 2, + "demote4" + ], + [ + 4, + 16, + "demote4" + ], + [ + 1, + 30, + "demote4" + ], + [ + 6, + 7, + "demote4" + ], + [ + 3, + 21, + "demote4" + ], + [ + 0, + 35, + "demote4" + ], + [ + 5, + 12, + "demote4" + ], + [ + 2, + 26, + "demote4" + ], + [ + 7, + 3, + "demote4" + ], + [ + 4, + 17, + "demote4" + ], + [ + 1, + 31, + "demote4" + ], + [ + 6, + 8, + "demote4" + ], + [ + 3, + 22, + "demote4" + ], + [ + 0, + 36, + "demote4" + ], + [ + 5, + 13, + "demote4" + ], + [ + 2, + 27, + "demote4" + ], + [ + 7, + 4, + "demote4" + ], + [ + 4, + 18, + "demote4" + ], + [ + 1, + 32, + "demote4" + ], + [ + 6, + 9, + "demote4" + ], + [ + 3, + 23, + "demote4" + ], + [ + 8, + 0, + "demote4" + ], + [ + 5, + 14, + "demote4" + ], + [ + 2, + 28, + "demote4" + ], + [ + 7, + 5, + "demote4" + ], + [ + 4, + 19, + "demote4" + ], + [ + 1, + 33, + "demote4" + ], + [ + 6, + 10, + "demote4" + ], + [ + 3, + 24, + "demote4" + ], + [ + 8, + 1, + "demote4" + ], + [ + 5, + 15, + "demote4" + ], + [ + 2, + 29, + "demote4" + ], + [ + 7, + 6, + "demote4" + ], + [ + 4, + 20, + "demote4" + ], + [ + 1, + 34, + "demote4" + ], + [ + 6, + 11, + "demote4" + ], + [ + 3, + 25, + "demote4" + ], + [ + 8, + 2, + "demote4" + ], + [ + 5, + 16, + "demote4" + ], + [ + 2, + 30, + "demote4" + ], + [ + 7, + 7, + "demote4" + ], + [ + 4, + 21, + "demote4" + ], + [ + 1, + 35, + "demote4" + ], + [ + 6, + 12, + "demote4" + ], + [ + 3, + 26, + "demote4" + ], + [ + 8, + 3, + "demote4" + ], + [ + 5, + 17, + "demote4" + ], + [ + 2, + 31, + "demote4" + ], + [ + 7, + 8, + "demote4" + ], + [ + 4, + 22, + "demote4" + ], + [ + 1, + 36, + "demote4" + ], + [ + 6, + 13, + "demote4" + ], + [ + 3, + 27, + "demote4" + ], + [ + 8, + 4, + "demote4" + ], + [ + 5, + 18, + "demote4" + ], + [ + 2, + 32, + "demote4" + ], + [ + 7, + 9, + "demote4" + ], + [ + 4, + 23, + "demote4" + ], + [ + 6, + 14, + "demote4" + ], + [ + 3, + 28, + "demote3" + ], + [ + 8, + 5, + "demote3" + ], + [ + 5, + 19, + "demote3" + ], + [ + 2, + 33, + "demote3" + ], + [ + 7, + 10, + "demote3" + ], + [ + 4, + 24, + "demote3" + ], + [ + 6, + 15, + "demote3" + ], + [ + 3, + 29, + "demote3" + ], + [ + 8, + 6, + "demote3" + ], + [ + 5, + 20, + "demote3" + ], + [ + 2, + 34, + "demote3" + ], + [ + 7, + 11, + "demote3" + ], + [ + 4, + 25, + "demote3" + ], + [ + 6, + 16, + "demote3" + ], + [ + 3, + 30, + "demote3" + ], + [ + 8, + 7, + "demote3" + ], + [ + 5, + 21, + "demote3" + ], + [ + 2, + 35, + "demote3" + ], + [ + 7, + 12, + "demote3" + ], + [ + 4, + 26, + "demote3" + ], + [ + 6, + 17, + "demote3" + ], + [ + 3, + 31, + "demote3" + ], + [ + 8, + 8, + "demote3" + ], + [ + 5, + 22, + "demote3" + ], + [ + 2, + 36, + "demote3" + ], + [ + 7, + 13, + "demote3" + ], + [ + 4, + 27, + "demote3" + ], + [ + 6, + 18, + "demote3" + ], + [ + 3, + 32, + "demote3" + ], + [ + 8, + 9, + "demote3" + ], + [ + 5, + 23, + "demote3" + ], + [ + 7, + 14, + "demote3" + ], + [ + 4, + 28, + "demote3" + ], + [ + 6, + 19, + "demote3" + ], + [ + 3, + 33, + "demote3" + ], + [ + 8, + 10, + "demote3" + ], + [ + 5, + 24, + "demote3" + ], + [ + 7, + 15, + "demote3" + ], + [ + 4, + 29, + "demote3" + ], + [ + 6, + 20, + "demote3" + ], + [ + 3, + 34, + "demote3" + ], + [ + 8, + 11, + "demote3" + ], + [ + 5, + 25, + "demote3" + ], + [ + 7, + 16, + "demote3" + ], + [ + 4, + 30, + "demote3" + ], + [ + 6, + 21, + "demote3" + ], + [ + 3, + 35, + "demote3" + ], + [ + 8, + 12, + "demote3" + ], + [ + 5, + 26, + "demote3" + ], + [ + 7, + 17, + "demote3" + ], + [ + 4, + 31, + "demote3" + ], + [ + 6, + 22, + "demote3" + ], + [ + 3, + 36, + "demote3" + ], + [ + 8, + 13, + "demote3" + ], + [ + 5, + 27, + "demote3" + ], + [ + 7, + 18, + "demote3" + ], + [ + 4, + 32, + "demote3" + ], + [ + 6, + 23, + "demote3" + ], + [ + 8, + 14, + "demote3" + ], + [ + 5, + 28, + "demote3" + ], + [ + 7, + 19, + "demote3" + ], + [ + 4, + 33, + "demote3" + ], + [ + 6, + 24, + "demote3" + ], + [ + 8, + 15, + "demote3" + ], + [ + 5, + 29, + "demote3" + ], + [ + 7, + 20, + "demote3" + ], + [ + 4, + 34, + "demote3" + ], + [ + 6, + 25, + "demote3" + ], + [ + 8, + 16, + "demote3" + ], + [ + 5, + 30, + "demote3" + ], + [ + 7, + 21, + "demote3" + ], + [ + 4, + 35, + "demote3" + ], + [ + 6, + 26, + "demote3" + ], + [ + 8, + 17, + "demote3" + ], + [ + 5, + 31, + "demote3" + ], + [ + 7, + 22, + "demote3" + ], + [ + 4, + 36, + "demote3" + ], + [ + 6, + 27, + "demote3" + ], + [ + 8, + 18, + "demote3" + ], + [ + 5, + 32, + "demote3" + ], + [ + 7, + 23, + "demote3" + ], + [ + 6, + 28, + "demote3" + ], + [ + 8, + 19, + "demote3" + ], + [ + 5, + 33, + "demote3" + ], + [ + 7, + 24, + "demote3" + ], + [ + 6, + 29, + "demote3" + ], + [ + 8, + 20, + "demote3" + ], + [ + 5, + 34, + "demote3" + ], + [ + 7, + 25, + "demote3" + ], + [ + 6, + 30, + "demote3" + ], + [ + 8, + 21, + "demote3" + ], + [ + 5, + 35, + "demote3" + ], + [ + 7, + 26, + "demote3" + ], + [ + 6, + 31, + "demote3" + ], + [ + 8, + 22, + "demote3" + ], + [ + 5, + 36, + "demote3" + ], + [ + 7, + 27, + "demote3" + ], + [ + 6, + 32, + "demote3" + ], + [ + 8, + 23, + "demote3" + ], + [ + 7, + 28, + "demote3" + ], + [ + 6, + 33, + "demote3" + ], + [ + 8, + 24, + "demote3" + ], + [ + 7, + 29, + "demote3" + ], + [ + 6, + 34, + "demote3" + ], + [ + 8, + 25, + "demote3" + ], + [ + 7, + 30, + "demote3" + ], + [ + 6, + 35, + "demote3" + ], + [ + 8, + 26, + "demote3" + ], + [ + 7, + 31, + "demote3" + ], + [ + 6, + 36, + "demote3" + ], + [ + 8, + 27, + "demote3" + ], + [ + 7, + 32, + "demote3" + ], + [ + 8, + 28, + "demote3" + ], + [ + 7, + 33, + "demote3" + ], + [ + 8, + 29, + "demote3" + ], + [ + 7, + 34, + "demote3" + ], + [ + 8, + 30, + "demote3" + ], + [ + 7, + 35, + "demote3" + ], + [ + 8, + 31, + "demote3" + ], + [ + 7, + 36, + "demote3" + ], + [ + 8, + 32, + "demote3" + ], + [ + 8, + 33, + "demote3" + ], + [ + 8, + 34, + "demote3" + ], + [ + 8, + 35, + "demote3" + ], + [ + 8, + 36, + "demote3" + ] + ], + "expected": { + "gain_baseline_kappa": "0.001674622497877364", + "hosted_residuals": 159840, + "rank_mass": 2408256, + "actual_73column_sigmas": 11144, + "cross_replica_helper_roles": 148150, + "idle_remainders": 11376, + "idle_remainder_profile": { + "1": 2, + "48": 11374 + }, + "global_profile": { + "1": 785550, + "2": 167498, + "3": 138028, + "4": 42458, + "5": 27306, + "8": 2664, + "48": 11374 + }, + "live": 33152, + "physical": 33642, + "conservative_kappa_decimal": "0.001675672692984588", + "kappa_decimal": "0.001675672695827067", + "complex_lower": "167848528779417184507/100000000000000000000000", + "conservative_complex_lower": "839242642471071183683/500000000000000000000000", + "kappa": "1675672695827067/1000000000000000000", + "assembly_controls_rejected": 114, + "provider_counts": { + "demote3": 125, + "demote4": 208 + }, + "mutations_rejected": 23 + }, + "name": "mixed-demotions-t37", + "pivot_swap": { + "recipe": "/home/jeremydiviney/intmult/build/contribution/three-demotions-t37/research/gauge44-slots/construction/leaver/PIVOT-SWAP-k8.json", + "sha256": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb" + }, + "providers": { + "demote3": { + "inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + }, + "native_negative_controls": 25, + "phase_edges": 2900, + "expected_profile": { + "1": 2364, + "2": 498, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "9885ff29b54f8d2de67d58d68e40a48b7897530d565f932fe63534caa3b405c9", + "LOCAL-PROGRAMS.json.gz": "1c81387e144fe92eadc6296d44d3fd80e6f9573e0269cadaf591f75de0661eed", + "LOCAL-CHECKS.json": "36c5685b24037dcf3767fc7d8d48c308da50f754fc50a05d760e399dd275b045", + "INDEPENDENT-LOCAL-REPLAY.json": "4ffe4b6ea3a1e027ef67a519e92253286d5cb794155eea1d1bef940521521a5f", + "CLIFFORD-RECIPES.json": "c58d2bd3492a031820aec434661c9297fa41d810ad661c651f139e9b592c6a4a", + "CLIFFORD-REVIEW.json": "3ca5c207027b17a305206541c9792b73cd6e4c92dbb7ada0cb765882af9f4f9e", + "RESIDUAL-ADAPTERS.json": "d77ab0c3689e5c10f7129487a85d1497dd721e31138372b4a35913691fe5bc69" + }, + "entering": 192, + "entrance": 372, + "width_digest": "3e2624964db4f881ad1404d94ec595b3d1baba07bef90cf9037d802cc6299d11", + "program_hashes": { + "backward": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "forward": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e" + }, + "artifacts": { + "LOCAL-CHECKS.json": "654ca95a7f9af260d088f29c1791686f54f66cbbe735b9ea2fd5114b377727aa", + "CLIFFORD-RECIPES.json": "c58d2bd3492a031820aec434661c9297fa41d810ad661c651f139e9b592c6a4a", + "RESIDUAL-ADAPTERS.json": "c099207d60ab49392bcadcaf7e9cbcfe01178e732f14e2591a8c3463162460d7" + }, + "complete_contract": { + "local": { + "backward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98365, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98333, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 372, + "terminal_codimension": 214, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 387056, + "local_primitive_bound": 10038040553630, + "compiler": 25934336, + "children": 3494, + "paid_profile": { + "1": 2364, + "2": 498, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "forward": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "9885ff29b54f8d2de67d58d68e40a48b7897530d565f932fe63534caa3b405c9", + "LOCAL-PROGRAMS.json.gz": "1c81387e144fe92eadc6296d44d3fd80e6f9573e0269cadaf591f75de0661eed", + "LOCAL-CHECKS.json": "36c5685b24037dcf3767fc7d8d48c308da50f754fc50a05d760e399dd275b045", + "INDEPENDENT-LOCAL-REPLAY.json": "4ffe4b6ea3a1e027ef67a519e92253286d5cb794155eea1d1bef940521521a5f", + "CLIFFORD-RECIPES.json": "c58d2bd3492a031820aec434661c9297fa41d810ad661c651f139e9b592c6a4a", + "CLIFFORD-REVIEW.json": "3ca5c207027b17a305206541c9792b73cd6e4c92dbb7ada0cb765882af9f4f9e", + "RESIDUAL-ADAPTERS.json": "d77ab0c3689e5c10f7129487a85d1497dd721e31138372b4a35913691fe5bc69" + } + }, + "semantic_phase_sha256": "3ca5c207027b17a305206541c9792b73cd6e4c92dbb7ada0cb765882af9f4f9e", + "expected_local": { + "forward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "coefficient_work_primitive_count": 98333 + }, + "backward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "coefficient_work_primitive_count": 98365 + } + }, + "wrappers": 240 + }, + "demote4": { + "inventory": { + "4": 40, + "5": 48, + "7": 38, + "8": 114, + "9": 240 + }, + "native_negative_controls": 25, + "phase_edges": 2900, + "expected_profile": { + "1": 2356, + "2": 506, + "3": 416, + "4": 126, + "5": 82, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "576ece8ed41adf7145607c12e07d6e461337b188340cda4272cbcf48472ef709", + "LOCAL-PROGRAMS.json.gz": "a7822ed2e402952991bce28b56b8183ff4f502f9599615b5806fc320f7e0c7a4", + "LOCAL-CHECKS.json": "32c93ab90b40b6add454199c48302c149cb35d21da7d27a801544cd45c853101", + "INDEPENDENT-LOCAL-REPLAY.json": "3a943a3c1756ff6643bdecd185cfaee43f040c882790f7392fc08cc9eab1f5e2", + "CLIFFORD-RECIPES.json": "5620aceef1d7bd7ce3a554ca2f36b8a78d1fdc150fe814a0d602e21d5fc2edae", + "CLIFFORD-REVIEW.json": "06370f9c77ac8689bba3b883a0cc0378b7222d1a07265d10a90e3f380abe4577", + "RESIDUAL-ADAPTERS.json": "91b1a723dd9ce73b87c183980e7f06c05f15a7453bd4efec282cb64fca063122" + }, + "entering": 192, + "entrance": 368, + "width_digest": "ec44b5b214538eafbd921a70a1881e38212a3e101ebf7f35427b971a6447de3f", + "program_hashes": { + "backward": "b0b4402a37084bb1e696afdc3a0e3e946d359a78f198a17f8796cb1ba3261b7b", + "forward": "e17b1fc1c2949db812abc713018db60f5a7ed2a49277f31bce4b9dcad7bc18ee" + }, + "artifacts": { + "LOCAL-CHECKS.json": "7bafc7964d527a1feb6fff01ca8018236aee7f4e9223926d612ed6ce3b72d756", + "CLIFFORD-RECIPES.json": "5620aceef1d7bd7ce3a554ca2f36b8a78d1fdc150fe814a0d602e21d5fc2edae", + "RESIDUAL-ADAPTERS.json": "4aa99dccfe367c32b79be0e99b40a8e9f6bcce57db250532d091040ae147dae1" + }, + "complete_contract": { + "local": { + "backward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98365, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98333, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 368, + "terminal_codimension": 214, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 40, + "5": 48, + "7": 38, + "8": 114, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 387056, + "local_primitive_bound": 10038040553630, + "compiler": 25934336, + "children": 3494, + "paid_profile": { + "1": 2356, + "2": 506, + "3": 416, + "4": 126, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "b0b4402a37084bb1e696afdc3a0e3e946d359a78f198a17f8796cb1ba3261b7b", + "forward": "e17b1fc1c2949db812abc713018db60f5a7ed2a49277f31bce4b9dcad7bc18ee" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "576ece8ed41adf7145607c12e07d6e461337b188340cda4272cbcf48472ef709", + "LOCAL-PROGRAMS.json.gz": "a7822ed2e402952991bce28b56b8183ff4f502f9599615b5806fc320f7e0c7a4", + "LOCAL-CHECKS.json": "32c93ab90b40b6add454199c48302c149cb35d21da7d27a801544cd45c853101", + "INDEPENDENT-LOCAL-REPLAY.json": "3a943a3c1756ff6643bdecd185cfaee43f040c882790f7392fc08cc9eab1f5e2", + "CLIFFORD-RECIPES.json": "5620aceef1d7bd7ce3a554ca2f36b8a78d1fdc150fe814a0d602e21d5fc2edae", + "CLIFFORD-REVIEW.json": "06370f9c77ac8689bba3b883a0cc0378b7222d1a07265d10a90e3f380abe4577", + "RESIDUAL-ADAPTERS.json": "91b1a723dd9ce73b87c183980e7f06c05f15a7453bd4efec282cb64fca063122" + } + }, + "semantic_phase_sha256": "06370f9c77ac8689bba3b883a0cc0378b7222d1a07265d10a90e3f380abe4577", + "expected_local": { + "forward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "coefficient_work_primitive_count": 98333 + }, + "backward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "coefficient_work_primitive_count": 98365 + } + }, + "wrappers": 240 + } + }, + "schema": "witness-spec/1", + "width_spot_helpers": [ + 258, + 270, + 282, + 294 + ] +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/ANCESTRY.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/ANCESTRY.json new file mode 100644 index 0000000000..19c1fe32ba --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/ANCESTRY.json @@ -0,0 +1 @@ +{"archive_sha256":"22c3f4dce4b897a1d423d1388801933e288b6a6b1906cb15e1b16a5eb68db754","binding":{"ancestry":{"bit_input_sha256":"b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4","bit_result_sha256":"28795393651ef4fbbc6232eb2b32f7b39b91fbd5ea6d2315583f350714698055","complex_assembly_sha256":"41bcdbaf21cfb91f017387ec594cd474bf7c96cfd273c9c87e1e60ecdc1f2acd","complex_receipt_sha256":"040d8cfc8ce49be9b475352eac93c7bf1976ed44e8282bc9d0f13275c4d7d2c5","decimal":"0.001661202643272239","kappa":"1661202643272239/1000000000000000000","scope":"Rebuilt finite suppliers and exact composition. All-size/compiler, common-label/mutable-source, whole-call hosting, precision/tape and analytic transfer hypotheses remain conditional; not a full Lean theorem.","status":"PASS_REBUILT_PR589_PR741_COMPOSITION"},"assembly_sha256":"92a6b821af84b6a986bd2ddd4fe5282ef6cf362c832271185f748ae2bc61de2c","decimal":"0.001661634653669567","independent_sha256":"ae5029f14b47f909319fa31ac10f2f4e0200323f8f0e08ef2326f0d51968d584","kappa":"1661634653669567/1000000000000000000","package_manifest_sha256":"e1b7998c8f7cb24f8674d250d0510f2b5b351b2ed0b35f17a17e6bacf3d9824b","price_sha256":"e8cecbb4f05ca1a115512b246530278ed86558d0fae1229d09d7d9188f5f330f","scope":"Exact finite X4 scalar/frame/phase/owner/invoice/assembly checks, bound to rebuilt PR589 and SW4 ancestry. Inherited all-size/compiler, common-label/mutable-source, whole-call hosting, precision/tape and analytic assumptions remain; not a full Lean theorem.","status":"PASS_REBUILT_PR589_PR799_COMPOSITION"},"coverage":{"complex_receipt_sha256":"040d8cfc8ce49be9b475352eac93c7bf1976ed44e8282bc9d0f13275c4d7d2c5","mandatory_artifact_count":44,"ordered_stage_count":22,"scope":"Fixed coverage and receipt/STAGES agreement only. The unchanged maintainer binding must also verify every artifact and log digest. This does not authenticate execution history or fabricated logs.","source_manifest_sha256":"b9b39c206fcd2613382b0dcbda23a371e8781d1bedaf8e2f8e7df1e79dc1fa89","source_spec_sha256":"7fc2bd2e3c0ac13729c1fa1f0f327a4eb7c72373ba58e5ed3954b30e23c803be","stages_sha256":"f14b4729992999ee06029f1bae6606991927fe49fdd0c6493c602062114d02a1","status":"PASS_FIXED_PR741_STAGE_AND_ARTIFACT_COVERAGE"},"reused":true} \ No newline at end of file diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/ENTRANCE-CONTROLS.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/ENTRANCE-CONTROLS.json new file mode 100644 index 0000000000..3a6faf62a0 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/ENTRANCE-CONTROLS.json @@ -0,0 +1,49 @@ +{ + "status": "PASS_FOUR_ENTRANCE_SEMANTIC_CONTROLS", + "rejected": [ + { + "control": "restore-promoted-start-627", + "reason": "frame not monotone (627, (390, 68, 34, 24, 1), (68, 34, 24, 1))" + }, + { + "control": "first-frame-too-small-627", + "reason": "frame not monotone (627, (68, 34, 24, 1), (68, 34, 24))" + }, + { + "control": "restore-promoted-start-629", + "reason": "frame not monotone (629, (390, 68, 34, 24, 1), (68, 34, 24, 1))" + }, + { + "control": "first-frame-too-small-629", + "reason": "frame not monotone (624, (68, 34, 24, 1), (68, 34, 24))" + }, + { + "control": "restore-promoted-start-630", + "reason": "frame not monotone (630, (390, 68, 34, 24, 1), (68, 34, 24, 1))" + }, + { + "control": "first-frame-too-small-630", + "reason": "frame not monotone (624, (68, 34, 24, 1), (68, 34, 24))" + }, + { + "control": "restore-promoted-start-631", + "reason": "frame not monotone (631, (390, 68, 34, 24, 1), (68, 34, 24, 1))" + }, + { + "control": "first-frame-too-small-631", + "reason": "frame not monotone (625, (68, 34, 24, 1), (68, 34, 24))" + }, + { + "control": "false-paid-profile", + "reason": "paid profile mismatch" + }, + { + "control": "wrong-target-coefficient", + "reason": "nonzero entrance response" + }, + { + "control": "false-helper-inventory", + "reason": "width inventory mismatch" + } + ] +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/FLOW-CONTROLS.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/FLOW-CONTROLS.json new file mode 100644 index 0000000000..b6fe46c47c --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/FLOW-CONTROLS.json @@ -0,0 +1 @@ +{"rejected":["boolean_bin_count","negative_bin_count","duplicate_window","duplicate_flow","out_of_window_time","invalid_width","overfull_call","reordered_wave"],"status":"PASS_FROZEN_FLOW_NEGATIVE_CONTROLS"} \ No newline at end of file diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/INDEPENDENT-OWNERS.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/INDEPENDENT-OWNERS.json new file mode 100644 index 0000000000..44c14d7c4a --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/INDEPENDENT-OWNERS.json @@ -0,0 +1 @@ +{"actual_73_axis_charts":11144,"adapter_sha256":"5dcc9304d84d6f07bb818685baa9c59c609043fa4a6ef156fffc1b44ffce0b33","bridge_events":333,"calls":333,"charged_prefix_bits":1024,"checked_busy_family_windows":159840,"checked_slice_prefixes":74592,"checked_whole_helper_widths":159840,"controls_rejected":[{"name":"private_namespace_collision","reason":"private-namespace collision"},{"name":"copy_replica_alias","reason":"role invocation time"},{"name":"missing_whole_helper","reason":"complete helper role count"},{"name":"split_whole_helper","reason":"complete helper role count"},{"name":"truncated_helper_width","reason":"whole-helper residual width"},{"name":"cross_idle_boundary","reason":"strict bridge-aware idle window"},{"name":"wrong_provider_demote3","reason":"whole-helper residual width"},{"name":"wrong_provider_demote4","reason":"whole-helper residual width"}],"deficit":11840,"edits":[["2 * 512","2 * 1024"],["prefix < 512","prefix < 1024"],["charged_prefix_bits=512","charged_prefix_bits=1024"],["Counter(widths) == {4: 80, 5: 32, 7: 54, 8: 122, 9: 216}","Counter(widths) in ({4:44,5:44,7:38,8:114,9:240},{4:40,5:48,7:38,8:114,9:240})"],["width == c['widths'][helper]","width == c['widths_by_call'][call][helper]"],["Counter({rank: 9 * T * count for rank, count in c['paid'].items()})","Counter(c['paid_total'])"],["max(x['prefix_bits_upper'] for x in c['replay']['local'].values())","c['localbits']"],["local_profile=dict(sorted(c['paid'].items())), width_inventory=dict(sorted(Counter(c['widths']).items())),","local_profiles=c['local_profiles'], width_inventories=c['inventories'], provider_call_counts=c['call_counts'],"],["if context['callpos'][key] >= hi","if context['callpos'][key] >= hi and context['widths_by_call'][key][z['helper']] == z['width']"]],"expanded_replica_events":1110,"idle":{"1":2,"48":11374},"inputs":{"/home/jeremydiviney/intmult/build/contribution/demotions-t37-search/package-fresh2/constructed/OWNERS.json.gz":"3a56f578b2db5647cf6cb811bc6263c7a802ae3e31e9e672596d43185e4e5c9f","/home/jeremydiviney/intmult/build/contribution/demotions-t37-search/package-fresh2/demote3/local/CANONICAL-WORD.json.gz":"c35ae25e495c53273a26102338c43de2ac7d3044fdead25b619c0bebc0e5cbff","/home/jeremydiviney/intmult/build/contribution/demotions-t37-search/package-fresh2/demote3/local/INDEPENDENT-LOCAL-REPLAY.json":"2bcb926b433bfc223997efd5d7212899c850a1ddb204269589b1f3a7151d82c6","/home/jeremydiviney/intmult/build/contribution/demotions-t37-search/package-fresh2/demote4/local/CANONICAL-WORD.json.gz":"0f4045b78efc4fd5c1cb5c840f13e5e4b0139a3683d86cced5c8a38dd972723d","/home/jeremydiviney/intmult/build/contribution/demotions-t37-search/package-fresh2/demote4/local/INDEPENDENT-LOCAL-REPLAY.json":"3aa0b38079d2af52e6f94cc9f128d7bbb776fccbe57aaad630a5054edb39dc48","/home/jeremydiviney/intmult/build/contribution/demotions-t37-search/package-fresh2/retained1042/slots/global/global/base/split-centres/CANONICAL-WORD.json.gz":"66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844","/home/jeremydiviney/intmult/build/contribution/demotions-t37-search/package-fresh2/retained1042/slots/global/global/base/split-centres/GLOBAL-TEMPLATE.json.gz":"ab8448de2036a23d9b55a196a8846512dc24fdf09855c1e0f0caa5b7a6965f7b","/home/jeremydiviney/intmult/build/contribution/demotions-t37-search/package-fresh2/retained1042/slots/global/global/base/work/complex-nine-native/DATA-PHASES.json":"c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa","/home/jeremydiviney/intmult/build/contribution/three-demotions-t37/research/mixed-demotions-t37/data/MIX.json":"dd86bbb792a5c9f0d7507d55bd2f8392c66716023934b03b24f48ca737204eea","/home/jeremydiviney/intmult/build/contribution/three-demotions-t37/research/mixed-demotions-t37/data/ORDER.json":"7757df3b54ca5e84c6dba9563b10bc6215c5e289313392b5a4b493179a245c29"},"literal_windows":666,"live":33152,"local_prefix_bits":68,"local_prefix_from_native_receipt":true,"local_profile_recounted":true,"local_profiles":{"demote3":{"1":2364,"2":498,"3":412,"4":130,"5":82,"8":8},"demote4":{"1":2356,"2":506,"3":416,"4":126,"5":82,"8":8}},"namespace":{"centres":[33152,33160],"coefficient":[33640,33642],"data":[0,33152],"tableau":[33160,33640]},"orthogonal_port_bases":112,"physical":33642,"physical_row_coefficient":17495,"physical_stock_bits":2643,"prefix_bits":775,"prefix_formula":{"bridges":333,"input_l2":37,"invocations":333,"local_scalar":68,"margin":4},"profile":{"1":785550,"2":167498,"3":138028,"4":42458,"5":27306,"8":2664,"48":11374},"provider_call_counts":{"demote3":125,"demote4":208},"rank_mass":2408256,"roles":159840,"row_limit":20161,"scope":"Finite role/window/chart and inherited prefix/row obligations. Requires separately admitted local supplier and emitted controller, complete finite invoice, exact moments and outer assembly; no all-size theorem is asserted.","source_events_per_replica":30,"source_sha256":"9d8c86bf45cdaef37f223c88704055ced503ee295645611e13f3fb9059a00e55","status":"PASS_INDEPENDENT_VARIABLE_T_LITERAL_WINDOWS_CHARTS_PREFIX_ROW","width_inventories":{"demote3":{"4":44,"5":44,"7":38,"8":114,"9":240},"demote4":{"4":40,"5":48,"7":38,"8":114,"9":240}}} \ No newline at end of file diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/PARENT-CHECK.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/PARENT-CHECK.json new file mode 100644 index 0000000000..e6f7d66272 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/PARENT-CHECK.json @@ -0,0 +1,47 @@ +{ + "status": "PASS_INDEPENDENT_T37_PARTIAL_BANK_ENVELOPE", + "calls": 333, + "active_helper_lanes": 167832, + "bank_families": 22680, + "maximum_auxiliary_padding_rank": 53, + "source_content_sha256": "7db047a427a7979d69e163c78a1e32bd445628fb86723e131a3138361355a9c3", + "parent_content_sha256": "b4a5f30a598f6201c3973ce7ddd059c09fa9086b353456b559ed7b6ebebaec5d", + "controls_rejected": [ + { + "name": "missing_fifth_lane", + "reason": "Lifted call inventory" + }, + { + "name": "bank_group_alias", + "reason": "Literal mapped owner route" + }, + { + "name": "missing_complement_axis", + "reason": "Exact residual complement" + }, + { + "name": "stale_complement_rank", + "reason": "Exact residual complement" + }, + { + "name": "old_idle_multiplicity", + "reason": "Data idle multiplicity" + }, + { + "name": "missing_sweep_replica", + "reason": "Lifted source-event semantics" + }, + { + "name": "private_alias", + "reason": "Private namespace translation" + }, + { + "name": "short_final_correction", + "reason": "Final correction namespace" + } + ], + "input_sha256": { + "source": "ab8448de2036a23d9b55a196a8846512dc24fdf09855c1e0f0caa5b7a6965f7b", + "parent": "378d81d3fc38ac1a8cb8d54bf748ecda355c21f4e07f34c09709f1b4d9fcfbab" + } +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/PRICE.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/PRICE.json new file mode 100644 index 0000000000..f13194611b --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/PRICE.json @@ -0,0 +1 @@ +{"kappa":"1675672695827067/1000000000000000000","kappa_decimal":"0.001675672695827067","outer":[{"binding":"complex","bit_c":"1733427039589844234749/1000000000000000000000000","complex_b":"167848528779417184507/100000000000000000000000","controls_rejected":["next_grid","zero_eta","zero_beta","unit_beta"],"kappa":"1675672695827067/1000000000000000000","kappa_decimal":"0.001675672695827067","strict_constraints_passed":47},{"binding":"complex","bit_c":"1733427039589844234749/1000000000000000000000000","complex_b":"1678485287794171845071/1000000000000000000000000","controls_rejected":["next_grid","zero_eta","zero_beta","unit_beta"],"kappa":"1675672695827067/1000000000000000000","kappa_decimal":"0.001675672695827067","strict_constraints_passed":47}],"profile":{"1":785550,"2":167498,"3":138028,"4":42458,"5":27306,"8":2664,"48":11374},"provider_call_counts":{"demote3":125,"demote4":208},"root":{"lower":"0.00167848528779417184507","lower_endpoint_residual_upper":"-1.069351736589421044442949068274776347065265159260833934734968043471701E-25","moment_minus_one_at_current_k_required_rate":["-0.002869471310105852475544835587786122354087159635736343502742596161123202","-0.002869471310105852475544835587786122354087159635736343502742596161049018"],"nominal_k_ceiling_interval":["0.001675672695827067713539892157071079697339381473540608674787530242060807","0.001675672695827067713540888808533567026744306987435112296261176249809170"],"strict_rational_signs":true,"upper":"0.001678485287794171845071","upper_endpoint_residual_lower":"2.816742062601264700146598580589613332091429668572318441282191717080963E-24"},"scope":"Arithmetic for the nominated mixed profile; geometry and full invoice require separate admission. No optimality claim.","signs":{"lower":{"atanh":["-13367/125000000000000000000000000000","-21387/200000000000000000000000000000"],"mercator":["-1441483289343785538030799499761762428340655/13479973333575319897333507543509815336818572211270286240551805124608","-720741644671892769015399749880881214170327/6739986666787659948666753771754907668409286105635143120275902562304"],"point":"167848528779417184507/100000000000000000000000"},"upper":{"atanh":["1408371/500000000000000000000000000000","2816743/1000000000000000000000000000000"],"mercator":["37969607891424992524321121942360634395873535/13479973333575319897333507543509815336818572211270286240551805124608","148318780825878877048129382587346228108881/52656145834278593348959013841835216159447547700274555627155488768"],"point":"1678485287794171845071/1000000000000000000000000"}},"status":"PASS_TWO_ENGINE_MIXED_PROFILE_AND_OUTER47"} \ No newline at end of file diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RAW-demote3.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RAW-demote3.json new file mode 100644 index 0000000000..e69db49e87 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RAW-demote3.json @@ -0,0 +1,137 @@ +{ + "status": "PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES", + "input_file": "JOINT-WORD.json.gz", + "content_sha256": "1f66640293bde6c7e1df2d4ee0004c2de2327887a98575c5d975d6a14a8b7e74", + "compressed_sha256": "a0622d86259c4163e58cf0677ce575b6039a8ae4c95aa6d8b82a8163cbd42718", + "parent_center_interface": { + "parent_path": "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz", + "parent_file_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "transport_tau": 43, + "ordered_frame_bases_match": true, + "all_ports_match": true, + "transported_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "source_centers": [ + 92, + 57, + 81, + 11, + 9 + ], + "ordered_frame_bases": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ] + }, + "v": 112, + "h": 9, + "R": 480, + "entering": 192, + "lowends": 78, + "coldends": 48, + "compensation_gates": 7208, + "local_profile": { + "1": 2364, + "2": 498, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "width_inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + }, + "checked_columns": 704, + "elapsed_seconds": 0.684210145031102, + "scope": "Exact rational full scalar map in both orientations; all literal native frame chains, center levels, dyadic units, entrance-zero response, wrapper exclusion and final helper row/column cones. No global owner admission or exponent repricing." +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RAW-demote4.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RAW-demote4.json new file mode 100644 index 0000000000..93a7961813 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RAW-demote4.json @@ -0,0 +1,137 @@ +{ + "status": "PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES", + "input_file": "FOUR-WORD.json.gz", + "content_sha256": "7ad38f1773ca482277e2e32eac488f0ac59c2bbb3070097739da286faaaabcf3", + "compressed_sha256": "f9d9e74ea4ce7a3d3bdac3e559f39065a8d153b7d8f2299dbf1ff90471846c60", + "parent_center_interface": { + "parent_path": "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz", + "parent_file_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "transport_tau": 43, + "ordered_frame_bases_match": true, + "all_ports_match": true, + "transported_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "source_centers": [ + 92, + 57, + 81, + 11, + 9 + ], + "ordered_frame_bases": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ] + }, + "v": 112, + "h": 9, + "R": 480, + "entering": 192, + "lowends": 78, + "coldends": 48, + "compensation_gates": 7208, + "local_profile": { + "1": 2356, + "2": 506, + "3": 416, + "4": 126, + "5": 82, + "8": 8 + }, + "width_inventory": { + "4": 40, + "5": 48, + "7": 38, + "8": 114, + "9": 240 + }, + "checked_columns": 704, + "elapsed_seconds": 0.6569505339721218, + "scope": "Exact rational full scalar map in both orientations; all literal native frame chains, center levels, dyadic units, entrance-zero response, wrapper exclusion and final helper row/column cones. No global owner admission or exponent repricing." +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/REPLAY-SOURCE.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/REPLAY-SOURCE.json new file mode 100644 index 0000000000..4890f180c7 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/REPLAY-SOURCE.json @@ -0,0 +1,82 @@ +{ + "ancestry": "Fresh verify_frontier799.py run earlier in this session; complete source/log/artifact and fixed coverage rechecks during this replay.", + "command": "OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 MKL_NUM_THREADS=1 CPLUS_INCLUDE_PATH=/tmp/intmult-boost/usr/include BOOST_INCLUDE=/tmp/intmult-boost/usr/include nice -n 15 ionice -c 3 /tmp/intmult-contribution-venv/bin/python -B research/mixed-demotions-t37/verify.py --work /home/jeremydiviney/intmult/build/contribution/demotions-t37-search/package-fresh2 --ancestry799 /home/jeremydiviney/intmult/build/contribution/demotions-t37-search/baseline799-cold3", + "exit_code": 0, + "new_artifacts_and_documentation_only": true, + "receipts": { + "ANCESTRY.json": "cd880b2d1c2fb8d9050458bd13f228385c417a95e4d1985607d9f4bb60b5c109", + "ENTRANCE-CONTROLS.json": "7b101dd97c1025667fb3615930a9d6cd2ec443169d263a3bc1191b80fc712a1f", + "FLOW-CONTROLS.json": "43fe7e94bd72607d502ed947ac1463405be18728eb0b8faabd7ba63ab1d28ab4", + "INDEPENDENT-OWNERS.json": "4c295ff53f51631e1720b0dc2ea895c34861435fa92112ee52439e4569de968a", + "PARENT-CHECK.json": "2b729fd666ffe4e34a355223b57f74ba460fb171b19c84f260378dd109f0b9a0", + "PRICE.json": "a1dac219b019f8d40d5b434b0e0c25b0d1f097fe5ae13eae45c76869aec4758b", + "RAW-demote3.json": "02150d4cb1b2f4763b5c5c20ce979c740cbdfc1066e021a8aa5d407de5c4b9d3", + "RAW-demote4.json": "7adf0070125b2c61e04d46c5f1cbf57af079eb733799bbfcc3fe9b0551d964b1", + "RESULT.json": "62aca8286cbb021d2535d81494f7ba7a3aec20898fd7c40a895a461bbd303ac4", + "STAGES.json": "0dce559b2a8f371f369a05ae25ca5dd6a48019b5685b0097f001a23bd849429d", + "WORD-RECIPE.json": "b6750c8123c205b63786fb825da26a819592f71736a82009809ae1cf96173a5c", + "constructed/CONSTRUCTION.json": "e8236655e3f9e061514259dbb114b7e9b77b9be7459977ec613833de1a088073", + "demote3/STEPS.json": "e3a94ed349c2298d21ed96b0ab6dc02e8b0a7f523028366803df511d7b9200c7", + "demote3/local/CLIFFORD-REVIEW.json": "2ef79c2ed574a97c109906fc41f69793e19dd010c96240bd788907bbafdc818a", + "demote3/local/INDEPENDENT-LOCAL-REPLAY.json": "2bcb926b433bfc223997efd5d7212899c850a1ddb204269589b1f3a7151d82c6", + "demote3/local/LOCAL-CHECKS.json": "654ca95a7f9af260d088f29c1791686f54f66cbbe735b9ea2fd5114b377727aa", + "demote3/local/SCALAR-FRAME-AUDIT.json": "ebc0b07acae7c8cab1c673407d462ecc357cbe829bdce99d0d8b62149739d96f", + "demote3/local/WRAPPER-CHECKS.json": "f2a005b54bea64d66633d8a82d0454348172da3b88361081a72126bf1d51744d", + "demote4/STEPS.json": "934e851f2a79314077019fbfdde9fdce6353ed9ecb468bde7ed426826993c92b", + "demote4/local/CLIFFORD-REVIEW.json": "7dbaf548ff9a515a2c3e352ecff536c619d546339eaef1b408451a3f65c3f08d", + "demote4/local/INDEPENDENT-LOCAL-REPLAY.json": "3aa0b38079d2af52e6f94cc9f128d7bbb776fccbe57aaad630a5054edb39dc48", + "demote4/local/LOCAL-CHECKS.json": "7bafc7964d527a1feb6fff01ca8018236aee7f4e9223926d612ed6ce3b72d756", + "demote4/local/SCALAR-FRAME-AUDIT.json": "487409568e9ca43922c47362ca634003fda6957bbb02ab4a2dd5c231e3b92ff0", + "demote4/local/WRAPPER-CHECKS.json": "0e281983e139a29c2a28eaed51383f14d8acbe0161eb8e437b7f7ea5dd1c11a0", + "t37/ADAPTATIONS.json": "c4ee575e66a69dedd81ffe790f60ad422a51446c7c8bff860786e6e58e11b255", + "t37/strict/ADMISSION-CONTROLS.json": "02fcaf60f2db93ed84043c66bfb49e6fb63468a40cc6eb3ef9673bf6f03f9b14", + "t37/strict/ASSEMBLY.json": "ad612be9b551469cbd776496dbde4638937a184742ae9c380b41569a56253081", + "t37/strict/BIT-CONTROLS.json": "1e14fa3a1b5ed051e1da5661a4c9c4249a089c9c510553e83574e520a23b91b7", + "t37/strict/STAGES.json": "284ed86eb0590ce33ec2020d1e2d44b225d2cbc1ab91cb5a972683bcd300e480", + "t37/strict/global/audit/ASYNC-AUDIT.json": "028d1a2486ac64cba41d03320ccdf3bcff24c62a96bbbe629d55b28c02aeba9f", + "t37/strict/global/audit/OWNERS-AND-PROFILE.json": "c64cb2197f98b123a55d30a47b0c8e251873d7635a4de4c13a5e34b2e9483996", + "t37/strict/global/audit/PREFIX-AND-INVOICE.json": "512e824c274a656f4d4e1e4fdf267d9c38aa1568169716cc833d2d3816d81516" + }, + "status": "PASS_MIXED_JOINT_ENTRANCES_T37_COMPLETE_ADMISSION", + "tested_commit": "2eac245dec27736809eb188ced1dd19d08ebc5e1", + "tested_files": { + "CLAIM.json": "b9db2fbfb004b505ad535e4763915275dc5908feaefef32e65863fa65de061ff", + "DEPENDENCY-PINS.json": "c9330aa6a4226c804060499429cb450820d7142ab17696eb47408b04b410b5bc", + "NOTICE.md": "c7a17a0a35dc249f8ebcc550b3791e214aa65872eab8a6458c5167dd7b948e5b", + "PROOF.md": "b2a38120ddb75e90764d0b81913d60b46cddac4d943cb731bd9c7134f1c236d1", + "README.md": "9c01efbfb9d1913ad6841baca1e1e9cdf289e9919522f6ee02d0bd849e5b8a27", + "SOURCE-PINS.json": "08eed0d6822a1c17053161929591e7ac36b9f91f8fd61190183a6d975948db85", + "audit.py": "1118d483b6abbe7036390c0a1053bcfec2038dbac273fd1bac92a68f38e6d7da", + "build_word.py": "effb72aecfff9958fe078ee89e0d37b85d601eddb19fec4520d7ee6e936edfae", + "common.py": "274274df31f8ef2a47b801d1f30ec226f94bce674fe15586d814ca754f6b7785", + "construct.py": "3dd333b50f4bd1d86956a6df4a334ed746d75d0a9e03dfadbb6724b4356e0cd6", + "controller.py": "d93ed519a0f2316b87b66f44c5ea615f0768a263dbd800815b536d8b7c86b8b7", + "controls.py": "574c55a01cfc34f5b9688cdec5646160cf22b403decee36d18b11f1b07e71f21", + "data/FLOW.json.gz": "e8e6dfa66e083ff8f3617a8441b5b2d766c3c9d9ac62ddc37d99edc24051f79e", + "data/FOUR-RECIPE.json": "384b32c5b0e9b3baa1c7232db884809596d30fc55553094245f7b739b1a43484", + "data/FOUR-WORD.json.gz": "7d09ee1b8b9881313e5fb1f623c0961d59b0c6352a019bc9164a6cad8c58e27f", + "data/MIX.json": "dd86bbb792a5c9f0d7507d55bd2f8392c66716023934b03b24f48ca737204eea", + "data/ORDER.json": "7757df3b54ca5e84c6dba9563b10bc6215c5e289313392b5a4b493179a245c29", + "data/OWNERS.json.gz": "3a56f578b2db5647cf6cb811bc6263c7a802ae3e31e9e672596d43185e4e5c9f", + "data/PLAN.json.gz": "1f1085beb84b516b9a96ceaedc6c3de1c58941fd00b6e70f0d0c686b6546ff79", + "data/SPEC.json": "82b263990afdc5efdc1dfe38ae16d7815004dff8d70f85c28fd8286c31f688bb", + "local_controls.py": "fe3d13491fa7523eedb8d24577ffe4bbd6c36a87b4a7d1178e5795d223bed4b8", + "native.py": "1fb596fbafdb19140f483cd34db2994c571e3b962e33b8ea9b3ddc486e37def6", + "package.py": "cde0b2d66125649ee84440fc0a67f0d91f900fc838fbda069b579422289ea3be", + "prepare.py": "9fe454a5f857ff73c70a5b276bc9e289422b051a4cbbbb51123a91bb2200e6d8", + "price.py": "d45042f4c1fea352349377b43def363cf75a742546a1d5c790ad30da91791803", + "vendor/pr1148/JOINT-WORD.json.gz": "a0622d86259c4163e58cf0677ce575b6039a8ae4c95aa6d8b82a8163cbd42718", + "vendor/pr1148/NOTICE.md": "afbd38d6c8a232ea566c296424a86420f204e6cfaac565c0a147340bda3d3da6", + "vendor/pr1148/PLAN.json.gz": "e963ed64b9970858902b9388bcf1c5f9cc704859ad021ce8bda465a4dcef8310", + "vendor/pr1148/SPEC.json": "55bdb68d5d126c6be0e0acc419bd62301a978afd514f9834ed1e08b1aa4f563e", + "vendor/pr1148/k8-coordinated-owners-NOTICE.md": "442756fc1c5ecfd7b7b7694b53b1ecc70aa525004cd80f7d748ccd7270555189", + "vendor/pr1148/k8-eight-ends-NOTICE.md": "820fa13161f857c221f2c4099dd2985c7ff72249dc7a0221bc00fd0c1b9760e5", + "vendor/pr1148/k8-eight-ends-t16-NOTICE.md": "a9e85b59dde61fbff0b006923b441cbd1419e24fa9802426785bca667437fdc0", + "vendor/pr1148/k8-three-demotions-NOTICE.md": "a0fe85fb2207f0e6831a96deaeefb65afa379c1377a29f0b586f1db4bb4b2137", + "vendor/pr1152/NOTICE.md": "8e556b5407a49d9a07eb1d3de1d3c4d331fcab24d223af8f72b91048dbbac70a", + "vendor/pr1152/construct.py": "ba8303351220727e5602730fabade5b2630eff61dd9b7173a259ffc535ee88c6", + "vendor/pr1152/controls.py": "963fc23e72277fbec0e105917f9cc18595f18a806ac90d9d4a279c1fe1e76033", + "verify.py": "e5c952989344a65b7e63fa112dda4d464979814205644a8ec34e407a0d96be29" + }, + "tested_manifest_sha256": "7fa3814b679f4d74137bb49262da62926cddc0585068fef5ff36514cf591bf84" +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RESULT.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RESULT.json new file mode 100644 index 0000000000..66b084900c --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RESULT.json @@ -0,0 +1 @@ +{"ancestry_sha256":"cd880b2d1c2fb8d9050458bd13f228385c417a95e4d1985607d9f4bb60b5c109","calls":333,"complex_profile":{"1":785550,"2":167498,"3":138028,"4":42458,"48":11374,"5":27306,"8":2664},"controls":{"admission":114,"bit_supplier":12,"controller":23},"entrance_controls":11,"flow_controls":8,"independent_owner_controls":8,"kappa":"1675672695827067/1000000000000000000","kappa_decimal":"0.001675672695827067","native_providers":2,"prefix_bits":775,"price_sha256":"a1dac219b019f8d40d5b434b0e0c25b0d1f097fe5ae13eae45c76869aec4758b","roles":159840,"row_coefficient":17495,"scope":"Finite conditional construction under the retained compiler, whole-call hosting, common-label/mutable-source realization, precision/tape, analytic-transfer and bitH1-H5 hypotheses. No unconditional theorem or kappa=1 claim.","source_pins":{"dependencies":1902,"dependency_manifest_sha256":"c9330aa6a4226c804060499429cb450820d7142ab17696eb47408b04b410b5bc","manifest_sha256":"7fa3814b679f4d74137bb49262da62926cddc0585068fef5ff36514cf591bf84","retained":{"dependencies_sha256":"0160ea2677cc9ceeb0f861dc2774d470a27cbaa58b8fd6c064cf0683d18f3e87","manifest_sha256":"38907d05fddac9be6bf7a7aff47fae43114a055d2259cead5651a08f9b983820","predecessor":{"dependencies_sha256":"7c47d44e8d5c24aa80afc70724e7c0381fec57ef80d085d2ee4611726a0f1254","manifest_sha256":"663a4300ec3abe2278ac6c8e49dd13dc58694c33bfadaa278c5406539e113a31"}}},"stages":[{"exit_code":0,"log_sha256":"71f679ce5a123fb58397fd6852ba64ce3832fd20e81a096bfda9a1cf3237237a","name":"bind","seconds":0.733},{"exit_code":0,"log_sha256":"073c4977498d10a7fc4666c2822da1052cf471ee8fe7b5e70c238a3e28bc5470","name":"emit","seconds":16.986},{"exit_code":0,"log_sha256":"028d1a2486ac64cba41d03320ccdf3bcff24c62a96bbbe629d55b28c02aeba9f","name":"audit","seconds":62.14},{"exit_code":0,"log_sha256":"a106277fad6e24fcb7fe6f1d454ac4c75c5dac993caff32d21c530355eb5b118","name":"invoice","seconds":1.42},{"exit_code":0,"log_sha256":"09963e62284914b6a61aa41e03b9bf62c745b9eae12a4a78bf3de18eec366274","name":"assembly","seconds":0.228},{"exit_code":0,"log_sha256":"40f0c35552fb10f02288ae8d2c6b9f902050fb370c0a19b7b88c977d0d44dab1","name":"admission-controls","seconds":0.469},{"exit_code":0,"log_sha256":"d54d260bf95bd8ae4ab8846314082b93b2e3d8f427eb35376691f2ce543a6b67","name":"bit-controls","seconds":0.443}],"status":"PASS_MIXED_JOINT_ENTRANCES_T37_COMPLETE_ADMISSION","steps":[{"exit_code":0,"log_sha256":"b42175653d0f799f6b9c18b399d7a5eed119a94fce113d84cec3f5c1a5f83bd1","name":"raw-demote3","seconds":0.716},{"exit_code":0,"log_sha256":"5ca9f310247cb601c905ff30597baa4634847395d7826e9ab926a9876ced2514","name":"native-demote3","seconds":102.18},{"exit_code":0,"log_sha256":"4c91cf7a4b56e69368c9a4948146e86a723e2f6bf5806213018fe16888483b8c","name":"raw-demote4","seconds":0.686},{"exit_code":0,"log_sha256":"5ca9f310247cb601c905ff30597baa4634847395d7826e9ab926a9876ced2514","name":"native-demote4","seconds":101.238},{"exit_code":0,"log_sha256":"a4ded37f2994ee242102a5ad1765673bb73be2a9d232132e4a44cd91a3d9525e","name":"entrance-controls","seconds":5.684},{"exit_code":0,"log_sha256":"ec8c339a452fecb7b455305c7faea42110cd69dcbee240e110f825178b0d23b4","name":"owners","seconds":4.093},{"exit_code":0,"log_sha256":"efc9bef89fcac5c95165ca04c186c034a774fc6bd2e1db28f481ddb4e40bea96","name":"parent","seconds":16.211}]} \ No newline at end of file diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/STAGES.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/STAGES.json new file mode 100644 index 0000000000..7a61aea81b --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/STAGES.json @@ -0,0 +1 @@ +[{"exit_code":0,"log_sha256":"b42175653d0f799f6b9c18b399d7a5eed119a94fce113d84cec3f5c1a5f83bd1","name":"raw-demote3","seconds":0.716},{"exit_code":0,"log_sha256":"5ca9f310247cb601c905ff30597baa4634847395d7826e9ab926a9876ced2514","name":"native-demote3","seconds":102.18},{"exit_code":0,"log_sha256":"4c91cf7a4b56e69368c9a4948146e86a723e2f6bf5806213018fe16888483b8c","name":"raw-demote4","seconds":0.686},{"exit_code":0,"log_sha256":"5ca9f310247cb601c905ff30597baa4634847395d7826e9ab926a9876ced2514","name":"native-demote4","seconds":101.238},{"exit_code":0,"log_sha256":"a4ded37f2994ee242102a5ad1765673bb73be2a9d232132e4a44cd91a3d9525e","name":"entrance-controls","seconds":5.684},{"exit_code":0,"log_sha256":"ec8c339a452fecb7b455305c7faea42110cd69dcbee240e110f825178b0d23b4","name":"owners","seconds":4.093},{"exit_code":0,"log_sha256":"efc9bef89fcac5c95165ca04c186c034a774fc6bd2e1db28f481ddb4e40bea96","name":"parent","seconds":16.211}] \ No newline at end of file diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/WORD-RECIPE.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/WORD-RECIPE.json new file mode 100644 index 0000000000..2d7a2cfe11 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/WORD-RECIPE.json @@ -0,0 +1 @@ +{"content_sha256":"7ad38f1773ca482277e2e32eac488f0ac59c2bbb3070097739da286faaaabcf3","recipe_sha256":"384b32c5b0e9b3baa1c7232db884809596d30fc55553094245f7b739b1a43484","source_sha256":"a0622d86259c4163e58cf0677ce575b6039a8ae4c95aa6d8b82a8163cbd42718","status":"PASS_FROZEN_FOUR_ENTRANCE_RECIPE"} \ No newline at end of file diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/local_controls.py b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/local_controls.py new file mode 100644 index 0000000000..e0e5d0e8e4 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/local_controls.py @@ -0,0 +1,26 @@ +"""Semantic rejection controls for the changed local interfaces.""" +import argparse,contextlib,copy,gzip,importlib.util,io,json,tempfile +from pathlib import Path +P=Path(__file__).resolve().parent;ROOT=P.parents[1] +def main(): + assert __debug__ + ap=argparse.ArgumentParser();ap.add_argument('--out',type=Path,required=True);a=ap.parse_args();assert not a.out.exists() + spec=importlib.util.spec_from_file_location('audit',ROOT/'research/gauge44-slots/independent/audit_local.py');A=importlib.util.module_from_spec(spec);spec.loader.exec_module(A) + word=json.loads(gzip.decompress((P/'data/FOUR-WORD.json.gz').read_bytes()));recipe=json.loads((P/'data/FOUR-RECIPE.json').read_text());rejected=[] + with tempfile.TemporaryDirectory(prefix='k8-demotion-controls-') as d: + d=Path(d) + def check(label,w): + f=d/'mutant.json.gz';f.write_bytes(gzip.compress(json.dumps(w).encode(),mtime=0)) + try: + with contextlib.redirect_stdout(io.StringIO()):A.run(f,d/'audit.json',ROOT) + except RuntimeError as e:rejected.append(dict(control=label,reason=str(e)));return + raise AssertionError('control admitted: '+label) + for h,old,new in recipe['start_extra']: + w=copy.deepcopy(word);w['start_extra'][h]=old;check('restore-promoted-start-'+h,w) + w=copy.deepcopy(word);gate=next(e for e in w['A']+w['B'] if int(h) in A.registers(e));gate[-1]=gate[-1][:-1];check('first-frame-too-small-'+h,w) + w=copy.deepcopy(word);w['report']['local_profile']['1']+=1;check('false-paid-profile',w) + w=copy.deepcopy(word);w['B'][next(i for i,e in enumerate(w['B']) if e[0]=='add' and 112<=e[1]<224)][3]+=1;check('wrong-target-coefficient',w) + w=copy.deepcopy(word);w['report']['width_inventory']['4']+=1;check('false-helper-inventory',w) + assert len(rejected)==11 + a.out.write_text(json.dumps(dict(status='PASS_FOUR_ENTRANCE_SEMANTIC_CONTROLS',rejected=rejected),indent=2)+'\n');print('PASS',len(rejected),'demotion controls') +if __name__=='__main__':main() diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/native.py b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/native.py new file mode 100644 index 0000000000..fb9f676e5d --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/native.py @@ -0,0 +1,10 @@ +import os,sys,time,json,subprocess +from pathlib import Path +ROOT=Path(__file__).resolve().parents[2];work=Path(sys.argv[2]);work.mkdir(parents=True,exist_ok=False);raw=Path(sys.argv[1]).resolve() +src=ROOT/'research/complex-k492-owner-repair/vendor/multicold';up=ROOT/'research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code';base=src/'vendor/pr558';par=base/'vendor/pr552';local=work/'local' +env=dict(os.environ,PYTHONDONTWRITEBYTECODE='1',PYTHONUTF8='1',PYTHONINTMAXSTRDIGITS='0',MULTICOLD_SOURCE=str(src),GAIN_PR564_SOURCE=str(src),CPLUS_INCLUDE_PATH=os.environ.get('CPLUS_INCLUDE_PATH','/opt/homebrew/include'));env.pop('PYTHONOPTIMIZE',None) +steps=[] +for label,script,args in [('native',up/'hpe_audit_and_transport.py',['--raw',raw,'--routing',par/'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz','--out',local]),('ledgers',up/'hpe_emit_local.py',[local]),('local-replay',up/'hpe_audit_local.py',[local]),('wrappers',up/'hpe_adapters_local.py',[local/'CANONICAL-WORD.json.gz',local/'RESIDUAL-ADAPTERS.json',local/'WRAPPER-CHECKS.json']),('phases',base/'code/phases_full.py',[local,par/'complex-global/vendor531/vendor/clifford'])]: + t=time.monotonic() + with (work/(label+'.log')).open('w') as f:p=subprocess.run([sys.executable,'-B',str(src/'code/run_portable.py'),str(script),*map(str,args)],stdout=f,stderr=subprocess.STDOUT,cwd=ROOT,env=env) + steps.append(dict(step=label,exit_code=p.returncode,seconds=time.monotonic()-t));(work/'STEPS.json').write_text(json.dumps(steps,indent=2)+'\n');assert p.returncode==0,(label,(work/(label+'.log')).read_text()[-4000:]);print('PASS',label,flush=True) diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/package.py b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/package.py new file mode 100644 index 0000000000..9e911fe811 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/package.py @@ -0,0 +1,15 @@ +"""Pin this package and the retained source closure; no network is used.""" +from pathlib import Path +from common import P,ROOT,read,sha,load + +def validate(): + manifest=read(P/'MANIFEST.json') + actual={str(p.relative_to(P)):sha(p)for p in P.rglob('*')if p.is_file() and p.name!='MANIFEST.json' and '__pycache__'not in p.parts} + assert actual==manifest,'Package manifest mismatch' + dependencies=read(P/'DEPENDENCY-PINS.json') + for rel,pin in dependencies.items(): + q=(ROOT/rel).resolve() + assert not Path(rel).is_absolute() and q.is_relative_to(ROOT.resolve()) + assert sha(q)==pin,'Changed retained source: '+rel + retained=load(ROOT/'research/complex-t37-owners/package.py','retained_package_validation').validate() + return dict(manifest_sha256=sha(P/'MANIFEST.json'),dependency_manifest_sha256=sha(P/'DEPENDENCY-PINS.json'),dependencies=len(dependencies),retained=retained) diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/prepare.py b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/prepare.py new file mode 100644 index 0000000000..596920d5ba --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/prepare.py @@ -0,0 +1,84 @@ +"""Reuse PR942's explicit source adapters and build the five-bank parent. + +The frozen order, owner map, and PR1148 supplier metadata are replaced. +The PR942 finite invoice still charges its 1024-bit prefix reserve. +""" +import copy,os,shutil +from common import P,ROOT,read,dump,load,sha,identity + +def prepare(work,baseline,providers): + t37=ROOT/'research/complex-t37-owners' + t21=ROOT/'research/complex-t21-owners' + os.environ.update(T37_WORK=str(work),T37_BASELINE=str(baseline)) + old=load(t37/'prepare.py','retained_t37_preparation') + runtime=work/'runtime';adapted=work/'adapted';adapted.mkdir() + load(t21/'source_adapters.py','retained_t21_adapters').materialize(runtime) + (runtime/'ADAPTERS.json').rename(runtime/'T21-INTERMEDIATE-ADAPTERS.json') + receipts={} + for name,record in old.expected_adaptations().items(): + target=runtime/'code'/name.split('/',1)[1]if name.startswith('runtime/')else adapted/name + text=record['text'];extra=[] + if name=='runtime/assemble.py': + for before,after in [ + ('the gauge44-barch U8 local word and all 72 cold helper ends','the mixed joint-entrance three- and four-demotion k8 local words'), + ('explicit all333 whole-owner dispatch with a T21 plus T16 eight-role trade','explicit 333-call wave dispatch with frozen integer pattern flows'), + ('This is a new T37 composition of the PR870 U8 and PR589 suppliers.','This is a new T37 composition of the mixed joint-entrance three- and four-demotion k8 and PR589 suppliers.')]: + assert text.count(before)==1,(before,text.count(before));text=text.replace(before,after);extra.append([before,after,1]) + if name=='runtime/freeze_spec.py': + for before,after in [("spec['expected']['assembly_controls_rejected'] = 69","spec['expected']['assembly_controls_rejected'] = 114"), + ("spec['expected']['provider_counts'] = {'gauge44':333}","spec['expected']['provider_counts'] = dict(__import__('collections').Counter(pid for s,r,pid in spec['dispatch']))"), + ("spec['expected']['mutations_rejected'] = 15","spec['expected']['mutations_rejected'] = 23")]: + assert text.count(before)==1 + text=text.replace(before,after);extra.append([before,after,1]) + target.write_text(text,encoding='utf-8',newline='\n') + receipts[name]=dict(source_sha256=sha(record['source']),generated_sha256=sha(target),edits=record.get('edits',[]),description_edits=extra) + dump(work/'ADAPTATIONS.json',receipts) + source=read(baseline/'global/base/split-centres/GLOBAL-TEMPLATE.json.gz') + builder=load(adapted/'build_parent.py','retained_t37_parent_lift');parent=builder.lift(source) + plan=read(P/'vendor/pr1148/PLAN.json.gz');order=read(P/'data/ORDER.json');owners=read(P/'data/OWNERS.json.gz') + windows_mod=load(t21/'vendor/pr870/t16/build_parent.py','retained_physical_windows') + windows,schedule=windows_mod.actual_windows(parent,order) + mix=read(P/'data/MIX.json') + assert [[s,r]for pid,s,r in mix]==order + identities=load(ROOT/'research/complex-t21-owners/vendor/pr870/code/generated_identity.py','mixed_artifact_identities') + plan['provider_registry']={};plan['provider_calls']=[];plan['per_call_widths']=[] + for pid,directory in sorted(providers.items()): + word=read(directory/'CANONICAL-WORD.json.gz');checks=read(directory/'LOCAL-CHECKS.json') + widths=[len(word['frames'][word['final'][h]])-len(word['frames'][word['start'][h]])for h in range(224,704)] + plan['provider_registry'][pid]=dict(directory='providers/'+pid,artifact_sha256={n:sha(directory/n)for n in identities.FILES}, + ports=word['ports'],centers=word['centers'],widths=widths,actual_paid_profile=word['local_profile'], + orientation_program_sha256={o:checks[o]['sha256']for o in ('forward','backward')},artifact_semantic_sha256=identities.artifact_identities(directory)) + for time,(pid,stage,replica)in enumerate(mix): + desc=plan['provider_registry'][pid];orientation='forward'if stage%2==0 else'backward' + plan['provider_calls'].append(dict(time=time,stage=stage,replica=replica,provider=pid,orientation=orientation,local_program_sha256=desc['orientation_program_sha256'][orientation])) + plan['per_call_widths'].append(dict(stage=stage,replica=replica,widths=desc['widths'])) + claim=read(P/'CLAIM.json') + plan.update(T=37,live=33152,deficit=11840,order=order,windows=windows,profile=claim['complex_profile'], + status='FROZEN_T37_MIXED_DEMOTIONS_WHOLE_OWNER_NOMINATION',mode='gauge44-three-demotions-t37-wave', + solver_status='Frozen integer pattern flow, reconstructed by regular bipartite matching; no optimizer runs', + assignment_sha256=sha(P/'data/OWNERS.json.gz'),assignment_content_sha256=identity(owners), + replica_lift=dict(groups=[8,8,8,8,5],source_replicas=8,replicas=37,parent_template_content_sha256=identity(parent), + owners_file_sha256=sha(P/'data/OWNERS.json.gz'),schedule_content_sha256=identity(schedule),window_semantics='Strict physical source-event intervals, including bridges')) + assert len(owners)==159840 and sum(int(r)*n for r,n in plan['profile'].items())==73*33152-11840 + for z in owners: + assert order[z['time']]==[z['stage'],z['replica']] + assert z['time']in windows[f"{z['owner_replica']},{z['child']}"][1] + frozen=read(P/'data/PLAN.json.gz') + for pid,desc in plan['provider_registry'].items(): + # Regenerated compression and timing are rebound by the unchanged + # native binder. All proof-relevant semantic identities must agree. + assert desc['artifact_semantic_sha256']==frozen['provider_registry'][pid]['artifact_semantic_sha256'] + desc['artifact_sha256']=frozen['provider_registry'][pid]['artifact_sha256'] + assert plan==frozen,'Derived geometry/dispatch/provider plan differs from frozen nomination' + lift=work/'lift';lift.mkdir();dump(lift/'GLOBAL-TEMPLATE.json.gz',parent);dump(lift/'PLAN.json',plan) + parentdir=work/'parent';shutil.copytree(baseline/'parent558',parentdir) + shutil.copyfile(lift/'GLOBAL-TEMPLATE.json.gz',parentdir/'complex-global/base/split-centres/GLOBAL-TEMPLATE.json.gz') + (runtime/'data').mkdir(exist_ok=True) + spec=read(P/'data/SPEC.json') + assert spec['call_order']==order and spec['dispatch']==[[s,r,pid]for pid,s,r in mix] + assert spec['data']=={'owners_sha256':sha(P/'data/OWNERS.json.gz'),'plan_sha256':sha(lift/'PLAN.json')} + pivot=ROOT/'research/gauge44-slots/construction/leaver/PIVOT-SWAP-k8.json' + assert sha(pivot)==spec['pivot_swap']['sha256'] + spec['pivot_swap']['recipe']=str(pivot.resolve()) + dump(runtime/'data/SPEC.json',spec) + return plan diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/price.py b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/price.py new file mode 100644 index 0000000000..0903bea57b --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/price.py @@ -0,0 +1,32 @@ +"""Independently recount the dispatch-weighted profile and certify its price.""" +from collections import Counter +from fractions import Fraction as Q +from common import P,ROOT,read,dump,load,sha + +def price(providers,out): + d=ROOT/'research/complex-k492-owner-repair/vendor/multicold/engines' + M=load(d/'moment.py','mixed_mercator');B=load(d/'base_two_moment.py','mixed_atanh') + A=load(d/'outer.py','mixed_outer') + O=load(ROOT/'research/complex-t21-owners/vendor/pr870/independent/price_profile_t16.py','mixed_outer_driver') + mix=read(P/'data/MIX.json');claim=read(P/'CLAIM.json');profile=Counter() + counts=Counter(pid for pid,s,r in mix) + assert counts==claim['provider_calls']=={'demote3':125,'demote4':208} + for pid,count in counts.items(): + word=read(providers[pid]/'CANONICAL-WORD.json.gz') + profile.update({int(r):count*n for r,n in word['local_profile'].items()}) + profile.update({int(r):n for r,n in claim['idle'].items()}) + assert {str(r):n for r,n in profile.items()}==claim['complex_profile'] + assert 73*33152-sum(r*n for r,n in profile.items())==11840 + root=M.certify(profile,73,33152);lo,hi=Q(root['lower']),Q(root['upper']) + assert lo==Q(claim['complex_lower']) + signs={} + for name,z in [('lower',lo),('upper',hi)]: + first=M.moment(profile,73,33152,z);second=B.moment(73,33152,list(profile.items()),z) + assert(first[1]<1 and second[1]<1)if name=='lower'else(first[0]>1 and second[0]>1) + signs[name]={'point':str(z),'mercator':[str(v-1)for v in first],'atanh':[str(v-1)for v in second]} + outer=[O.outer47(Q(claim['bit_lower']),z,A)for z in (lo,hi)] + assert outer[0]['kappa']==outer[1]['kappa']==claim['kappa'] + result=dict(status='PASS_TWO_ENGINE_MIXED_PROFILE_AND_OUTER47',kappa=claim['kappa'],kappa_decimal=claim['kappa_decimal'], + root=root,signs=signs,outer=outer,profile=dict(sorted(profile.items())),provider_call_counts=dict(counts), + scope='Arithmetic for the nominated mixed profile; geometry and full invoice require separate admission. No optimality claim.') + dump(out,result);return result diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/JOINT-WORD.json.gz b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/JOINT-WORD.json.gz new file mode 100644 index 0000000000..3dab3a16bb Binary files /dev/null and b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/JOINT-WORD.json.gz differ diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/NOTICE.md b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/NOTICE.md new file mode 100644 index 0000000000..af0170afc2 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/NOTICE.md @@ -0,0 +1,8 @@ +Apache-2.0. Prepared for Thomas DiFiore with substantial OpenAI Codex assistance. + +* The preceding `k8-coordinated-owners`, `k8-eight-ends`, `k8-eight-ends-t16`, and `k8-three-demotions` packages supply the frozen constructions, owner slots, drivers, searches, and all retained source notices. +* PR1111 by seslly / shipstuff, commit `381831ea554ea983e16224dabed8921b7d0ffdbc`, introduced the group-635 entrance-demotion lead. Its public PR description was consulted; no code or payload from that PR is consumed. The group-635 idea is not original to this package. This package composes it with two other groups, the eight-endpoint word, a joint frame refit, and its preceding T16 assignment. Credit also PR664's promotion mechanism and descendants. +* The frame model derives from PR864 (navinor / Claude), as adapted and pinned in `../k8-eight-ends`. The new joint searches treat entrance labels as variables in the same frame graph and retain the scalar/cone constraints. Floating solver output is nomination data only. +* Retain PR1018 and Rohan Arun's PR987 scalar-word lineage, PR1030's endpoint lead, Hao Yan / FanPUYen's PR858 T16 controller and independent checker, PR870/1074 admission work, PR942 by jon314159 and chafreaky's PR795/890 signed prices, and PR589's bit supplier. Their full dependency notices and source hashes remain in the preceding packages. +* All global admission engines are unchanged. The exact bound adapts the preceding signed-dual proof with the new pinned local profile, using the same two rational arithmetic engines. +* No claim of unconditional theorem certification, full Lean proof, or exact optimality of the floating discovery searches is made. diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/PLAN.json.gz b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/PLAN.json.gz new file mode 100644 index 0000000000..c7d39df72e Binary files /dev/null and b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/PLAN.json.gz differ diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/SPEC.json b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/SPEC.json new file mode 100644 index 0000000000..9aeea5c043 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/SPEC.json @@ -0,0 +1,1971 @@ +{ + "schema": "witness-spec/1", + "name": "k8-joint-entrances", + "data": { + "plan_sha256": "a986515b256f35c1d8d675998fc8d35182c9340bd7149d166337d1b3ebba4de4", + "owners_sha256": "7755af4108f066cf1eb13dbaac0a0fbb97a2852ffa7403588d2b5218c81101bf" + }, + "dispatch": [ + [ + 0, + 0, + "gauge44" + ], + [ + 0, + 8, + "gauge44" + ], + [ + 0, + 1, + "gauge44" + ], + [ + 0, + 9, + "gauge44" + ], + [ + 1, + 0, + "gauge44" + ], + [ + 1, + 8, + "gauge44" + ], + [ + 0, + 2, + "gauge44" + ], + [ + 0, + 10, + "gauge44" + ], + [ + 1, + 1, + "gauge44" + ], + [ + 1, + 9, + "gauge44" + ], + [ + 2, + 0, + "gauge44" + ], + [ + 2, + 8, + "gauge44" + ], + [ + 0, + 3, + "gauge44" + ], + [ + 0, + 11, + "gauge44" + ], + [ + 1, + 2, + "gauge44" + ], + [ + 1, + 10, + "gauge44" + ], + [ + 2, + 1, + "gauge44" + ], + [ + 2, + 9, + "gauge44" + ], + [ + 3, + 0, + "gauge44" + ], + [ + 3, + 8, + "gauge44" + ], + [ + 0, + 4, + "gauge44" + ], + [ + 0, + 12, + "gauge44" + ], + [ + 1, + 3, + "gauge44" + ], + [ + 1, + 11, + "gauge44" + ], + [ + 2, + 2, + "gauge44" + ], + [ + 2, + 10, + "gauge44" + ], + [ + 3, + 1, + "gauge44" + ], + [ + 3, + 9, + "gauge44" + ], + [ + 4, + 0, + "gauge44" + ], + [ + 4, + 8, + "gauge44" + ], + [ + 0, + 5, + "gauge44" + ], + [ + 0, + 13, + "gauge44" + ], + [ + 1, + 4, + "gauge44" + ], + [ + 1, + 12, + "gauge44" + ], + [ + 2, + 3, + "gauge44" + ], + [ + 2, + 11, + "gauge44" + ], + [ + 3, + 2, + "gauge44" + ], + [ + 3, + 10, + "gauge44" + ], + [ + 4, + 1, + "gauge44" + ], + [ + 4, + 9, + "gauge44" + ], + [ + 5, + 0, + "gauge44" + ], + [ + 5, + 8, + "gauge44" + ], + [ + 0, + 6, + "gauge44" + ], + [ + 0, + 14, + "gauge44" + ], + [ + 1, + 5, + "gauge44" + ], + [ + 1, + 13, + "gauge44" + ], + [ + 2, + 4, + "gauge44" + ], + [ + 2, + 12, + "gauge44" + ], + [ + 3, + 3, + "gauge44" + ], + [ + 3, + 11, + "gauge44" + ], + [ + 4, + 2, + "gauge44" + ], + [ + 4, + 10, + "gauge44" + ], + [ + 5, + 1, + "gauge44" + ], + [ + 5, + 9, + "gauge44" + ], + [ + 0, + 7, + "gauge44" + ], + [ + 0, + 15, + "gauge44" + ], + [ + 6, + 0, + "gauge44" + ], + [ + 6, + 8, + "gauge44" + ], + [ + 1, + 6, + "gauge44" + ], + [ + 1, + 14, + "gauge44" + ], + [ + 2, + 5, + "gauge44" + ], + [ + 2, + 13, + "gauge44" + ], + [ + 3, + 4, + "gauge44" + ], + [ + 3, + 12, + "gauge44" + ], + [ + 4, + 3, + "gauge44" + ], + [ + 4, + 11, + "gauge44" + ], + [ + 5, + 2, + "gauge44" + ], + [ + 5, + 10, + "gauge44" + ], + [ + 6, + 1, + "gauge44" + ], + [ + 6, + 9, + "gauge44" + ], + [ + 1, + 7, + "gauge44" + ], + [ + 1, + 15, + "gauge44" + ], + [ + 7, + 0, + "gauge44" + ], + [ + 7, + 8, + "gauge44" + ], + [ + 2, + 6, + "gauge44" + ], + [ + 2, + 14, + "gauge44" + ], + [ + 3, + 5, + "gauge44" + ], + [ + 3, + 13, + "gauge44" + ], + [ + 4, + 4, + "gauge44" + ], + [ + 4, + 12, + "gauge44" + ], + [ + 5, + 3, + "gauge44" + ], + [ + 5, + 11, + "gauge44" + ], + [ + 6, + 2, + "gauge44" + ], + [ + 6, + 10, + "gauge44" + ], + [ + 7, + 1, + "gauge44" + ], + [ + 7, + 9, + "gauge44" + ], + [ + 2, + 7, + "gauge44" + ], + [ + 2, + 15, + "gauge44" + ], + [ + 8, + 0, + "gauge44" + ], + [ + 8, + 8, + "gauge44" + ], + [ + 3, + 6, + "gauge44" + ], + [ + 3, + 14, + "gauge44" + ], + [ + 4, + 5, + "gauge44" + ], + [ + 4, + 13, + "gauge44" + ], + [ + 5, + 4, + "gauge44" + ], + [ + 5, + 12, + "gauge44" + ], + [ + 6, + 3, + "gauge44" + ], + [ + 6, + 11, + "gauge44" + ], + [ + 7, + 2, + "gauge44" + ], + [ + 7, + 10, + "gauge44" + ], + [ + 8, + 1, + "gauge44" + ], + [ + 8, + 9, + "gauge44" + ], + [ + 3, + 7, + "gauge44" + ], + [ + 3, + 15, + "gauge44" + ], + [ + 4, + 6, + "gauge44" + ], + [ + 4, + 14, + "gauge44" + ], + [ + 5, + 5, + "gauge44" + ], + [ + 5, + 13, + "gauge44" + ], + [ + 6, + 4, + "gauge44" + ], + [ + 6, + 12, + "gauge44" + ], + [ + 7, + 3, + "gauge44" + ], + [ + 7, + 11, + "gauge44" + ], + [ + 8, + 2, + "gauge44" + ], + [ + 8, + 10, + "gauge44" + ], + [ + 4, + 7, + "gauge44" + ], + [ + 4, + 15, + "gauge44" + ], + [ + 5, + 6, + "gauge44" + ], + [ + 5, + 14, + "gauge44" + ], + [ + 6, + 5, + "gauge44" + ], + [ + 6, + 13, + "gauge44" + ], + [ + 7, + 4, + "gauge44" + ], + [ + 7, + 12, + "gauge44" + ], + [ + 8, + 3, + "gauge44" + ], + [ + 8, + 11, + "gauge44" + ], + [ + 5, + 7, + "gauge44" + ], + [ + 5, + 15, + "gauge44" + ], + [ + 6, + 6, + "gauge44" + ], + [ + 6, + 14, + "gauge44" + ], + [ + 7, + 5, + "gauge44" + ], + [ + 7, + 13, + "gauge44" + ], + [ + 8, + 4, + "gauge44" + ], + [ + 8, + 12, + "gauge44" + ], + [ + 6, + 7, + "gauge44" + ], + [ + 6, + 15, + "gauge44" + ], + [ + 7, + 6, + "gauge44" + ], + [ + 7, + 14, + "gauge44" + ], + [ + 8, + 5, + "gauge44" + ], + [ + 8, + 13, + "gauge44" + ], + [ + 7, + 7, + "gauge44" + ], + [ + 7, + 15, + "gauge44" + ], + [ + 8, + 6, + "gauge44" + ], + [ + 8, + 14, + "gauge44" + ], + [ + 8, + 7, + "gauge44" + ], + [ + 8, + 15, + "gauge44" + ] + ], + "call_order": [ + [ + 0, + 0 + ], + [ + 0, + 8 + ], + [ + 0, + 1 + ], + [ + 0, + 9 + ], + [ + 1, + 0 + ], + [ + 1, + 8 + ], + [ + 0, + 2 + ], + [ + 0, + 10 + ], + [ + 1, + 1 + ], + [ + 1, + 9 + ], + [ + 2, + 0 + ], + [ + 2, + 8 + ], + [ + 0, + 3 + ], + [ + 0, + 11 + ], + [ + 1, + 2 + ], + [ + 1, + 10 + ], + [ + 2, + 1 + ], + [ + 2, + 9 + ], + [ + 3, + 0 + ], + [ + 3, + 8 + ], + [ + 0, + 4 + ], + [ + 0, + 12 + ], + [ + 1, + 3 + ], + [ + 1, + 11 + ], + [ + 2, + 2 + ], + [ + 2, + 10 + ], + [ + 3, + 1 + ], + [ + 3, + 9 + ], + [ + 4, + 0 + ], + [ + 4, + 8 + ], + [ + 0, + 5 + ], + [ + 0, + 13 + ], + [ + 1, + 4 + ], + [ + 1, + 12 + ], + [ + 2, + 3 + ], + [ + 2, + 11 + ], + [ + 3, + 2 + ], + [ + 3, + 10 + ], + [ + 4, + 1 + ], + [ + 4, + 9 + ], + [ + 5, + 0 + ], + [ + 5, + 8 + ], + [ + 0, + 6 + ], + [ + 0, + 14 + ], + [ + 1, + 5 + ], + [ + 1, + 13 + ], + [ + 2, + 4 + ], + [ + 2, + 12 + ], + [ + 3, + 3 + ], + [ + 3, + 11 + ], + [ + 4, + 2 + ], + [ + 4, + 10 + ], + [ + 5, + 1 + ], + [ + 5, + 9 + ], + [ + 0, + 7 + ], + [ + 0, + 15 + ], + [ + 6, + 0 + ], + [ + 6, + 8 + ], + [ + 1, + 6 + ], + [ + 1, + 14 + ], + [ + 2, + 5 + ], + [ + 2, + 13 + ], + [ + 3, + 4 + ], + [ + 3, + 12 + ], + [ + 4, + 3 + ], + [ + 4, + 11 + ], + [ + 5, + 2 + ], + [ + 5, + 10 + ], + [ + 6, + 1 + ], + [ + 6, + 9 + ], + [ + 1, + 7 + ], + [ + 1, + 15 + ], + [ + 7, + 0 + ], + [ + 7, + 8 + ], + [ + 2, + 6 + ], + [ + 2, + 14 + ], + [ + 3, + 5 + ], + [ + 3, + 13 + ], + [ + 4, + 4 + ], + [ + 4, + 12 + ], + [ + 5, + 3 + ], + [ + 5, + 11 + ], + [ + 6, + 2 + ], + [ + 6, + 10 + ], + [ + 7, + 1 + ], + [ + 7, + 9 + ], + [ + 2, + 7 + ], + [ + 2, + 15 + ], + [ + 8, + 0 + ], + [ + 8, + 8 + ], + [ + 3, + 6 + ], + [ + 3, + 14 + ], + [ + 4, + 5 + ], + [ + 4, + 13 + ], + [ + 5, + 4 + ], + [ + 5, + 12 + ], + [ + 6, + 3 + ], + [ + 6, + 11 + ], + [ + 7, + 2 + ], + [ + 7, + 10 + ], + [ + 8, + 1 + ], + [ + 8, + 9 + ], + [ + 3, + 7 + ], + [ + 3, + 15 + ], + [ + 4, + 6 + ], + [ + 4, + 14 + ], + [ + 5, + 5 + ], + [ + 5, + 13 + ], + [ + 6, + 4 + ], + [ + 6, + 12 + ], + [ + 7, + 3 + ], + [ + 7, + 11 + ], + [ + 8, + 2 + ], + [ + 8, + 10 + ], + [ + 4, + 7 + ], + [ + 4, + 15 + ], + [ + 5, + 6 + ], + [ + 5, + 14 + ], + [ + 6, + 5 + ], + [ + 6, + 13 + ], + [ + 7, + 4 + ], + [ + 7, + 12 + ], + [ + 8, + 3 + ], + [ + 8, + 11 + ], + [ + 5, + 7 + ], + [ + 5, + 15 + ], + [ + 6, + 6 + ], + [ + 6, + 14 + ], + [ + 7, + 5 + ], + [ + 7, + 13 + ], + [ + 8, + 4 + ], + [ + 8, + 12 + ], + [ + 6, + 7 + ], + [ + 6, + 15 + ], + [ + 7, + 6 + ], + [ + 7, + 14 + ], + [ + 8, + 5 + ], + [ + 8, + 13 + ], + [ + 7, + 7 + ], + [ + 7, + 15 + ], + [ + 8, + 6 + ], + [ + 8, + 14 + ], + [ + 8, + 7 + ], + [ + 8, + 15 + ] + ], + "width_spot_helpers": [ + 258, + 270, + 282, + 294 + ], + "providers": { + "gauge44": { + "inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + }, + "native_negative_controls": 25, + "phase_edges": 2900, + "expected_profile": { + "1": 2364, + "2": 498, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "9885ff29b54f8d2de67d58d68e40a48b7897530d565f932fe63534caa3b405c9", + "LOCAL-PROGRAMS.json.gz": "1c81387e144fe92eadc6296d44d3fd80e6f9573e0269cadaf591f75de0661eed", + "LOCAL-CHECKS.json": "36c5685b24037dcf3767fc7d8d48c308da50f754fc50a05d760e399dd275b045", + "INDEPENDENT-LOCAL-REPLAY.json": "4ffe4b6ea3a1e027ef67a519e92253286d5cb794155eea1d1bef940521521a5f", + "CLIFFORD-RECIPES.json": "c58d2bd3492a031820aec434661c9297fa41d810ad661c651f139e9b592c6a4a", + "CLIFFORD-REVIEW.json": "3ca5c207027b17a305206541c9792b73cd6e4c92dbb7ada0cb765882af9f4f9e", + "RESIDUAL-ADAPTERS.json": "d77ab0c3689e5c10f7129487a85d1497dd721e31138372b4a35913691fe5bc69" + }, + "entering": 192, + "entrance": 372, + "width_digest": "3e2624964db4f881ad1404d94ec595b3d1baba07bef90cf9037d802cc6299d11", + "program_hashes": { + "backward": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "forward": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e" + }, + "artifacts": { + "LOCAL-CHECKS.json": "654ca95a7f9af260d088f29c1791686f54f66cbbe735b9ea2fd5114b377727aa", + "CLIFFORD-RECIPES.json": "c58d2bd3492a031820aec434661c9297fa41d810ad661c651f139e9b592c6a4a", + "RESIDUAL-ADAPTERS.json": "c099207d60ab49392bcadcaf7e9cbcfe01178e732f14e2591a8c3463162460d7" + }, + "complete_contract": { + "local": { + "backward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98365, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98333, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 372, + "terminal_codimension": 214, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 387056, + "local_primitive_bound": 10038040553630, + "compiler": 25934336, + "children": 3494, + "paid_profile": { + "1": 2364, + "2": 498, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "forward": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "9885ff29b54f8d2de67d58d68e40a48b7897530d565f932fe63534caa3b405c9", + "LOCAL-PROGRAMS.json.gz": "1c81387e144fe92eadc6296d44d3fd80e6f9573e0269cadaf591f75de0661eed", + "LOCAL-CHECKS.json": "36c5685b24037dcf3767fc7d8d48c308da50f754fc50a05d760e399dd275b045", + "INDEPENDENT-LOCAL-REPLAY.json": "4ffe4b6ea3a1e027ef67a519e92253286d5cb794155eea1d1bef940521521a5f", + "CLIFFORD-RECIPES.json": "c58d2bd3492a031820aec434661c9297fa41d810ad661c651f139e9b592c6a4a", + "CLIFFORD-REVIEW.json": "3ca5c207027b17a305206541c9792b73cd6e4c92dbb7ada0cb765882af9f4f9e", + "RESIDUAL-ADAPTERS.json": "d77ab0c3689e5c10f7129487a85d1497dd721e31138372b4a35913691fe5bc69" + } + }, + "semantic_phase_sha256": "3ca5c207027b17a305206541c9792b73cd6e4c92dbb7ada0cb765882af9f4f9e", + "expected_local": { + "forward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "coefficient_work_primitive_count": 98333 + }, + "backward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "coefficient_work_primitive_count": 98365 + } + }, + "wrappers": 240 + } + }, + "expected": { + "gain_baseline_kappa": "0.001674622497877364", + "hosted_residuals": 69120, + "rank_mass": 1041408, + "actual_73column_sigmas": 10580, + "cross_replica_helper_roles": 59636, + "idle_remainders": 5279, + "idle_remainder_profile": { + "1": 360, + "24": 1, + "48": 4918 + }, + "global_profile": { + "1": 340776, + "2": 71712, + "3": 59328, + "4": 18720, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "live": 14336, + "physical": 14826, + "conservative_kappa_decimal": "0.001675560944680149", + "kappa_decimal": "0.001675560947524449", + "complex_lower": "41959329101337756331/25000000000000000000000", + "conservative_complex_lower": "1678373161199654598379/1000000000000000000000000", + "kappa": "1675560947524449/1000000000000000000", + "assembly_controls_rejected": 69, + "provider_counts": { + "gauge44": 144 + }, + "mutations_rejected": 15 + }, + "pivot_swap": { + "recipe": "construction/leaver/PIVOT-SWAP-k8.json", + "sha256": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb" + } +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-coordinated-owners-NOTICE.md b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-coordinated-owners-NOTICE.md new file mode 100644 index 0000000000..281e6404ca --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-coordinated-owners-NOTICE.md @@ -0,0 +1,41 @@ +# Attribution and scope + +Prepared for Thomas DiFiore with OpenAI Codex assistance, October 13, 2026. +Licensed under the repository's Apache-2.0 license. + +This contribution changes the whole-helper ownership map for the circuit from +Jeremy Kothe's PR1018 (`eac7547cb191f875d5f5ea5f9bbb1d2b8c51c4ef`). The +eight no-helper mutable-source cells, R480 circuit, frame optimization and +construction controls come from Jeremy Kothe and the credited contributors to +PR1005. The seven additional triangle slots come from PR1018 using Rohan Arun's +PR987 search and NewBArch's PR869 builder. None of those circuit improvements +are claimed as new here. + +The starting ownership map is G44Pack3's K8c8, descended from chafreaky's PR685 +and PR741 maps through G44Pack's relabeling and width changes. This package adds +coordinated complete-call reassignment by grouped integer packing, with +explicitly serialized owners and an unchanged independent admission verifier. + +The separate all-replica upper bound adapts jon314159's PR942 arithmetic +implementation and proof, using chafreaky's PR795/890 signed-dual prices. Its +new contribution is the application to PR1018's changed local profile and +helper inventory. The two rational numerical engines retain their upstream +authorship. `independent/UPSTREAM.json` records the source file and hash. + +All construction, controller, spectator, native phase, finite invoice, exact +moment and outer-transfer implementations retain their upstream authorship +and notices. The runtime copies PR1018's verifier files byte for byte. It +changes the owner nomination, its derived PLAN fields, and expected-value SPEC. +The original packages remain unchanged. + +The bit supplier is the unchanged PR589/PR555 punctured-star construction; +this run reprices its pinned profile and reruns its admission controls. It does +not rebuild the bit circuit. Earlier complex ancestry is inherited through the +pinned PR741 initial word and PR622/PR558 reviewed parent artifacts. The run +freshly rebuilds the k8 leaver circuit, all later layers, and the seven slots. + +This is a conditional finite construction, not an unconditional integer +multiplication theorem. All-size compilation, common-label and mutable-source +realization, whole-call hosting, precision/tape, analytic transfer and bit H1–H5 +assumptions remain. No independent human peer review is claimed. Optimizer +outputs and floating relaxations are discovery evidence, not admission proofs. diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-eight-ends-NOTICE.md b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-eight-ends-NOTICE.md new file mode 100644 index 0000000000..a756f9da58 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-eight-ends-NOTICE.md @@ -0,0 +1,9 @@ +Apache-2.0. Prepared for Thomas DiFiore with OpenAI Codex assistance. + +This package composes earlier community constructions and retains their mathematical assumptions. It claims the displayed finite composition and its checks, not original authorship of E8, the mutable-source k8 circuit, the endpoint technique, or the admission machinery. + +* CrocSwap/integer-mult-bounds PR1018 (`research/gauge44-slots`) supplies the R480 k8 + seven-slot circuit, all native scalar/phase checkers, and strict global admission. +* PR1030, commit d71857cd0ae7824e935aac17327e4ec27f66322b, supplies the rank-seven endpoint-pair lead. Its U8 helpers 588/589 correspond to k8 helpers 574/575. The new composition also uses 572/573, 580/581, and 582/583, with all four reductions refitted together. +* `discovery/frame_model.py` adapts the complete frame model from PR864 (navinor / Claude), retained in the earlier local research run. The adaptation permits a new initial frame assignment after changing the scalar graph or endpoint constraints. It is nomination code; unchanged independent native checks decide admission. +* `research/k8-coordinated-owners` supplies the initial whole-owner map and coordinated complete-call search. Earlier owner machinery and dual prices originate with chafreaky, G44Pack, and jon314159; see that package's NOTICE.md. +* All analytic, compiler, boundary, common-label, hosting, and bit-supplier assumptions remain those of the upstream source chain. diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-eight-ends-t16-NOTICE.md b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-eight-ends-t16-NOTICE.md new file mode 100644 index 0000000000..d0359f2e08 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-eight-ends-t16-NOTICE.md @@ -0,0 +1,9 @@ +Apache-2.0. Prepared for Thomas DiFiore with OpenAI Codex assistance. + +This package composes community work. It claims the new finite owner assignment, the documented pattern-pricing search, and the inventory-specific ceiling certificate, not original authorship of E8, the k8 word, the sixteen-replica controller, or the admission machinery. + +* `../k8-eight-ends` supplies the unchanged endpoint word, local verification, and initial T8 owners. Its NOTICE.md credits PR1018's R480 k8 + seven-slot supplier, PR1030's rank-seven endpoint lead, PR864's frame model, and earlier owner research. +* CrocSwap/integer-mult-bounds PR1074, commit `052afc128954f7b6a2b3c409eb4d72248e4020f2`, supplies the consumed controller and strict admission sources. Every file under `vendor/pr1074` is byte-identical to that upstream commit and pinned in `UPSTREAM.json`. The original `UPSTREAM-NOTICE.md` is retained there. PR1074's owner research was contributed by jeremykothe2 with Claude Opus 5.5. +* The T16 controller, direct-sum parent, actual-window reconstruction, and independent checker originate in Hao Yan / FanPUYen's PR858, with subsequent PR870 and PR1074 adaptations. This package does not modify their checks. +* `independent/all_t_bound.py` adapts `../k8-coordinated-owners/independent/all_t_bound.py`, itself adapted from jon314159's PR942 certificate and chafreaky's PR795/890 signed dual prices. The two rational arithmetic engines are retained upstream code. +* The bit supplier remains the cited PR589 supplier. All analytic, compiler, boundary, common-label, hosting, and bit-supplier assumptions remain in force. diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-three-demotions-NOTICE.md b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-three-demotions-NOTICE.md new file mode 100644 index 0000000000..9f759cfade --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-three-demotions-NOTICE.md @@ -0,0 +1,7 @@ +Apache-2.0. Prepared for Thomas DiFiore with OpenAI Codex assistance. + +* `../k8-eight-ends` and `../k8-eight-ends-t16` supply the unchanged scalar word, endpoint construction, initial owner map, and pinned T16 controller. Their notices retain the PR1018, PR1030, PR864, PR858, PR870, PR1074, and earlier E8, k8, frame, owner, and bit-supplier credits. +* PR1111 by seslly / shipstuff, commit `381831ea554ea983e16224dabed8921b7d0ffdbc`, supplied the entrance-demotion lead: reversing a promotion can profitably trade wider helpers for a different recursive profile. Its README/PR claim was consulted; no PR1111 code or owner payload is consumed. This package instead screens all codimension-one subspaces of the six current dimension-five groups, composes three groups on the eight-endpoint word, and constructs its own complete T16 owner assignment. The older promotion mechanism is credited to PR664 and its descendants. +* The frame refit uses the preceding adaptation of PR864's complete frame model (navinor / Claude). Solver output is nomination data; independent native replay and unchanged global engines decide admission. +* The coordinated pattern-pricing search is retained from `../k8-eight-ends-t16`. Earlier owner algorithms and signed duals are credited in its notice. The bound adapts jon314159's PR942 certificate and chafreaky's PR795/890 prices, using the existing two rational arithmetic engines. +* The fresh native and global checks retain every inherited analytic, compiler, boundary, common-label, hosting, precision/tape, and bit H1–H5 assumption. This package does not claim original authorship of those constructions or an unconditional theorem. diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/verify.py b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/verify.py new file mode 100644 index 0000000000..4802312b52 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/verify.py @@ -0,0 +1,75 @@ +"""Fresh mixed local replay, deterministic owner reconstruction and strict admission. + +No allocation optimizer or discovery-mode controller runs. Outputs must be new +and outside the checkout. Optional cold PR799 reuse is independently rebound +with the retained maintainer checker and fixed stage/artifact coverage. +""" +import argparse,os,shutil,subprocess,sys,tarfile,time +from pathlib import Path +from common import P,ROOT,read,dump,sha,identity,load +import package + +ARCHIVE=ROOT/'research/community-frontier1042-audit/selected-replay.tar.gz' +ARCHIVE_SHA='22c3f4dce4b897a1d423d1388801933e288b6a6b1906cb15e1b16a5eb68db754' + +def main(): + ap=argparse.ArgumentParser(description=__doc__) + ap.add_argument('--work',type=Path,required=True) + ap.add_argument('--ancestry799',type=Path,help='Completed cold verify_frontier799.py output; all bindings and coverage are rechecked') + a=ap.parse_args();pins=package.validate();w=a.work.resolve() + assert not w.exists() and not w.is_relative_to(ROOT);w.mkdir(parents=True) + env=dict(os.environ,PYTHONDONTWRITEBYTECODE='1',PYTHONUTF8='1',PYTHONINTMAXSTRDIGITS='0',PYTHON=sys.executable) + for k in ('PYTHONOPTIMIZE','WITNESS_DISCOVER','WITNESS_RECORD','WITNESS_SPEC'):env.pop(k,None) + steps=[] + def run(name,script,*args): + log=w/(name+'.log');start=time.monotonic() + with log.open('w')as f:r=subprocess.run([sys.executable,'-B',str(script),*map(str,args)],cwd=ROOT,env=env,stdout=f,stderr=subprocess.STDOUT) + steps.append(dict(name=name,exit_code=r.returncode,seconds=round(time.monotonic()-start,3),log_sha256=sha(log))) + dump(w/'STAGES.json',steps) + if r.returncode:raise RuntimeError(name+'\n'+log.read_text()[-5000:]) + print('PASS',name,flush=True) + assert sha(ARCHIVE)==ARCHIVE_SHA + baseline=w/'retained1042';baseline.mkdir() + with tarfile.open(ARCHIVE)as t: + for m in t.getmembers(): + assert (baseline/m.name).resolve().is_relative_to(baseline) and (m.isfile() or m.isdir()) + t.extractall(baseline,filter='data') + baseline=baseline/'slots/global';base=baseline/'global/base' + import build_word,controls,audit,prepare,controller,price + dump(w/'WORD-RECIPE.json',build_word.build(w/'FOUR-WORD.json.gz')) + providers={} + for pid,word in [('demote3',P/'vendor/pr1148/JOINT-WORD.json.gz'),('demote4',w/'FOUR-WORD.json.gz')]: + run('raw-'+pid,ROOT/'research/gauge44-slots/independent/audit_local.py','--word',word,'--main',ROOT,'--output',w/('RAW-'+pid+'.json')) + run('native-'+pid,P/'native.py',word,w/pid) + providers[pid]=w/pid/'local' + stages=read(w/pid/'STEPS.json') + assert [v['step']for v in stages]==['native','ledgers','local-replay','wrappers','phases'] and all(v['exit_code']==0 for v in stages) + assert read(providers[pid]/'FULL-WORD.json.gz')==read(word) + run('entrance-controls',P/'local_controls.py','--out',w/'ENTRANCE-CONTROLS.json') + run('owners',P/'construct.py','--parent',base/'split-centres/GLOBAL-TEMPLATE.json.gz', + '--word3',providers['demote3']/'CANONICAL-WORD.json.gz','--word4',providers['demote4']/'CANONICAL-WORD.json.gz','--out',w/'constructed') + assert read(w/'constructed/OWNERS.json.gz')==read(P/'data/OWNERS.json.gz') + controls.check(read(base/'split-centres/GLOBAL-TEMPLATE.json.gz'),{pid:read(d/'CANONICAL-WORD.json.gz')for pid,d in providers.items()},w/'FLOW-CONTROLS.json') + independent=audit.check(base,providers,w/'constructed/OWNERS.json.gz',w/'INDEPENDENT-OWNERS.json') + global_work=w/'t37';global_work.mkdir();prepare.prepare(global_work,baseline,providers) + run('parent',global_work/'adapted/check_parent.py','--source',base/'split-centres/GLOBAL-TEMPLATE.json.gz','--parent',global_work/'lift/GLOBAL-TEMPLATE.json.gz','--out',w/'PARENT-CHECK.json') + result=controller.replay(global_work,providers) + owner=read(global_work/'strict/global/audit/OWNERS-AND-PROFILE.json') + assert independent['actual_73_axis_charts']==owner['actual_73column_sigmas'] + prices=price.price(providers,w/'PRICE.json');assert prices['kappa']==result['kappa'] + ancestry=a.ancestry799.resolve()if a.ancestry799 else w/'ancestry799' + if not a.ancestry799:run('cold-ancestry799',ROOT/'scripts/verify_frontier799.py','--work',ancestry) + cover=load(ROOT/'research/complex-t21-owners/vendor/pr858/baseline_coverage.py','fixed_baseline_coverage').check(ancestry/'ancestor') + binding=load(ROOT/'scripts/verify_frontier799_bindings.py','cold_ancestry_bindings').check(ancestry/'ancestor',ancestry/'native',ancestry/'global',ancestry/'INDEPENDENT-LOCAL.json',ancestry/'INDEPENDENT-PRICE.json') + for rel in ('split-centres/GLOBAL-TEMPLATE.json.gz','split-centres/CANONICAL-WORD.json.gz','work/complex-nine-native/DATA-PHASES.json'): + assert read(base/rel)==read(ancestry/'global/global/base'/rel),'Cold ancestral parent binding: '+rel + asm=read(global_work/'strict/ASSEMBLY.json');old=read(ancestry/'global/ASSEMBLY.json') + assert asm['bit_lower']==old['bit_lower'] and asm['bit_supplier']==old['bit_supplier'] + dump(w/'ANCESTRY.json',dict(reused=bool(a.ancestry799),coverage=cover,binding=binding,archive_sha256=ARCHIVE_SHA)) + assert package.validate()==pins,'Sources changed during verification' + result.update(status='PASS_MIXED_JOINT_ENTRANCES_T37_COMPLETE_ADMISSION',source_pins=pins, + native_providers=2,entrance_controls=11,flow_controls=8,independent_owner_controls=8, + ancestry_sha256=sha(w/'ANCESTRY.json'),price_sha256=sha(w/'PRICE.json'),steps=steps) + dump(w/'RESULT.json',result) + print(result['status'],result['kappa_decimal'],flush=True) +if __name__=='__main__':main() diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/verify.py b/research/capped-fusion-t74-k554/vendor/pr1297/verify.py new file mode 100644 index 0000000000..178a101173 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/verify.py @@ -0,0 +1,51 @@ +"""Finite mixed-provider replay; exact inherited theorem obligations remain conditional. +Default: sequential fresh native replays. Explicit native reuse validates word and stage bindings. +""" +import argparse,gzip,hashlib,json,os,shutil,subprocess,sys,tarfile,time +from pathlib import Path +P=Path(__file__).resolve().parent +ap=argparse.ArgumentParser();ap.add_argument('--work',type=Path,required=True);ap.add_argument('--base-native-from',type=Path);ap.add_argument('--extra-native-from',type=Path);a=ap.parse_args();work=a.work.resolve();assert __debug__ and not work.exists() and not work.is_relative_to(P) +def rd(p):return json.loads(p.read_text()) +def sha(p):return hashlib.sha256(p.read_bytes()).hexdigest() +pins=rd(P/'MANIFEST.json');actual={x.relative_to(P).as_posix() for x in P.rglob('*') if x.is_file() and '__pycache__' not in x.parts and x!=P/'MANIFEST.json'};assert actual==set(pins) +for rel,h in pins.items():assert sha(P/rel)==h,rel +work.mkdir();layout=work/'layout';layout.mkdir();tmp=work/'tmp';tmp.mkdir();env=dict(os.environ,TMPDIR=str(tmp),PYTHONDONTWRITEBYTECODE='1',PYTHONUTF8='1',PYTHONINTMAXSTRDIGITS='0') +for k in ('PYTHONOPTIMIZE','WITNESS_SPEC','WITNESS_DISCOVER','WITNESS_RECORD'):env.pop(k,None) +with tarfile.open(P/'upstream-layout.tar.gz') as t: + for m in t.getmembers():assert m.isfile() and not Path(m.name).is_absolute() and '..' not in Path(m.name).parts + t.extractall(layout,filter='data') +M=layout/'globalmix51';M.mkdir();data=M/'candidate';data.mkdir();SRC=layout/'joint1148-round45/source' +for name in ('replay.py','freeze_spec.py','audit_mixed.py','independent_core.py'):shutil.copy2(P/name,M/name) +for name in ('PLAN.json','SPEC.json','PROFILE.json','OWNERS.json.gz','DISPATCH.json','CONSTRUCTION.json','GLOBAL-TEMPLATE.json.gz'):shutil.copy2(P/name,data/name) +stages=[] +def run(name,script,*args): + start=time.monotonic();log=work/(name+'.log') + with log.open('w') as f:r=subprocess.run([sys.executable,'-B',str(script),*map(str,args)],cwd=layout,env=env,stdout=f,stderr=subprocess.STDOUT) + stages.append(dict(name=name,exit_code=r.returncode,seconds=time.monotonic()-start,log_sha256=sha(log)));(work/'STAGES.json').write_text(json.dumps(stages,indent=2));assert r.returncode==0,(name,log.read_text()[-5000:]);print('PASS',name,flush=True) +for key,name in [('base','gauge44-word.json.gz'),('extra','extra-word.json.gz')]: + run('literal-word-'+key,P/'build_word.py','--base',P/'inputs'/(key+'.json.gz'),'--recipe',P/('RECIPE-'+key+'.json.gz'),'--out',work/('rebuilt-'+key+'.json.gz')) + assert gzip.decompress((work/('rebuilt-'+key+'.json.gz')).read_bytes())==gzip.decompress((P/name).read_bytes()) +natives={} +for key,word,reuse in [('base',P/'gauge44-word.json.gz',a.base_native_from),('extra',P/'extra-word.json.gz',a.extra_native_from)]: + run('independent-local-'+key,SRC/'research/gauge44-slots/independent/audit_local.py','--word',word,'--main',SRC,'--output',work/('INDEPENDENT-LOCAL-'+key+'.json')) + run('fusion-controls-'+key,P/'controls.py','--main',SRC,'--sites',P/('CONTROL-SITES-'+key+'.json'),'--word',word,'--out',work/('FUSION-CONTROLS-'+key+'.json')) + assert len(rd(work/('FUSION-CONTROLS-'+key+'.json'))['rejected'])==10 + run('x54-controls-'+key,P/'x54_controls.py','--main',SRC,'--recipe',P/'MAPPED-RECIPE.json','--word',word,'--out',work/('X54-CONTROLS-'+key+'.json')) + assert len(rd(work/('X54-CONTROLS-'+key+'.json'))['rejected'])==4 + run('kernel543-controls-'+key,P/'kernel543_controls.py','--word',word,'--main',SRC,'--out',work/('KERNEL543-CONTROLS-'+key+'.json')) + run('kernel-controls-'+key,P/'kernel_controls.py','--word',word,'--main',SRC,'--out',work/('KERNEL-CONTROLS-'+key+'.json')) + run('leaver-premise-'+key,P/'premise/premise_check.py',word) + native=reuse.resolve() if reuse else work/('native-'+key) + if not reuse:run('fresh-native-'+key,SRC/'research/k8-eight-ends/replay_native.py',word,native) + assert gzip.decompress((native/'local/FULL-WORD.json.gz').read_bytes())==gzip.decompress(word.read_bytes()) + steps=rd(native/'STEPS.json');assert [x['step'] for x in steps]==['native','ledgers','local-replay','wrappers','phases'] and all(x['exit_code']==0 for x in steps) + natives[key]=native +run('literal-construct',P/'construct.py','--parent',data/'GLOBAL-TEMPLATE.json.gz','--word3',natives['base']/'local/CANONICAL-WORD.json.gz','--word4',natives['extra']/'local/CANONICAL-WORD.json.gz','--out',work/'constructed') +for name in ('OWNERS.json.gz','DISPATCH.json'): + decode=lambda p:json.loads(gzip.decompress(p.read_bytes()) if p.suffix=='.gz' else p.read_bytes()) + assert decode(work/'constructed'/name)==decode(P/name),name +assert rd(work/'constructed/CONSTRUCTION.json')['idle']==rd(data/'CONSTRUCTION.json')['idle'] +shutil.copytree(natives['extra'],M/'native-extra') +run('strict-global',M/'replay.py','--data',data,'--work',work/'strict','--local',natives['base']/'local') +r=rd(work/'strict/RESULT.json');assert r['status']=='PASS_STRICT_MIXED_T37_ENTRANCES' and r['kappa']==rd(P/'CLAIM.json')['kappa'] +result=dict(status='PASS_GLOBAL_MIXED_X54_FUSIONS_NATIVE_AND_STRICT_ADMISSION',kappa=r['kappa'],kappa_decimal=r['kappa_decimal'],parent_geometry_reuse=True,base_native_reuse=bool(a.base_native_from),extra_native_reuse=bool(a.extra_native_from),kernel_controls=24,inherited_kernel543_controls=12,flow_controls=8,fusion_controls=20,x54_controls=8,leaver_premise_words=2,admission_controls=114,bit_controls=12,controller_controls=15,independent_owner_controls=8,outer_inequalities=47,stages=stages,scope=rd(P/'CLAIM.json')['scope']);(work/'RESULT.json').write_text(json.dumps(result,indent=2)+'\n');print(result['status'],result['kappa_decimal']) diff --git a/research/capped-fusion-t74-k554/vendor/pr1297/x54_controls.py b/research/capped-fusion-t74-k554/vendor/pr1297/x54_controls.py new file mode 100644 index 0000000000..e80ee4b552 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1297/x54_controls.py @@ -0,0 +1,29 @@ +"""Four direct X54 failure controls on each final refitted word, using the unchanged local auditor.""" +import argparse,copy,gzip,hashlib,json,subprocess,sys,tempfile +from pathlib import Path +ap=argparse.ArgumentParser();ap.add_argument('--word',type=Path,required=True);ap.add_argument('--recipe',type=Path,required=True);ap.add_argument('--main',type=Path,required=True);ap.add_argument('--out',type=Path,required=True);a=ap.parse_args();w0=json.loads(gzip.decompress(a.word.read_bytes()));rc=json.loads(a.recipe.read_text());audit=a.main/'research/gauge44-slots/independent/audit_local.py' +def locate(section,gate): + ids=[i for i,g in enumerate(section) if g[:-1]==gate[:-1]];assert len(ids)==1,(gate,ids);return ids[0] +def check(w,d): + p=d/'WORD.json.gz';p.write_bytes(gzip.compress(json.dumps(w,separators=(',',':')).encode(),mtime=0));r=subprocess.run([sys.executable,'-B',str(audit),'--word',str(p),'--main',str(a.main),'--output',str(d/'AUDIT.json')],capture_output=True,text=True);return r.returncode,(r.stdout+r.stderr) +with tempfile.TemporaryDirectory(dir=a.out.parent,prefix='x54-controls-') as tmp: + d=Path(tmp);code,msg=check(w0,d);assert code==0,('honest',msg[-1000:]);mutants={} + w=copy.deepcopy(w0) + for gate in rc['cleanup_prepend']: + ci=locate(w['cleanup'],gate);assert all(i!=ci for i,U in w['early_cleanup']);del w['cleanup'][ci];w['early_cleanup']=[[i-int(i>ci),U] for i,U in w['early_cleanup']] + mutants['drop_full_restore']=(w,'all-column endpoint failure') + w=copy.deepcopy(w0) + for pos,gate in rc['tail_insert']: + ci=locate(w['cleanup'],gate);assert sum(i==ci for i,U in w['early_cleanup'])==1;w['early_cleanup']=[[i,U] for i,U in w['early_cleanup'] if i!=ci];w['cleanup'][ci][-1]=[1<=di and e[0]=='add' and 112<=e[1]<224 and e[2]==g[1]);w['B'].insert(ri+1,g) + mutants['move_donation_after_read']=(w,'nonzero entrance response');rejected=[] + for name,(word,expected) in mutants.items(): + code,msg=check(word,d);assert code!=0 and expected in msg,(name,code,msg[-1200:]);rejected.append(dict(name=name,reason=msg.strip().splitlines()[-1]));print('REJECTED',name,flush=True) +a.out.write_text(json.dumps(dict(status='PASS_FINAL_WORD_X54_CONTROLS',honest='PASS',word_sha256=hashlib.sha256(a.word.read_bytes()).hexdigest(),rejected=rejected),indent=2)+'\n') diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ALGEBRAIC-STABILITY-INDEPENDENT.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ALGEBRAIC-STABILITY-INDEPENDENT.md new file mode 100644 index 0000000000..abdd30cc1d --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ALGEBRAIC-STABILITY-INDEPENDENT.md @@ -0,0 +1,190 @@ +# Independent algebraic-coefficient and stability transfer lemma + +This note uses no claimed finite certificate from any particular matrix multiplication paper. It isolates what follows from an exponent bound alone, including effectiveness and ordinary bit complexity. + +## Statement + +Let `omega_C` be the matrix multiplication exponent over the complex numbers. Suppose + +\[ +\omega_{\mathbb C}<\tau, +\] + +where `tau > 2` is a fixed rational number. There is a single, uniform algorithm, with a fixed finite description, with the following properties. + +* Its recursive block multiplication uses a fixed finite bilinear formula whose coefficients are computable algebraic complex numbers. +* Given two `W` by `W` complex dyadic matrices with component magnitudes at most `2^h`, it computes their product with maximum entrywise absolute error at most `2^{-p}` in + +\[ +O\!\left(W^\tau M(p+h+\log(W+1))\right) +\] + +bit operations. Here `M(t)` is a regular integer multiplication bound: `M(t) >= t`, `M(Ct)=O_C(M(t))` for fixed `C`, and precision doubling sums to `O(M(t))`. All constants can depend on the chosen fixed block formula. +* If the input encoding has `h = O(p)`, this is + +\[ +O\!\left(W^\tau M(p+\log(W+1))\right). +\] + +If also `log W = O(p)`, it is exactly `O(W^tau M(p))`, without a suppressed logarithmic factor. In particular this holds for `W = Theta(sqrt(p))`. + +The strict exponent slack is essential to this statement: an exponent infimum does not by itself supply a finite scheme attaining that infimum. If a source proves `omega_C <= 9/4`, one may take any fixed rational `tau` with `9/4 < tau < 5/2`, for example `tau = 19/8`. + +The proof below also gives an exponent strictly below a specified threshold from only the promise that `omega_C` is below that threshold. It does not give useful numerical constants or an efficient way to discover the block formula. + +## 1. A finite exact bilinear formula exists with exponent slack + +Write `R(b)` for the exact complex tensor rank of `b` by `b` matrix multiplication. Use the usual equivalent definition + +\[ +\omega_{\mathbb C}=\inf_{b\ge2}\log_b R(b). +\] + +Thus some fixed integers `b >= 2` and `r` satisfy + +\[ +R(b)\le r= 2`, `r >= 1` satisfying `r < b^tau`; +2. finite encoded algebraic tuples of the required length; +3. exact tests of all rank equations. + +For rational `tau=a/d`, the first comparison is the integer comparison `r^d < b^a`. The search halts under the stated exponent promise, by Sections 1 and 2. Its output supplies the single fixed block formula. This search may be extremely expensive, but its cost is an absolute constant independent of `W,p,h`, so including it does not change the asymptotic bound. The same result can be phrased by fixing the first successful tuple once and for all. + +For just the promise `omega_C < 5/2`, search using `r^2 < b^5`. Upon success choose a rational `sigma` with + +\[ +\max\{2,\log_b r\}<\sigma<5/2. +\] + +The resulting algorithm has exponent at most `sigma < 5/2`. Thus one need not know a numerical gap in advance to obtain a uniform algorithm below the threshold. A practical certificate or practical constant is a separate issue. + +## 4. Each fixed algebraic coefficient has an ordinary `O(M(q))` precision algorithm + +Every chosen coefficient has a fixed minimal polynomial and a fixed isolating region. In characteristic zero its minimal-polynomial root is simple. Fix a rational starting approximation in a sufficiently small Newton convergence neighborhood. Newton iteration with successively doubled precision computes the root to absolute error `2^{-q}` with `O(M(q))` bit operations. + +The polynomial degree, coefficient heights, root separation, initial precision, and bounds on the derivative and its reciprocal are all fixed constants here. Polynomial evaluation, complex division, and the finite number of operations per Newton step cost `O(M(t))` at precision `t`; the usual precision-doubling sum is `O(M(q))`. This is not a claim uniform in algebraic degree or height. + +There are only finitely many block coefficients. Compute their dyadic approximations once at the precision needed for the current multiplication, and reuse them at all recursive nodes. This costs `O(M(q))` total, with a formula-dependent constant, rather than a logarithmic factor per scalar operation. + +## 5. Recursive arithmetic work + +Pad the matrices with zeros to size `N=b^L`, where `W <= N < bW` (and handle `W=1` directly). At each node, form the fixed `r` input linear combinations, recursively multiply the corresponding submatrices, and form the fixed output linear combinations. + +The arithmetic operation count satisfies + +\[ +T(N)\le rT(N/b)+O(N^2). +\] + +Let `rho=log_b r`. If `rho>2`, this is `O(N^rho)`; if `rho=2`, it is `O(N^2 log N)`; and if `rho<2`, it is `O(N^2)`. Every case is `O(N^tau)` because `rho2`. In particular the possible equality case `r=b^2` creates no extra factor in the advertised bound: its logarithm is absorbed by the fixed exponent slack. + +One could instead tensor a fixed formula a fixed number of times and add a zero product to arrange `b^2 < r < b^tau`, obtaining an exact recursion exponent `rho` strictly between two and `tau`. This refinement is unnecessary for the advertised `O(W^tau)` conclusion. + +## 6. Fixed-point roundoff grows only polynomially in the dimension + +Use fixed-point complex arithmetic with `q` fractional bits, round after scalar products, and use dyadic block coefficients whose absolute errors are at most + +\[ +\epsilon=2^{-q}. +\] + +Complex arithmetic introduces only absolute constant factors. Additions may be done exactly on this fixed grid; allowing an additional absolute error `O(epsilon)` after an addition also satisfies the following bounds. + +For a multiplication node with remaining depth `d`, let `a,beta >= 1` bound the maximum absolute entries of its two inputs. There is a fixed constant `K`, depending only on the block formula, such that the computed result obeys + +\[ +\|\widehat T_d(A,B)-AB\|_{\max} +\le \epsilon E_d a\,\beta, +\qquad +E_d\le K E_{d-1}+K b^{d-1},\quad E_0\le K. +\] + +Here the symbol `b` in `b^{d-1}` is the fixed block dimension; `beta` is the second input bound. + +To verify the recurrence, every local input linear combination has fixed length and fixed coefficients. Its rounded value differs from its exact value by at most `c epsilon a` or `c epsilon beta`, and its size is at most `S a` or `S beta`, for fixed `c,S`. Applying the inductive child bound therefore contributes at most + +\[ +c\epsilon E_{d-1}a\beta. +\] + +Perturbing the two child inputs in their *exact* matrix product contributes at most + +\[ +c\epsilon b^{d-1}a\beta, +\] + +because each entry of that child product sums `b^{d-1}` scalar products. Finally, the output reconstruction has fixed length and fixed coefficients. Propagation through its exact coefficients is a fixed factor; coefficient approximation and reconstruction rounding contribute at most + +\[ +c\epsilon\bigl(b^{d-1}+\epsilon E_{d-1}+1\bigr)a\beta. +\] + +For `epsilon <= 1`, all these terms have the stated recurrence after enlarging `K`. Taking `K >= 2b` gives `E_d <= C K^d` for a fixed `C`. Thus at the root + +\[ +\|\widehat T_L(A,B)-AB\|_{\max} +\le C\,2^{-q}K^L a\beta +=2^{-q}N^{O(1)}a\beta. +\] + +For root input magnitude at most `2^h`, take `a=beta=max(1,2^h)` and choose + +\[ +q=p+2\max(h,0)+\lceil L\log_2K\rceil+O(1). +\] + +The final absolute error is then at most `2^{-p}`. + +There is also no hidden exponential-in-precision magnitude growth. Along a path, each preprocessing step multiplies a magnitude envelope by a fixed `S`. A node at depth `t` therefore receives inputs bounded by `S^t a` and `S^t beta`. Its computed output is bounded by its exact product size plus the proved error: + +\[ +\bigl(b^{L-t}+\epsilon C K^{L-t}\bigr)S^{2t}a\beta. +\] + +Local scalar products and partial sums obey the same bound up to fixed factors. All intermediate magnitudes are consequently `N^{O(1)} max(1,2^{2h})`. Only `O(h+log N)` integer bits are needed. The total working bit width is therefore `O(p+h+log N)`. + +The polynomial error estimate exploits the structure of a bilinear recursion: linear preprocessing, one variable-by-variable scalar product at a leaf, and linear reconstruction. Bounding an arbitrary multiplication by the largest intermediate magnitude at every level would give an unnecessarily pessimistic estimate and is not the argument used here. + +## 7. Bit complexity and scope + +Every scalar operation uses `O(p+h+log W)` bits and costs `O(M(p+h+log W))`. Multiplying by the `O(W^tau)` arithmetic operation count proves the statement. Padding, input conversion, output rounding, and storage of the fixed coefficient approximations fit the same bound. + +The result supplies absolute accuracy. It does not promise small relative error in entries canceled nearly to zero. It applies to arbitrary fixed finite complex bilinear formulas; large fixed coefficient heights or norms worsen only the constants and the fixed multiple of `log W` in the precision requirement. + +An exponent theorem alone therefore suffices for computable, stable approximate multiplication with any fixed strictly larger exponent. It does not justify using the exact infimum exponent without slack, treating a varying family of coefficients as fixed, or claiming a concrete efficient implementation without constructing its constants. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/BILATERAL-LDU.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/BILATERAL-LDU.md new file mode 100644 index 0000000000..5cad6ee19f --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/BILATERAL-LDU.md @@ -0,0 +1,131 @@ +# Bilateral Gaussian LDU and a fixed-width periodic inverse bound + +Independent audit of the parent's infinite-LDU observation. This is an analytic norm theorem. It does **not** assert that the bilateral factors already have a fully priced fast implementation. + +## Statement + +Let `1=1`, define on Z + +`G_ij=exp(-a[(rho*j-q_i)^2-beta_j^2])`. + +Let `r=exp(2a rho)` and `c=prod_(m>=1)(1-r^-m)>0`. Then G has an exact factorization on bounded bilateral sequences + +`G=L C U`, + +where L is unit lower triangular, U is unit upper triangular, C is diagonal, and all factors and their inverses are bounded. Moreover all six factors are invariant under simultaneous index translation by s. Their periodizations therefore factor the periodic Gaussian matrix N, and + +`||N^-1||_infinity <= c^-4 exp(a/2)/(1-exp(-a rho theta))^2`. + +In particular, at the fixed choice `a=1`, + +`||N^-1||_infinity < 16 theta^-2`. + +Any fixed a>=1, including a=4pi if an integer alpha>=2 is retained, gives a constant times theta^-2. No lower bound proportional to log(1/theta) on a is needed for this norm theorem. + +## 1. Finite-origin factorization and the shift correction + +Write `x_i=r^q_i`, `d_i=exp(-a q_i^2)`, and `e_i=exp(-a rho^2 i^2+a beta_i^2)`. Then `G_ij=d_i x_i^j e_j`, including negative indices, and `d_i x_i^i e_i=1`. + +For a finite square principal interval `[l,r0]`, the Vandermonde powers must begin at zero. The correct shifted row diagonal is **d_i x_i^l**, and the power is `j-l`. This removes a possible erroneous origin-dependent diagonal from the upper factor. + +Put + +`C_i(l)=prod_(l<=k=j`, + +`U^l_ij=(e_j/e_i) h_(j-i)(x_l,...,x_i)`, `j>=i`. + +Here h is the complete symmetric polynomial, h_0=1. Upper and lower inverses are + +`(U^l)^-1_ij=(-1)^(j-i)(e_j/e_i) e_(j-i)(x_l,...,x_(j-1))`, + +`(L^l)^-1_ij=(-1)^(i-j) exp(E_ij) C_i(l)/(C_j(l) D_ij)`, + +where + +`D_ij=prod_(j=j`, + +`|(U^l)^-1_ij|<=c^-1 exp(a/4) exp(-a rho theta(j-i))`, `j>=i`. + +Both use only `-1/2<=beta_k<1/2`. Thus their row norms are at most the corresponding constants divided by `1-exp(-a rho theta)`, uniformly in l and the finite size. + +The row sum of G is uniformly finite, since + +`G_i,i+h <= exp(a/4) exp(-a(rho*|h|-1/2)^2)`. + +The same positive Gaussian bound controls all finite-origin L and U factors. + +## 3. Letting the left origin tend to minus infinity + +For fixed i,j, C_i(l) converges to + +`C_i=prod_(k(i+s,j+s)`. Every displayed factor has the same invariance: ratios `x_k/x_i` are preserved, and the Gaussian/prefix expressions shift together. C_i is s-periodic. + +For an invariant matrix A with bounded absolute row sums, set + +`Pi(A)_ij=sum_(n in Z) A_(i,j+ns)`, `0<=i,j=e^2>7, and the elementary product bound gives `c>=1-sum_(m>=1)r^-m>5/6`. Also `1-exp(-rho theta)>=theta/2` for 04W, choose + +`B=min(Bcap, 2^floor(log2(R-W)))`, + +retain the next B vertices as an interior, then the next W vertices as boundary, and decrement R by B+W. Declare the final R<=4W vertices boundary. + +There are `O(L/Bcap+log Bcap)` interiors: while the cap is active, each step removes at least Bcap vertices; after it ceases to be active, the remaining length halves at each step. Every interior length is dyadic and at most Bcap. Every interior produced by the loop is longer than W; two successive interiors are separated by at least W retained coordinates. + +Total boundary count per original cell is + +`O(W(L/Bcap+log Bcap))`. + +Since original cell lengths are Theta(d), total boundary density is + +`O(W/Bcap + W log Bcap/d)=O((W/Bcap) polylog p)` + +when Bcap<=d. The same selected-input and target-output physical period cuts must be preserved. A clipped endpoint cell of O(W) length is wholly boundary. + +Interior elimination only fills between the adjacent boundary groups of one interior. Each group has O(W) vertices: inserted groups have W; an end remainder has at most 5W after joining the reserved end. Hence scalar Schur half-bandwidth remains O(W), independently of the cap and the number of pieces. No retained matrix coefficient is changed by this new partition. + +## 2. Narrow Gaussian: exact recentering of the existing rounded weights + +In one original phase cell, beta_i=theta*i-c and + +`log a_i=-a(1/4-beta_i^2)/theta`. + +For any two coordinates i,j in that same cell, + +`log(a_i/a_j)=a(i-j)(beta_i+beta_j)`. + +Since both beta values lie in [-1/2,1/2), + +`|log(a_i/a_j)|<=a|i-j|`. + +Thus a capped interior of at most Bcap vertices has ideal weight range at most exp(a Bcap), even when the absolute full-cell gauge has range exp(O(ad)). + +The actual matrix uses already-rounded positive weights ahat_i. Suppose, as ensured by the retained high-precision setup, + +`(1-epsilon) a_i <= ahat_i <= a_i`, with epsilon<=1/2. + +Then for an anchor m in the capped interior, + +`(1-epsilon) exp(-a Bcap) <= ahat_i/ahat_m` + +` <= exp(a Bcap)/(1-epsilon)`. + +Replacing ahat_i by `ahat_i/ahat_m` in both diagonal factors of + +`A=diag(ahat) Ghat diag(ahat)^-1` + +is **exact**. It changes neither A nor the fixed globally rounded H. These ratios must be formed in coefficient setup; the data circuit must not apply the full-cell diagonal and hope to cancel it later. One may anchor at the maximum ahat in the piece to make the direct diagonal contractive and its inverse at most `2 exp(a Bcap)`. + +The old setup provides absolute error below `4*2^-P` and ideal minimum at least exp(-a/(4theta)). It suffices that + +`4*2^-P exp(a/(4theta)) <= epsilon`. + +In the retained family a=Theta(log p), theta^-1=O(d), d=p^epsilon0 with fixed epsilon0<1, so ad=o(p). The existing P=Cp setup precision easily gives epsilon<=2^-cp. The **ad cost occurs in offline coefficient accuracy**, not in the runtime norm of the recentered diagonal. It is not multiplied by the number g of simultaneously executed axes. More explicitly, if the raw relative error is delta0<=4*exp(a/(4theta))*2^-P, then an anchored ratio has relative error at most 2delta0/(1-delta0). A g-fold product of anchored diagonals has error bounded by a polynomial factor times g*delta0*exp(O(g*a*Bcap)). Thus the needed precision is P>=p+O(ad+g*a*Bcap+log g+polylog p), rather than p+O(g*a*d). Both added power terms are o(p) in the proposed parameter family. + +## 3. Broad forward Gaussian: local gauges + +Use the target-grid notation from FORWARD-SMALL-A-AUDIT.md. With lambda=1/rho, b0=pi/alpha^2, original phase c, and an anchor m in the capped interior, + +`delta=(1-lambda)m-c`, `x=i-m`, `y=k-m`. + +The exact split is + +`Dcol(i)=exp[-b0((1-lambda)x^2+2delta*x)]`, + +`Drow(k)=alpha^-1 exp[b0 lambda(1-lambda)y^2+2b0 delta lambda*y-b0 delta^2]`, + +with a fixed Toeplitz kernel `exp[-b0 lambda(i-k)^2]`. + +Throughout the original selected-target phase cell, `beta'_i=theta*i-rho*c` lies in [-1/2,1/2). Therefore + +`d(log Dcol)/di = -2 b0 lambda beta'_i`, + +`d(log Drow)/dk = 2 b0 lambda^2 beta'_k`. + +Their absolute slopes are at most b0 and b0 respectively. Both diagonal logarithmic ranges on the capped block are at most `b0 Bcap`. At the anchor, Dcol=1 and Drow=alpha^-1 exp(-b0 delta^2), so their absolute values also have logarithmic size `O(b0 Bcap+log alpha)`. + +If a globally rounded broad block was already defined using a different anchor, use exact constant ratios to recenter its two diagonals: divide the column diagonal by its value at m and multiply the row diagonal by the same value. Ideal changes of anchor differ only by reciprocal constants, since the derivatives above are independent of m. Uniform relative coefficient error changes the range by only O(1), just as in the narrow case. This preserves the already-defined rounded block exactly. Alternatively the broad block can be initially defined with the capped anchor, using one globally specified rounding construction. + +Holes remain boundary. The completed narrow and broad interior inverse bounds and the completed global/Schur norm bounds proved earlier do not depend on the cap: every new interior is still a contiguous principal block of the same original phase matrix. + +## 4. Group guard and circuit count + +Each capped narrow diagonal contributes at most `a Bcap+O(1)` to the logarithmic norm; the broad contribution `O(Bcap/alpha^2+log alpha)` is smaller. Shallow Toeplitz circuit amplification contributes polylog(p) per axis. The number of capped blocks per line does not multiply these bounds: they are disjoint direct-sum blocks and their circuits run in parallel, padding completed smaller circuits with identity gates. + +Consequently g simultaneously executed axes require + +`O(g a Bcap + g polylog p)` + +extra logarithmic precision. With `Bcap<=p^b`, `g<=p^beta`, a=Theta(log p), and beta+b=1-r-zeta with r,zeta>0, + +`g a Bcap=O(p^(1-r-zeta) log p)=o(p)`. + +In particular no remaining full-cell term g*a*d may be charged after exact recentering. Offline accuracy still needs to dominate ad=o(p), as above. + +## 5. Schur solves and whole-group ordering + +For the narrow matrix, strict row dominance is inherited by any interior elimination, so all completed Schur and inverse norms remain polynomial under the cap. + +For the broad matrix, completed Schur/inverse norms follow from the square identity-hole completion and polynomial principal-interior bounds in FORWARD-SMALL-A-AUDIT.md. To obtain uniform norms for a banded online factorization, eliminate **whole boundary groups** of W to O(W) vertices, rather than appealing without proof to scalar prefixes inside one group. + +After all interiors and a prefix of whole boundary groups are eliminated, the eliminated set is a direct sum of one physical contiguous prefix and disjoint future interiors: each remaining full group contains at least W uneliminated coordinates, blocking every width-W connection across it. The same holds after adding the next whole group. A physical prefix reduces, under selected/hole ordering, to the small-b normalized Gaussian block plus identity hole columns, so it has polynomial inverse norm. Each future interior also has polynomial inverse norm. Thus every required eliminated-set inverse is polynomial, uniformly in the number of pieces. + +At the final group on a full periodic line, use the already-established full periodic H inverse bound instead of a nonperiodic-prefix bound. For a clipped principal window the complement-gap condition excludes wrap edges, so the prefix statement applies directly. Each block pivot inverse is a principal block of the inverse after adding that group. Block Schur entries are bounded by `H+H H_EE^-1 H`, hence polynomial. There are only O(1) neighboring boundary groups in a band row. The resulting block-L and block-U norms are polynomial; their full inverses are polynomial as well, from `L^-1=U S^-1` and `U^-1=S^-1 L`. A scalar expansion inside a group is unnecessary: precompute its dense O(W)-square inverse and apply the block updates to batches by Strassen. + +This whole-group order prevents the subtle gap in which a partially consumed separator of fewer than W vertices permits a connection to the next interior. It preserves the claimed batched boundary exponent and is unaffected by capped subdivision. + +## Scope + +The capped local-gauge change is valid. The listed exact controls check carving, analytic slope identities and preservation of the already-rounded narrow matrix. The final recurrence arithmetic and tensor routing remain separate reviewed components. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-INTERIORS.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-INTERIORS.md new file mode 100644 index 0000000000..62c3fa27b6 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-INTERIORS.md @@ -0,0 +1,72 @@ +# Conditional refinement: cap interior length independently of d + +This is a separate follow-up to the uncapped proof audit. Its current status is **PASS_CONDITIONAL_PHASE_FUSION_REVIEW**, following the independent capped-gauge and capped-layout audits and an integrated root review. It preserves the weaker `OUTER-ARITHMETIC.json` as history. Under the retained supplier assumptions and the reviewed interfaces, the capped construction below gives `kappa=0.001672922349588871`. The only new analytic change is the anchored O(aB) local gauge; all altered operation counts are derived explicitly here. No upstream selected certificate is changed. + +Let the original phase-cell scale remain `d=p^epsilon`, and cap dyadic interior lengths at `B=2^floor(b log2 p)`, where `1/20. The supplier support proof needs each individual K-neighborhood to fit its original axis and total moved support o(p); it does **not** require all g controls to fit within one original axis. The sufficient auxiliary inequality `beta<1-epsilon` in the uncapped ledger must therefore be removed in this follow-up. + +The changed principal exponents, normalized by V, are + +| Component | exponent | +|---|---:| +| main transform | `1-epsilon*q` | +| fused Gaussian circuits | `epsilon-q*beta` | +| boundary algebra | `epsilon-b+(omega-1)/2` | +| sparse union movement | `epsilon+beta+1/2-b` | +| grouped scans | `epsilon-beta` | + +For the boundary row, one axis has O(V W/B) boundary records. A band solve or coupling product on W simultaneous right-hand sides costs O(W^(omega-2)) per boundary record, so all d axes cost `O(V (d/B) W^(omega-1) polylog p)`. The new factor d/B must not be omitted. For the sparse union, its fraction within a group is O(gW/B polylog p); g sequential axis operations and d/g groups give `O(V (dg/B) W polylog p)`. These are precisely the third and fourth changed rows. + +All other costs in `OUTER-AUDIT.md` remain paid. Global routing has saving a_eff; packed polynomial products have saving epsilon. Even a conservative full active-group key surcharge adds only `beta+1-epsilon` to the union exponent. Sparse core-face corrections have exponent at most `epsilon+beta-3`, using the former p² per-record allowance on their O(gA/L) copied volume. + +With the rational bound omega<45/16, put c=(3-omega_upper)/2=3/32 and take a positive boundary slack s_boundary=10^-5. Balancing the two dominant rows while leaving that boundary slack gives + +``` +epsilon=(1+q+q*(c-s_boundary-r-zeta))/(1+q)^2, +b=epsilon*(1+q)-c+s_boundary, +beta=1-b-r-zeta, +kappa_limit=epsilon*q. +``` + +Using the same q, r and zeta as the uncapped candidate yields approximately + +``` +epsilon = 0.9984838711085557536432677624420451614... +b = 0.9064167934681446247757331487619919695... +beta = 0.0935821965318553752242668512380080305... +kappa_limit = 0.0016729223595888711324653863199468081... +kappa = 0.001672922349588871 +``` + +The boundary saving equals `kappa_limit+10^-5`. The union movement exponent is below 0.686, and even its optional full-key surcharge leaves it below 0.781. The per-record phase metadata exponent `beta+2(1-epsilon)` is below 0.097, so calculating all g membership predicates remains cheaper than scanning one p-bit record. Core-face repair costs remain negligible at L=p^8. + +The common compiled H calls are still made globally across complete coarse-label ranges. Each selected bit needs only its own K=128G neighborhood to fit its original axis. Since `1-epsilon>0`, this holds eventually even though gK is larger than one axis width. The total support is O(g polylog p)=o(p), because beta<1. All support-router reservoirs, product row stock and exact endpoint restoration are those of the independently audited supplier. + +At the displayed parameters, `b>1/2`, `epsilon>b`, `beta>0`, `epsilon>beta`, `1-b-r-beta=zeta>0`, and `1-epsilon-r>0`. These respectively pay the wide-band separation, cap below original cell scale, growing group payload, number of groups, compiled local-gauge precision, and global gamma/rounding range. The raw global rounded weights may still have O(ad) logarithmic range during offline generation. The **data** only sees exact anchored ratios of range O(aB); approximating those ratios to the retained precision introduces `exp(o(p))` error amplification, already paid by the strict group guard. + +The assembled group endpoints are the same full normalized Haug inverse or Saug/4 operators as in the uncapped proof. Changing the interior partition changes only their factorization. It does not change their completed contraction bounds, intended zero-hole semantics, principal-core locality, or the final `2^D` scale compensation. Consequently the uncapped precision and error argument applies with the improved group gauge budget. + +`check_capped_outer.py` computes 44 exact positive slacks, every displayed cost margin, and five rejecting controls. The full-cell-gauge control is especially relevant: it fails, so the stronger result depends on the independently reviewed anchored-gauge proof. The local review retains the original supplier and all-size conditional assumptions. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-OUTER-ARITHMETIC.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-OUTER-ARITHMETIC.json new file mode 100644 index 0000000000..56c871f4f3 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-OUTER-ARITHMETIC.json @@ -0,0 +1,388 @@ +{ + "status": "PASS_CONDITIONAL_PHASE_FUSION_REVIEW", + "scope": "Local conditional transfer and exact arithmetic; inherited supplier and all-size interfaces remain assumptions. No upstream selected certificate is changed.", + "review": { + "integrated_review": "Root reviewed the complete standalone note, integrated proof chain, exact ledger, and independent cap/supplier/layout audits.", + "independent_cap_gauge": "CAPPED-GAUGE-AUDIT.md", + "independent_cap_layout": "CAPPED-SIGNOFF.md", + "supplier_support": "SUPPLIER-SUPPORT-AUDIT.md" + }, + "parameters": { + "a_bit": { + "rational": "1733427039589844234749/1000000000000000000000000", + "decimal": "0.001733427039589844234749" + }, + "a_eff": { + "rational": "67018505072324140917/40000000000000000000000", + "decimal": "0.001675462626808103522925" + }, + "complex_saving": { + "rational": "67018507072324140917/40000000000000000000000", + "decimal": "0.001675462676808103522925" + }, + "q": { + "rational": "67018503072324140917/40000000000000000000000", + "decimal": "0.001675462576808103522925" + }, + "r_spare": { + "rational": "1/1000000", + "decimal": "0.000001" + }, + "zeta": { + "rational": "1/100000000", + "decimal": "1E-8" + }, + "sigma_boundary": { + "rational": "1/100000", + "decimal": "0.00001" + }, + "stop": { + "rational": "1/1000000000", + "decimal": "1E-9" + }, + "epsilon": { + "rational": "1602932029994465428113567090153200000000000000/1605365971725539986393675267555861382073600889", + "decimal": "0.99848387110855575364326776244204516140889758204436646471254886062" + }, + "capped_block_power": { + "rational": "3631741843538363603786961767383/4006701850307232414091700000000", + "decimal": "0.90641679346814462477573314876199196952827856807257517068829472760" + }, + "beta_group": { + "rational": "3749559600000000000000/40067018503072324140917", + "decimal": "0.093582196531855375224266851238008030471721431927424829311705272400" + }, + "omega_upper": { + "rational": "45/16", + "decimal": "2.8125" + }, + "c_boundary": { + "rational": "3/32", + "decimal": "0.09375" + }, + "kappa": { + "rational": "1672922349588871/1000000000000000000", + "decimal": "0.001672922349588871" + }, + "selected": { + "rational": "836330098538459/500000000000000000", + "decimal": "0.001672660197076918" + }, + "lambda_": { + "rational": "39932981495927675859083/40000000000000000000000", + "decimal": "0.998324537398191896477075" + }, + "lambda_prime": { + "rational": "39932981496927675859083/40000000000000000000000", + "decimal": "0.998324537423191896477075" + }, + "tau": { + "rational": "39932981494927675859083/40000000000000000000000", + "decimal": "0.998324537373191896477075" + }, + "sigma": { + "rational": "39932981492927675859083/40000000000000000000000", + "decimal": "0.998324537323191896477075" + }, + "microbox_power": { + "rational": "8", + "decimal": "8" + }, + "halo_power": { + "rational": "3", + "decimal": "3" + } + }, + "margins": { + "main_transform": { + "rational": "268565262942277133237794921812759660918434199796211/160536597172553998639367526755586138207360088900000000", + "decimal": "0.0016729223595888711324653863199468081193809860282087059757458669773" + }, + "global_coordinate_router": { + "rational": "67018505072324140917/40000000000000000000000", + "decimal": "0.001675462626808103522925" + }, + "fused_gaussian": { + "rational": "268565262942277133237794921812759660918434199796211/160536597172553998639367526755586138207360088900000000", + "decimal": "0.0016729223595888711324653863199468081193809860282087059757458669773" + }, + "group_bit_router": { + "rational": "268565263693445502595657234197195111684434199796211/160536597172553998639367526755586138207360088900000000", + "decimal": "0.0016729223642679809590581550811601506812813875517947775721171084429" + }, + "group_scans": { + "rational": "152667615602647020756995267555861382073600889/1605365971725539986393675267555861382073600889", + "decimal": "0.095098325423299621580999088795962869062823849883058364599156411777" + }, + "boundary_batched_algebra": { + "rational": "270170628914002673224188597080315522300507800685211/160536597172553998639367526755586138207360088900000000", + "decimal": "0.0016829223595888711324653863199468081193809860282087059757458669773" + }, + "sparse_union_movement": { + "rational": "50464795843106818372778537326217184169040543916310211/160536597172553998639367526755586138207360088900000000", + "decimal": "0.31435072582773349590819853508193877764765955410078387666404059458" + }, + "sparse_union_full_key": { + "rational": "878478998384747396741111767383/4006701850307232414091700000000", + "decimal": "0.21925240040443387432719944628597590858483570421772551206488418280" + }, + "polynomial_products": { + "rational": "1602932029994465428113567090153200000000000000/1605365971725539986393675267555861382073600889", + "decimal": "0.99848387110855575364326776244204516140889758204436646471254886062" + }, + "microbox_face_corrections": { + "rational": "4668298183036122054984246889917045528294403556/1605365971725539986393675267555861382073600889", + "decimal": "2.9079339323595888711324653863199468081193809860282087059757458670" + } + }, + "slacks": { + "actual_bit_above_effective": { + "rational": "3622775798858794489/62500000000000000000000", + "decimal": "0.000057964412781740711824" + }, + "complex_above_effective": { + "rational": "1/20000000000", + "decimal": "5E-11" + }, + "complex_below_one_over_32": { + "rational": "1182981492927675859083/40000000000000000000000", + "decimal": "0.029574537323191896477075" + }, + "q_positive": { + "rational": "67018503072324140917/40000000000000000000000", + "decimal": "0.001675462576808103522925" + }, + "complex_endpoint": { + "rational": "1/10000000000", + "decimal": "1E-10" + }, + "q_below_effective_bit": { + "rational": "1/20000000000", + "decimal": "5E-11" + }, + "stop_positive": { + "rational": "1/1000000000", + "decimal": "1E-9" + }, + "stop_below_one": { + "rational": "999999999/1000000000", + "decimal": "0.999999999" + }, + "leaf_saving_above_effective_bit": { + "rational": "1932981492927675859083/40000000000000000000000000000000", + "decimal": "4.8324537323191896477075E-11" + }, + "q_below_internal": { + "rational": "1/20000000000", + "decimal": "5E-11" + }, + "q_below_leaf": { + "rational": "3932981492927675859083/40000000000000000000000000000000", + "decimal": "9.8324537323191896477075E-11" + }, + "lambda_above_tau": { + "rational": "1/40000000000", + "decimal": "2.5E-11" + }, + "lambda_above_sigma": { + "rational": "3/40000000000", + "decimal": "7.5E-11" + }, + "lambda_above_internal": { + "rational": "1/40000000000", + "decimal": "2.5E-11" + }, + "lambda_prime_above_lambda": { + "rational": "1/40000000000", + "decimal": "2.5E-11" + }, + "lambda_prime_above_leaf": { + "rational": "3932981492927675859083/40000000000000000000000000000000", + "decimal": "9.8324537323191896477075E-11" + }, + "epsilon_positive": { + "rational": "1602932029994465428113567090153200000000000000/1605365971725539986393675267555861382073600889", + "decimal": "0.99848387110855575364326776244204516140889758204436646471254886062" + }, + "epsilon_below_one": { + "rational": "2433941731074558280108177402661382073600889/1605365971725539986393675267555861382073600889", + "decimal": "0.0015161288914442463567322375579548385911024179556335352874511393772" + }, + "capped_block_above_band": { + "rational": "1628390918384747396741111767383/4006701850307232414091700000000", + "decimal": "0.40641679346814462477573314876199196952827856807257517068829472760" + }, + "capped_block_below_cell": { + "rational": "14780135356012934699216517036255884934639500533689789/160536597172553998639367526755586138207360088900000000", + "decimal": "0.092067077640411128867534613680053191880619013971791294024254133023" + }, + "group_positive": { + "rational": "3749559600000000000000/40067018503072324140917", + "decimal": "0.093582196531855375224266851238008030471721431927424829311705272400" + }, + "group_below_dimension": { + "rational": "1452698356122892965636680000000000000000000000/1605365971725539986393675267555861382073600889", + "decimal": "0.90490167457670037841900091120403713093717615011694163540084358822" + }, + "support_router_span": { + "rational": "36317458903072324140917/40067018503072324140917", + "decimal": "0.90641780346814462477573314876199196952827856807257517068829472760" + }, + "group_gauge_power_slack": { + "rational": "1/100000000", + "decimal": "1E-8" + }, + "actual_logarithmic_group_guard": { + "rational": "101/100000000", + "decimal": "0.00000101" + }, + "global_gamma_power_slack": { + "rational": "2432336365102832740121783727393826212218815399111/1605365971725539986393675267555861382073600889000000", + "decimal": "0.0015151288914442463567322375579548385911024179556335352874511393772" + }, + "actual_logarithmic_gamma_guard": { + "rational": "2433941731074558280108177402661382073600889/1605365971725539986393675267555861382073600889", + "decimal": "0.0015161288914442463567322375579548385911024179556335352874511393772" + }, + "alpha_logarithm_absorption": { + "rational": "1/1000000", + "decimal": "0.000001" + }, + "group_key_fits_record": { + "rational": "1452698356122892965636680000000000000000000000/1605365971725539986393675267555861382073600889", + "decimal": "0.90490167457670037841900091120403713093717615011694163540084358822" + }, + "membership_arithmetic_fits_record": { + "rational": "1450264414391818407356571822597338617926399111/1605365971725539986393675267555861382073600889", + "decimal": "0.90338554568525613206226867364608229234607373216130810011339244885" + }, + "microbox_halo_volume": { + "rational": "196585532915361620704585/40067018503072324140917", + "decimal": "4.9064178034681446247757331487619919695282785680725751706882947276" + }, + "boundary_positive_slack": { + "rational": "1/100000", + "decimal": "0.00001" + }, + "short_record_fallback": { + "rational": "64009691972259592449574424556617076733497945671686139566638347524787/64214638869021599455747010702234455282944035560000000000000000000000", + "decimal": "0.99680840848174765012034276244204516140889758204436646471254886062" + }, + "improvement": { + "rational": "262152511953/1000000000000000000", + "decimal": "2.62152511953E-7" + }, + "main_transform_above_kappa": { + "rational": "16053659929910823493457211548686499459924678309893681/1605365971725539986393675267555861382073600889000000000000000000", + "decimal": "1.0000000132465386319946808119380986028208705975745866977328894739E-11" + }, + "global_coordinate_router_above_kappa": { + "rational": "101611088769300917/40000000000000000000000", + "decimal": "0.000002540277219232522925" + }, + "fused_gaussian_above_kappa": { + "rational": "16053659929910823493457211548686499459924678309893681/1605365971725539986393675267555861382073600889000000000000000000", + "decimal": "1.0000000132465386319946808119380986028208705975745866977328894739E-11" + }, + "group_bit_router_above_kappa": { + "rational": "23565343623489446617301566056346499459924678309893681/1605365971725539986393675267555861382073600889000000000000000000", + "decimal": "1.4679109959058155081160150681281387551794777572117108442914158359E-11" + }, + "group_scans_above_kappa": { + "rational": "149981962989277909354528141831190997013103046461962568309893681/1605365971725539986393675267555861382073600889000000000000000000", + "decimal": "0.093425403073710750580999088795962869062823849883058364599156411777" + }, + "boundary_batched_algebra_above_kappa": { + "rational": "16053675770915329774760246132770162507235468814678309893681/1605365971725539986393675267555861382073600889000000000000000000", + "decimal": "0.000010000010000000132465386319946808119380986028208705975745866977329" + }, + "sparse_union_movement_above_kappa": { + "rational": "501962305817699072325318247537501456629907596625064678309893681/1605365971725539986393675267555861382073600889000000000000000000", + "decimal": "0.31267780347814462490819853508193877764765955410078387666404059458" + }, + "sparse_union_full_key_above_kappa": { + "rational": "8717760973112293445939482696586781065293/40067018503072324140917000000000000000000", + "decimal": "0.21757947805484500332719944628597590858483570421772551206488418280" + }, + "polynomial_products_above_kappa": { + "rational": "1600246377381096316711099964428529614939502157461962568309893681/1605365971725539986393675267555861382073600889000000000000000000", + "decimal": "0.99681094875896688264326776244204516140889758204436646471254886062" + }, + "microbox_face_corrections_above_kappa": { + "rational": "4665612530422752943581779764192375143233905713461962568309893681/1605365971725539986393675267555861382073600889000000000000000000", + "decimal": "2.9062610100100000001324653863199468081193809860282087059757458670" + } + }, + "controls": { + "endpoint_equality": { + "complex_above_effective": { + "rational": "0", + "decimal": "0" + }, + "complex_endpoint": { + "rational": "0", + "decimal": "0" + }, + "q_below_effective_bit": { + "rational": "0", + "decimal": "0" + }, + "leaf_saving_above_effective_bit": { + "rational": "-67018507072324140917/40000000000000000000000000000000", + "decimal": "-1.675462676808103522925E-12" + }, + "q_below_internal": { + "rational": "0", + "decimal": "0" + }, + "q_below_leaf": { + "rational": "-67018507072324140917/40000000000000000000000000000000", + "decimal": "-1.675462676808103522925E-12" + }, + "lambda_above_tau": { + "rational": "0", + "decimal": "0" + }, + "lambda_above_sigma": { + "rational": "0", + "decimal": "0" + }, + "lambda_above_internal": { + "rational": "0", + "decimal": "0" + }, + "lambda_prime_above_lambda": { + "rational": "0", + "decimal": "0" + }, + "lambda_prime_above_leaf": { + "rational": "-67018507072324140917/40000000000000000000000000000000", + "decimal": "-1.675462676808103522925E-12" + } + }, + "zero_group_guard": { + "group_gauge_power_slack": { + "rational": "0", + "decimal": "0" + } + }, + "zero_boundary_slack": { + "boundary_positive_slack": { + "rational": "0", + "decimal": "0" + } + }, + "old_per_axis_scan": { + "unreplaced_per_axis_scan_above_kappa": { + "rational": "-251710882294553122358948322009002986896953538037431690106319/1605365971725539986393675267555861382073600889000000000000000000", + "decimal": "-0.00015679345814462464326776244204516140889758204436646471254886062281" + } + }, + "unrecentered_full_cell_gauge": { + "unrecentered_group_gauge": { + "rational": "-147801337506469629736765306425806173787781184600889/1605365971725539986393675267555861382073600889000000", + "decimal": "-0.092067067640411128867534613680053191880619013971791294024254133023" + } + } + } +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-SIGNOFF.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-SIGNOFF.md new file mode 100644 index 0000000000..fc3456387b --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-SIGNOFF.md @@ -0,0 +1,89 @@ +# Capped-interior layout extension: positive signoff + +The earlier sparse-union layout proof extends to dyadic interior cap +`B=p^b infinity`. Individual guarded neighborhoods +fit the original long axis; the collection of all g controls does not have +to fit in a single axis. This is the same support proof already audited. + +Microedge correction is unchanged. The underlying rounded operator and its +physical bandwidth do not change when a factorization receives more cuts. +Only the principal restriction and Schur decomposition are repartitioned. +The retained Neumann/principal-window comparison still applies to that +same operator. With L=p^8 and halo A=p^3, the additional output fraction is +O(g p^-5), now about p^-4.9064. Its sparse gather, true-period correction and +old sequential local solvers are still negligible. Capping does not turn +this into a dense non-dyadic tensor halo. + +The pinned independent arithmetic checks give approximately + +``` +epsilon = .9984838711085558 +b = .9064167934681446 +beta = .0935821965318554 + +per-group union movement power = -.2192524004044339 +total union movement power = .6856492741722665 +total group scan power = .9049016745767004 +membership descriptor power = .0966144543147439. +``` + +`check_capped_layout.py` independently checks finite capped partitions, +dyadic block sizes, separator distances, worst-pattern elimination fill, +and these exact rational layout inequalities against the pinned candidate +JSON. No layout blocker was found. + +This signoff is specifically for carving, sparse support, actual stream +movement, descriptors, and inherited microedge placement. It does not +independently prove the newly anchored broad/narrow Gaussian formulas or +their final precision bound. Those remain the algebraic/analytic cap audit. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/FINAL-PACKAGE-REVIEW.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/FINAL-PACKAGE-REVIEW.json new file mode 100644 index 0000000000..66a4af697e --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/FINAL-PACKAGE-REVIEW.json @@ -0,0 +1,18 @@ +{ + "status": "PASS_CONDITIONAL_SCOPE_AND_PORTABLE_REPLAY_REVIEW", + "scope": "Reviewed final README, proof scope, attribution and verifier; independently reproduced 21 exact checks, 46 canonical native JSON receipts and all 58 file bindings against the completed run. Two false-acceptance controls reject. No independent human or formal theorem review is claimed.", + "conditions": [ + "Use latest support verifier and native capsule before generating final package manifest.", + "Optional matrix corollary retains omega_C<=9/4 as an explicit extra premise.", + "All inherited all-size and fixed-tape hypotheses remain." + ], + "reviewed_sha256": { + "verify.py": "93ef0f46e132485da6194587199b8f039e25b1b9f099f93bbdaeac5c0d66de7f", + "NATIVE-RECEIPT-CAPSULE.json": "a04d6bba3d15c11a219536b66a23012797484ae106ec1952ecd7b76f077ddb01", + "README.md": "61b371fe72353cd1d80cf2a1df5cf4e10df18ca78d2265acf43d263222895103", + "phase_fusion_note.tex": "b5957f38c98a68f2584a42cedf91d753180dab438129fdf749b441074f00d4e1", + "TASK.json": "494271a60db34e6651bfe164a0516c685081e899475ebf8f9fabe98a6a8014b5", + "VERIFY.json": "cb50aa523a0863a457181ca815e69a1b3b4d91ed1006a79263f4a8f18457c669", + "SOURCES.json": "14ce6fdc7c83e18ccf4fee19ff51062726c960ca44462a45af60dd686167d456" + } +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/FORWARD-SMALL-A-AUDIT.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/FORWARD-SMALL-A-AUDIT.md new file mode 100644 index 0000000000..0f7f80b3f7 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/FORWARD-SMALL-A-AUDIT.md @@ -0,0 +1,109 @@ +# Broad forward Gaussian: finite-block and completed-matrix conditioning + +This note supports the phase-assembly branch. It distinguishes the broad forward map S from the narrow T used in N=C T D. Its conclusions concern conditioning and local circuit guards; the final simultaneous tensor layout remains that branch's obligation. + +Let the narrow parameter be `a=pi alpha^2=Theta(log p)`, `rho=t/s=1+theta`, and `lambda=1/rho`. The forward map is + +`S_(k,j)=alpha^-1 exp[-b0(j-lambda*k)^2]`, `b0=pi/alpha^2`. + +Equivalently it uses the small resampling parameter + +`b=b0 lambda^2=pi/(alpha^2 rho^2)`. + +## 1. The bilateral bound works at every positive parameter + +The finite and bilateral LDU arguments in BILATERAL-LDU.md use a>=1 only for their final numerical simplification of the product c. For any b>0, define + +`c_b=prod_(m>=1)(1-exp(-2b rho m))`. + +The same proof gives, for the periodic normalized matrix and for every finite contiguous principal block with q-gaps at least 1 and |beta_i|<=1/2, + +`||N_b^-1|| <= c_b^-4 exp(b/2)/(1-exp(-b rho theta))^2`. + +There is an explicit useful product bound. Expand the logarithm and sum nonnegative terms: + +`log(c_b^-1)=sum_(k>=1) 1/[k(exp(2b rho k)-1)]` + +` <=(1/(2b rho)) sum_(k>=1)1/k^2=pi^2/(12b rho)`. + +At `b=pi/(alpha^2 rho^2)`, this implies + +`c_b^-4 <= exp(pi alpha^2 rho/3)=exp(a rho/3)`. + +Since b*rho*theta=pi*theta/(alpha^2 rho)<1 for alpha>=2 and theta<=1, its reciprocal gap is at most `2alpha^2 rho/(pi theta)`. Thus every such normalized block inverse has norm polynomial in p when alpha^2=O(log p) and theta^-1 is polynomial in p. + +## 2. Actual target-grid phase-cell block + +Embed source j at target coordinate i=q_j. On an original phase cell q_j=j+c, every selected target coordinate i in that cell corresponds to j=i-c. A square interior of the forward target-grid matrix is therefore + +`K_(k,i)=alpha^-1 exp[-b0(i-lambda*k-c)^2]`. + +Here both i and k run over one contiguous selected-target interval inside that cell. Put + +`q'_k=k+rho*c`, `beta'_k=rho*k-q'_k=theta*k-rho*c`. + +At a selected coordinate k=q_j, beta'_k is exactly the original beta_j, hence lies in [-1/2,1/2). Also q' has consecutive gap 1. Integrality of q' was never needed in the finite LDU proof; monotone separation and the beta bound suffice. Consequently + +`K=alpha^-1 N_b diag(exp(-b*(beta'_i)^2))`, + +and + +`||K^-1|| <= alpha exp(3b/4) c_b^-4/(1-exp(-b rho theta))^2` + +` =O(alpha^5 rho^2 theta^-2 exp(pi alpha^2 rho/3))=poly(p)`. + +This controls the **completed** interior inverse. It avoids multiplying the large individual diagonal-gauge norms to estimate K inverse. Target holes should be retained as boundary vertices, so every interior coordinate has the asserted original beta bound. + +## 3. Square completion of the global forward map + +Add one identity column e_h for every target hole h, and feed zero into these extra columns. This makes an invertible square t-by-t matrix H_aug without changing the desired forward result. Permute selected q_j rows/columns first and holes second. In that order, + +`H_aug = [ alpha^-1 N_b D_b^-1 0 ; R I ]`, + +where `D_b=diag(exp(b beta_j^2))` and R consists of broad Gaussian rows at holes. A Gaussian lattice-sum bound gives `||R||=O(1)` after the alpha^-1 factor. Thus + +`H_aug^-1=[ alpha D_b N_b^-1 0 ; -R alpha D_b N_b^-1 I ]` + +has polynomial row norm. The matrix itself also has O(1) row norm. Gaussian truncation and sufficiently accurate structure-preserving coefficient rounding perturb both it and all required interior blocks by exponentially small amounts, preserving these polynomial bounds. + +If A is the block-diagonal interior matrix and S is the completed boundary Schur complement, then S inverse is the boundary principal block of H_aug inverse; hence its norm is polynomial. Also + +`||S||<=||H_BB||+||H_BI|| ||A^-1|| ||H_IB||=poly(p)`. + +This is enough for the completed Schur map. To justify a particular sequential block-LU implementation, its prefix factor norms still need to be checked. The natural physical-prefix elimination sets consist of one contiguous selected-source prefix plus disjoint future interiors, with identity hole columns. That geometry offers the same uniform contiguous-block inverse bound; it should be made explicit in the assembly proof. + +## 4. Exact local Toeplitz split and guard range + +Choose an anchor m inside the target cell, and write x=i-m, y=k-m, + +`delta=(1-lambda)m-c`, with |delta|<=1/2. + +Then the exact factorization is + +`K_(k,i)=Drow(y) G(y,x) Dcol(x)`, + +`G(y,x)=exp[-b0 lambda(x-y)^2]`, + +`Dcol(x)=exp[-b0((1-lambda)x^2+2delta*x)]`, + +`Drow(y)=alpha^-1 exp[b0 lambda(1-lambda)y^2+2b0 delta lambda*y-b0 delta^2]`. + +Expansion gives exactly `-b0(delta+x-lambda*y)^2`; no approximate recentering is involved. On a phase cell of O(d) coordinates, the two diagonal logarithmic ranges are O(d/alpha^2). These are smaller than the O(alpha^2 d) narrow inverse gauges already paid by the proposed group size. + +## 5. SPD Toeplitz conditioning for the shallow circuit + +Let `gamma=b0 lambda=pi/(alpha^2 rho)`. The full Gaussian Toeplitz symbol has, by the Gaussian Poisson identity, + +`f(omega)=sqrt(pi/gamma) sum_(k in Z) exp[-(omega+2pi*k)^2/(4gamma)]`. + +For -pi<=omega<=pi, + +`sqrt(pi/gamma) exp[-pi^2/(4gamma)] <= f(omega) <= 1+sqrt(pi/gamma)`. + +Every finite principal Gaussian Toeplitz matrix has eigenvalues between these same bounds, by integrating the squared modulus of its coefficient polynomial against f. At alpha^2=O(log p), its condition number is polynomial in p. Truncation width O(sqrt(p/gamma)) and Cp-bit rounding perturb the matrix far less than its lower eigenvalue, so the actual symmetric rounded Toeplitz Ghat remains SPD with polynomial condition number. + +The low-displacement block-LU circuit of SHALLOW-TOEPLITZ.md extends from near identity to this SPD setting: every principal Schur complement has norm at most lambda_max and inverse norm at most lambda_min^-1, and ranks grow by the same additive displacement recurrence. Shear coefficients are polynomial in p; multiplying these bounds along O(log d) recursive levels gives exp(O(log^2 p)) partial-prefix growth. This calls for O(log^2 p) internal circuit guard bits per axis, rather than claiming the near-identity theorem's O(log p) unchanged. It is still below the group budget dominated by the local Gaussian diagonals. + +Dyadic interior subdivision from LOG-A-PHASE-SCHUR-AUDIT.md applies here too, using the broader width O(sqrt(p alpha^2)). It keeps target holes and separators as boundary, adds only polylogarithmic boundary volume, and lets every interior use a dyadic shallow circuit without 2^g padding. + +No numerical final exponent follows from these conditioning statements alone. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/HALO-THEOREM.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/HALO-THEOREM.md new file mode 100644 index 0000000000..60d59bb378 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/HALO-THEOREM.md @@ -0,0 +1,271 @@ +# Fast tensor convolution by core blocks and sparse face corrections + +This gives a constructive replacement for g dense halo scans. It applies to +a **translation-invariant separable compact stencil**, with optional +diagonal conjugations whose coefficients and tile gauges satisfy the +precision and sequential-access conditions below. It does not claim that +the separate Gaussian product-tree factorization has this form. + +Let g consecutive active axes have dyadic lengths S_i, with +`h=max_i log2 S_i`. Earlier coordinates are outer prefix fibers. Later +coordinates are a complete payload R, so they need no keys or transposition. +Let V denote the total bit volume, including B-bit coefficient records and +all spectators. Assume B=Theta(p), `g h=O(p)`, and the active group grows +superpolynomially. A fixed number of tapes may hold O(V) bits. + +The operation is + +``` +(Tf)(x) = sum_{z in [-L,L]^g} [product_i k_i(z_i)] f(x-z mod S), +``` + +where `L=poly(p)`. A fixed or polylogarithmic number of these operations and +diagonal scans is allowed. Kernel coefficients, coefficient products and +the required intermediates have O(p)-bit representations under the supplied +normalization contract. The retained grouped convolution engine on a +binary field of width k has cost `O(V k^(1-q) polylog p)`. Polynomial-length +one-axis convolution also has its unconditional quasilinear bit algorithm; +it does not invoke the improved bound being proved. + +Choose a dyadic tile side N dividing every S_i, with `N>4L` and `gL/N=o(1)`. +Write `b=log2 N`, `k=gb`, and `K0=O(g(h+b)+log g)=O(gh)` for a correction key. +Require `K0^2=O(B)` or retain the explicit extra metadata term below. + +The complete cost is + +``` +O(V [ (gb)^(1-a) polylog p + + (gb)^(1-q) polylog p + + polylog p + + (gL/N) (K0 + g polylog p) ]) ++ polynomial(p) setup, +``` + +plus `O((gL/N)V K0^2/B)` if metadata arithmetic is not absorbed by records. +All scans, duplication, sparse sorts, local transposes and final output +order are included. In particular, there is no gV layout term. + +## 1. One support-limited gather + +Within the active group, gather its g low b-bit fields into a contiguous +suffix using the support-at-most-2gb extension proved in +`SUPPORT-ROUTER.md`. The remaining active coarse bits remain in their +possibly scrambled order. Every coarse tile is now one contiguous block +of N^g complete R-payloads. No other active coarse bit is put into a new +stable order, and no spectator coordinate is gathered. + +The initial and inverse gather together cost +`O(V (gb)^(1-a) polylog p)`. The explicit permutation maps each physical +coarse tile name back to its logical vector; that small map is used only +for tile setup and sparse correction metadata. + +## 2. Interior outputs from ordinary cyclic convolution + +Flatten a tile by `phi(x)=sum_i x_i N^(g-1-i)` into Q=N^g slots. Put the +product kernel at offsets `psi(z)=sum_i z_i N^(g-1-i) mod Q` in an ordinary +one-dimensional cyclic convolution kernel. These offsets are distinct: +reduce a putative collision modulo N, use `2L= p^eta`, `g -> infinity`; alternatively a supplied sequential dense +kernel generator is an explicit acceptable input. + +If every tile coordinate satisfies `L<=x_ij: [0,N). +``` + +These 2g rectangles are disjoint and contain every discarded output once. +Their required unwrapped input rectangles have intervals + +``` +ij: [-L,N+L). +``` + +Coordinates outside `[0,N)` are taken from the correct neighboring coarse +tile, including periodic wrap in each actual axis. All input dimensions +are less than 2N; no assumption of independent full 2N padding is used. + +The total copied input volume is exactly + +``` +M = 6L V/N^g * sum_{j=0}^{g-1} N^j (N+2L)^(g-1-j) + = 3V [ (1+2L/N)^g - 1 ] + = O((gL/N)V). +``` + +The corrected output volume is +`V [1-(1-2L/N)^g] = O((gL/N)V)`. The formulas count corner duplication +exactly. An individual corner may have many destinations; its total traffic +is already included in M. No bound by worst-case 2^g multiplicity is charged +to all records. + +## 4. One full scan generates all correction copies + +For each original core tile, recover its logical coarse coordinates once. +Scan its local coordinate tuple with a binary odometer. Maintain flags for +membership in the four fixed edge intervals `[0,L)`, `[0,2L)`, +`[N-2L,N)` and `[N-L,N)`. Only coordinates changed by the odometer update +their flags. The number of coordinate updates over a whole tile is +`Q(1+1/N+...)<2Q`. Comparisons cost O(log N), and counters/head resets use +the retained amortized stream-counter convention. Maintain a count of +active near-boundary flags. A nonexceptional record takes no scan through +the g flags. + +For an exceptional record, enumerate candidate first-boundary axes from +the flag tape and all valid neighboring-tile choices. The exact choices +are the ones implemented in `sparse_copies` in `check_halo.py`: earlier +axes stay in the original tile; the selected face axis has its own or one +adjacent tile; each later axis has its own tile plus an adjacent tile only +when within L of that edge. Every emitted record carries + +``` +(j, side, destination coarse tile, unwrapped local coordinates). +``` + +These are K0=O(gh) bits. Precompute the plus/minus-one forms of each logical +coarse coordinate once per tile. A copy's logical neighbor is generated +by selecting those forms, then encoding the known scrambled coarse order. +All carries, periodic wraps and changed tile order are explicit. Using +ordinary binary arithmetic gives O(K0^2) safe metadata work per copy. + +The full scan costs O(V polylog p). The exceptional flag scans and address +work cost O(M K0^2/B+M) in bit-volume units when R includes the B-bit record. +Their setup per coarse tile is absorbed by its N^g payload. This is not an +unpaid nonlinear boundary-signature evaluation on every payload bit. + +## 5. Sparse radix gather and fixed-tape local processing + +Within each *earlier-coordinate prefix fiber*, stable-radix sort the copies +by the displayed key, with unwrapped local coordinates in ordinary tensor +order. Only the g active axes occur in the key; all following spectator +coordinates remain one R-block payload. A radix pass scans each complete +header and payload, splits into two bucket tapes, concatenates, and resets +the same fixed set of tapes. Since K0=O(B), each pass costs O(M); K0 passes +cost O(M K0). No simultaneous open tape per tile, face or corner is needed. + +Sorted copies form the exact input rectangles of section 3, consecutively. +Process one rectangle at a time. For each axis, expose its current local +coordinate field, apply the length-polynomial one-dimensional convolution, +and crop L positions from each end. Thus its length changes from its input +interval to the corresponding output interval. Other axes remain unchanged +until their own pass. This yields the tensor product of the restricted +one-dimensional maps, hence the exact desired face outputs. + +Every current axis has length at most N+2L=poly(p). Its mixed-radix transpose +is the retained short-field construction: pad **only that field** to its +next power of two temporarily, move its O(log p) bits using O(log p) linear +block interchanges, remove the temporary padding, and use the correct new +field length on return. The temporary factor below two is removed before +the next axis. A rectangle therefore costs its volume times +`O(g polylog p)` for movement and unconditional polynomial-length arithmetic. +Summing over rectangles costs `O(M g polylog p)`. Signed/complex dyadic +convolution can use sign splitting and ordinary Kronecker packing with +O(p+log N)=O(p) guard bits, followed by the unconditional quasilinear integer +multiplier; no improved supplier is used on this sparse path. + +After cropping, attach each output's physical coarse-tile and flat inner +address. Their keys are distinct because the face output partition is +disjoint. A second sparse radix sort orders them as holes in the retained +core-output stream. One merge scan replaces exactly those holes. The inverse +support-limited gather restores the original axis-major stream, including +the initially displaced coarse coordinates. All metadata is discarded. + +## 6. Parameters for the proposed partial fusion + +Use `d=p^epsilon`, `h=Theta(p/d)`, `g=p^(1-epsilon-zeta)` with fixed positive +zeta and epsilon>5/6. Suppose `L=O(p polylog p)` and take the dyadic side +`N=2^ceil((3/2)log2 p)`. The actual S_i eventually exceed every polynomial, +so N divides them and each periodic window is shorter than S_i. + +Then `K0=O(p^(2(1-epsilon)-zeta) polylog p)` and `K0^2=o(p)`. The two sparse +cost multipliers satisfy + +``` +(gL/N) K0 = O(p^(5/2-3epsilon-2zeta) polylog p) = o(1), +(gL/N) g = O(p^(3/2-2epsilon-2zeta) polylog p) = o(1). +``` + +All halo work is therefore O(V polylog p), below the desired +`O(V g^(1-a) polylog p)` routing term. The core convolution is +`O(V g^(1-q) polylog p)` since log N=Theta(log p). + +The bounded-gauge condition cited in `PARTIAL-FUSION.md` remains payable: +with `a0=Theta(log d)` and theta=Theta(1/d), its variation is + +``` +g [a0 theta N + a0/theta] + = O(p^(5/2-2epsilon-zeta) polylog p + + p^(1-zeta) polylog p) + = o(p) +``` + +for epsilon>5/6 and fixed zeta>0. Thus the larger polynomial tile does not +consume the O(p)-bit guard budget. This checks a layout/precision inequality; +it does not establish the missing Gaussian convolution factorization. + +## Diagonal and factorization boundary + +The theorem also applies to a fixed or polylogarithmic composition of these +translation-invariant convolutions and diagonal factors if every diagonal +scan/factor page has a proved sequential O(V polylog p) implementation and +all normalized tile-core and tile-halo values use O(p) bits. A tile-dependent +common scalar gauge may multiply every input to that tile and divide its +outputs; boundary copies must use the **destination** tile's gauge. No +enormous diagonal is formed and later canceled numerically by assertion. + +A concrete sufficient diagonal implementation is available for +`D(x)=product_i d_i(x_i)`. Supply each one-axis factor page in coordinate +order, with all normalized prefix products bounded to O(p) bits. Traverse +the rectangle by nested coordinate loops and retain the g successive prefix +products on work tape. Multiply by the innermost factor once per record; +outer prefix updates occur once per complete inner row, then once per +complete inner rectangle, and so on. With side lengths at least two their +number is less than twice the record count. Singleton axes are folded into +one constant per rectangle. Rewinding a factor page costs its length and is +charged to the corresponding completed row. Ordinary O(p)-bit multiplication +therefore gives O(V polylog p) scan cost with O(gp) temporary bits. This +argument uses bounded normalized **prefix products**; bounds on the final +product alone do not suffice. + +It does **not** cover an unbounded collection of different short kernels +inside one tile, a product-tree level with factor-two padding on all g axes, +or an unspecified transform-dependent sparse correction. Those require a +new representation theorem. In particular, the Gaussian_fast/product-tree +algorithm is not silently substituted for the translation-invariant kernel +assumed here. + +## Finite evidence + +`check_halo.py` verifies 5,632 exact outputs in three two/three-axis cyclic +examples, with asymmetric signed kernels, nontrivial diagonal conjugations, +periodic coarse carries, scrambled coarse order, unique sparse gather/scatter +keys and all local sequential crops. Pure flattening gives 3,040 wrong +boundary outputs across these examples; all are repaired. The exact copied +volumes equal `3V[(1+2L/N)^g-1]` in every case. These are constructive finite +controls; the preceding scan, metadata and volume arguments give the +conditional asymptotic claim. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/INDEPENDENT-FINAL-REVIEW.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/INDEPENDENT-FINAL-REVIEW.json new file mode 100644 index 0000000000..121a4ebf87 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/INDEPENDENT-FINAL-REVIEW.json @@ -0,0 +1,24 @@ +{ + "status": "NO_BLOCKING_GAP_FOUND_CONDITIONAL", + "unconditional_integer_multiplication_theorem": false, + "reviewed_current_phase_note_sha256": "08ecb1876695beee25484158e14cfd57c3d48f551a8a41d5abc998d71d674555", + "same_assumption_kappa": "0.001672922349588871", + "additional_matrix_premise_kappa": "0.001673360105405778", + "fixed_nonblocking_finding": "Generic SPD prefix bound required absolute scale M and 1/m rather than condition number alone; current note corrected.", + "remaining_nonblocking_evidence_limit": "Union checker is an algebraic dictionary control, not a tape implementation or two-window reuse simulation.", + "reports": { + "core_review.md": "13f2df4d5b240f9b89ca0ae44bba198c935532098ff4c1161631fcbd86b3e8b1", + "gaussian_layout_review.md": "ebd7188970f55b5979b1b1a13f874a31ed0ee6c82bee329e7ad0b2a38c42c430", + "layout_subreview.md": "637e4698a9fb02978ebc4032d8939ce0db9528e89e908c94d63b9f0d2a41f64a", + "union_subreview.md": "738b35a04d6871cd73b14b4165ae69a1feb3a103eb46e064a64a22c4c7426856" + }, + "premises_not_independently_certified": [ + "finite bit/complex suppliers", + "exact common-frame/mutable-source realization", + "whole-call row hosting", + "semantic guard C1=1", + "retained prime packing and fixed-tape interfaces", + "paid arbitrary-width equal-chunk interchange", + "additional omega_C<=9/4 premise" + ] +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/LOG-A-PHASE-SCHUR-AUDIT.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/LOG-A-PHASE-SCHUR-AUDIT.md new file mode 100644 index 0000000000..3bcf490a8c --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/LOG-A-PHASE-SCHUR-AUDIT.md @@ -0,0 +1,140 @@ +# Audit: logarithmic Gaussian width retains the phase-cell Schur solver + +This audit checks the analytic hypotheses of the retained rad20 phase-cell solver at `a=pi alpha^2=Theta(log p)`, `theta=Theta(1/d)`, even though `a theta` tends to zero. It also audits the shallow Toeplitz circuit algebra and identifies the actual matrix that must be precomputed. It does not certify the final tensor layout or multiplication exponent. + +Read inputs: `references/semantic-bulk/rad20/reports/review-bulk-resampling.md`, `review-phase-cell-inverse.md`, `downstream-phase-cell-inverse.md`, and `work/inplace_algebra_ultra/SHALLOW-TOEPLITZ.md`. + +## 1. The sharp elementary diagonal-dominance estimate + +Let `rho=1+theta`, `beta_i=rho*i-q_i`, and let the Gaussian row coefficient at integer offset h be + +`n_i,h=exp(-a[(rho*h+beta_i)^2-beta_(i+h)^2])`. + +The h=0 coefficient is 1. Set `g_i=q_i-q_(i-1)` and `g_(i+1)=q_(i+1)-q_i`, each in {1,2}. For the nearest coefficients, + +`n_i,-1=exp(-a*g_i*(2rho-2beta_i-g_i))`, + +`n_i,+1=exp(-a*g_(i+1)*(2rho+2beta_i-g_(i+1)))`. + +If g_i=1, the first exponent is exactly `1+2theta-2beta_i`; if g_i=2, that gap forces `beta_i=1/2-theta`, so the upper exponent is at least `1+2theta+2beta_i`. Consequently + +`n_i,-1+n_i,+1` + +` <=exp(-a(1+2theta-2beta_i))+exp(-a(1+2theta+2beta_i))` + +` <=exp(-2a theta)+exp(-2a(1+theta))`. + +The last step is convexity in beta on [-1/2,1/2]. The two nearest directions cannot both be charged as exp(-2a theta). + +For |h|>=2, + +`(rho*h+beta_i)^2-beta_(i+h)^2 >= h^2-|h|`, + +so their entire two-sided tail is below `4 exp(-2a)` for a>=1. Therefore + +`||N-I||_infinity <= exp(-2a theta)+5 exp(-2a)`. + +This includes nonzero periodic diagonal aliases in the tail; no alias is silently omitted from this bound. + +For p>=101, theta>=1/(4p), and `a>=4 log(16p)`, + +`1-exp(-2a theta) >= 1-exp(-1/(2p)) >=1/(4p)`, + +`5exp(-2a)<=5/(16p)^8<1/(8p)`. + +Hence N has row diagonal-dominance margin at least `1/(8p)` in the following robust sense: after deleting its tiny nonzero diagonal aliases, its diagonal is 1 and its off-diagonal row sum is at most `1-1/(8p)`. In particular the fixed-width inverse theorem is not needed to supply the retained strict row dominance. + +Choose the legal integer alpha by + +`alpha=ceil(sqrt((4/pi)log(16p)))`. + +Then a has the required lower bound and is O(log p). The old sufficient condition `u>=ceil(log2(8p))` need not be reused: the direct estimate above replaces that prerequisite. + +## 2. Actual rounded H, interior matrices, and guard range + +Use exactly the retained structure: + +- `w=ceil(sqrt(16p/u))+2`, u=alpha^2=a/pi; +- cell weights `a_j=exp(-a(1/4-beta_j^2)/theta)`; +- one globally fixed downward dyadic Toeplitz kernel `Ghat_delta` for |delta|<=w, zero outside, with Ghat_0=1; +- positive downward dyadic weights ahat_j; +- within a physical cell, define H_jk **exactly** as `ahat_j Ghat_(j-k)/ahat_k`; +- across cells, use the retained downward Gaussian entries; set H_jj=1. + +Thus the actual interior block being inverted is + +`A_cell=diag(ahat) Ghat_cell diag(ahat)^-1`. + +It is not the unrounded Gaussian matrix, and its retained truncated Ghat is not silently replaced by the infinite Gaussian kernel. + +The weight range is + +`0<=-log a_j<=a/(4theta)=O(a d)` + +under theta between 1/(4d) and 1/(2d-1). The old eventual condition u*d<=p holds whenever d=p^epsilon, epsilon<1, and u=O(log p). It bounds the old rational perturbation calculation by the same `2^(O(p)) eta` allowance. The stronger range `O(a d)` should be used for grouped tensor precision, rather than charging O(p) independently for every axis. + +Choose the coefficient precision high enough that `||H-N||<1/(16p)`, including the Gaussian truncation, omitted diagonal aliases and weight-ratio rounding. The retained bound `p*2^(16p+7)*eta+2^(-46p)` at eta=2^(-32768p) is more than sufficient. Then H has diagonal 1, row gap at least `1/(16p)`, row norm below 2, and inverse norm at most 16p. All clipped principal windows inherit the same row gap. The physical period cut must remain a cell boundary, as in the retained bulk review. + +## 3. Schur complement bounds without an a*theta>1 assumption + +A scalar elimination step on a strictly row-diagonally-dominant matrix cannot decrease its minimum absolute row gap. For pivot k, + +`gap_i(new) >= gap_i(old)+(|a_ik|/|a_kk|) gap_k(old)`. + +The full absolute row sum also cannot increase, since the added update row has off-pivot sum less than |a_kk|. Induction applies regardless of the signs of filled entries. Since the diagonal begins real positive and the correction magnitude is below it, the surviving diagonal remains positive. + +Consequently the exact Schur complement + +`S=H_BB-H_BI H_II^-1 H_IB` + +has row gap at least `1/(16p)`, row norm below 2, positive diagonal, and + +`||S^-1||_infinity<=16p`. + +Principal interior inverses also have norm at most 16p. Rounding S by a row perturbation below 1/(32p) preserves gap at least 1/(32p) and inverse norm at most 32p. A row has O(w) nonzeros; the retained P-grid readily meets this target. These are polynomial bounds on arbitrary signed inputs, with no factor equal to the number of cells. + +The boundary geometry is unchanged: keep first/last w vertices of each physical cell, yielding O(s*w/d) boundary vertices and circular half-bandwidth at most 2w. Schur fill only joins the two end groups of one cell, while original cross-cell entries join neighboring end groups. Actual inverse and LU coefficient tables must be precomputed for this H/S, not imported from the old parameter values. + +Thus the retained banded/cyclic boundary solver's gap-dependent proof remains applicable with fixed constants enlarged. The proposed batched boundary arithmetic still needs its own data-layout and Strassen error audit, but there is no analytic conditioning obstruction at logarithmic a. + +## 4. Apply the shallow circuit directly to Ghat inverse + +Because a is eventually larger than 4pi, the symmetric Toeplitz matrix Ghat_cell satisfies + +`max(||Ghat_cell-I||_1,||Ghat_cell-I||_infinity)<1/8`. + +Downward rounding only decreases this off-diagonal sum. The shallow full-Toeplitz theorem therefore applies directly to Ghat_cell. Reverse the resulting invertible circuit and invert its gates to obtain Ghat_cell inverse. This avoids the two-branch Gohberg-Semencul difference entirely. The interior inverse is: + +1. multiply by diag(ahat)^-1; +2. apply the reversed shallow circuit for Ghat_cell; +3. multiply by diag(ahat). + +Its only superpolynomial individual scale comes from the **local** weight range O(a d). Completed A_cell inverse has polynomial norm by the strict row gap. Across g axes, the uncompleted local weight contribution is at most exp(O(g*a*d)); choosing `g<=p/(d polylog p)` with sufficient logarithmic slack keeps the total data precision O(p). The shallow circuit contributes polynomial-in-d amplification per axis, hence only O(g log d) additional logarithmic range. This is a guard calculation, not a complete simultaneous-layer routing proof. + +## 5. Independent shallow-Toeplitz algebra audit and a length caveat + +The parity-split triangular identity, block Schur displacement formulas, Stein-generator telescoping identity, and bounded-prefix induction in SHALLOW-TOEPLITZ.md check algebraically. In particular the parity children run in parallel, avoiding the earlier erroneous sequential-depth recurrence. The full block-LU recursion also runs its two children in parallel, with O(log N) displacement rank after O(log N) levels. + +That document currently states its circuit theorem for dyadic N. Actual cell interiors are not generally dyadic. Padding every tensor axis to its next power of two would be invalid. A plausible exact extension has been communicated to its author: split an arbitrary N into balanced sizes differing by at most one; a near-square rectangular Toeplitz dirty shear is a square Toeplitz shear plus one extra row/column rank-one shear. The latter can be implemented by a binary tree of unitary 2-coordinate reductions and its inverse, without clean ancilla. The rectangular Stein identity telescopes as before. This extension needs its own written proof/controls before it is used as an established interface. + +No new final kappa is asserted by this audit. + +## 6. Dyadic interior subdivision resolves the length caveat + +No arbitrary-length shallow FFT theorem is actually needed. Refine the interior/boundary partition inside each original physical phase cell of length L as follows. Keep its first and last w vertices as boundary. Starting with the remaining interval of length R=L-2w: + +- while R>4w, choose the largest power of two B<=R-w; +- mark the next B vertices as one interior, the following w vertices as boundary, and replace R by R-B-w; +- once R<=4w, mark all remaining vertices as boundary. + +Every interior now has exactly dyadic length. If R>4w, then `B>(R-w)/2`, so the next remainder is less than R/2. There are `O(1+log(L/w))` interiors and the total boundary count in the cell is `O(w(1+log(L/w)))`. The final boundary group, including the initially reserved last w vertices, has size at most 5w; all inserted separators have size w. + +The width-w matrix H cannot connect two different new interiors: their separating boundary gap has w vertices, so their nearest physical coordinates differ by w+1. Each new interior is still a principal block of the SAME globally fixed Toeplitz-similar cell matrix. Its weights retain the original cell gauge; there is no new rescaling or rerounding at a subdivision boundary. + +Eliminating one dyadic interior fills only between its immediately neighboring boundary groups. Each such group has O(w) vertices. Original H edges also connect only the same group or neighboring groups; an interior has length greater than w in the loop above. Thus, in inherited physical boundary order, the new Schur complement has half-bandwidth O(w), not O(w log d). Only its number of rows grows by O(log d): + +`n_boundary=O((s/d) w log d)`. + +Clipped endpoint cells of size O(w) may be declared wholly boundary, adding only O(w) rows; preserve the original physical period cut. This is the same endpoint convention as the retained bulk review. + +The boundary solve and coupling work therefore gain only polylogarithmic factors. All dyadic interior blocks use the established SHALLOW-TOEPLITZ theorem directly, without padding any tensor axis and without requiring a non-dyadic Fourier circuit. This resolves the length caveat in section 5 for the intended phase-cell application; it does not prove the separate simultaneous tensor-layer routing claim. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MANIFEST-UPDATE.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MANIFEST-UPDATE.json new file mode 100644 index 0000000000..423d53d1eb --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MANIFEST-UPDATE.json @@ -0,0 +1,172 @@ +{ + "ALGEBRAIC-STABILITY-INDEPENDENT.md": "7873e7d9a99fdc9de3ee224b9925d3e277e9773d7f5f8c2d0f1c19b0e52bc87f", + "BILATERAL-LDU.md": "0d65e66d227464dda1a19f781ae0a0be671cbfd347c41e37ec954f3d629d8a77", + "CAPPED-GAUGE-AUDIT.md": "1030a34922709ab8d3434a4c57a4a58934ae268c237fb598cb415697da411c9f", + "CAPPED-INTERIORS.md": "983c5cab2d2398f2192a8aec07daecb655f2de136e12a37f75672a14d27172ba", + "CAPPED-OUTER-ARITHMETIC.json": "22caac9ec2ecf4d5743b7eb946b633911fbac55a714399556e87e2eae0457dec", + "CAPPED-SIGNOFF.md": "70e9175ebde200f8b016236adc88c4a1c4858945e7c3e5c453a8b6a5f79a263a", + "FORWARD-SMALL-A-AUDIT.md": "e37aaa30b15671a1dff00676b14572213efaaac99df202dbba5e09f57af487c0", + "HALO-THEOREM.md": "cb9e1da38400b658f9209e465b4e5896fadd17dc66afa862f38bae8d8c1f2058", + "INDEPENDENT-FINAL-REVIEW.json": "6b98e5222aa109a35be8b4fc9ec19669daebcc06d542ecec0a9c820da7930501", + "LOG-A-PHASE-SCHUR-AUDIT.md": "e05d6b8596c80b6e8676569a0ff464a29fa704c3304143f58914f47cdf38b272", + "MANIFEST.json": "9af581d640e9c69d513256cf69babb0717287642134cfc807cedcd79966c1706", + "MATRIX-COROLLARY-ARITHMETIC.json": "c6efc4d2f6d17159cefebf5c2dd6099a6327fe0911c5dd87623cad96c7d6c56a", + "MATRIX-COROLLARY-REVIEW.json": "5cd5e97f93a9b3e439bfeffb52139d7bb1730de96ad13b59b7e1b20fdca6a3f6", + "MATRIX-COROLLARY.md": "2d7fb1088e58bb86e574277733e082f135362215a69add71d9090213d32c9221", + "MATRIX-LAYOUT-CONTROLS.json": "f8bd8729cb8438188e90fb9149f598b825461c97b4ed290584ca4367f812a48a", + "MATRIX-LAYOUT-SIGNOFF.md": "4c8c62f723232e842dc3bbdcc4defcc8ff1aeb86ba9f694661899dc6783b13c4", + "MATRIX-SOURCE-CONSTRUCTIONS.json": "114c1d8fb70592455a80c73d8a1bc6bfc9aca4e7395a420b6331d5474b4d1917", + "MATRIX-SOURCE-COVERAGE.json": "fdc6849f97999a6cf99cdaa50591d24f78d6fb0bc580315f205452e5906b35cc", + "MATRIX-TRANSFER-MANIFEST.json": "35d98d7579a16dae36530b4e5f4d0b8f925a069daa3f6fe1ea5276916167e0c2", + "OUTER-ARITHMETIC.json": "050c61d90236c593fd0827d7edc297e05604884e4ec093659aee46a9ee336020", + "OUTER-AUDIT.md": "94799bfa2794eb867d6ba68593c3e92988ade083e74d895e8d07ae3b8d0670dc", + "PHASE-LAYOUT-AUDIT.md": "54aafc7afd09fe1a5312e69fad09c87422690543ab75c6ae35f6cbcc26b3eb8a", + "PROOF-AND-COVERAGE.md": "db7509d754bb7fc3381419e0fed2674f22a9d57d34e8420fd5afa3c688fde9aa", + "README.txt": "c0a7a1216652ad7d2f9ce09d16011d015e8205212edce3349f383115c9c287b5", + "REVIEW-RECEIPT.json": "97b20e50d3722fcde3831124a107df6c15c0ffdbb9e057b7867f41aaa2481800", + "ROOT-EXACT-REPLAY.json": "d36114abe9d7a83c327f49f5ea153c6dcada4a7421f5e74a9a5ceb392cecb994", + "ROOT-MATRIX-EXACT-REPLAY.json": "d6bd4fcb8a528655181b4aa3fd1bad7e6647a4ca5aa76ee7f2cdd800b698b225", + "SHALLOW-TOEPLITZ.md": "b384b93f3fb4a8c97da2e617ebc14d55cebb0a739070e7f8dbb66f63e24e9310", + "SUPPLIER-SUPPORT-AUDIT.md": "bd5b06eca043c5c871227264f6a954473c55cd16ec85bb420ff538fb8ec1d8d6", + "SUPPORT-ADVERSARIAL-AUDIT.md": "b1290f8720bf075ea2ad58d6070f3e1fc95c0155f8e33b165bc13439bbb9222d", + "SUPPORT-ROUTER.md": "6ddb322e11883c1177ba6cd1a77d23a1dac827d7290b32eaf642457b1d762a54", + "TENSOR-COMPILER.md": "4d3b8466598a864a234b978e25976648d4e761840aad9153dd18d73d3dfe4d15", + "check_capped_outer.py": "b4555c77de7a3ed4abc708a8d93363ef7c9a914be1091f80ab3ddea83f71230a", + "check_matrix_corollary.py": "30db2d8e0f40fcc5c91e25f74cdc54e46aa4a0353c725345f9bcf5744e0b617f", + "evidence/gaussian_fast_ultra/BILATERAL-CONTROLS.json": "eb3ba38d18bac4aceaffba39ef48dbb55bd15e6abcb68cdf66920d9d13ec00ab", + "evidence/gaussian_fast_ultra/BILATERAL-LDU.md": "0d65e66d227464dda1a19f781ae0a0be671cbfd347c41e37ec954f3d629d8a77", + "evidence/gaussian_fast_ultra/CAPPED-GAUGE-AUDIT.md": "1030a34922709ab8d3434a4c57a4a58934ae268c237fb598cb415697da411c9f", + "evidence/gaussian_fast_ultra/CAPPED-GAUGE-CONTROLS.json": "ae8f0eb121a2f4da5c3f982ee6e7f45dab7b18368cadb5d2060602b0393b7120", + "evidence/gaussian_fast_ultra/CYCLIC-SCAN-CONTROLS.json": "4c37249f12b4cb4df847d179df8f378fbf1f42917e9fa703b2d847146f29b95c", + "evidence/gaussian_fast_ultra/DYADIC-INTERIOR-CONTROLS.json": "afbaee9f56f6a66fd9421bba7dfa8c3610c12bd447b01d0e9d79f97d1216aa90", + "evidence/gaussian_fast_ultra/FORWARD-CELL-CONTROLS.json": "4417a518ba3b6833f06b4f5e33d4f73ea74100b9110cf20e8d1c2070f1833fcc", + "evidence/gaussian_fast_ultra/FORWARD-SMALL-A-AUDIT.md": "e37aaa30b15671a1dff00676b14572213efaaac99df202dbba5e09f57af487c0", + "evidence/gaussian_fast_ultra/LOG-A-PHASE-SCHUR-AUDIT.md": "e05d6b8596c80b6e8676569a0ff464a29fa704c3304143f58914f47cdf38b272", + "evidence/gaussian_fast_ultra/LOG-A-SCHUR-CONTROLS.json": "046191420a24d8b2c063c190af5e954c85e39357902988c4df79f5abcdf1596d", + "evidence/gaussian_fast_ultra/LOWER-CONTROLS.json": "323cb4acae960a6fa05527df5ede9d48e274883272b8ddb5151ebcee6dd26e52", + "evidence/gaussian_fast_ultra/LOWER-FACTOR.md": "dbc7eff783695e0f50fec57b0f7ca4212d51428eea04fa2ae5e0a9178fa69b30", + "evidence/gaussian_fast_ultra/README.md": "8fb5321b514af9260c44e150125205fe564efd073c456214f76bbdb358279cf0", + "evidence/gaussian_fast_ultra/UPPER-DATA-ALGORITHM.md": "46b98b9c013dc5a94c9f17fd85acd7c1896c8e93ad2ee4a7c34f583895f1daf0", + "evidence/gaussian_fast_ultra/UPPER-DATA-CONTROLS.json": "c9e6fd7f338f2cb78a0ed15ee944fde63549ae3d8522ab0874d184f3e252db76", + "evidence/gaussian_fast_ultra/UPPER-LIFTING.md": "69535a48416a5435ea2a5ef4ecfe70fde30c32c4043bfc56f1ae2d7f49cd34bd", + "evidence/gaussian_fast_ultra/UPPER-MERGE-CONTROLS.json": "c5729bdb36237c0691fba56d149019f78d94e996749532d907a84c35ef01319d", + "evidence/gaussian_fast_ultra/check_bilateral.py": "8d5c79bd4f4c96de5c1fa91553b19e3a62419333b414fc84dec894a4b729d5e0", + "evidence/gaussian_fast_ultra/check_capped_gauges.py": "121279bef47dd490bf29fc72ddbce547176cdaf1154af67dc8b96d7baa8cfc6f", + "evidence/gaussian_fast_ultra/check_cyclic_scan.py": "d25156f852cb95f013e0ee74b319fc8c20d6a7a53fa851543244d5af7898ee61", + "evidence/gaussian_fast_ultra/check_dyadic_interiors.py": "a39617147870719a0296eef77101c90df8fbe716841cb9ed823f36b94254c3e1", + "evidence/gaussian_fast_ultra/check_forward_cell.py": "082a0e46c175f6e59fe1f8c168ca56bc444c71a602c9b7318c0834aae1f2de90", + "evidence/gaussian_fast_ultra/check_log_a_schur.py": "a0f1116ce27ecbff18de7089ce1f56714ed7966dfa0105b20419d408feb7ca41", + "evidence/gaussian_fast_ultra/check_lower.py": "027c77d8ce33c3d5e3c436234668f11bafc3de8658b9c3d03d455eb0e4d71f95", + "evidence/gaussian_fast_ultra/check_upper_data.py": "de4f9df64cf31e94adb9a5d04b38d53d823d864f51632c49c7c80c6a46b5224d", + "evidence/gaussian_fast_ultra/check_upper_merge.py": "95c9908134905e3ebdd030375e36a942c886cfc59edde3c6a419f36da6754780", + "evidence/halo_layout_ultra/EMBEDDING-CONTROLS.json": "d0182e172f16b55ec64a5edfabb10816e416348ef2db15449f3ed4b47f3fec1f", + "evidence/halo_layout_ultra/HALO-CONTROLS.json": "ae370f7d7421f2f96e101a4b9d8082110507c47211220fd6ead065c2366aa828", + "evidence/halo_layout_ultra/HALO-THEOREM.md": "cb9e1da38400b658f9209e465b4e5896fadd17dc66afa862f38bae8d8c1f2058", + "evidence/halo_layout_ultra/MANIFEST.json": "37946d7691b90d39906d93581839bdf8ae2cf899d459e5520c39e782766e9327", + "evidence/halo_layout_ultra/PARAMETER-CHECK.json": "e38cdfc13f1959186d888383458c9030c4bd3c8c3915aea4743d55637d2f8d76", + "evidence/halo_layout_ultra/RAGGED-CONTROLS.json": "c3688f65565486b585727374abfbe478f7544aa61381bd73cc6ffa168b4221b6", + "evidence/halo_layout_ultra/RAGGED-PERIODS.md": "c6e4dfe7f58dac7c5a513ffb3a9ab4801ab0717efae5c1e764e570335402ff25", + "evidence/halo_layout_ultra/README.md": "575a3acfc18a0e05ffe04a8563318a2770ce32cd7bf3a5e6123ce2de39a1cd4c", + "evidence/halo_layout_ultra/RECTANGULAR-EMBEDDING.md": "e64447bff7e7717802ee049290faaf29e45db3e36a6f7fcec109184478f15f26", + "evidence/halo_layout_ultra/SPARSE-SHEAR-CONTROLS.json": "d3b9763f7ef6a3a5752c6c11a8a4d5f465646ad75b178a1c1b3363540fcc4871", + "evidence/halo_layout_ultra/SUPPORT-ROUTER.md": "6ddb322e11883c1177ba6cd1a77d23a1dac827d7290b32eaf642457b1d762a54", + "evidence/halo_layout_ultra/check_embedding.py": "597cb5304498456575c99d46a7fb503e04db28d5a7f57857b102b50f703b7464", + "evidence/halo_layout_ultra/check_halo.py": "0a3257cbb8f37b6cc9bb44019cb114ea2ae9b28738a416bff4bc712d1306e1b7", + "evidence/halo_layout_ultra/check_ragged.py": "54b761cfe3404d524af3a2abdf09bcea8dfb5cca6199c0c182cee310e3ca8c78", + "evidence/halo_layout_ultra/check_sparse_shear.py": "6e22c989e6bae92c4cd209c9336aad4359956cf370bdbd5f6b70609144598121", + "evidence/independent_fusion_review_ultra/CORE-SOURCES.json": "2546f47dacc47c2d63dc5bb9cc52ef86c5e02ee159c4fb6e00dfac3f8f34d89c", + "evidence/independent_fusion_review_ultra/FINAL-REVIEW.json": "6b98e5222aa109a35be8b4fc9ec19669daebcc06d542ecec0a9c820da7930501", + "evidence/independent_fusion_review_ultra/core_review.md": "13f2df4d5b240f9b89ca0ae44bba198c935532098ff4c1161631fcbd86b3e8b1", + "evidence/independent_fusion_review_ultra/gaussian_layout_review.md": "ebd7188970f55b5979b1b1a13f874a31ed0ee6c82bee329e7ad0b2a38c42c430", + "evidence/independent_fusion_review_ultra/layout_subreview.md": "637e4698a9fb02978ebc4032d8939ce0db9528e89e908c94d63b9f0d2a41f64a", + "evidence/independent_fusion_review_ultra/union_subreview.md": "738b35a04d6871cd73b14b4165ae69a1feb3a103eb46e064a64a22c4c7426856", + "evidence/inplace_algebra_ultra/CIRCUIT-REPLAY.json": "2ce5cf9ef9461e5897374ad389c26af66aeee85e8f514a9da4ed3bb2028cb1da", + "evidence/inplace_algebra_ultra/EXACT-ALGEBRA.json": "694898bfb1afcb3b8b8ef951634ac8919decdde0904350b355d254601ae3dc12", + "evidence/inplace_algebra_ultra/MANIFEST.json": "3b018dc660c6add775c12f75b9e8f5281825aeebc3888a508833ce6106c1229b", + "evidence/inplace_algebra_ultra/READING-COVERAGE.json": "756e52726b161eea27e27f1d519b05d4fb0ebf67ef9a67b33947194d5d02b709", + "evidence/inplace_algebra_ultra/SHALLOW-TOEPLITZ.md": "b384b93f3fb4a8c97da2e617ebc14d55cebb0a739070e7f8dbb66f63e24e9310", + "evidence/inplace_algebra_ultra/SOURCES.json": "fb3771f66771250aa9f4406ae9e7eb176f9cdef03976cbc9558440c674a4a94a", + "evidence/inplace_algebra_ultra/SUPPLIER-AUDIT-SOURCES.json": "d0c274d6edd6193b09d28e45e7cbfe9236fb35474d35ea3af0664ba36f9e006a", + "evidence/inplace_algebra_ultra/SUPPLIER-CAPACITY-CONTROLS.json": "6922b7d7a936d53846569ad3be53fe4f3c63d6cfe794f9279fdc6a1fe411ef0c", + "evidence/inplace_algebra_ultra/SUPPLIER-SUPPORT-AUDIT.md": "bd5b06eca043c5c871227264f6a954473c55cd16ec85bb420ff538fb8ec1d8d6", + "evidence/inplace_algebra_ultra/SUPPORT-ADVERSARIAL-AUDIT.md": "b1290f8720bf075ea2ad58d6070f3e1fc95c0155f8e33b165bc13439bbb9222d", + "evidence/inplace_algebra_ultra/TENSOR-COMPILER-CONTROLS.json": "db8a5c0dc2be956d83bc7667177252a4968e0ffaee8352e6a5dba5ab983d7ada", + "evidence/inplace_algebra_ultra/TENSOR-COMPILER.md": "4d3b8466598a864a234b978e25976648d4e761840aad9153dd18d73d3dfe4d15", + "evidence/inplace_algebra_ultra/check_circuits.py": "06d1861bfe8af543908e26557ffda7e451ff176bceb9bacfaf0f04f234b336d5", + "evidence/inplace_algebra_ultra/check_exact_algebra.py": "5ff7f25c55b370a1d0cda6c84ab9cdf2c7b0de3266d3f2e7a43280a6491074ab", + "evidence/inplace_algebra_ultra/check_supplier_capacity.py": "035ed96b39414eadec46e8de4bf3811b785862fd313deb044f42e17cf2ad3f78", + "evidence/inplace_algebra_ultra/check_tensor_compiler.py": "dc4b1f1884489215a2c2d0e8978a241e99e6c8c9f1d2fa2460c73d2c7d4ba30a", + "evidence/matrix_boundary_ultra/ALGEBRAIC-STABILITY-INDEPENDENT.md": "7873e7d9a99fdc9de3ee224b9925d3e277e9773d7f5f8c2d0f1c19b0e52bc87f", + "evidence/matrix_boundary_ultra/MANIFEST.json": "35d98d7579a16dae36530b4e5f4d0b8f925a069daa3f6fe1ea5276916167e0c2", + "evidence/matrix_boundary_ultra/PROOF-AND-COVERAGE.md": "db7509d754bb7fc3381419e0fed2674f22a9d57d34e8420fd5afa3c688fde9aa", + "evidence/matrix_boundary_ultra/SOURCE-CONSTRUCTIONS.json": "114c1d8fb70592455a80c73d8a1bc6bfc9aca4e7395a420b6331d5474b4d1917", + "evidence/matrix_boundary_ultra/SOURCE-COVERAGE.json": "fdc6849f97999a6cf99cdaa50591d24f78d6fb0bc580315f205452e5906b35cc", + "evidence/matrix_boundary_ultra/check_source_constructions.py": "9d387098403c0355be8e93158df02bae5a435b2366bd28efdf0b127e470c8c1c", + "evidence/phase_assembly_ultra/CAPPED-INTERIORS.md": "983c5cab2d2398f2192a8aec07daecb655f2de136e12a37f75672a14d27172ba", + "evidence/phase_assembly_ultra/CAPPED-OUTER-ARITHMETIC.json": "22caac9ec2ecf4d5743b7eb946b633911fbac55a714399556e87e2eae0457dec", + "evidence/phase_assembly_ultra/MATRIX-COROLLARY-ARITHMETIC.json": "c6efc4d2f6d17159cefebf5c2dd6099a6327fe0911c5dd87623cad96c7d6c56a", + "evidence/phase_assembly_ultra/MATRIX-COROLLARY-REVIEW.json": "5cd5e97f93a9b3e439bfeffb52139d7bb1730de96ad13b59b7e1b20fdca6a3f6", + "evidence/phase_assembly_ultra/MATRIX-COROLLARY.md": "2d7fb1088e58bb86e574277733e082f135362215a69add71d9090213d32c9221", + "evidence/phase_assembly_ultra/OUTER-ARITHMETIC.json": "050c61d90236c593fd0827d7edc297e05604884e4ec093659aee46a9ee336020", + "evidence/phase_assembly_ultra/OUTER-AUDIT.md": "94799bfa2794eb867d6ba68593c3e92988ade083e74d895e8d07ae3b8d0670dc", + "evidence/phase_assembly_ultra/README.md": "17c393075292b364899cb7c451cebbc9b20834f9fac934ce3740aba360c27246", + "evidence/phase_assembly_ultra/REVIEW-RECEIPT.json": "97b20e50d3722fcde3831124a107df6c15c0ffdbb9e057b7867f41aaa2481800", + "evidence/phase_assembly_ultra/check_capped_outer.py": "b4555c77de7a3ed4abc708a8d93363ef7c9a914be1091f80ab3ddea83f71230a", + "evidence/phase_assembly_ultra/check_matrix_corollary.py": "30db2d8e0f40fcc5c91e25f74cdc54e46aa4a0353c725345f9bcf5744e0b617f", + "evidence/phase_assembly_ultra/check_outer.py": "6a0c5f8956323615df8bc4b12996832471c0ae607d05429c9d70ad1b50568f10", + "evidence/phase_layout_audit_ultra/AUDIT.md": "54aafc7afd09fe1a5312e69fad09c87422690543ab75c6ae35f6cbcc26b3eb8a", + "evidence/phase_layout_audit_ultra/CAPPED-LAYOUT-CONTROLS.json": "6c1342c436fb487a5aa39cf563d2a2e2fddd94d3e441a6f4889cb1e2b73a478c", + "evidence/phase_layout_audit_ultra/CAPPED-SIGNOFF.md": "70e9175ebde200f8b016236adc88c4a1c4858945e7c3e5c453a8b6a5f79a263a", + "evidence/phase_layout_audit_ultra/MANIFEST.json": "c98559147bb498ac78af998eed63ab6661af934fa1a0df6844176b1811753fb9", + "evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-CONTROLS.json": "f8bd8729cb8438188e90fb9149f598b825461c97b4ed290584ca4367f812a48a", + "evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-SIGNOFF.md": "4c8c62f723232e842dc3bbdcc4defcc8ff1aeb86ba9f694661899dc6783b13c4", + "evidence/phase_layout_audit_ultra/PARAMETERS.json": "9f72cfffa34844764ca65a6b4431cc5c779141751df746019db9d3ad8f1dee92", + "evidence/phase_layout_audit_ultra/Q-EMBEDDING-CONTROLS.json": "24ead3534482397c00c23ad3dbbd4e930e02290e00c97765353d8783c6575c7d", + "evidence/phase_layout_audit_ultra/README.md": "0ec721f76dfa943e808afd3c2cc39ee69f1a6e5f4f77ba3c7c1373ad60db25af", + "evidence/phase_layout_audit_ultra/UNION-CONTROLS.json": "6c5262144215cc603bbc3bee93a9a6d9d2318d0177a59115fe560762998498f9", + "evidence/phase_layout_audit_ultra/check_capped_layout.py": "267d93ab5114ec160f88a6e65fd34c9f0696a686c36ba2dd194d6b70fa32a6bd", + "evidence/phase_layout_audit_ultra/check_q_embedding.py": "ac858a14bbaf37e0e412a7ada282cd1586632f52b8a979733e775f50130969b6", + "evidence/phase_layout_audit_ultra/check_union.py": "74608380d72567edcd4470c8d226b15848f9d3a4e5d77d652bdd8963480ab9ce", + "evidence/radical_reduction_ultra/CONTROLS.json": "12d9207e887fda73159a9e2e4776003ca6f905fc3dc45d77ced588a1c9f80cb2", + "evidence/radical_reduction_ultra/ERASURE-ROUNDING-CONTROL.json": "cceb2ade8ce5e18be3871f771955e38258f5eb4e39790c016aab96d8cf0488ef", + "evidence/radical_reduction_ultra/FIXED-A-LDU-CONTROLS.json": "d6bda457fff01e04b6565d84c7bdbac870569a2ba7ef18a1fc8db11b738faf38", + "evidence/radical_reduction_ultra/FIXED-A-PERIODIC-NORM-AUDIT.md": "21027a569588922c491b2c5b4f31e01ddb784f1f20cdf48b7d482d0e85b66bdb", + "evidence/radical_reduction_ultra/HOLES-AND-Q-LDU.md": "c6a032ed495325806ddf491c5c85bc822a7fdd613aff906a7be553960d0f85a3", + "evidence/radical_reduction_ultra/HOLES-CONTROLS.json": "3f7e98ce524d5fb2ba2f911a350081340215e806ae945abf15a2fa07988ca2f8", + "evidence/radical_reduction_ultra/LEDGER.json": "87eab0eb334ddc16e50cedbcab56320d2ff056c3dc87d7a5191171bb5a4c206e", + "evidence/radical_reduction_ultra/NEAREST-NEIGHBOR-CONTROLS.json": "b85eca6098847e7b2f77b49a6c8c35e33cf790bc5dd01b95e1334daef9af47f4", + "evidence/radical_reduction_ultra/NEAREST-NEIGHBOR-NORM.md": "7955383d50fc59b5c4c4d839c7e4d630add6208a3a233d7372a80309085ac6b2", + "evidence/radical_reduction_ultra/PARTIAL-FUSION.md": "811a3a0c88a90708add5b12fb0a05c25623f0af155010d5dcacd56021c55cba5", + "evidence/radical_reduction_ultra/POSITIVE-TREE-CONTROLS.json": "7b31811402ddda4668fe8375f6c90a6047511d50836dbb7cfc7ffcf24fe19a11", + "evidence/radical_reduction_ultra/Q-LDU-CONTROLS.json": "370a07aa1a56c656ec1f44d7651dfbe999ad0c19dede9036257cc2f29dc39452", + "evidence/radical_reduction_ultra/README.md": "7fb6138ac39689c6ffd9da2fab3e4f0e81008423554b8dfffea2d139929bd130", + "evidence/radical_reduction_ultra/REFINED-PHASE-FUSION.md": "b4367eac012624f803b3d2e3a72339e050a0071bbec37e6d33b2cf322bd70bc5", + "evidence/radical_reduction_ultra/STABLE-POSITIVE-TREE.md": "ec2f8a1c4273b81217545d2710bcffdd09b5c9ba9349e887b5f7bf6f5bddfdc7", + "evidence/radical_reduction_ultra/SYLVESTER-CONTROLS.json": "198af9f58c2950f17d8b1861ba4566bb2f6a0108a889a56db328fe67f8faa1a2", + "evidence/radical_reduction_ultra/TASK.md": "5eef77fb23f26f5bfb5dc8e376ed25e769924f2b6420ebfc8671e3b2a2f1f611", + "evidence/radical_reduction_ultra/check_constructions.py": "91387c9bd763a5c55c22a9907947bd07b6002f739aa6feedf6d3a02adea1e316", + "evidence/radical_reduction_ultra/check_erasure_rounding.py": "486efd4692665a548b94b79877abb76ad13157268f05c270c4e75d8f97700795", + "evidence/radical_reduction_ultra/check_fixed_a_ldu.py": "15134147317a7d789c9ea0ebd71db5ff11e59a20ef140f681d87478977734cd0", + "evidence/radical_reduction_ultra/check_holes.py": "99c5dc4601ea88b553f52e235d36fba0aeb867e7fcd54130cdb3eb115a9bb0d8", + "evidence/radical_reduction_ultra/check_ledger.py": "254342c05949e5cefe4f507a35487e0a1ffb7137a60d2b97831d5ad55d7d7ce5", + "evidence/radical_reduction_ultra/check_nearest_neighbor.py": "21bf2be683cefa7a760bf1e1bdaa647f57bf47ab86b13fd7a74e8d650f492913", + "evidence/radical_reduction_ultra/check_positive_tree.py": "46db2ce9122ff57bb4eeaa723db1f351891e671a7eaa7bf4fb61f85dafee9e37", + "evidence/radical_reduction_ultra/check_q_ldu.py": "ec2589ca9abe71d674ba9ccf81f289b1526f56f3001c48d22977accb1be3e4dc", + "evidence/radical_reduction_ultra/check_sylvester_factor.py": "60b21fda4ff451582087d30222a072eb1a214d531277e92883eaf28221aafced", + "frontier_fusion/FRONTIER-FUSION-ARITHMETIC.json": "82656563e7c8725f95c4aea7e273805a3d3faf34c495a330f1c91a036765414a", + "frontier_fusion/INDEPENDENT-SUBSTITUTION-RECEIPT.json": "49a8450289f1c1730c7d11d7c1506ad4af26fe9a1f76341f808a3025123e9519", + "frontier_fusion/INDEPENDENT-SUBSTITUTION-REVIEW.md": "b48d3e14083829db81336b639a6cfc698ac0dccc76fa2606d11b4be7a968ddeb", + "frontier_fusion/NATIVE-ADMISSION-BINDING.json": "ec4e89e0513958c1d553736cd06eedbc5f2aca61b40f92aeade3eb882bf588bc", + "frontier_fusion/REPRODUCE.txt": "76808b685f1623813658f5b596a4b8191a07e7c0810550f6fada7fb4a4992913", + "frontier_fusion/T74-APPENDIX.tex": "591f16424301eb186066d8ddea743b0a4115d1f7cd378921c688e1ec413b6d55", + "frontier_fusion/bind_native_admission.py": "166541ca2b7f3066f4c2421e5a9f1886d58e1fdd7677904976261ab2c82b32cb", + "frontier_fusion/check_frontier_fusion.py": "02f7f9ebf29487331171954c7ceb37ff5315e2f28a9d56096ebbf9fb865c70ab", + "frontier_fusion/independent_substitution_check.py": "579bbde41e90792818c2726b38dcab26cf5a2695d3348731e814175146b0a737", + "gaussian_fixed_width_note.tex": "6f3edb7b238f2b6af4f3e2d98dee90fe6f4ba063a5ccd120422e45c941712aab", + "phase_fusion_note.tex": "b5957f38c98a68f2584a42cedf91d753180dab438129fdf749b441074f00d4e1", + "target002_upstream/full-1661-verification/RESULT.json": "11c57817a4d43a489010a13af7621d37eeedc398308c036e63a2a97119443861", + "target002_upstream/full-1661-verification/STAGES.json": "c2edb01a61c03e04bf48e605422ff83c1d304e4d586268959d4ea24b743640fb", + "target002_upstream/pr1661/research/gmx-t74-p566-ep400/CLAIM.json": "70aacd45f9e6fac8675687cf50da32e0ad4e479d9a5c28f2afd1550311ae8849", + "target002_upstream/pr1661/research/gmx-t74-p566-ep400/MANIFEST.json": "d90d49eaa68e48c6992a07972e736ef4b9cd80274361cbbc1ec980d43f29ad7f", + "target002_upstream/pr1661/research/gmx-t74-p566-ep400/new/SPEC.json": "d6b6a2140f3a61ae8cfdd8b51a1131934d63d2dd8573c1b13eb2b9528f3c3db8" +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MANIFEST.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MANIFEST.json new file mode 100644 index 0000000000..02f55a7351 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MANIFEST.json @@ -0,0 +1,609 @@ +{ + "status": "PASS_CONDITIONAL_PHASE_FUSION_AND_MATRIX_COROLLARY_REVIEW", + "files": { + "ALGEBRAIC-STABILITY-INDEPENDENT.md": { + "bytes": 11743, + "sha256": "7873e7d9a99fdc9de3ee224b9925d3e277e9773d7f5f8c2d0f1c19b0e52bc87f" + }, + "BILATERAL-LDU.md": { + "bytes": 6305, + "sha256": "0d65e66d227464dda1a19f781ae0a0be671cbfd347c41e37ec954f3d629d8a77" + }, + "CAPPED-GAUGE-AUDIT.md": { + "bytes": 9176, + "sha256": "1030a34922709ab8d3434a4c57a4a58934ae268c237fb598cb415697da411c9f" + }, + "CAPPED-INTERIORS.md": { + "bytes": 7284, + "sha256": "983c5cab2d2398f2192a8aec07daecb655f2de136e12a37f75672a14d27172ba" + }, + "CAPPED-OUTER-ARITHMETIC.json": { + "bytes": 15832, + "sha256": "22caac9ec2ecf4d5743b7eb946b633911fbac55a714399556e87e2eae0457dec" + }, + "CAPPED-SIGNOFF.md": { + "bytes": 4414, + "sha256": "70e9175ebde200f8b016236adc88c4a1c4858945e7c3e5c453a8b6a5f79a263a" + }, + "FORWARD-SMALL-A-AUDIT.md": { + "bytes": 6689, + "sha256": "e37aaa30b15671a1dff00676b14572213efaaac99df202dbba5e09f57af487c0" + }, + "HALO-THEOREM.md": { + "bytes": 12777, + "sha256": "cb9e1da38400b658f9209e465b4e5896fadd17dc66afa862f38bae8d8c1f2058" + }, + "INDEPENDENT-FINAL-REVIEW.json": { + "bytes": 1375, + "sha256": "6b98e5222aa109a35be8b4fc9ec19669daebcc06d542ecec0a9c820da7930501" + }, + "LOG-A-PHASE-SCHUR-AUDIT.md": { + "bytes": 10642, + "sha256": "e05d6b8596c80b6e8676569a0ff464a29fa704c3304143f58914f47cdf38b272" + }, + "MATRIX-COROLLARY-ARITHMETIC.json": { + "bytes": 16783, + "sha256": "c6efc4d2f6d17159cefebf5c2dd6099a6327fe0911c5dd87623cad96c7d6c56a" + }, + "MATRIX-COROLLARY-REVIEW.json": { + "bytes": 7362, + "sha256": "5cd5e97f93a9b3e439bfeffb52139d7bb1730de96ad13b59b7e1b20fdca6a3f6" + }, + "MATRIX-COROLLARY.md": { + "bytes": 5787, + "sha256": "2d7fb1088e58bb86e574277733e082f135362215a69add71d9090213d32c9221" + }, + "MATRIX-LAYOUT-CONTROLS.json": { + "bytes": 1446, + "sha256": "f8bd8729cb8438188e90fb9149f598b825461c97b4ed290584ca4367f812a48a" + }, + "MATRIX-LAYOUT-SIGNOFF.md": { + "bytes": 3081, + "sha256": "4c8c62f723232e842dc3bbdcc4defcc8ff1aeb86ba9f694661899dc6783b13c4" + }, + "MATRIX-SOURCE-CONSTRUCTIONS.json": { + "bytes": 21018, + "sha256": "114c1d8fb70592455a80c73d8a1bc6bfc9aca4e7395a420b6331d5474b4d1917" + }, + "MATRIX-SOURCE-COVERAGE.json": { + "bytes": 2839, + "sha256": "fdc6849f97999a6cf99cdaa50591d24f78d6fb0bc580315f205452e5906b35cc" + }, + "MATRIX-TRANSFER-MANIFEST.json": { + "bytes": 1159, + "sha256": "35d98d7579a16dae36530b4e5f4d0b8f925a069daa3f6fe1ea5276916167e0c2" + }, + "OUTER-ARITHMETIC.json": { + "bytes": 13871, + "sha256": "050c61d90236c593fd0827d7edc297e05604884e4ec093659aee46a9ee336020" + }, + "OUTER-AUDIT.md": { + "bytes": 13831, + "sha256": "94799bfa2794eb867d6ba68593c3e92988ade083e74d895e8d07ae3b8d0670dc" + }, + "PHASE-LAYOUT-AUDIT.md": { + "bytes": 11774, + "sha256": "54aafc7afd09fe1a5312e69fad09c87422690543ab75c6ae35f6cbcc26b3eb8a" + }, + "PROOF-AND-COVERAGE.md": { + "bytes": 12130, + "sha256": "db7509d754bb7fc3381419e0fed2674f22a9d57d34e8420fd5afa3c688fde9aa" + }, + "README.txt": { + "bytes": 3032, + "sha256": "c0a7a1216652ad7d2f9ce09d16011d015e8205212edce3349f383115c9c287b5" + }, + "REVIEW-RECEIPT.json": { + "bytes": 3579, + "sha256": "97b20e50d3722fcde3831124a107df6c15c0ffdbb9e057b7867f41aaa2481800" + }, + "ROOT-EXACT-REPLAY.json": { + "bytes": 4315, + "sha256": "d36114abe9d7a83c327f49f5ea153c6dcada4a7421f5e74a9a5ceb392cecb994" + }, + "ROOT-MATRIX-EXACT-REPLAY.json": { + "bytes": 1875, + "sha256": "d6bd4fcb8a528655181b4aa3fd1bad7e6647a4ca5aa76ee7f2cdd800b698b225" + }, + "SHALLOW-TOEPLITZ.md": { + "bytes": 15480, + "sha256": "b384b93f3fb4a8c97da2e617ebc14d55cebb0a739070e7f8dbb66f63e24e9310" + }, + "SUPPLIER-SUPPORT-AUDIT.md": { + "bytes": 16557, + "sha256": "bd5b06eca043c5c871227264f6a954473c55cd16ec85bb420ff538fb8ec1d8d6" + }, + "SUPPORT-ADVERSARIAL-AUDIT.md": { + "bytes": 11276, + "sha256": "b1290f8720bf075ea2ad58d6070f3e1fc95c0155f8e33b165bc13439bbb9222d" + }, + "SUPPORT-ROUTER.md": { + "bytes": 7755, + "sha256": "6ddb322e11883c1177ba6cd1a77d23a1dac827d7290b32eaf642457b1d762a54" + }, + "TENSOR-COMPILER.md": { + "bytes": 13430, + "sha256": "4d3b8466598a864a234b978e25976648d4e761840aad9153dd18d73d3dfe4d15" + }, + "check_capped_outer.py": { + "bytes": 5692, + "sha256": "b4555c77de7a3ed4abc708a8d93363ef7c9a914be1091f80ab3ddea83f71230a" + }, + "check_matrix_corollary.py": { + "bytes": 6692, + "sha256": "30db2d8e0f40fcc5c91e25f74cdc54e46aa4a0353c725345f9bcf5744e0b617f" + }, + "evidence/gaussian_fast_ultra/BILATERAL-CONTROLS.json": { + "bytes": 332, + "sha256": "eb3ba38d18bac4aceaffba39ef48dbb55bd15e6abcb68cdf66920d9d13ec00ab" + }, + "evidence/gaussian_fast_ultra/BILATERAL-LDU.md": { + "bytes": 6305, + "sha256": "0d65e66d227464dda1a19f781ae0a0be671cbfd347c41e37ec954f3d629d8a77" + }, + "evidence/gaussian_fast_ultra/CAPPED-GAUGE-AUDIT.md": { + "bytes": 9176, + "sha256": "1030a34922709ab8d3434a4c57a4a58934ae268c237fb598cb415697da411c9f" + }, + "evidence/gaussian_fast_ultra/CAPPED-GAUGE-CONTROLS.json": { + "bytes": 446, + "sha256": "ae8f0eb121a2f4da5c3f982ee6e7f45dab7b18368cadb5d2060602b0393b7120" + }, + "evidence/gaussian_fast_ultra/CYCLIC-SCAN-CONTROLS.json": { + "bytes": 208, + "sha256": "4c37249f12b4cb4df847d179df8f378fbf1f42917e9fa703b2d847146f29b95c" + }, + "evidence/gaussian_fast_ultra/DYADIC-INTERIOR-CONTROLS.json": { + "bytes": 235, + "sha256": "afbaee9f56f6a66fd9421bba7dfa8c3610c12bd447b01d0e9d79f97d1216aa90" + }, + "evidence/gaussian_fast_ultra/FORWARD-CELL-CONTROLS.json": { + "bytes": 336, + "sha256": "4417a518ba3b6833f06b4f5e33d4f73ea74100b9110cf20e8d1c2070f1833fcc" + }, + "evidence/gaussian_fast_ultra/FORWARD-SMALL-A-AUDIT.md": { + "bytes": 6689, + "sha256": "e37aaa30b15671a1dff00676b14572213efaaac99df202dbba5e09f57af487c0" + }, + "evidence/gaussian_fast_ultra/LOG-A-PHASE-SCHUR-AUDIT.md": { + "bytes": 10642, + "sha256": "e05d6b8596c80b6e8676569a0ff464a29fa704c3304143f58914f47cdf38b272" + }, + "evidence/gaussian_fast_ultra/LOG-A-SCHUR-CONTROLS.json": { + "bytes": 412, + "sha256": "046191420a24d8b2c063c190af5e954c85e39357902988c4df79f5abcdf1596d" + }, + "evidence/gaussian_fast_ultra/LOWER-CONTROLS.json": { + "bytes": 411, + "sha256": "323cb4acae960a6fa05527df5ede9d48e274883272b8ddb5151ebcee6dd26e52" + }, + "evidence/gaussian_fast_ultra/LOWER-FACTOR.md": { + "bytes": 9538, + "sha256": "dbc7eff783695e0f50fec57b0f7ca4212d51428eea04fa2ae5e0a9178fa69b30" + }, + "evidence/gaussian_fast_ultra/README.md": { + "bytes": 3171, + "sha256": "8fb5321b514af9260c44e150125205fe564efd073c456214f76bbdb358279cf0" + }, + "evidence/gaussian_fast_ultra/UPPER-DATA-ALGORITHM.md": { + "bytes": 11830, + "sha256": "46b98b9c013dc5a94c9f17fd85acd7c1896c8e93ad2ee4a7c34f583895f1daf0" + }, + "evidence/gaussian_fast_ultra/UPPER-DATA-CONTROLS.json": { + "bytes": 466, + "sha256": "c9e6fd7f338f2cb78a0ed15ee944fde63549ae3d8522ab0874d184f3e252db76" + }, + "evidence/gaussian_fast_ultra/UPPER-LIFTING.md": { + "bytes": 3236, + "sha256": "69535a48416a5435ea2a5ef4ecfe70fde30c32c4043bfc56f1ae2d7f49cd34bd" + }, + "evidence/gaussian_fast_ultra/UPPER-MERGE-CONTROLS.json": { + "bytes": 231, + "sha256": "c5729bdb36237c0691fba56d149019f78d94e996749532d907a84c35ef01319d" + }, + "evidence/gaussian_fast_ultra/check_bilateral.py": { + "bytes": 1870, + "sha256": "8d5c79bd4f4c96de5c1fa91553b19e3a62419333b414fc84dec894a4b729d5e0" + }, + "evidence/gaussian_fast_ultra/check_capped_gauges.py": { + "bytes": 2966, + "sha256": "121279bef47dd490bf29fc72ddbce547176cdaf1154af67dc8b96d7baa8cfc6f" + }, + "evidence/gaussian_fast_ultra/check_cyclic_scan.py": { + "bytes": 948, + "sha256": "d25156f852cb95f013e0ee74b319fc8c20d6a7a53fa851543244d5af7898ee61" + }, + "evidence/gaussian_fast_ultra/check_dyadic_interiors.py": { + "bytes": 1586, + "sha256": "a39617147870719a0296eef77101c90df8fbe716841cb9ed823f36b94254c3e1" + }, + "evidence/gaussian_fast_ultra/check_forward_cell.py": { + "bytes": 1591, + "sha256": "082a0e46c175f6e59fe1f8c168ca56bc444c71a602c9b7318c0834aae1f2de90" + }, + "evidence/gaussian_fast_ultra/check_log_a_schur.py": { + "bytes": 1938, + "sha256": "a0f1116ce27ecbff18de7089ce1f56714ed7966dfa0105b20419d408feb7ca41" + }, + "evidence/gaussian_fast_ultra/check_lower.py": { + "bytes": 3977, + "sha256": "027c77d8ce33c3d5e3c436234668f11bafc3de8658b9c3d03d455eb0e4d71f95" + }, + "evidence/gaussian_fast_ultra/check_upper_data.py": { + "bytes": 3189, + "sha256": "de4f9df64cf31e94adb9a5d04b38d53d823d864f51632c49c7c80c6a46b5224d" + }, + "evidence/gaussian_fast_ultra/check_upper_merge.py": { + "bytes": 1593, + "sha256": "95c9908134905e3ebdd030375e36a942c886cfc59edde3c6a419f36da6754780" + }, + "evidence/halo_layout_ultra/EMBEDDING-CONTROLS.json": { + "bytes": 928, + "sha256": "d0182e172f16b55ec64a5edfabb10816e416348ef2db15449f3ed4b47f3fec1f" + }, + "evidence/halo_layout_ultra/HALO-CONTROLS.json": { + "bytes": 2860, + "sha256": "ae370f7d7421f2f96e101a4b9d8082110507c47211220fd6ead065c2366aa828" + }, + "evidence/halo_layout_ultra/HALO-THEOREM.md": { + "bytes": 12777, + "sha256": "cb9e1da38400b658f9209e465b4e5896fadd17dc66afa862f38bae8d8c1f2058" + }, + "evidence/halo_layout_ultra/PARAMETER-CHECK.json": { + "bytes": 632, + "sha256": "e38cdfc13f1959186d888383458c9030c4bd3c8c3915aea4743d55637d2f8d76" + }, + "evidence/halo_layout_ultra/RAGGED-CONTROLS.json": { + "bytes": 757, + "sha256": "c3688f65565486b585727374abfbe478f7544aa61381bd73cc6ffa168b4221b6" + }, + "evidence/halo_layout_ultra/RAGGED-PERIODS.md": { + "bytes": 4130, + "sha256": "c6e4dfe7f58dac7c5a513ffb3a9ab4801ab0717efae5c1e764e570335402ff25" + }, + "evidence/halo_layout_ultra/README.md": { + "bytes": 2962, + "sha256": "575a3acfc18a0e05ffe04a8563318a2770ce32cd7bf3a5e6123ce2de39a1cd4c" + }, + "evidence/halo_layout_ultra/RECTANGULAR-EMBEDDING.md": { + "bytes": 2910, + "sha256": "e64447bff7e7717802ee049290faaf29e45db3e36a6f7fcec109184478f15f26" + }, + "evidence/halo_layout_ultra/SPARSE-SHEAR-CONTROLS.json": { + "bytes": 725, + "sha256": "d3b9763f7ef6a3a5752c6c11a8a4d5f465646ad75b178a1c1b3363540fcc4871" + }, + "evidence/halo_layout_ultra/SUPPORT-ROUTER.md": { + "bytes": 7755, + "sha256": "6ddb322e11883c1177ba6cd1a77d23a1dac827d7290b32eaf642457b1d762a54" + }, + "evidence/halo_layout_ultra/check_embedding.py": { + "bytes": 1172, + "sha256": "597cb5304498456575c99d46a7fb503e04db28d5a7f57857b102b50f703b7464" + }, + "evidence/halo_layout_ultra/check_halo.py": { + "bytes": 7088, + "sha256": "0a3257cbb8f37b6cc9bb44019cb114ea2ae9b28738a416bff4bc712d1306e1b7" + }, + "evidence/halo_layout_ultra/check_ragged.py": { + "bytes": 3554, + "sha256": "54b761cfe3404d524af3a2abdf09bcea8dfb5cca6199c0c182cee310e3ca8c78" + }, + "evidence/halo_layout_ultra/check_sparse_shear.py": { + "bytes": 3770, + "sha256": "6e22c989e6bae92c4cd209c9336aad4359956cf370bdbd5f6b70609144598121" + }, + "evidence/independent_fusion_review_ultra/CORE-SOURCES.json": { + "bytes": 1919, + "sha256": "2546f47dacc47c2d63dc5bb9cc52ef86c5e02ee159c4fb6e00dfac3f8f34d89c" + }, + "evidence/independent_fusion_review_ultra/FINAL-REVIEW.json": { + "bytes": 1375, + "sha256": "6b98e5222aa109a35be8b4fc9ec19669daebcc06d542ecec0a9c820da7930501" + }, + "evidence/independent_fusion_review_ultra/core_review.md": { + "bytes": 11639, + "sha256": "13f2df4d5b240f9b89ca0ae44bba198c935532098ff4c1161631fcbd86b3e8b1" + }, + "evidence/independent_fusion_review_ultra/gaussian_layout_review.md": { + "bytes": 13105, + "sha256": "ebd7188970f55b5979b1b1a13f874a31ed0ee6c82bee329e7ad0b2a38c42c430" + }, + "evidence/independent_fusion_review_ultra/layout_subreview.md": { + "bytes": 8632, + "sha256": "637e4698a9fb02978ebc4032d8939ce0db9528e89e908c94d63b9f0d2a41f64a" + }, + "evidence/independent_fusion_review_ultra/union_subreview.md": { + "bytes": 4611, + "sha256": "738b35a04d6871cd73b14b4165ae69a1feb3a103eb46e064a64a22c4c7426856" + }, + "evidence/inplace_algebra_ultra/CIRCUIT-REPLAY.json": { + "bytes": 3590, + "sha256": "2ce5cf9ef9461e5897374ad389c26af66aeee85e8f514a9da4ed3bb2028cb1da" + }, + "evidence/inplace_algebra_ultra/EXACT-ALGEBRA.json": { + "bytes": 3920, + "sha256": "694898bfb1afcb3b8b8ef951634ac8919decdde0904350b355d254601ae3dc12" + }, + "evidence/inplace_algebra_ultra/READING-COVERAGE.json": { + "bytes": 1549, + "sha256": "756e52726b161eea27e27f1d519b05d4fb0ebf67ef9a67b33947194d5d02b709" + }, + "evidence/inplace_algebra_ultra/SHALLOW-TOEPLITZ.md": { + "bytes": 15480, + "sha256": "b384b93f3fb4a8c97da2e617ebc14d55cebb0a739070e7f8dbb66f63e24e9310" + }, + "evidence/inplace_algebra_ultra/SOURCES.json": { + "bytes": 1174, + "sha256": "fb3771f66771250aa9f4406ae9e7eb176f9cdef03976cbc9558440c674a4a94a" + }, + "evidence/inplace_algebra_ultra/SUPPLIER-AUDIT-SOURCES.json": { + "bytes": 5815, + "sha256": "d0c274d6edd6193b09d28e45e7cbfe9236fb35474d35ea3af0664ba36f9e006a" + }, + "evidence/inplace_algebra_ultra/SUPPLIER-CAPACITY-CONTROLS.json": { + "bytes": 511, + "sha256": "6922b7d7a936d53846569ad3be53fe4f3c63d6cfe794f9279fdc6a1fe411ef0c" + }, + "evidence/inplace_algebra_ultra/SUPPLIER-SUPPORT-AUDIT.md": { + "bytes": 16557, + "sha256": "bd5b06eca043c5c871227264f6a954473c55cd16ec85bb420ff538fb8ec1d8d6" + }, + "evidence/inplace_algebra_ultra/SUPPORT-ADVERSARIAL-AUDIT.md": { + "bytes": 11276, + "sha256": "b1290f8720bf075ea2ad58d6070f3e1fc95c0155f8e33b165bc13439bbb9222d" + }, + "evidence/inplace_algebra_ultra/TENSOR-COMPILER-CONTROLS.json": { + "bytes": 2809, + "sha256": "db8a5c0dc2be956d83bc7667177252a4968e0ffaee8352e6a5dba5ab983d7ada" + }, + "evidence/inplace_algebra_ultra/TENSOR-COMPILER.md": { + "bytes": 13430, + "sha256": "4d3b8466598a864a234b978e25976648d4e761840aad9153dd18d73d3dfe4d15" + }, + "evidence/inplace_algebra_ultra/check_circuits.py": { + "bytes": 10774, + "sha256": "06d1861bfe8af543908e26557ffda7e451ff176bceb9bacfaf0f04f234b336d5" + }, + "evidence/inplace_algebra_ultra/check_exact_algebra.py": { + "bytes": 4388, + "sha256": "5ff7f25c55b370a1d0cda6c84ab9cdf2c7b0de3266d3f2e7a43280a6491074ab" + }, + "evidence/inplace_algebra_ultra/check_supplier_capacity.py": { + "bytes": 1646, + "sha256": "035ed96b39414eadec46e8de4bf3811b785862fd313deb044f42e17cf2ad3f78" + }, + "evidence/inplace_algebra_ultra/check_tensor_compiler.py": { + "bytes": 10402, + "sha256": "dc4b1f1884489215a2c2d0e8978a241e99e6c8c9f1d2fa2460c73d2c7d4ba30a" + }, + "evidence/matrix_boundary_ultra/ALGEBRAIC-STABILITY-INDEPENDENT.md": { + "bytes": 11743, + "sha256": "7873e7d9a99fdc9de3ee224b9925d3e277e9773d7f5f8c2d0f1c19b0e52bc87f" + }, + "evidence/matrix_boundary_ultra/PROOF-AND-COVERAGE.md": { + "bytes": 12130, + "sha256": "db7509d754bb7fc3381419e0fed2674f22a9d57d34e8420fd5afa3c688fde9aa" + }, + "evidence/matrix_boundary_ultra/SOURCE-CONSTRUCTIONS.json": { + "bytes": 21018, + "sha256": "114c1d8fb70592455a80c73d8a1bc6bfc9aca4e7395a420b6331d5474b4d1917" + }, + "evidence/matrix_boundary_ultra/SOURCE-COVERAGE.json": { + "bytes": 2839, + "sha256": "fdc6849f97999a6cf99cdaa50591d24f78d6fb0bc580315f205452e5906b35cc" + }, + "evidence/matrix_boundary_ultra/check_source_constructions.py": { + "bytes": 6388, + "sha256": "9d387098403c0355be8e93158df02bae5a435b2366bd28efdf0b127e470c8c1c" + }, + "evidence/phase_assembly_ultra/CAPPED-INTERIORS.md": { + "bytes": 7284, + "sha256": "983c5cab2d2398f2192a8aec07daecb655f2de136e12a37f75672a14d27172ba" + }, + "evidence/phase_assembly_ultra/CAPPED-OUTER-ARITHMETIC.json": { + "bytes": 15832, + "sha256": "22caac9ec2ecf4d5743b7eb946b633911fbac55a714399556e87e2eae0457dec" + }, + "evidence/phase_assembly_ultra/MATRIX-COROLLARY-ARITHMETIC.json": { + "bytes": 16783, + "sha256": "c6efc4d2f6d17159cefebf5c2dd6099a6327fe0911c5dd87623cad96c7d6c56a" + }, + "evidence/phase_assembly_ultra/MATRIX-COROLLARY-REVIEW.json": { + "bytes": 7362, + "sha256": "5cd5e97f93a9b3e439bfeffb52139d7bb1730de96ad13b59b7e1b20fdca6a3f6" + }, + "evidence/phase_assembly_ultra/MATRIX-COROLLARY.md": { + "bytes": 5787, + "sha256": "2d7fb1088e58bb86e574277733e082f135362215a69add71d9090213d32c9221" + }, + "evidence/phase_assembly_ultra/OUTER-ARITHMETIC.json": { + "bytes": 13871, + "sha256": "050c61d90236c593fd0827d7edc297e05604884e4ec093659aee46a9ee336020" + }, + "evidence/phase_assembly_ultra/OUTER-AUDIT.md": { + "bytes": 13831, + "sha256": "94799bfa2794eb867d6ba68593c3e92988ade083e74d895e8d07ae3b8d0670dc" + }, + "evidence/phase_assembly_ultra/README.md": { + "bytes": 1708, + "sha256": "17c393075292b364899cb7c451cebbc9b20834f9fac934ce3740aba360c27246" + }, + "evidence/phase_assembly_ultra/REVIEW-RECEIPT.json": { + "bytes": 3579, + "sha256": "97b20e50d3722fcde3831124a107df6c15c0ffdbb9e057b7867f41aaa2481800" + }, + "evidence/phase_assembly_ultra/check_capped_outer.py": { + "bytes": 5692, + "sha256": "b4555c77de7a3ed4abc708a8d93363ef7c9a914be1091f80ab3ddea83f71230a" + }, + "evidence/phase_assembly_ultra/check_matrix_corollary.py": { + "bytes": 6692, + "sha256": "30db2d8e0f40fcc5c91e25f74cdc54e46aa4a0353c725345f9bcf5744e0b617f" + }, + "evidence/phase_assembly_ultra/check_outer.py": { + "bytes": 5355, + "sha256": "6a0c5f8956323615df8bc4b12996832471c0ae607d05429c9d70ad1b50568f10" + }, + "evidence/phase_layout_audit_ultra/AUDIT.md": { + "bytes": 11774, + "sha256": "54aafc7afd09fe1a5312e69fad09c87422690543ab75c6ae35f6cbcc26b3eb8a" + }, + "evidence/phase_layout_audit_ultra/CAPPED-LAYOUT-CONTROLS.json": { + "bytes": 3292, + "sha256": "6c1342c436fb487a5aa39cf563d2a2e2fddd94d3e441a6f4889cb1e2b73a478c" + }, + "evidence/phase_layout_audit_ultra/CAPPED-SIGNOFF.md": { + "bytes": 4414, + "sha256": "70e9175ebde200f8b016236adc88c4a1c4858945e7c3e5c453a8b6a5f79a263a" + }, + "evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-CONTROLS.json": { + "bytes": 1446, + "sha256": "f8bd8729cb8438188e90fb9149f598b825461c97b4ed290584ca4367f812a48a" + }, + "evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-SIGNOFF.md": { + "bytes": 3081, + "sha256": "4c8c62f723232e842dc3bbdcc4defcc8ff1aeb86ba9f694661899dc6783b13c4" + }, + "evidence/phase_layout_audit_ultra/PARAMETERS.json": { + "bytes": 762, + "sha256": "9f72cfffa34844764ca65a6b4431cc5c779141751df746019db9d3ad8f1dee92" + }, + "evidence/phase_layout_audit_ultra/Q-EMBEDDING-CONTROLS.json": { + "bytes": 1297, + "sha256": "24ead3534482397c00c23ad3dbbd4e930e02290e00c97765353d8783c6575c7d" + }, + "evidence/phase_layout_audit_ultra/README.md": { + "bytes": 2558, + "sha256": "0ec721f76dfa943e808afd3c2cc39ee69f1a6e5f4f77ba3c7c1373ad60db25af" + }, + "evidence/phase_layout_audit_ultra/UNION-CONTROLS.json": { + "bytes": 1434, + "sha256": "6c5262144215cc603bbc3bee93a9a6d9d2318d0177a59115fe560762998498f9" + }, + "evidence/phase_layout_audit_ultra/check_capped_layout.py": { + "bytes": 3232, + "sha256": "267d93ab5114ec160f88a6e65fd34c9f0696a686c36ba2dd194d6b70fa32a6bd" + }, + "evidence/phase_layout_audit_ultra/check_q_embedding.py": { + "bytes": 2408, + "sha256": "ac858a14bbaf37e0e412a7ada282cd1586632f52b8a979733e775f50130969b6" + }, + "evidence/phase_layout_audit_ultra/check_union.py": { + "bytes": 5165, + "sha256": "74608380d72567edcd4470c8d226b15848f9d3a4e5d77d652bdd8963480ab9ce" + }, + "evidence/radical_reduction_ultra/CONTROLS.json": { + "bytes": 416, + "sha256": "12d9207e887fda73159a9e2e4776003ca6f905fc3dc45d77ced588a1c9f80cb2" + }, + "evidence/radical_reduction_ultra/ERASURE-ROUNDING-CONTROL.json": { + "bytes": 425, + "sha256": "cceb2ade8ce5e18be3871f771955e38258f5eb4e39790c016aab96d8cf0488ef" + }, + "evidence/radical_reduction_ultra/FIXED-A-LDU-CONTROLS.json": { + "bytes": 329, + "sha256": "d6bda457fff01e04b6565d84c7bdbac870569a2ba7ef18a1fc8db11b738faf38" + }, + "evidence/radical_reduction_ultra/FIXED-A-PERIODIC-NORM-AUDIT.md": { + "bytes": 3422, + "sha256": "21027a569588922c491b2c5b4f31e01ddb784f1f20cdf48b7d482d0e85b66bdb" + }, + "evidence/radical_reduction_ultra/HOLES-AND-Q-LDU.md": { + "bytes": 12801, + "sha256": "c6a032ed495325806ddf491c5c85bc822a7fdd613aff906a7be553960d0f85a3" + }, + "evidence/radical_reduction_ultra/HOLES-CONTROLS.json": { + "bytes": 313, + "sha256": "3f7e98ce524d5fb2ba2f911a350081340215e806ae945abf15a2fa07988ca2f8" + }, + "evidence/radical_reduction_ultra/LEDGER.json": { + "bytes": 1987, + "sha256": "87eab0eb334ddc16e50cedbcab56320d2ff056c3dc87d7a5191171bb5a4c206e" + }, + "evidence/radical_reduction_ultra/NEAREST-NEIGHBOR-CONTROLS.json": { + "bytes": 362, + "sha256": "b85eca6098847e7b2f77b49a6c8c35e33cf790bc5dd01b95e1334daef9af47f4" + }, + "evidence/radical_reduction_ultra/NEAREST-NEIGHBOR-NORM.md": { + "bytes": 3234, + "sha256": "7955383d50fc59b5c4c4d839c7e4d630add6208a3a233d7372a80309085ac6b2" + }, + "evidence/radical_reduction_ultra/PARTIAL-FUSION.md": { + "bytes": 4169, + "sha256": "811a3a0c88a90708add5b12fb0a05c25623f0af155010d5dcacd56021c55cba5" + }, + "evidence/radical_reduction_ultra/POSITIVE-TREE-CONTROLS.json": { + "bytes": 467, + "sha256": "7b31811402ddda4668fe8375f6c90a6047511d50836dbb7cfc7ffcf24fe19a11" + }, + "evidence/radical_reduction_ultra/Q-LDU-CONTROLS.json": { + "bytes": 399, + "sha256": "370a07aa1a56c656ec1f44d7651dfbe999ad0c19dede9036257cc2f29dc39452" + }, + "evidence/radical_reduction_ultra/README.md": { + "bytes": 18511, + "sha256": "7fb6138ac39689c6ffd9da2fab3e4f0e81008423554b8dfffea2d139929bd130" + }, + "evidence/radical_reduction_ultra/REFINED-PHASE-FUSION.md": { + "bytes": 7276, + "sha256": "b4367eac012624f803b3d2e3a72339e050a0071bbec37e6d33b2cf322bd70bc5" + }, + "evidence/radical_reduction_ultra/STABLE-POSITIVE-TREE.md": { + "bytes": 8219, + "sha256": "ec2f8a1c4273b81217545d2710bcffdd09b5c9ba9349e887b5f7bf6f5bddfdc7" + }, + "evidence/radical_reduction_ultra/SYLVESTER-CONTROLS.json": { + "bytes": 322, + "sha256": "198af9f58c2950f17d8b1861ba4566bb2f6a0108a889a56db328fe67f8faa1a2" + }, + "evidence/radical_reduction_ultra/TASK.md": { + "bytes": 2172, + "sha256": "5eef77fb23f26f5bfb5dc8e376ed25e769924f2b6420ebfc8671e3b2a2f1f611" + }, + "evidence/radical_reduction_ultra/check_constructions.py": { + "bytes": 6600, + "sha256": "91387c9bd763a5c55c22a9907947bd07b6002f739aa6feedf6d3a02adea1e316" + }, + "evidence/radical_reduction_ultra/check_erasure_rounding.py": { + "bytes": 1509, + "sha256": "486efd4692665a548b94b79877abb76ad13157268f05c270c4e75d8f97700795" + }, + "evidence/radical_reduction_ultra/check_fixed_a_ldu.py": { + "bytes": 2440, + "sha256": "15134147317a7d789c9ea0ebd71db5ff11e59a20ef140f681d87478977734cd0" + }, + "evidence/radical_reduction_ultra/check_holes.py": { + "bytes": 2909, + "sha256": "99c5dc4601ea88b553f52e235d36fba0aeb867e7fcd54130cdb3eb115a9bb0d8" + }, + "evidence/radical_reduction_ultra/check_ledger.py": { + "bytes": 2289, + "sha256": "254342c05949e5cefe4f507a35487e0a1ffb7137a60d2b97831d5ad55d7d7ce5" + }, + "evidence/radical_reduction_ultra/check_nearest_neighbor.py": { + "bytes": 1795, + "sha256": "21bf2be683cefa7a760bf1e1bdaa647f57bf47ab86b13fd7a74e8d650f492913" + }, + "evidence/radical_reduction_ultra/check_positive_tree.py": { + "bytes": 3454, + "sha256": "46db2ce9122ff57bb4eeaa723db1f351891e671a7eaa7bf4fb61f85dafee9e37" + }, + "evidence/radical_reduction_ultra/check_q_ldu.py": { + "bytes": 2689, + "sha256": "ec2589ca9abe71d674ba9ccf81f289b1526f56f3001c48d22977accb1be3e4dc" + }, + "evidence/radical_reduction_ultra/check_sylvester_factor.py": { + "bytes": 1955, + "sha256": "60b21fda4ff451582087d30222a072eb1a214d531277e92883eaf28221aafced" + }, + "gaussian_fixed_width_note.tex": { + "bytes": 8328, + "sha256": "6f3edb7b238f2b6af4f3e2d98dee90fe6f4ba063a5ccd120422e45c941712aab" + }, + "phase_fusion_note.tex": { + "bytes": 33757, + "sha256": "08ecb1876695beee25484158e14cfd57c3d48f551a8a41d5abc998d71d674555" + } + } +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY-ARITHMETIC.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY-ARITHMETIC.json new file mode 100644 index 0000000000..54ad0ed498 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY-ARITHMETIC.json @@ -0,0 +1,414 @@ +{ + "status": "PASS_CONDITIONAL_MATRIX_PHASE_FUSION_REVIEW", + "scope": "Additional matrix-conditioned corollary. Assumes supplied omega_C<=9/4 theorem and the effective algebraic stability transfer, as well as all first-transfer assumptions.", + "review": { + "integrated": "Root read the matrix corollary and independent layout signoff, reproduced the exact parameters and ledger, and replayed matrix source construction controls.", + "matrix_source": "PROOF-AND-COVERAGE.md", + "effective_stability": "ALGEBRAIC-STABILITY-INDEPENDENT.md", + "independent_layout": "MATRIX-LAYOUT-SIGNOFF.md" + }, + "omitted_row": { + "name": "optional full-coordinate-key union surcharge", + "reason": "The actual U_i complete-rectangle extraction, one-field transpose, and ordered merge do not sort union records. Sparse microhalo keys remain paid in their separate cost." + }, + "parameters": { + "a_bit": { + "rational": "1733427039589844234749/1000000000000000000000000", + "decimal": "0.001733427039589844234749" + }, + "a_eff": { + "rational": "67018505072324140917/40000000000000000000000", + "decimal": "0.001675462626808103522925" + }, + "complex_saving": { + "rational": "67018507072324140917/40000000000000000000000", + "decimal": "0.001675462676808103522925" + }, + "q": { + "rational": "67018503072324140917/40000000000000000000000", + "decimal": "0.001675462576808103522925" + }, + "r_spare": { + "rational": "1/1000000", + "decimal": "0.000001" + }, + "zeta": { + "rational": "1/100000000", + "decimal": "1E-8" + }, + "sigma_union": { + "rational": "1/100000", + "decimal": "0.00001" + }, + "stop": { + "rational": "1/1000000000", + "decimal": "1E-9" + }, + "epsilon": { + "rational": "3204021080669390695403468340153200000000000000/3208046711848432952030355267555861382073600889", + "decimal": "0.99874514570995048179732933476913026729312515313683012792547577565" + }, + "capped_block_power": { + "rational": "6006737803538363603786961767383/8006701850307232414091700000000", + "decimal": "0.75021374791267813012557319136042532178866352100676648857598350268" + }, + "beta_group": { + "rational": "19999559600000000000000/80067018503072324140917", + "decimal": "0.24978524208732186987442680863957467821133647899323351142401649732" + }, + "matrix_exponent": { + "rational": "19/8", + "decimal": "2.375" + }, + "matrix_source_bound": { + "rational": "9/4", + "decimal": "2.25" + }, + "c_boundary": { + "rational": "5/16", + "decimal": "0.3125" + }, + "kappa": { + "rational": "836680052702889/500000000000000000", + "decimal": "0.001673360105405778" + }, + "selected": { + "rational": "836330098538459/500000000000000000", + "decimal": "0.001672660197076918" + }, + "first_reviewed_transfer": { + "rational": "1672922349588871/1000000000000000000", + "decimal": "0.001672922349588871" + }, + "lambda_": { + "rational": "39932981495927675859083/40000000000000000000000", + "decimal": "0.998324537398191896477075" + }, + "lambda_prime": { + "rational": "39932981496927675859083/40000000000000000000000", + "decimal": "0.998324537423191896477075" + }, + "tau": { + "rational": "39932981494927675859083/40000000000000000000000", + "decimal": "0.998324537373191896477075" + }, + "sigma": { + "rational": "39932981492927675859083/40000000000000000000000", + "decimal": "0.998324537323191896477075" + }, + "microbox_power": { + "rational": "8", + "decimal": "8" + }, + "halo_power": { + "rational": "3", + "decimal": "3" + } + }, + "margins": { + "main_transform": { + "rational": "536821741596582186168602666269628307658470315421211/320804671184843295203035526755586138207360088900000000", + "decimal": "0.0016733601154057784538170479517203762842018888767028492264912297200" + }, + "global_coordinate_router": { + "rational": "67018505072324140917/40000000000000000000000", + "decimal": "0.001675462626808103522925" + }, + "fused_gaussian": { + "rational": "536821741596582186168602666269628307658470315421211/320804671184843295203035526755586138207360088900000000", + "decimal": "0.0016733601154057784538170479517203762842018888767028492264912297200" + }, + "group_bit_router": { + "rational": "536821745603195808901091315103570008424470315421211/320804671184843295203035526755586138207360088900000000", + "decimal": "0.0016733601278950405581831414454417167161806227872696731761529052912" + }, + "group_scans": { + "rational": "805348355725539986393675267555861382073600889/3208046711848432952030355267555861382073600889", + "decimal": "0.25104009637737138807709747387044441091821132585640338349854072167" + }, + "boundary_algebraic_matrix": { + "rational": "6840475465266695248410101923394927751720175749186737/106934890394947765067678508918528712735786696300000000", + "decimal": "0.063968602202727648328243856591295054495538367869936360650507727037" + }, + "sparse_union_movement": { + "rational": "540029788308430619120633021537184169040543916310211/320804671184843295203035526755586138207360088900000000", + "decimal": "0.0016833601154057784538170479517203762842018888767028492264912297200" + }, + "polynomial_products": { + "rational": "3204021080669390695403468340153200000000000000/3208046711848432952030355267555861382073600889", + "decimal": "0.99874514570995048179732933476913026729312515313683012792547577565" + }, + "microbox_face_corrections": { + "rational": "2942281014059281127650388129972348509431467852/1069348903949477650676785089185287127357866963", + "decimal": "2.7514696122027276483282438565912950544955383678699363606505077270" + } + }, + "slacks": { + "actual_bit_above_effective": { + "rational": "3622775798858794489/62500000000000000000000", + "decimal": "0.000057964412781740711824" + }, + "complex_above_effective": { + "rational": "1/20000000000", + "decimal": "5E-11" + }, + "complex_below_one_over_32": { + "rational": "1182981492927675859083/40000000000000000000000", + "decimal": "0.029574537323191896477075" + }, + "q_positive": { + "rational": "67018503072324140917/40000000000000000000000", + "decimal": "0.001675462576808103522925" + }, + "complex_endpoint": { + "rational": "1/10000000000", + "decimal": "1E-10" + }, + "q_below_effective_bit": { + "rational": "1/20000000000", + "decimal": "5E-11" + }, + "stop_positive": { + "rational": "1/1000000000", + "decimal": "1E-9" + }, + "stop_below_one": { + "rational": "999999999/1000000000", + "decimal": "0.999999999" + }, + "leaf_saving_above_effective_bit": { + "rational": "1932981492927675859083/40000000000000000000000000000000", + "decimal": "4.8324537323191896477075E-11" + }, + "q_below_internal": { + "rational": "1/20000000000", + "decimal": "5E-11" + }, + "q_below_leaf": { + "rational": "3932981492927675859083/40000000000000000000000000000000", + "decimal": "9.8324537323191896477075E-11" + }, + "lambda_above_tau": { + "rational": "1/40000000000", + "decimal": "2.5E-11" + }, + "lambda_above_sigma": { + "rational": "3/40000000000", + "decimal": "7.5E-11" + }, + "lambda_above_internal": { + "rational": "1/40000000000", + "decimal": "2.5E-11" + }, + "lambda_prime_above_lambda": { + "rational": "1/40000000000", + "decimal": "2.5E-11" + }, + "lambda_prime_above_leaf": { + "rational": "3932981492927675859083/40000000000000000000000000000000", + "decimal": "9.8324537323191896477075E-11" + }, + "epsilon_positive": { + "rational": "3204021080669390695403468340153200000000000000/3208046711848432952030355267555861382073600889", + "decimal": "0.99874514570995048179732933476913026729312515313683012792547577565" + }, + "epsilon_below_one": { + "rational": "4025631179042256626886927402661382073600889/3208046711848432952030355267555861382073600889", + "decimal": "0.0012548542900495182026706652308697327068748468631698720745242243534" + }, + "capped_block_above_band": { + "rational": "2003386878384747396741111767383/8006701850307232414091700000000", + "decimal": "0.25021374791267813012557319136042532178866352100676648857598350268" + }, + "capped_block_below_cell": { + "rational": "26576677783154481335239432113645294978213166844563263/106934890394947765067678508918528712735786696300000000", + "decimal": "0.24853139779727235167175614340870494550446163213006363934949227296" + }, + "group_positive": { + "rational": "19999559600000000000000/80067018503072324140917", + "decimal": "0.24978524208732186987442680863957467821133647899323351142401649732" + }, + "group_below_dimension": { + "rational": "2402698356122892965636680000000000000000000000/3208046711848432952030355267555861382073600889", + "decimal": "0.74895990362262861192290252612955558908178867414359661650145927833" + }, + "support_router_span": { + "rational": "60067458903072324140917/80067018503072324140917", + "decimal": "0.75021475791267813012557319136042532178866352100676648857598350268" + }, + "group_gauge_power_slack": { + "rational": "1/100000000", + "decimal": "1E-8" + }, + "actual_logarithmic_group_guard": { + "rational": "101/100000000", + "decimal": "0.00000101" + }, + "global_gamma_power_slack": { + "rational": "4022423132330408193934897047393826212218815399111/3208046711848432952030355267555861382073600889000000", + "decimal": "0.0012538542900495182026706652308697327068748468631698720745242243534" + }, + "actual_logarithmic_gamma_guard": { + "rational": "4025631179042256626886927402661382073600889/3208046711848432952030355267555861382073600889", + "decimal": "0.0012548542900495182026706652308697327068748468631698720745242243534" + }, + "alpha_logarithm_absorption": { + "rational": "1/1000000", + "decimal": "0.000001" + }, + "group_key_fits_record": { + "rational": "2402698356122892965636680000000000000000000000/3208046711848432952030355267555861382073600889", + "decimal": "0.74895990362262861192290252612955558908178867414359661650145927833" + }, + "membership_arithmetic_fits_record": { + "rational": "799557574981283569669931024199112872642133037/1069348903949477650676785089185287127357866963", + "decimal": "0.74770504933257909372023186089868585637491382728042674442693505398" + }, + "sparse_union_fraction_decays": { + "rational": "3430918384747396741111767383/8006701850307232414091700000000", + "decimal": "0.00042850582535626025114638272085064357732704201353297715196700536668" + }, + "microbox_halo_volume": { + "rational": "380335532915361620704585/80067018503072324140917", + "decimal": "4.7502147579126781301255731913604253217886635210067664885759835027" + }, + "union_positive_slack": { + "rational": "1/100000", + "decimal": "0.00001" + }, + "matrix_exponent_above_source_bound": { + "rational": "1/8", + "decimal": "0.125" + }, + "matrix_exponent_below_five_halves": { + "rational": "1/8", + "decimal": "0.125" + }, + "short_record_fallback": { + "rational": "127945844731945360830644877923109261450553910111686139566638347524787/128321868473937318081214210702234455282944035560000000000000000000000", + "decimal": "0.99706968308314237827440433476913026729312515313683012792547577565" + }, + "improvement_over_selected": { + "rational": "34995416443/50000000000000000", + "decimal": "6.9990832886E-7" + }, + "improvement_over_first_reviewed_transfer": { + "rational": "437755816907/1000000000000000000", + "decimal": "4.37755816907E-7" + }, + "main_transform_above_kappa": { + "rational": "16040234287175308991291365140577147466485957516731679/1604023355924216476015177633777930691036800444500000000000000000", + "decimal": "1.0000000453817047951720376284201888876702849226491229720034381634E-11" + }, + "global_coordinate_router_above_kappa": { + "rational": "84100856093020917/40000000000000000000000", + "decimal": "0.000002102521402325522925" + }, + "fused_gaussian_above_kappa": { + "rational": "16040234287175308991291365140577147466485957516731679/1604023355924216476015177633777930691036800444500000000000000000", + "decimal": "1.0000000453817047951720376284201888876702849226491229720034381634E-11" + }, + "group_bit_router_above_kappa": { + "rational": "36073302400837752235461073644407147466485957516731679/1604023355924216476015177633777930691036800444500000000000000000", + "decimal": "2.2489262558183141445441716716180622787269673176152905291235206499E-11" + }, + "group_scans_above_kappa": { + "rational": "399990069170827316553169929437873914639085240389379902516731679/1604023355924216476015177633777930691036800444500000000000000000", + "decimal": "0.24936673627196561007709747387044441091821132585640338349854072167" + }, + "boundary_algebraic_matrix_above_kappa": { + "rational": "33307674429019250694161274836955713292695810709060319172243893/534674451974738825338392544592643563678933481500000000000000000", + "decimal": "0.062295242097321870328243856591295054495538367869936360650507727037" + }, + "sparse_union_movement_above_kappa": { + "rational": "16040249599476451935460767629144447487515470930957516731679/1604023355924216476015177633777930691036800444500000000000000000", + "decimal": "0.000010000010000000453817047951720376284201888876702849226491229720034" + }, + "polynomial_products_above_kappa": { + "rational": "1599326431642752671058066465736543223602284795889379902516731679/1604023355924216476015177633777930691036800444500000000000000000", + "decimal": "0.99707178560454470379732933476913026729312515313683012792547577565" + }, + "microbox_face_corrections_above_kappa": { + "rational": "1470245804132326338277304830206155329249828857963126634172243893/534674451974738825338392544592643563678933481500000000000000000", + "decimal": "2.7497962520973218703282438565912950544955383678699363606505077270" + } + }, + "controls": { + "endpoint_equality": { + "complex_above_effective": { + "rational": "0", + "decimal": "0" + }, + "complex_endpoint": { + "rational": "0", + "decimal": "0" + }, + "q_below_effective_bit": { + "rational": "0", + "decimal": "0" + }, + "leaf_saving_above_effective_bit": { + "rational": "-67018507072324140917/40000000000000000000000000000000", + "decimal": "-1.675462676808103522925E-12" + }, + "q_below_internal": { + "rational": "0", + "decimal": "0" + }, + "q_below_leaf": { + "rational": "-67018507072324140917/40000000000000000000000000000000", + "decimal": "-1.675462676808103522925E-12" + }, + "lambda_above_tau": { + "rational": "0", + "decimal": "0" + }, + "lambda_above_sigma": { + "rational": "0", + "decimal": "0" + }, + "lambda_above_internal": { + "rational": "0", + "decimal": "0" + }, + "lambda_prime_above_lambda": { + "rational": "0", + "decimal": "0" + }, + "lambda_prime_above_leaf": { + "rational": "-67018507072324140917/40000000000000000000000000000000", + "decimal": "-1.675462676808103522925E-12" + } + }, + "zero_group_guard": { + "group_gauge_power_slack": { + "rational": "0", + "decimal": "0" + } + }, + "zero_union_slack": { + "union_positive_slack": { + "rational": "0", + "decimal": "0" + } + }, + "old_per_axis_scan": { + "unreplaced_per_axis_scan_above_kappa": { + "rational": "-671293102421548330224240638726085360914759610620097483268321/1604023355924216476015177633777930691036800444500000000000000000", + "decimal": "-0.00041850581535625979732933476913026729312515313683012792547577564665" + } + }, + "unrecentered_full_cell_gauge": { + "unrecentered_group_gauge": { + "rational": "-265766767138055773857617814368602057929260394866963/1069348903949477650676785089185287127357866963000000", + "decimal": "-0.24853138779727235167175614340870494550446163213006363934949227296" + } + }, + "full_key_sort_on_union": { + "unnecessary_union_full_key_sort_above_kappa": { + "rational": "-3349871895112392252395010152271923003071/13344503083845387356819500000000000000000", + "decimal": "-0.25103009636737138762328042591872403463400943697970053427204949195" + } + } + } +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY-REVIEW.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY-REVIEW.json new file mode 100644 index 0000000000..fea12fbe37 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY-REVIEW.json @@ -0,0 +1,164 @@ +{ + "status": "PASS_CONDITIONAL_MATRIX_PHASE_FUSION_REVIEW", + "created_utc": "2026-10-14T02:11:15.272021+00:00", + "kappa": "836680052702889/500000000000000000", + "kappa_decimal": "0.001673360105405778", + "upstream_selected_unchanged": true, + "base_transfer_preserved": "CAPPED-OUTER-ARITHMETIC.json and REVIEW-RECEIPT.json", + "additional_hypothesis": "The supplied Matrix Multiplication in Nine Fourths theorem gives omega_C<=9/4; apply the independently audited effective algebraic transfer at tau=19/8.", + "limitations": [ + "All finite supplier, common-frame, whole-call, semantic precision, fixed-tape and prime-packing assumptions of the first transfer remain.", + "No generated competitive finite matrix formula or practical runtime claim is made; the fixed formula search is effective but may have enormous constant cost.", + "This is a local conditional corollary, not an upstream selected certificate or an unconditional integer-multiplication theorem." + ], + "reviews": [ + { + "reviewer": "root agent", + "result": "Read matrix corollary and independent layout signoff; reproduced exact parameters/ledger and matrix construction controls; approved integrated conditional corollary." + }, + { + "reviewer": "matrix_boundary agent", + "result": "Read all 1022 supplied source lines and audited effective algebraic coefficient, fixed-tape, precision and rank-exponent transfer." + }, + { + "reviewer": "global_macro agent", + "result": "Independent new-parameter no-sort union, metadata, q-ordering and microhalo layout signoff." + }, + { + "reviewer": "phase_assembly agent", + "result": "Read both complete matrix transfer notes and independent layout signoff; constructed and replayed 47-slack ledger and six rejecting controls." + }, + { + "reviewer": "independent_fusion_review agent and independent children", + "result": "No blocking gap found under stated assumptions after full compiler, support, Gaussian, layout and tape-cost review. Generic SPD scale wording corrected without changing parameters. See independent FINAL-REVIEW.json." + } + ], + "arithmetic": { + "positive_slacks": 47, + "rejecting_controls": 6, + "minimum_saving": "0.0016733601154057784538170479517203762842018888767028492264912297200" + }, + "files": [ + { + "bundle_filename": "phase_fusion_note.tex", + "source_path": "work/phase_assembly_ultra/phase_fusion_note.tex", + "sha256": "08ecb1876695beee25484158e14cfd57c3d48f551a8a41d5abc998d71d674555", + "bytes": 33757 + }, + { + "bundle_filename": "MATRIX-COROLLARY.md", + "source_path": "work/phase_assembly_ultra/MATRIX-COROLLARY.md", + "sha256": "2d7fb1088e58bb86e574277733e082f135362215a69add71d9090213d32c9221", + "bytes": 5787 + }, + { + "bundle_filename": "check_matrix_corollary.py", + "source_path": "work/phase_assembly_ultra/check_matrix_corollary.py", + "sha256": "30db2d8e0f40fcc5c91e25f74cdc54e46aa4a0353c725345f9bcf5744e0b617f", + "bytes": 6692 + }, + { + "bundle_filename": "MATRIX-COROLLARY-ARITHMETIC.json", + "source_path": "work/phase_assembly_ultra/MATRIX-COROLLARY-ARITHMETIC.json", + "sha256": "c6efc4d2f6d17159cefebf5c2dd6099a6327fe0911c5dd87623cad96c7d6c56a", + "bytes": 16783 + }, + { + "bundle_filename": "PROOF-AND-COVERAGE.md", + "source_path": "work/matrix_boundary_ultra/PROOF-AND-COVERAGE.md", + "sha256": "db7509d754bb7fc3381419e0fed2674f22a9d57d34e8420fd5afa3c688fde9aa", + "bytes": 12130 + }, + { + "bundle_filename": "ALGEBRAIC-STABILITY-INDEPENDENT.md", + "source_path": "work/matrix_boundary_ultra/ALGEBRAIC-STABILITY-INDEPENDENT.md", + "sha256": "7873e7d9a99fdc9de3ee224b9925d3e277e9773d7f5f8c2d0f1c19b0e52bc87f", + "bytes": 11743 + }, + { + "bundle_filename": "MATRIX-SOURCE-COVERAGE.json", + "source_path": "work/matrix_boundary_ultra/SOURCE-COVERAGE.json", + "sha256": "fdc6849f97999a6cf99cdaa50591d24f78d6fb0bc580315f205452e5906b35cc", + "bytes": 2839 + }, + { + "bundle_filename": "MATRIX-SOURCE-CONSTRUCTIONS.json", + "source_path": "work/matrix_boundary_ultra/SOURCE-CONSTRUCTIONS.json", + "sha256": "114c1d8fb70592455a80c73d8a1bc6bfc9aca4e7395a420b6331d5474b4d1917", + "bytes": 21018 + }, + { + "bundle_filename": "MATRIX-TRANSFER-MANIFEST.json", + "source_path": "work/matrix_boundary_ultra/MANIFEST.json", + "sha256": "35d98d7579a16dae36530b4e5f4d0b8f925a069daa3f6fe1ea5276916167e0c2", + "bytes": 1159 + }, + { + "bundle_filename": "MATRIX-LAYOUT-SIGNOFF.md", + "source_path": "work/phase_layout_audit_ultra/MATRIX-LAYOUT-SIGNOFF.md", + "sha256": "4c8c62f723232e842dc3bbdcc4defcc8ff1aeb86ba9f694661899dc6783b13c4", + "bytes": 3081 + }, + { + "bundle_filename": "MATRIX-LAYOUT-CONTROLS.json", + "source_path": "work/phase_layout_audit_ultra/MATRIX-LAYOUT-CONTROLS.json", + "sha256": "f8bd8729cb8438188e90fb9149f598b825461c97b4ed290584ca4367f812a48a", + "bytes": 1446 + }, + { + "bundle_filename": "PHASE-LAYOUT-AUDIT.md", + "source_path": "work/phase_layout_audit_ultra/AUDIT.md", + "sha256": "54aafc7afd09fe1a5312e69fad09c87422690543ab75c6ae35f6cbcc26b3eb8a", + "bytes": 11774 + }, + { + "bundle_filename": "CAPPED-SIGNOFF.md", + "source_path": "work/phase_layout_audit_ultra/CAPPED-SIGNOFF.md", + "sha256": "70e9175ebde200f8b016236adc88c4a1c4858945e7c3e5c453a8b6a5f79a263a", + "bytes": 4414 + }, + { + "bundle_filename": "CAPPED-GAUGE-AUDIT.md", + "source_path": "work/gaussian_fast_ultra/CAPPED-GAUGE-AUDIT.md", + "sha256": "1030a34922709ab8d3434a4c57a4a58934ae268c237fb598cb415697da411c9f", + "bytes": 9176 + }, + { + "bundle_filename": "LOG-A-PHASE-SCHUR-AUDIT.md", + "source_path": "work/gaussian_fast_ultra/LOG-A-PHASE-SCHUR-AUDIT.md", + "sha256": "e05d6b8596c80b6e8676569a0ff464a29fa704c3304143f58914f47cdf38b272", + "bytes": 10642 + }, + { + "bundle_filename": "FORWARD-SMALL-A-AUDIT.md", + "source_path": "work/gaussian_fast_ultra/FORWARD-SMALL-A-AUDIT.md", + "sha256": "e37aaa30b15671a1dff00676b14572213efaaac99df202dbba5e09f57af487c0", + "bytes": 6689 + }, + { + "bundle_filename": "SHALLOW-TOEPLITZ.md", + "source_path": "work/inplace_algebra_ultra/SHALLOW-TOEPLITZ.md", + "sha256": "b384b93f3fb4a8c97da2e617ebc14d55cebb0a739070e7f8dbb66f63e24e9310", + "bytes": 15480 + }, + { + "bundle_filename": "TENSOR-COMPILER.md", + "source_path": "work/inplace_algebra_ultra/TENSOR-COMPILER.md", + "sha256": "4d3b8466598a864a234b978e25976648d4e761840aad9153dd18d73d3dfe4d15", + "bytes": 13430 + }, + { + "bundle_filename": "SUPPLIER-SUPPORT-AUDIT.md", + "source_path": "work/inplace_algebra_ultra/SUPPLIER-SUPPORT-AUDIT.md", + "sha256": "bd5b06eca043c5c871227264f6a954473c55cd16ec85bb420ff538fb8ec1d8d6", + "bytes": 16557 + }, + { + "bundle_filename": "SUPPORT-ROUTER.md", + "source_path": "work/halo_layout_ultra/SUPPORT-ROUTER.md", + "sha256": "6ddb322e11883c1177ba6cd1a77d23a1dac827d7290b32eaf642457b1d762a54", + "bytes": 7755 + } + ], + "post_review_correction": "Generic SPD prefix bound records both M and 1/m, not condition number alone; actual Gaussian bounds already satisfy it." +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY.md new file mode 100644 index 0000000000..f08bb57f9c --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY.md @@ -0,0 +1,72 @@ +# Additional corollary using the supplied matrix-exponent theorem + +Status: **PASS_CONDITIONAL_MATRIX_PHASE_FUSION_REVIEW**. The independent matrix-transfer and new-parameter layout audits passed, followed by the integrated root review and exact ledger replay. The first, Strassen-based result `kappa=0.001672922349588871` remains separately reviewed and unchanged. Neither result changes the upstream selected certificate. + +This corollary has an **additional hypothesis**: the supplied *Matrix Multiplication in Nine Fourths* theorem gives `omega_C<=9/4`. Its complete-source audit is `PROOF-AND-COVERAGE.md`; the effective approximate-bit transfer is `ALGEBRAIC-STABILITY-INDEPENDENT.md`. The result here retains every supplier and all-size assumption of the first phase-fusion theorem. + +## Effective matrix operation with the required error interface + +Fix `tau=19/8>9/4`. The matrix exponent theorem supplies a fixed block dimension m and rank r with `r0`. All local coefficient pages remain polynomial in p, while `L^g` remains superpolynomial. Microedge correction has exponent `epsilon+beta-3<-1.75`, including the generous old scalar arithmetic bound. Sparse microhalo key passes remain explicitly paid inside that negligible budget. + +All forward q-image group embeddings occur in native axis-major order before the one global low-bit gather. All compression q-image extractions occur after the inverse global gather. The entire Gaussian calculation keeps full dyadic target coordinate ranges, so every globally invoked H stage has complete coarse labels. This schedule needs no per-group gathering of the whole long-axis fields; the q-image scans have the already-paid Vd/g cost. + +The **optional full-group-key sort surcharge on the sparse union is omitted** because it is absent from the actual algorithm. The reviewed union routine extracts the complete rectangle `U_i=E_i x [L]^(g-1)`, transposes only its one polynomial-size field, computes its axis operator, and merges it into U in the original order. It does not radix-sort U. Reintroducing that sort is a rejecting control in the new ledger; it would destroy this parameter choice. This omission relies on the existing positive layout proof, not on the matrix theorem. + +`check_matrix_corollary.py` verifies 47 exact positive slacks and six rejecting controls and writes `MATRIX-COROLLARY-ARITHMETIC.json`. The rejected variants are endpoint equality, zero group guard, zero union slack, the old Vd row, the old full-cell data gauge, and adding a full-key sort to U. The first theorem's records are not overwritten. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-LAYOUT-CONTROLS.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-LAYOUT-CONTROLS.json new file mode 100644 index 0000000000..aee3270196 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-LAYOUT-CONTROLS.json @@ -0,0 +1,30 @@ +{ + "status": "PASS_MATRIX_COROLLARY_NO_SORT_LAYOUT", + "source_sha256": "b0d4648e16df74fc0a3644baa8a82cbb82842c0aa21abe915a28c0c4c949182a", + "exponents": { + "union_fraction": { + "rational": "-3430918384747396741111767383/8006701850307232414091700000000", + "decimal": "-0.000428505825356260251146382720850643577327042013532977151967005" + }, + "membership": { + "rational": "269791328968194081006854064986174254715733926/1069348903949477650676785089185287127357866963", + "decimal": "0.252294950667420906279768139101314143625086172719573255573065" + }, + "total_union": { + "rational": "320264641396534864583914893734048954038319544983689789/320804671184843295203035526755586138207360088900000000", + "decimal": "0.998316639884594221546182952048279623715798111123297150773509" + }, + "group_scans": { + "rational": "2402698356122892965636680000000000000000000000/3208046711848432952030355267555861382073600889", + "decimal": "0.748959903622628611922902526129555589081788674143596616501459" + }, + "microhalo_fraction": { + "rational": "-380335532915361620704585/80067018503072324140917", + "decimal": "-4.75021475791267813012557319136042532178866352100676648857598" + }, + "rejected_union_full_key": { + "rational": "3334408963974161672450196077539/2668900616769077471363900000000", + "decimal": "1.24935673626196560962328042591872403463400943697970053427205" + } + } +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-LAYOUT-SIGNOFF.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-LAYOUT-SIGNOFF.md new file mode 100644 index 0000000000..d683e4d495 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-LAYOUT-SIGNOFF.md @@ -0,0 +1,64 @@ +# Matrix-corollary layout: positive signoff + +The no-sort union layout in `AUDIT.md` applies unchanged to +`work/phase_assembly_ultra/MATRIX-COROLLARY.md`. Its algebraic conditions are +closed axis supports E_i and a complete microbox; neither its proof nor its +implementation requires gkappa`. The minimum excess is greater than `10^-11`. Consequently every fixed logarithmic factor and each use of the unconditional quasi-linear short arithmetic kernel can be absorbed in a single positive fraction of that excess. Floors, rounded alpha, and dyadic L alter constants or logarithmic factors. All claims are eventual in p; one fixed finite prefix of inputs can use the retained elementary fallback. This statement becomes an admitted theorem only when the named implementation hypotheses receive the intended full review. + +## Parameter convention + +Let `a_bit=0.001733427039589844234749` and `b=0.001675462676808103522925` be the retained lower bounds certified by the selected PR1094 replay. For applying the older compact recurrence, lower the usable bit saving to `a_eff=(b+q)/2`; this keeps its historical convention `a_eff0` with `(1-t_stop)b>a_eff` and `q<(1-t_stop)b`. + +For each visited coarse block and group, all required local coefficient pages can instead be regenerated in polynomial time in p: there are g local windows of size at most L=Theta(p^8), their rational origins have O(p/d) bits, and the published local coefficient/Schur/circuit constructors are polynomial in that size and requested precision. Recover local phases and anchor gauges from these origins; do not form a raw uncentered global q² exponential on the data. The page contains O(p)-bit online coefficients. Its polynomial setup and sequential loading are amortized by the complete `L^g` payload, which eventually dominates every fixed power of p. This gives an explicit access method even when the coarse labels are permuted; no random global coefficient-table lookup is assumed. + +Global chirps, twists, positive diagonal normalizations and exact scale factors are separable products. The prefix-product scan supplies their products in O(V polylog p), with completed scalar range `O(d alpha^2)=o(p)`. Packed polynomial products retain their saving epsilon. The finite supplier, exact common-label frame, whole-call hosting, semantic depth bound with C1=1, phase precision, prime packing and fixed-tape input/output assumptions are inherited unchanged. They are still conditional interfaces, as in the selected result. + +## Cost ledger, with conservative wide bandwidth + +Let `h_w=1/2` and `h_K=beta+1-epsilon`. Normalize all costs by V. Fixed logarithmic factors are absorbed by strict gaps. + +| Component | power of p | reason | +|---|---:|---| +| main transform | `1-epsilon*q` | deferred reservations | +| constant global coordinate routing | `1-a_eff` | paid support/full router | +| dense Gaussian groups | `epsilon-q*beta` | `(d/g) g^(1-q)` | +| grouped bit routing | `epsilon-a_eff*beta` | same grouping, bit supplier | +| one/fixed group scans | `epsilon-beta` | d/g groups | +| boundary algebra | `(omega-1)*h_w` | batched w-column Strassen | +| sparse union, basic movement | `beta+h_w` | V g w overall | +| sparse union, conservative key surcharge | `beta+h_w+h_K` | full active-group keys | +| polynomial products | `1-epsilon` | retained short polynomial products | +| core-face corrections | `epsilon+beta+3-8+2` | old local maps on sparse copies, with a loose p² allowance | + +Use the rational upper bound `omega<45/16`, checked by `7^16<2^45`. The target balances the first and third rows exactly before a fixed 10^-11 absorption backoff. + +This ledger is accepted only after its circuit tensorizer, grouped sparse route, target-grid core/halo adapter, forward small-a inverse bound, and deferred-reservation interfaces have written proofs. Exact positive inequalities alone do not discharge those interfaces. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PACKAGE-MANIFEST.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PACKAGE-MANIFEST.json new file mode 100644 index 0000000000..c3977299d4 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PACKAGE-MANIFEST.json @@ -0,0 +1,185 @@ +{ + "ALGEBRAIC-STABILITY-INDEPENDENT.md": "7873e7d9a99fdc9de3ee224b9925d3e277e9773d7f5f8c2d0f1c19b0e52bc87f", + "BILATERAL-LDU.md": "0d65e66d227464dda1a19f781ae0a0be671cbfd347c41e37ec954f3d629d8a77", + "CAPPED-GAUGE-AUDIT.md": "1030a34922709ab8d3434a4c57a4a58934ae268c237fb598cb415697da411c9f", + "CAPPED-INTERIORS.md": "983c5cab2d2398f2192a8aec07daecb655f2de136e12a37f75672a14d27172ba", + "CAPPED-OUTER-ARITHMETIC.json": "22caac9ec2ecf4d5743b7eb946b633911fbac55a714399556e87e2eae0457dec", + "CAPPED-SIGNOFF.md": "70e9175ebde200f8b016236adc88c4a1c4858945e7c3e5c453a8b6a5f79a263a", + "FINAL-PACKAGE-REVIEW.json": "3457385de52d8e86853d96026a70aef2e8dece516db9eea020d8774e01d076a8", + "FORWARD-SMALL-A-AUDIT.md": "e37aaa30b15671a1dff00676b14572213efaaac99df202dbba5e09f57af487c0", + "HALO-THEOREM.md": "cb9e1da38400b658f9209e465b4e5896fadd17dc66afa862f38bae8d8c1f2058", + "INDEPENDENT-FINAL-REVIEW.json": "6b98e5222aa109a35be8b4fc9ec19669daebcc06d542ecec0a9c820da7930501", + "LOG-A-PHASE-SCHUR-AUDIT.md": "e05d6b8596c80b6e8676569a0ff464a29fa704c3304143f58914f47cdf38b272", + "MANIFEST-UPDATE.json": "32c58bcab8e19ef895660331c13d31b5fae7d0c95f7cda4147870f29d8299f6d", + "MANIFEST.json": "9af581d640e9c69d513256cf69babb0717287642134cfc807cedcd79966c1706", + "MATRIX-COROLLARY-ARITHMETIC.json": "c6efc4d2f6d17159cefebf5c2dd6099a6327fe0911c5dd87623cad96c7d6c56a", + "MATRIX-COROLLARY-REVIEW.json": "5cd5e97f93a9b3e439bfeffb52139d7bb1730de96ad13b59b7e1b20fdca6a3f6", + "MATRIX-COROLLARY.md": "2d7fb1088e58bb86e574277733e082f135362215a69add71d9090213d32c9221", + "MATRIX-LAYOUT-CONTROLS.json": "f8bd8729cb8438188e90fb9149f598b825461c97b4ed290584ca4367f812a48a", + "MATRIX-LAYOUT-SIGNOFF.md": "4c8c62f723232e842dc3bbdcc4defcc8ff1aeb86ba9f694661899dc6783b13c4", + "MATRIX-SOURCE-CONSTRUCTIONS.json": "114c1d8fb70592455a80c73d8a1bc6bfc9aca4e7395a420b6331d5474b4d1917", + "MATRIX-SOURCE-COVERAGE.json": "fdc6849f97999a6cf99cdaa50591d24f78d6fb0bc580315f205452e5906b35cc", + "MATRIX-TRANSFER-MANIFEST.json": "35d98d7579a16dae36530b4e5f4d0b8f925a069daa3f6fe1ea5276916167e0c2", + "NATIVE-RECEIPT-CAPSULE.json": "a04d6bba3d15c11a219536b66a23012797484ae106ec1952ecd7b76f077ddb01", + "OUTER-ARITHMETIC.json": "050c61d90236c593fd0827d7edc297e05604884e4ec093659aee46a9ee336020", + "OUTER-AUDIT.md": "94799bfa2794eb867d6ba68593c3e92988ade083e74d895e8d07ae3b8d0670dc", + "PHASE-LAYOUT-AUDIT.md": "54aafc7afd09fe1a5312e69fad09c87422690543ab75c6ae35f6cbcc26b3eb8a", + "PROOF-AND-COVERAGE.md": "db7509d754bb7fc3381419e0fed2674f22a9d57d34e8420fd5afa3c688fde9aa", + "PUBLICATION-CHECKS.json": "6e2fb68e6768c3aa4224aacb4900263586fc8114815a51df40f3f9fdf6124217", + "PUBLICATION-SOURCES.json": "6082583794168b1c2320187214b86c93a5a6e76fbbddfcb3bdbb8c5bd34c0586", + "README.md": "91af88b8fc53a22e1e968908f0e449cdfe2154c83f0dddb8a504e661c0c6965c", + "REVIEW-RECEIPT.json": "97b20e50d3722fcde3831124a107df6c15c0ffdbb9e057b7867f41aaa2481800", + "ROOT-EXACT-REPLAY.json": "d36114abe9d7a83c327f49f5ea153c6dcada4a7421f5e74a9a5ceb392cecb994", + "ROOT-MATRIX-EXACT-REPLAY.json": "d6bd4fcb8a528655181b4aa3fd1bad7e6647a4ca5aa76ee7f2cdd800b698b225", + "SHALLOW-TOEPLITZ.md": "b384b93f3fb4a8c97da2e617ebc14d55cebb0a739070e7f8dbb66f63e24e9310", + "SOURCES.json": "14ce6fdc7c83e18ccf4fee19ff51062726c960ca44462a45af60dd686167d456", + "SUPPLIER-SUPPORT-AUDIT.md": "bd5b06eca043c5c871227264f6a954473c55cd16ec85bb420ff538fb8ec1d8d6", + "SUPPORT-ADVERSARIAL-AUDIT.md": "b1290f8720bf075ea2ad58d6070f3e1fc95c0155f8e33b165bc13439bbb9222d", + "SUPPORT-ROUTER.md": "6ddb322e11883c1177ba6cd1a77d23a1dac827d7290b32eaf642457b1d762a54", + "TASK.json": "47b82ef23e20991010fae838ad4da9bdac3f947a8fea916a028fd6260f95f5f8", + "TENSOR-COMPILER.md": "4d3b8466598a864a234b978e25976648d4e761840aad9153dd18d73d3dfe4d15", + "VERIFIER-NEGATIVE-CONTROLS.json": "eeb887cdc0c76426c75ddbfc3d4af7ccbbe19d17962c6ad7a1549dafe8dabb5a", + "VERIFY.json": "cb50aa523a0863a457181ca815e69a1b3b4d91ed1006a79263f4a8f18457c669", + "check_capped_outer.py": "b4555c77de7a3ed4abc708a8d93363ef7c9a914be1091f80ab3ddea83f71230a", + "check_matrix_corollary.py": "30db2d8e0f40fcc5c91e25f74cdc54e46aa4a0353c725345f9bcf5744e0b617f", + "evidence/gaussian_fast_ultra/BILATERAL-CONTROLS.json": "eb3ba38d18bac4aceaffba39ef48dbb55bd15e6abcb68cdf66920d9d13ec00ab", + "evidence/gaussian_fast_ultra/BILATERAL-LDU.md": "0d65e66d227464dda1a19f781ae0a0be671cbfd347c41e37ec954f3d629d8a77", + "evidence/gaussian_fast_ultra/CAPPED-GAUGE-AUDIT.md": "1030a34922709ab8d3434a4c57a4a58934ae268c237fb598cb415697da411c9f", + "evidence/gaussian_fast_ultra/CAPPED-GAUGE-CONTROLS.json": "ae8f0eb121a2f4da5c3f982ee6e7f45dab7b18368cadb5d2060602b0393b7120", + "evidence/gaussian_fast_ultra/CYCLIC-SCAN-CONTROLS.json": "4c37249f12b4cb4df847d179df8f378fbf1f42917e9fa703b2d847146f29b95c", + "evidence/gaussian_fast_ultra/DYADIC-INTERIOR-CONTROLS.json": "afbaee9f56f6a66fd9421bba7dfa8c3610c12bd447b01d0e9d79f97d1216aa90", + "evidence/gaussian_fast_ultra/FORWARD-CELL-CONTROLS.json": "4417a518ba3b6833f06b4f5e33d4f73ea74100b9110cf20e8d1c2070f1833fcc", + "evidence/gaussian_fast_ultra/FORWARD-SMALL-A-AUDIT.md": "e37aaa30b15671a1dff00676b14572213efaaac99df202dbba5e09f57af487c0", + "evidence/gaussian_fast_ultra/LOG-A-PHASE-SCHUR-AUDIT.md": "e05d6b8596c80b6e8676569a0ff464a29fa704c3304143f58914f47cdf38b272", + "evidence/gaussian_fast_ultra/LOG-A-SCHUR-CONTROLS.json": "046191420a24d8b2c063c190af5e954c85e39357902988c4df79f5abcdf1596d", + "evidence/gaussian_fast_ultra/LOWER-CONTROLS.json": "323cb4acae960a6fa05527df5ede9d48e274883272b8ddb5151ebcee6dd26e52", + "evidence/gaussian_fast_ultra/LOWER-FACTOR.md": "dbc7eff783695e0f50fec57b0f7ca4212d51428eea04fa2ae5e0a9178fa69b30", + "evidence/gaussian_fast_ultra/README.md": "8fb5321b514af9260c44e150125205fe564efd073c456214f76bbdb358279cf0", + "evidence/gaussian_fast_ultra/UPPER-DATA-ALGORITHM.md": "46b98b9c013dc5a94c9f17fd85acd7c1896c8e93ad2ee4a7c34f583895f1daf0", + "evidence/gaussian_fast_ultra/UPPER-DATA-CONTROLS.json": "c9e6fd7f338f2cb78a0ed15ee944fde63549ae3d8522ab0874d184f3e252db76", + "evidence/gaussian_fast_ultra/UPPER-LIFTING.md": "69535a48416a5435ea2a5ef4ecfe70fde30c32c4043bfc56f1ae2d7f49cd34bd", + "evidence/gaussian_fast_ultra/UPPER-MERGE-CONTROLS.json": "c5729bdb36237c0691fba56d149019f78d94e996749532d907a84c35ef01319d", + "evidence/gaussian_fast_ultra/check_bilateral.py": "8d5c79bd4f4c96de5c1fa91553b19e3a62419333b414fc84dec894a4b729d5e0", + "evidence/gaussian_fast_ultra/check_capped_gauges.py": "121279bef47dd490bf29fc72ddbce547176cdaf1154af67dc8b96d7baa8cfc6f", + "evidence/gaussian_fast_ultra/check_cyclic_scan.py": "d25156f852cb95f013e0ee74b319fc8c20d6a7a53fa851543244d5af7898ee61", + "evidence/gaussian_fast_ultra/check_dyadic_interiors.py": "a39617147870719a0296eef77101c90df8fbe716841cb9ed823f36b94254c3e1", + "evidence/gaussian_fast_ultra/check_forward_cell.py": "082a0e46c175f6e59fe1f8c168ca56bc444c71a602c9b7318c0834aae1f2de90", + "evidence/gaussian_fast_ultra/check_log_a_schur.py": "a0f1116ce27ecbff18de7089ce1f56714ed7966dfa0105b20419d408feb7ca41", + "evidence/gaussian_fast_ultra/check_lower.py": "027c77d8ce33c3d5e3c436234668f11bafc3de8658b9c3d03d455eb0e4d71f95", + "evidence/gaussian_fast_ultra/check_upper_data.py": "de4f9df64cf31e94adb9a5d04b38d53d823d864f51632c49c7c80c6a46b5224d", + "evidence/gaussian_fast_ultra/check_upper_merge.py": "95c9908134905e3ebdd030375e36a942c886cfc59edde3c6a419f36da6754780", + "evidence/halo_layout_ultra/EMBEDDING-CONTROLS.json": "d0182e172f16b55ec64a5edfabb10816e416348ef2db15449f3ed4b47f3fec1f", + "evidence/halo_layout_ultra/HALO-CONTROLS.json": "ae370f7d7421f2f96e101a4b9d8082110507c47211220fd6ead065c2366aa828", + "evidence/halo_layout_ultra/HALO-THEOREM.md": "cb9e1da38400b658f9209e465b4e5896fadd17dc66afa862f38bae8d8c1f2058", + "evidence/halo_layout_ultra/MANIFEST.json": "37946d7691b90d39906d93581839bdf8ae2cf899d459e5520c39e782766e9327", + "evidence/halo_layout_ultra/PARAMETER-CHECK.json": "e38cdfc13f1959186d888383458c9030c4bd3c8c3915aea4743d55637d2f8d76", + "evidence/halo_layout_ultra/RAGGED-CONTROLS.json": "c3688f65565486b585727374abfbe478f7544aa61381bd73cc6ffa168b4221b6", + "evidence/halo_layout_ultra/RAGGED-PERIODS.md": "c6e4dfe7f58dac7c5a513ffb3a9ab4801ab0717efae5c1e764e570335402ff25", + "evidence/halo_layout_ultra/README.md": "575a3acfc18a0e05ffe04a8563318a2770ce32cd7bf3a5e6123ce2de39a1cd4c", + "evidence/halo_layout_ultra/RECTANGULAR-EMBEDDING.md": "e64447bff7e7717802ee049290faaf29e45db3e36a6f7fcec109184478f15f26", + "evidence/halo_layout_ultra/SPARSE-SHEAR-CONTROLS.json": "d3b9763f7ef6a3a5752c6c11a8a4d5f465646ad75b178a1c1b3363540fcc4871", + "evidence/halo_layout_ultra/SUPPORT-ROUTER.md": "6ddb322e11883c1177ba6cd1a77d23a1dac827d7290b32eaf642457b1d762a54", + "evidence/halo_layout_ultra/check_embedding.py": "597cb5304498456575c99d46a7fb503e04db28d5a7f57857b102b50f703b7464", + "evidence/halo_layout_ultra/check_halo.py": "0a3257cbb8f37b6cc9bb44019cb114ea2ae9b28738a416bff4bc712d1306e1b7", + "evidence/halo_layout_ultra/check_ragged.py": "54b761cfe3404d524af3a2abdf09bcea8dfb5cca6199c0c182cee310e3ca8c78", + "evidence/halo_layout_ultra/check_sparse_shear.py": "6e22c989e6bae92c4cd209c9336aad4359956cf370bdbd5f6b70609144598121", + "evidence/independent_fusion_review_ultra/CORE-SOURCES.json": "2546f47dacc47c2d63dc5bb9cc52ef86c5e02ee159c4fb6e00dfac3f8f34d89c", + "evidence/independent_fusion_review_ultra/FINAL-REVIEW.json": "6b98e5222aa109a35be8b4fc9ec19669daebcc06d542ecec0a9c820da7930501", + "evidence/independent_fusion_review_ultra/core_review.md": "13f2df4d5b240f9b89ca0ae44bba198c935532098ff4c1161631fcbd86b3e8b1", + "evidence/independent_fusion_review_ultra/gaussian_layout_review.md": "ebd7188970f55b5979b1b1a13f874a31ed0ee6c82bee329e7ad0b2a38c42c430", + "evidence/independent_fusion_review_ultra/layout_subreview.md": "637e4698a9fb02978ebc4032d8939ce0db9528e89e908c94d63b9f0d2a41f64a", + "evidence/independent_fusion_review_ultra/union_subreview.md": "738b35a04d6871cd73b14b4165ae69a1feb3a103eb46e064a64a22c4c7426856", + "evidence/inplace_algebra_ultra/CIRCUIT-REPLAY.json": "2ce5cf9ef9461e5897374ad389c26af66aeee85e8f514a9da4ed3bb2028cb1da", + "evidence/inplace_algebra_ultra/EXACT-ALGEBRA.json": "694898bfb1afcb3b8b8ef951634ac8919decdde0904350b355d254601ae3dc12", + "evidence/inplace_algebra_ultra/MANIFEST.json": "3b018dc660c6add775c12f75b9e8f5281825aeebc3888a508833ce6106c1229b", + "evidence/inplace_algebra_ultra/READING-COVERAGE.json": "756e52726b161eea27e27f1d519b05d4fb0ebf67ef9a67b33947194d5d02b709", + "evidence/inplace_algebra_ultra/SHALLOW-TOEPLITZ.md": "b384b93f3fb4a8c97da2e617ebc14d55cebb0a739070e7f8dbb66f63e24e9310", + "evidence/inplace_algebra_ultra/SOURCES.json": "fb3771f66771250aa9f4406ae9e7eb176f9cdef03976cbc9558440c674a4a94a", + "evidence/inplace_algebra_ultra/SUPPLIER-AUDIT-SOURCES.json": "d0c274d6edd6193b09d28e45e7cbfe9236fb35474d35ea3af0664ba36f9e006a", + "evidence/inplace_algebra_ultra/SUPPLIER-CAPACITY-CONTROLS.json": "6922b7d7a936d53846569ad3be53fe4f3c63d6cfe794f9279fdc6a1fe411ef0c", + "evidence/inplace_algebra_ultra/SUPPLIER-SUPPORT-AUDIT.md": "bd5b06eca043c5c871227264f6a954473c55cd16ec85bb420ff538fb8ec1d8d6", + "evidence/inplace_algebra_ultra/SUPPORT-ADVERSARIAL-AUDIT.md": "b1290f8720bf075ea2ad58d6070f3e1fc95c0155f8e33b165bc13439bbb9222d", + "evidence/inplace_algebra_ultra/TENSOR-COMPILER-CONTROLS.json": "db8a5c0dc2be956d83bc7667177252a4968e0ffaee8352e6a5dba5ab983d7ada", + "evidence/inplace_algebra_ultra/TENSOR-COMPILER.md": "4d3b8466598a864a234b978e25976648d4e761840aad9153dd18d73d3dfe4d15", + "evidence/inplace_algebra_ultra/check_circuits.py": "06d1861bfe8af543908e26557ffda7e451ff176bceb9bacfaf0f04f234b336d5", + "evidence/inplace_algebra_ultra/check_exact_algebra.py": "5ff7f25c55b370a1d0cda6c84ab9cdf2c7b0de3266d3f2e7a43280a6491074ab", + "evidence/inplace_algebra_ultra/check_supplier_capacity.py": "035ed96b39414eadec46e8de4bf3811b785862fd313deb044f42e17cf2ad3f78", + "evidence/inplace_algebra_ultra/check_tensor_compiler.py": "dc4b1f1884489215a2c2d0e8978a241e99e6c8c9f1d2fa2460c73d2c7d4ba30a", + "evidence/matrix_boundary_ultra/ALGEBRAIC-STABILITY-INDEPENDENT.md": "7873e7d9a99fdc9de3ee224b9925d3e277e9773d7f5f8c2d0f1c19b0e52bc87f", + "evidence/matrix_boundary_ultra/MANIFEST.json": "35d98d7579a16dae36530b4e5f4d0b8f925a069daa3f6fe1ea5276916167e0c2", + "evidence/matrix_boundary_ultra/PROOF-AND-COVERAGE.md": "db7509d754bb7fc3381419e0fed2674f22a9d57d34e8420fd5afa3c688fde9aa", + "evidence/matrix_boundary_ultra/SOURCE-CONSTRUCTIONS.json": "114c1d8fb70592455a80c73d8a1bc6bfc9aca4e7395a420b6331d5474b4d1917", + "evidence/matrix_boundary_ultra/SOURCE-COVERAGE.json": "fdc6849f97999a6cf99cdaa50591d24f78d6fb0bc580315f205452e5906b35cc", + "evidence/matrix_boundary_ultra/check_source_constructions.py": "9d387098403c0355be8e93158df02bae5a435b2366bd28efdf0b127e470c8c1c", + "evidence/phase_assembly_ultra/CAPPED-INTERIORS.md": "983c5cab2d2398f2192a8aec07daecb655f2de136e12a37f75672a14d27172ba", + "evidence/phase_assembly_ultra/CAPPED-OUTER-ARITHMETIC.json": "22caac9ec2ecf4d5743b7eb946b633911fbac55a714399556e87e2eae0457dec", + "evidence/phase_assembly_ultra/MATRIX-COROLLARY-ARITHMETIC.json": "c6efc4d2f6d17159cefebf5c2dd6099a6327fe0911c5dd87623cad96c7d6c56a", + "evidence/phase_assembly_ultra/MATRIX-COROLLARY-REVIEW.json": "5cd5e97f93a9b3e439bfeffb52139d7bb1730de96ad13b59b7e1b20fdca6a3f6", + "evidence/phase_assembly_ultra/MATRIX-COROLLARY.md": "2d7fb1088e58bb86e574277733e082f135362215a69add71d9090213d32c9221", + "evidence/phase_assembly_ultra/OUTER-ARITHMETIC.json": "050c61d90236c593fd0827d7edc297e05604884e4ec093659aee46a9ee336020", + "evidence/phase_assembly_ultra/OUTER-AUDIT.md": "94799bfa2794eb867d6ba68593c3e92988ade083e74d895e8d07ae3b8d0670dc", + "evidence/phase_assembly_ultra/README.md": "17c393075292b364899cb7c451cebbc9b20834f9fac934ce3740aba360c27246", + "evidence/phase_assembly_ultra/REVIEW-RECEIPT.json": "97b20e50d3722fcde3831124a107df6c15c0ffdbb9e057b7867f41aaa2481800", + "evidence/phase_assembly_ultra/check_capped_outer.py": "b4555c77de7a3ed4abc708a8d93363ef7c9a914be1091f80ab3ddea83f71230a", + "evidence/phase_assembly_ultra/check_matrix_corollary.py": "30db2d8e0f40fcc5c91e25f74cdc54e46aa4a0353c725345f9bcf5744e0b617f", + "evidence/phase_assembly_ultra/check_outer.py": "6a0c5f8956323615df8bc4b12996832471c0ae607d05429c9d70ad1b50568f10", + "evidence/phase_layout_audit_ultra/AUDIT.md": "54aafc7afd09fe1a5312e69fad09c87422690543ab75c6ae35f6cbcc26b3eb8a", + "evidence/phase_layout_audit_ultra/CAPPED-LAYOUT-CONTROLS.json": "e6951790238b4998c632c95aa329ee2cd2527a5d74a2f28bd15249fec6d2419a", + "evidence/phase_layout_audit_ultra/CAPPED-SIGNOFF.md": "70e9175ebde200f8b016236adc88c4a1c4858945e7c3e5c453a8b6a5f79a263a", + "evidence/phase_layout_audit_ultra/MANIFEST.json": "c98559147bb498ac78af998eed63ab6661af934fa1a0df6844176b1811753fb9", + "evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-CONTROLS.json": "f8bd8729cb8438188e90fb9149f598b825461c97b4ed290584ca4367f812a48a", + "evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-SIGNOFF.md": "4c8c62f723232e842dc3bbdcc4defcc8ff1aeb86ba9f694661899dc6783b13c4", + "evidence/phase_layout_audit_ultra/PARAMETERS.json": "9f72cfffa34844764ca65a6b4431cc5c779141751df746019db9d3ad8f1dee92", + "evidence/phase_layout_audit_ultra/Q-EMBEDDING-CONTROLS.json": "24ead3534482397c00c23ad3dbbd4e930e02290e00c97765353d8783c6575c7d", + "evidence/phase_layout_audit_ultra/README.md": "0ec721f76dfa943e808afd3c2cc39ee69f1a6e5f4f77ba3c7c1373ad60db25af", + "evidence/phase_layout_audit_ultra/UNION-CONTROLS.json": "6c5262144215cc603bbc3bee93a9a6d9d2318d0177a59115fe560762998498f9", + "evidence/phase_layout_audit_ultra/check_capped_layout.py": "267d93ab5114ec160f88a6e65fd34c9f0696a686c36ba2dd194d6b70fa32a6bd", + "evidence/phase_layout_audit_ultra/check_q_embedding.py": "ac858a14bbaf37e0e412a7ada282cd1586632f52b8a979733e775f50130969b6", + "evidence/phase_layout_audit_ultra/check_union.py": "74608380d72567edcd4470c8d226b15848f9d3a4e5d77d652bdd8963480ab9ce", + "evidence/radical_reduction_ultra/CONTROLS.json": "12d9207e887fda73159a9e2e4776003ca6f905fc3dc45d77ced588a1c9f80cb2", + "evidence/radical_reduction_ultra/ERASURE-ROUNDING-CONTROL.json": "cceb2ade8ce5e18be3871f771955e38258f5eb4e39790c016aab96d8cf0488ef", + "evidence/radical_reduction_ultra/FIXED-A-LDU-CONTROLS.json": "d6bda457fff01e04b6565d84c7bdbac870569a2ba7ef18a1fc8db11b738faf38", + "evidence/radical_reduction_ultra/FIXED-A-PERIODIC-NORM-AUDIT.md": "21027a569588922c491b2c5b4f31e01ddb784f1f20cdf48b7d482d0e85b66bdb", + "evidence/radical_reduction_ultra/HOLES-AND-Q-LDU.md": "c6a032ed495325806ddf491c5c85bc822a7fdd613aff906a7be553960d0f85a3", + "evidence/radical_reduction_ultra/HOLES-CONTROLS.json": "3f7e98ce524d5fb2ba2f911a350081340215e806ae945abf15a2fa07988ca2f8", + "evidence/radical_reduction_ultra/LEDGER.json": "87eab0eb334ddc16e50cedbcab56320d2ff056c3dc87d7a5191171bb5a4c206e", + "evidence/radical_reduction_ultra/NEAREST-NEIGHBOR-CONTROLS.json": "b85eca6098847e7b2f77b49a6c8c35e33cf790bc5dd01b95e1334daef9af47f4", + "evidence/radical_reduction_ultra/NEAREST-NEIGHBOR-NORM.md": "7955383d50fc59b5c4c4d839c7e4d630add6208a3a233d7372a80309085ac6b2", + "evidence/radical_reduction_ultra/PARTIAL-FUSION.md": "811a3a0c88a90708add5b12fb0a05c25623f0af155010d5dcacd56021c55cba5", + "evidence/radical_reduction_ultra/POSITIVE-TREE-CONTROLS.json": "7b31811402ddda4668fe8375f6c90a6047511d50836dbb7cfc7ffcf24fe19a11", + "evidence/radical_reduction_ultra/Q-LDU-CONTROLS.json": "370a07aa1a56c656ec1f44d7651dfbe999ad0c19dede9036257cc2f29dc39452", + "evidence/radical_reduction_ultra/README.md": "4d65ea3c8b6a0d5faef819a58c8b8277681d11bed54686e9a7f78de29736e68e", + "evidence/radical_reduction_ultra/REFINED-PHASE-FUSION.md": "b4367eac012624f803b3d2e3a72339e050a0071bbec37e6d33b2cf322bd70bc5", + "evidence/radical_reduction_ultra/STABLE-POSITIVE-TREE.md": "ec2f8a1c4273b81217545d2710bcffdd09b5c9ba9349e887b5f7bf6f5bddfdc7", + "evidence/radical_reduction_ultra/SYLVESTER-CONTROLS.json": "198af9f58c2950f17d8b1861ba4566bb2f6a0108a889a56db328fe67f8faa1a2", + "evidence/radical_reduction_ultra/TASK.md": "5eef77fb23f26f5bfb5dc8e376ed25e769924f2b6420ebfc8671e3b2a2f1f611", + "evidence/radical_reduction_ultra/check_constructions.py": "91387c9bd763a5c55c22a9907947bd07b6002f739aa6feedf6d3a02adea1e316", + "evidence/radical_reduction_ultra/check_erasure_rounding.py": "486efd4692665a548b94b79877abb76ad13157268f05c270c4e75d8f97700795", + "evidence/radical_reduction_ultra/check_fixed_a_ldu.py": "15134147317a7d789c9ea0ebd71db5ff11e59a20ef140f681d87478977734cd0", + "evidence/radical_reduction_ultra/check_holes.py": "99c5dc4601ea88b553f52e235d36fba0aeb867e7fcd54130cdb3eb115a9bb0d8", + "evidence/radical_reduction_ultra/check_ledger.py": "254342c05949e5cefe4f507a35487e0a1ffb7137a60d2b97831d5ad55d7d7ce5", + "evidence/radical_reduction_ultra/check_nearest_neighbor.py": "21bf2be683cefa7a760bf1e1bdaa647f57bf47ab86b13fd7a74e8d650f492913", + "evidence/radical_reduction_ultra/check_positive_tree.py": "46db2ce9122ff57bb4eeaa723db1f351891e671a7eaa7bf4fb61f85dafee9e37", + "evidence/radical_reduction_ultra/check_q_ldu.py": "ec2589ca9abe71d674ba9ccf81f289b1526f56f3001c48d22977accb1be3e4dc", + "evidence/radical_reduction_ultra/check_sylvester_factor.py": "60b21fda4ff451582087d30222a072eb1a214d531277e92883eaf28221aafced", + "frontier_fusion/FRONTIER-FUSION-ARITHMETIC.json": "82656563e7c8725f95c4aea7e273805a3d3faf34c495a330f1c91a036765414a", + "frontier_fusion/INDEPENDENT-SUBSTITUTION-RECEIPT.json": "49a8450289f1c1730c7d11d7c1506ad4af26fe9a1f76341f808a3025123e9519", + "frontier_fusion/INDEPENDENT-SUBSTITUTION-REVIEW.md": "b48d3e14083829db81336b639a6cfc698ac0dccc76fa2606d11b4be7a968ddeb", + "frontier_fusion/NATIVE-ADMISSION-BINDING.json": "ec4e89e0513958c1d553736cd06eedbc5f2aca61b40f92aeade3eb882bf588bc", + "frontier_fusion/REPRODUCE.txt": "76808b685f1623813658f5b596a4b8191a07e7c0810550f6fada7fb4a4992913", + "frontier_fusion/T74-APPENDIX.tex": "d053a6b69de2ff4005ee52eb3b673de606326aa0f0e290354675f9f08f915b99", + "frontier_fusion/bind_native_admission.py": "166541ca2b7f3066f4c2421e5a9f1886d58e1fdd7677904976261ab2c82b32cb", + "frontier_fusion/check_frontier_fusion.py": "02f7f9ebf29487331171954c7ceb37ff5315e2f28a9d56096ebbf9fb865c70ab", + "frontier_fusion/independent_substitution_check.py": "579bbde41e90792818c2726b38dcab26cf5a2695d3348731e814175146b0a737", + "gaussian_fixed_width_note.tex": "6f3edb7b238f2b6af4f3e2d98dee90fe6f4ba063a5ccd120422e45c941712aab", + "make_native_capsule.py": "8f342ca212b8d601a11f704042c577c1b088e0079bda04b3065467c2f3c36ea0", + "phase_fusion_note.tex": "b5957f38c98a68f2584a42cedf91d753180dab438129fdf749b441074f00d4e1", + "target002_upstream/full-1661-verification/RESULT.json": "11c57817a4d43a489010a13af7621d37eeedc398308c036e63a2a97119443861", + "target002_upstream/full-1661-verification/STAGES.json": "c2edb01a61c03e04bf48e605422ff83c1d304e4d586268959d4ea24b743640fb", + "target002_upstream/pr1661/research/gmx-t74-p566-ep400/CLAIM.json": "70aacd45f9e6fac8675687cf50da32e0ad4e479d9a5c28f2afd1550311ae8849", + "target002_upstream/pr1661/research/gmx-t74-p566-ep400/MANIFEST.json": "d90d49eaa68e48c6992a07972e736ef4b9cd80274361cbbc1ec980d43f29ad7f", + "target002_upstream/pr1661/research/gmx-t74-p566-ep400/NOTICE": "3918a42010a435782de0fe8c38fab8f7df5d48a375ecf603c2bad1b818a16d6f", + "target002_upstream/pr1661/research/gmx-t74-p566-ep400/inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "target002_upstream/pr1661/research/gmx-t74-p566-ep400/new/SPEC.json": "d6b6a2140f3a61ae8cfdd8b51a1131934d63d2dd8573c1b13eb2b9528f3c3db8", + "verify.py": "93ef0f46e132485da6194587199b8f039e25b1b9f099f93bbdaeac5c0d66de7f" +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PHASE-LAYOUT-AUDIT.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PHASE-LAYOUT-AUDIT.md new file mode 100644 index 0000000000..bbeeee7431 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PHASE-LAYOUT-AUDIT.md @@ -0,0 +1,242 @@ +# Grouped phase-cell layout audit + +The sparse-union layout in `REFINED-PHASE-FUSION.md` has a constructive +implementation with its stated `V g^2 W polylog(p)/d` per-group movement +budget. It does not require sorting the full tensor or retaining d full +payload scans. The conclusion is conditional on the separately supplied +dense local tensor compiler, rounded phase-cell factorization, and precision +bounds. This audit does not prove those algebraic/analytic inputs. + +The maximum physical bandwidth **W**, including the broad forward map, must +be used in the dyadic carving and support sets below. The narrower inverse +bandwidth alone is insufficient for the broad map. The phase-assembly +branch confirms this convention. + +## Exact operator order and the union that is actually invariant + +Write H in interior/boundary order as `[A B; C D]` and let +`S=D-C A^-1 B`. The displayed identity in the parent note is correct. In +execution order its inverse can be scheduled as + +``` +diag(A^-1,I) +[I 0; -C I] +diag(I,S^-1) +diag(A,I) +[I -B; 0 I] +diag(A^-1,I). +``` + +The middle two diagonal factors commute. Thus there are three dense +interior stages and two sparse windows: the C and S^-1 stages share one +window; B uses the second window. For H itself, reverse and invert this +sequence: the same original B,C and S occur, with signs reversed and dense +A/A^-1 interchanged. No dense A^-1 B or C A^-1 shear is smuggled into the +sparse boundary cost. + +For each active axis i, let J_i be its designated boundary coordinates. +Let E_i contain J_i and every interior coordinate incident to an original +nonzero entry of B_i or C_i. Original physical bandwidth W implies that E_i +lies within O(W) of the carved endpoints. Include physical-period cuts, +artificial phase cuts and clipped microbox endpoints. Dyadic carving gives + +``` +|E_i| <= C (L/d+1) W log d, +mu := max_i |E_i|/L = O(W log d/d + W log d/L) +``` + +inside a length-L microbox. All sparse factors have the block form +`T_i = I_(E_i^c) direct_sum T_i|E_i`. In particular S_i^-1 can be dense on +J_i: J_i is already included in E_i. Let + +``` +U = {x in [L]^g : some x_i belongs to E_i}. +``` + +Then `|U|/L^g <= g mu`. Every sparse tensor-axis operation preserves U and +its complement. If x_i is changed by a nonzero off-diagonal entry, both +its old and new coordinates belong to E_i; otherwise it is unchanged. +This proves closure for an arbitrarily long sequence of these sparse +operations, not just one application. + +Dense A or A^-1 is **not** covered. It can move a near-boundary interior +coordinate into the deep interior. Scatter U before a dense stage and +regather afterwards. `check_union.py` includes an exact example in which +dense A^-1 sends union-supported data outside U. The actual schedule above +therefore uses two union gathers, not one retained union for all six stages. + +## Complete rectangles inside the union: no missing-zero assumption + +For one sparse axis i define + +``` +U_i = {x : x_i in E_i} = E_i x [L]^(g-1). +``` + +This is a **complete rectangle**, and it is wholly present in U regardless +of which other coordinates are near a boundary. All nonidentity data needed +by T_i is in U_i. A line with every other coordinate outside its own E_j +still has every E_i coordinate present. A line with another boundary +coordinate may contain more data, but those extra E_i^c entries are identity +coordinates and need no boundary computation. + +Keep a copy of U in its original microbox lexicographic order, with a short +coordinate/membership header. For each axis i: + +1. Scan U once and copy records with x_i in E_i to an auxiliary stream. + The copied stream is lexicographic E_i x [L]^(g-1). +2. Rename the increasing E_i coordinates by their ordinal 0,...,|E_i|-1. + This is a stream counter; no rank/select query is needed. +3. Expose that one field at the line suffix using the retained small-field + transpose. Its length is at most L=poly(p), so only O(log p) binary + block moves are needed. Pad only this field to its next power of two + temporarily, at a factor below two, and remove that padding before the + next axis. The other fields may be arbitrary spectators. +4. Apply the original B/C or boundary S/S^-1 factor on its complete E_i + line, retaining identity coordinates E_i\J_i when appropriate. +5. Undo the transpose at the actual field length. Merge the ordered E_i + stream back into a fresh copy of U, replacing exactly those entries. + +No array is completed by invented zero coordinates. The finite checker +verifies the extracted rectangle cardinality and the full tensor result. + +The extraction/merge costs O(|U|) per axis. Transposition costs +O(|U_i| polylog p). Consequently one sparse window costs + +``` +O(V [g^2 mu + g mu polylog p]) + = O(V g^2 W polylog p/d) + O(V g^2 W polylog p/L). +``` + +There is no factor `K=g log s` from a computed-key sort in this part of the +algorithm. A more general radix implementation would still fit with extra +small powers of g, but the complete-rectangle construction avoids it. + +## Union extraction and piece catalogues + +Only one full microbox scan is needed to form U, and one to scatter it. +For every complete p-bit coefficient record, compute its g membership flags +from its coordinate tuple and OR them. The flags and coordinate header have +O(g log L) bits. A nonzero number of flags sends the whole record once to U; +it is not duplicated for each active axis. + +This is a charged descriptor calculation. For actual source periods of +bitlength h=Theta(p/d), q_j inversion and phase-cell endpoint calculations +use O(h^2 polylog p) elementary bit operations per axis. Within a phase +cell, the greedy dyadic carve is found by at most O(log d) halvings and +integer comparisons. Thus a conservative membership cost is +`O(g h^2 polylog p)` per record, which is o(p) for +`g=p^(1-epsilon-r-zeta)` and epsilon>2/3. At the proposed epsilon this has +power about 0.005. It is absorbed by reading the p-bit record once. +Alternatively the original remainder phase generator and an odometer give +the same membership flags in sequential coordinate order. + +Factor pages may be regenerated once per complete microbox/group from its +actual coarse origins, using the supplied polynomial-time coefficient +generation. The complete inner microbox and untouched spectator payload +are superpolynomial in p and amortize this polynomial setup. This avoids +random access to a global catalogue in the scrambled coarse order created +by a support-limited gather. Online row/factor pages are then visited in +the ordered extracted E_i line. All page rewinds are within that line or +RHS batch and are included in the corresponding boundary arithmetic. + +## Batched right-hand sides do not add a large transpose + +All other inner coordinates and following tensor axes are independent +right-hand sides for an axis operation. Their count R is superpolynomial. +Batch them in a dyadic width between W and 2W; the final incomplete batch +can be padded once at constant cost. To put the batch index outside the +boundary-row field, move only that polynomial-width row field. This costs +O(log p) times the boundary volume, not a transpose of the long spectator +field. Each W-by-W factor page is scanned once per RHS batch and reused in +the block product. Reverse the small-field layout after the solve. + +Thus the assumed Strassen `W^omega` per W RHS gives the quoted total +`O(V W^(omega-1) polylog p)` boundary arithmetic. This audit checks the +layout and factor reuse; stability and the no-pivot factor theorem remain +the phase-assembly branch's responsibility. + +## q_j embeddings, selections and source order need one group scan + +For a group, each coordinate map `j -> q_j=floor(tj/s+1/2)` is increasing +and injective. Its tensor product preserves lexicographic order on its +image. Enumerate the target-group rectangle once. At target coordinate k, +set + +``` +j=max(0,ceil(s(2k-1)/(2t))). +``` + +The coordinate belongs to the image iff `j9/4`. + +If the surrounding proof allows polylog p factors, the bandwidth's polylogs remain polylogs; no positive power of p is introduced by coefficient approximation or error amplification. The algorithm provides absolute accuracy, which is what local residual bounds use. It makes no relative-error promise for nearly canceled output entries. + +The recursion can also be scheduled with sequential tapes. At one fixed-base node, its fixed number of input block combinations and output block sums require a fixed number of complete scans and fixed block permutations of `O(n^2)` records. Store child inputs consecutively, process children depth-first, and stream their returned blocks into accumulators. Copying a pending-child region or repositioning a finite set of tapes costs another `O(n^2)`-record pass at that node, already covered by the recurrence's addition term. Addresses and recursion descriptions add at most logarithmic factors. If any implementation retains an additional `polylog W` factor, choose the rank scheme first with exponent strictly between 9/4 and the stated target tau, leaving enough fixed exponent slack to absorb it. No algebraic unit-cost random-access assumption is needed for the target power tau. + +## 4. Boundary substitution and the outer ledger + +The existing capped boundary algebra uses W simultaneous right-hand sides. A square product costs `O(W^tau M(p))`; dividing by W² processed entries gives `O(W^(tau-2) M(p))` per entry. One axis has `O(V W/B)` boundary entries, and there are d axes. Its total is consequently + +`O(V (d/B) W^(tau-1) [M(p)/p] polylog p)` + +when V is the total bit volume, as in the phase-assembly notes. There are V/Theta(p) scalar entries, so the factor M(p)/p is the per-bit arithmetic charge. Equivalently, if V counts scalar entries instead, the formula has M(p) without the division. The retained quasi-linear short multiplier has M(p)/p=polylog p. + +This retains the essential d/B factor. With `d=p^epsilon`, `B=p^b`, and `W=p^(1/2) polylog p`, its normalized exponent is + +`epsilon-b+(tau-1)/2`. + +Taking `tau=19/8` gives `(tau-1)/2=11/16` and boundary saving `5/16+b-epsilon`. This is already more than enough to put the basic sparse-union cost near the binding row at b near 3/4. Pushing tau down to the unattained endpoint 9/4 is unnecessary. + +The changed matrix algorithm has the same input/output interface as the former Strassen product. It does not change the original Gaussian matrix, boundary support, anchored gauge, square-block inverse choice, or number of right-hand sides. The surrounding local-residual proof must still supply polynomial bounds on local exact inverses and partial right-hand sides. The new product's error is `poly(p)2^-P`, so that proof applies with a fixed larger guard constant. + +The optional full-coordinate-key surcharge in the old arithmetic ledger would become binding if mechanically retained at b near 3/4. It is not part of the actual rectangle extraction/one-field transpose/ordered-merge algorithm, as confirmed by the separate phase-layout audit. Dropping it is a distinct layout fact, not a consequence of matrix multiplication. It must remain explicitly justified in the final outer ledger. All retained supplier assumptions remain in force. + +No final improved outer exponent is claimed in this note; that requires the whole ledger and the independent group-layout/gauge checks. + +## 5. Exact controls run in this audit + +`check_source_constructions.py` uses only Python's exact rational arithmetic and writes `SOURCE-CONSTRUCTIONS.json`: + +* Finite Fourier/separation support for M=1,...,12: the modular relation has no wraparound and zero weight is exactly g=h,u=v. +* Determinant change of basis for a=1,...,8 and b=2,...,8, for every first-input monomial: quotient and kernel diagonal slices are exactly the two claimed neighboring convolution tensors; the upper-right block vanishes. +* Three-sector identity for a,h=1,...,14: all weights are nonnegative and each of the three retained branches is exactly the claimed tensor after its permitted identification. +* Exact rational diagonal product lower bound through a=300. + +All controls passed. They detect several relevant implementation mistakes but are not a finite substitute for the universal arguments above or for the theorem's nonconstructive rank-existence step. + +## 6. Deliberate limitations + +There is no generated competitive finite matrix scheme, no numeric claim about its constants, no use of a rank formula at exponent exactly 9/4, and no fast algorithm for finding the first successful algebraic tuple. The algorithm remains computable and uniform because the finite search halts under the proved existence statement and its cost is independent of the growing input. The outer conclusion remains conditional on exactly the previously retained supplier/computational assumptions. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PUBLICATION-CHECKS.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PUBLICATION-CHECKS.json new file mode 100644 index 0000000000..befac93552 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PUBLICATION-CHECKS.json @@ -0,0 +1,226 @@ +{ + "status": "PASS_PORTABLE_EXACT_PHASE_FUSION_PACKAGE", + "scope": "Exact finite controls and arithmetic plus retained native receipt binding. This does not replay the entire native dependency or discharge all-size hypotheses. The matrix corollary retains an additional external premise.", + "package_files": 180, + "headline_kappa": "1677160151714381/1000000000000000000", + "checks": [ + { + "script": "frontier_fusion/check_frontier_fusion.py", + "artifact": "frontier_fusion/FRONTIER-FUSION-ARITHMETIC.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "frontier_fusion/independent_substitution_check.py", + "artifact": "frontier_fusion/INDEPENDENT-SUBSTITUTION-RECEIPT.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/inplace_algebra_ultra/check_exact_algebra.py", + "artifact": "evidence/inplace_algebra_ultra/EXACT-ALGEBRA.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/inplace_algebra_ultra/check_tensor_compiler.py", + "artifact": "evidence/inplace_algebra_ultra/TENSOR-COMPILER-CONTROLS.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/inplace_algebra_ultra/check_supplier_capacity.py", + "artifact": "evidence/inplace_algebra_ultra/SUPPLIER-CAPACITY-CONTROLS.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/gaussian_fast_ultra/check_lower.py", + "artifact": "evidence/gaussian_fast_ultra/LOWER-CONTROLS.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/gaussian_fast_ultra/check_bilateral.py", + "artifact": "evidence/gaussian_fast_ultra/BILATERAL-CONTROLS.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/gaussian_fast_ultra/check_upper_data.py", + "artifact": "evidence/gaussian_fast_ultra/UPPER-DATA-CONTROLS.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/gaussian_fast_ultra/check_upper_merge.py", + "artifact": "evidence/gaussian_fast_ultra/UPPER-MERGE-CONTROLS.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/gaussian_fast_ultra/check_capped_gauges.py", + "artifact": "evidence/gaussian_fast_ultra/CAPPED-GAUGE-CONTROLS.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/gaussian_fast_ultra/check_dyadic_interiors.py", + "artifact": "evidence/gaussian_fast_ultra/DYADIC-INTERIOR-CONTROLS.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/gaussian_fast_ultra/check_cyclic_scan.py", + "artifact": "evidence/gaussian_fast_ultra/CYCLIC-SCAN-CONTROLS.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/gaussian_fast_ultra/check_forward_cell.py", + "artifact": "evidence/gaussian_fast_ultra/FORWARD-CELL-CONTROLS.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/gaussian_fast_ultra/check_log_a_schur.py", + "artifact": "evidence/gaussian_fast_ultra/LOG-A-SCHUR-CONTROLS.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/halo_layout_ultra/check_halo.py", + "artifact": "evidence/halo_layout_ultra/HALO-CONTROLS.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/halo_layout_ultra/check_embedding.py", + "artifact": "evidence/halo_layout_ultra/EMBEDDING-CONTROLS.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/halo_layout_ultra/check_ragged.py", + "artifact": "evidence/halo_layout_ultra/RAGGED-CONTROLS.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/halo_layout_ultra/check_sparse_shear.py", + "artifact": "evidence/halo_layout_ultra/SPARSE-SHEAR-CONTROLS.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/phase_layout_audit_ultra/check_union.py", + "artifact": "evidence/phase_layout_audit_ultra/UNION-CONTROLS.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/phase_layout_audit_ultra/check_q_embedding.py", + "artifact": "evidence/phase_layout_audit_ultra/Q-EMBEDDING-CONTROLS.json", + "status": "PASS_EXACT_REPLAY" + }, + { + "script": "evidence/phase_layout_audit_ultra/check_capped_layout.py", + "artifact": "evidence/phase_layout_audit_ultra/CAPPED-LAYOUT-CONTROLS.json", + "status": "PASS_EXACT_REPLAY" + } + ], + "cold_native_binding": { + "status": "PASS_FRESH_NATIVE_RUN_BOUND_TO_PINNED_PHASE_FUSION", + "scope": "Existing complete cold native run checked against the pinned source and the independently replayed outer inputs; all-size assumptions remain.", + "source_commit": "f852af5e178ce035cd46181a29d9330bcbcaa206", + "source_manifest_sha256": "d90d49eaa68e48c6992a07972e736ef4b9cd80274361cbbc1ec980d43f29ad7f", + "native_words": { + "base": "0740b6f33927b9e60c9a7f35e7fcb2fd9ac6e2d3982112428b302a6966a18c73", + "extra": "17cc6c177c89eb264514e1efb3685ab9a621f3952a8f393a6a5eb28cf77e2884" + }, + "complex_lower": "8398566873921928847865107582977140808726533185752606814031551243089531888024439117235381227291914058448586599984374667388474246199941131401151316949826049729135138281487406840315861844950703424400143642674520874037535671888706933756382975087837881090275422517866488734818622618194142006954783211221019204801330544148296601796623021915319705773977790291402669246008667290619418570040011860763793419/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "profile": { + "1": 1559766, + "2": 337668, + "3": 278058, + "4": 84912, + "5": 54612, + "8": 5328, + "48": 22748 + }, + "controls": { + "admission": 114, + "bit": 12, + "controller": 15, + "independent_owner": 8, + "geometry": 6 + }, + "canonical_native_receipts_checked": 46, + "all_native_receipt_sha256": { + "native_work/RESULT.json": "11c57817a4d43a489010a13af7621d37eeedc398308c036e63a2a97119443861", + "native_work/STAGES.json": "c2edb01a61c03e04bf48e605422ff83c1d304e4d586268959d4ea24b743640fb", + "native_work/audit-local-566-base.log": "4767093ae54ad03845870bcfd0402f7ee6e4bc4c1dd7801146b7aa2217f0f39d", + "native_work/audit-local-566-extra.log": "b03c4d51b4309fd2b49fdae8f26d4bb68f84d1149f310d21237a95f995b57d19", + "native_work/fine-engine-oracle.log": "ea6df7be568d6461ac54e0d56754797de0f70f2f1ecc335114791445b75795d3", + "native_work/geometry-controls.log": "0a3ecf05cfa2bebb61fffd2fbb4b244c03d742069e2705d02512699bbf4b01f9", + "native_work/lift-parent.log": "9578ab17094f120d54af46f9e0601714c09a2978faa0d7949823099d06d931d4", + "native_work/native-new-base/local/CLIFFORD-REVIEW.json": "629abac83fc0fcf54134b3c07222b8f857991dc8bc2e80e9fc9a6daa301c2cfe", + "native_work/native-new-base/local/INDEPENDENT-LOCAL-REPLAY.json": "13b391f04b89dbfd8324a9a22796e938194162ca04522a5fb778d00f20cb2b57", + "native_work/native-new-base/local/LOCAL-CHECKS.json": "9628c1d94f0599fc128ef583703fe83ef1e6f73465484c207f67b62abab2b785", + "native_work/native-new-base/local/SCALAR-FRAME-AUDIT.json": "c7d48f60d0e3ed2f024e29b69bc7e2920251d040148b18dfe4444f4f68062ba7", + "native_work/native-new-base/local/WRAPPER-CHECKS.json": "fc7e24778302326fdacfd08dd3d5e63483cf4539cd5022a6c77f016752fac1a3", + "native_work/native-new-base.log": "5ca9f310247cb601c905ff30597baa4634847395d7826e9ab926a9876ced2514", + "native_work/native-new-extra/local/CLIFFORD-REVIEW.json": "1c367f0a64d4dad8d11496fe707c859512f7f2f3b2ca479c493c936a6444a023", + "native_work/native-new-extra/local/INDEPENDENT-LOCAL-REPLAY.json": "8efdbce010bcc13af65069ee1c5f612d7c3e79cf8e6d7d7d162299a4434d1ec7", + "native_work/native-new-extra/local/LOCAL-CHECKS.json": "bc6a2ddb1b27a3b1af02e32eba3140f67c66debcb3521c100136774854a6aa57", + "native_work/native-new-extra/local/SCALAR-FRAME-AUDIT.json": "d4fc1d25c9ad00ed058aef75a7281641028f035da1d9d95a59a1c87913cd6bce", + "native_work/native-new-extra/local/WRAPPER-CHECKS.json": "84a5bc26df5fb70dc12852a868962bcdfad3b85d85408edfd1f343e898a78c0e", + "native_work/native-new-extra.log": "5ca9f310247cb601c905ff30597baa4634847395d7826e9ab926a9876ced2514", + "native_work/parent/RESULT.json": "13037d41939ede1de9c80be7a75a051006a457ff2d871cadde2351a39bb254ee", + "native_work/rebind-566.log": "c90f7d555ea88339e4999736f38e9fcf1e63b88637e05ddcb76782f0900134a3", + "native_work/rebuild-words-566.log": "e9825c70278880f4a9566012d700b0d7944f84fbf02b95408896b3a07d29e849", + "native_work/reconstruct-owners.log": "363a74def2d33de399e70eab63d987832b079286cb7c58f9ffa87e186ae761f5", + "native_work/retained-provider-and-parent-admission.log": "a84cbfcd6ad1a9a2f8279939fcbcec5457b8b55d3dc9971e3407491a82c1c57e", + "native_work/strict/ADMISSION-CONTROLS.json": "528fa1aec9db41e748774df5b9cbcd86f702c76286423fd0762cbac5510564c3", + "native_work/strict/ASSEMBLY.json": "36f8c00c200cc375512ad0e881e91b42daba10c962fce37465040cb717b5cc60", + "native_work/strict/BIT-CONTROLS.json": "7c27d56e68b924ac0fefc6353e9e38d2e3f593295cf1a39aade27fba39922e54", + "native_work/strict/RESULT.json": "5fef4a6d07d561d9eae7d0e900e86b02fe905239a15a46a9f93826f89069a970", + "native_work/strict/STAGES.json": "abbc3fa255097304f0862c3c390c3bd681485a64c5cf906b7796e6f978faf049", + "native_work/strict/global/audit/ASYNC-AUDIT.json": "37b1b8d81353c99db83edbf3d9d1510906e0ae0a3301165894190d416f1c6d60", + "native_work/strict/global/audit/PREFIX-AND-INVOICE.json": "321d98f8342fb61418aacee7a99a7e54ae284b32a5f142fa692ebe6825d05ea0", + "native_work/strict/global/base/providers/extra/CLIFFORD-REVIEW.json": "1c367f0a64d4dad8d11496fe707c859512f7f2f3b2ca479c493c936a6444a023", + "native_work/strict/global/base/providers/extra/INDEPENDENT-LOCAL-REPLAY.json": "8efdbce010bcc13af65069ee1c5f612d7c3e79cf8e6d7d7d162299a4434d1ec7", + "native_work/strict/global/base/providers/extra/LOCAL-CHECKS.json": "bc6a2ddb1b27a3b1af02e32eba3140f67c66debcb3521c100136774854a6aa57", + "native_work/strict/global/base/providers/extra/SCALAR-FRAME-AUDIT.json": "d4fc1d25c9ad00ed058aef75a7281641028f035da1d9d95a59a1c87913cd6bce", + "native_work/strict/global/base/providers/extra/WRAPPER-CHECKS.json": "84a5bc26df5fb70dc12852a868962bcdfad3b85d85408edfd1f343e898a78c0e", + "native_work/strict/global/base/providers/gauge44/CLIFFORD-REVIEW.json": "629abac83fc0fcf54134b3c07222b8f857991dc8bc2e80e9fc9a6daa301c2cfe", + "native_work/strict/global/base/providers/gauge44/INDEPENDENT-LOCAL-REPLAY.json": "13b391f04b89dbfd8324a9a22796e938194162ca04522a5fb778d00f20cb2b57", + "native_work/strict/global/base/providers/gauge44/LOCAL-CHECKS.json": "9628c1d94f0599fc128ef583703fe83ef1e6f73465484c207f67b62abab2b785", + "native_work/strict/global/base/providers/gauge44/SCALAR-FRAME-AUDIT.json": "c7d48f60d0e3ed2f024e29b69bc7e2920251d040148b18dfe4444f4f68062ba7", + "native_work/strict/global/base/providers/gauge44/WRAPPER-CHECKS.json": "fc7e24778302326fdacfd08dd3d5e63483cf4539cd5022a6c77f016752fac1a3", + "native_work/strict/global/base/split-centres/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "native_work/strict/global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "native_work/strict/global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "native_work/strict/global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "native_work/strict/global/base/split-centres/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "native_work/strict/global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "native_work/strict/parent/complex-global/base/split-centres/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "native_work/strict/parent/complex-global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "native_work/strict/parent/complex-global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "native_work/strict/parent/complex-global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "native_work/strict/parent/complex-global/base/split-centres/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "native_work/strict/parent/complex-global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "native_work/strict-t74.log": "d6a6c941d4107f47f3f8ced6a4f85b48d562bb30aeb9ae7927c3a3a15331af1b", + "native_source/CLAIM.json": "70aacd45f9e6fac8675687cf50da32e0ad4e479d9a5c28f2afd1550311ae8849", + "native_source/MANIFEST.json": "d90d49eaa68e48c6992a07972e736ef4b9cd80274361cbbc1ec980d43f29ad7f", + "native_source/new/PROFILE.json": "f66dd80aff69525144eac18144c13d7d8be3d3c39028b3afa1b59a8edf53e8a3", + "native_source/new/SPEC.json": "d6b6a2140f3a61ae8cfdd8b51a1131934d63d2dd8573c1b13eb2b9528f3c3db8" + }, + "run_receipt_sha256": { + "RESULT.json": "11c57817a4d43a489010a13af7621d37eeedc398308c036e63a2a97119443861", + "STAGES.json": "c2edb01a61c03e04bf48e605422ff83c1d304e4d586268959d4ea24b743640fb", + "strict/RESULT.json": "5fef4a6d07d561d9eae7d0e900e86b02fe905239a15a46a9f93826f89069a970", + "strict/ASSEMBLY.json": "36f8c00c200cc375512ad0e881e91b42daba10c962fce37465040cb717b5cc60" + } + }, + "environment": { + "python": "3.14.7", + "platform": "macOS-15.7.7-arm64-arm-64bit-Mach-O", + "dependencies": { + "numpy": "2.5.4", + "scipy": "1.18.1", + "sympy": "1.14.0" + } + }, + "native_replay_mode": "Fresh native providers and retained parent; no reuse/cache flags. Complete source verification was run before publication.", + "capsule_generator_replay": "Regenerated canonical capsule byte-identical to committed capsule using explicit --native-source and --native-work paths.", + "registered_python_312": { + "python": "3.12.15", + "sympy": "1.14.0", + "status": "PASS_REGISTERED_RESEARCH_PACKAGE", + "command": "python3.12 scripts/research_package.py --package research/capped-phase-fusion", + "exact_control_replays": 21 + }, + "native_build_requirements": "C++17 compiler and Boost headers; successful run used /opt/homebrew/include for header lookup." +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PUBLICATION-SOURCES.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PUBLICATION-SOURCES.json new file mode 100644 index 0000000000..3f760bee8a --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PUBLICATION-SOURCES.json @@ -0,0 +1,12 @@ +{ + "research_base": "e6f9716621f4e01fc190617934cdfaf072bd976f", + "publication_base": "a5d4f08ac102d1a6da301d89379c75285eca680e", + "supplier": { + "repository": "https://github.com/CrocSwap/integer-mult-bounds", + "pr": 1661, + "commit": "f852af5e178ce035cd46181a29d9330bcbcaa206", + "directory": "research/gmx-t74-p566-ep400", + "manifest_sha256": "d90d49eaa68e48c6992a07972e736ef4b9cd80274361cbbc1ec980d43f29ad7f" + }, + "scope": "Source snapshots and exact recipe for complete cold replay; historical native receipt hashes are external provenance, not all bundled artifacts." +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/README.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/README.md new file mode 100644 index 0000000000..f7f3348ee3 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/README.md @@ -0,0 +1,162 @@ +# Capped phase-cell fusion: conditional final kappa = 0.001677160151714381 + +This package gives the conditional final integer-multiplication bound + +\[ +T(n)=O\!\left(n(\log n)^{1-\kappa}\right),\qquad +\kappa=\frac{1677160151714381}{10^{18}}=0.001677160151714381. +\] + +The contribution changes the **outer Gaussian resampling reduction**. It uses +shallow in-place Toeplitz circuits, a common Hadamard schedule for multiple +axes, recentered and capped Gaussian cells, and explicitly charged sparse +boundary operations. The finite supplier is the unchanged, pinned +[PR1661](https://github.com/CrocSwap/integer-mult-bounds/pull/1661) T74 construction. +Its complete native verification was run afresh, including both new provider +words and the retained parent. The final exponent is a conditional theorem +from the written transfer argument; finite checks alone do not prove it. + +Read [the proof](phase_fusion_note.tex), especially its T74 substitution section, +and the [independent substitution review](frontier_fusion/INDEPENDENT-SUBSTITUTION-REVIEW.md). +The proof's earlier numerical specializations remain valid historical cases. +“Independent” in this package means separate agent implementations/reviews, +not an independent human referee or a proof-assistant verification. + +## Exact paid inputs and result + +| Quantity | Value | +|---|---:| +| Retained bit saving c | 0.001733427039589844234749 | +| Chosen complex saving b | 0.00167971337478 | +| Effective tensor saving q | b - 10^-10 | +| Effective bit saving a | (q+b)/2 | +| Native dimension m | 73 | +| Native live width W | 66304 | +| Final kappa | 0.001677160151714381 | + +The complete native profile is +`{1:1559766, 2:337668, 3:278058, 4:84912, 5:54612, 8:5328, 48:22748}`. +All decimals above are exact rationals. Exact epsilon, xi, beta, every outer +cost power and all 45 strict inequalities are in +[FRONTIER-FUSION-ARITHMETIC.json](frontier_fusion/FRONTIER-FUSION-ARITHMETIC.json). +Five deliberate bad variants reject. The native moment has an outward rational +upper bound below one; a larger test endpoint is rejected. + +For the same pinned supplier, PR1661's original outer reduction gives +0.0016768966690212993077507..., so the new outer transfer improves its final +exponent by about 2.6348269308e-7. This is an exponent comparison, not a measured +runtime improvement or a claim of global priority. The selected-result record +is not changed by this contribution. + +The supplementary branch gives 0.001677600129305161 **only with the additional +assumption omega_C <= 9/4**, used through a fixed algebraic algorithm of exponent +19/8. That extra premise is not needed for the headline Strassen-based result. +The supplied 9/4 paper, its audit and historical local locator are recorded in +PROOF-AND-COVERAGE.md and MATRIX-SOURCE-COVERAGE.json; it is treated as an explicit +additional premise, not as a theorem certified by this package. + +## Scope and remaining assumptions + +Retained assumptions include the all-size compiler, exact common-label and +mutable-source realization, whole-call hosting, the semantic precision guard +with C1=1, fixed-tape/prime-packing interfaces, paid arbitrary-width equal-chunk +interchange, exact recovery, and the original analytic transfer. The construction +does not prove an unconditional multiplication theorem, a complete Lean theorem, +or a practical finite cutoff. The written proofs address the new outer steps; +finite algebra and layout checks support, but do not replace, those arguments. + +Original assignment: improve the bound using broad mathematical resources. +For repository indexing this is a changed scope of `uniform-transfer-audit`: +it constructs and audits a replacement outer transfer rather than only checking +one inherited implication. [TASK.json](TASK.json) records the scope and next steps. + +## Reproduce + +Python 3.12, with SymPy 1.14.0, is the registered environment. The exact checks +also ran locally with the Python version recorded in PUBLICATION-CHECKS.json. +The package verifier checks its manifest and source pins, works in a temporary +copy, and compares the regenerated mathematical receipts. It does not modify +this directory. From the repository root: + +```sh +python3 -m pip install sympy==1.14.0 +python3 -B research/capped-phase-fusion/verify.py +python3 scripts/research_package.py --package research/capped-phase-fusion --check-only +``` + +The first command after installation is the bounded outer-proof evidence replay, +not a cold native-supplier replay. The native run already completed with all 12 +top-level stages passing, 319680 owners, prefix 1441 charged at 2048, physical row +coefficient 19545 below 20161, and rejected controls: 114 admission, 12 bit, +15 controller, 8 independent owner, 6 geometry. The retained compact RESULT +and [native binding](frontier_fusion/NATIVE-ADMISSION-BINDING.json) record it. + +To reproduce the full native dependency, obtain the exact source commit +`f852af5e178ce035cd46181a29d9330bcbcaa206` from CrocSwap/integer-mult-bounds, +install its documented dependencies (NumPy, SciPy, SymPy, a C++17 compiler and +Boost headers), and run its unmodified command without cache/reuse flags: + +```sh +python3 -B /absolute/pr1661/research/gmx-t74-p566-ep400/verify.py \ + --work /absolute/new-native-work --audit-shards 4 +python3 -B research/capped-phase-fusion/verify.py \ + --native-source /absolute/pr1661/research/gmx-t74-p566-ep400 \ + --native-work /absolute/new-native-work +``` + +The second command binds a completed external native run to this package's +source and mathematical result. It compares regenerated proof-relevant content; +fresh timings and log bytes need not match the historical run. The full 121 MB +assembly and vendor tree are not duplicated here. The receipt capsule adds canonical hashes for 46 JSON receipts. The 58 hashes +in the historical native binding identify external run artifacts; they are not all bundled files. +The original bind_native_admission.py is retained as historical provenance; +use the new top-level verifier for portable binding. + +PACKAGE-MANIFEST.json is the authoritative publication manifest. MANIFEST.json, +MANIFEST-UPDATE.json and earlier review receipts are explicitly historical +snapshots. The copied upstream CLAIM.json is immutable and contains older pending +language; the later completed native RESULT records this contribution's replay. +Hosted CI and independent human review are separate from the local checks. + +## Sources and overlap + +Prepared by **Vlado Vojdanovski with substantial AI assistance**. New material is +Apache-2.0. The original manuscript and source-specific notices retain their +licenses. This is not an official OpenAI release or endorsement. + +The main research snapshot was `e6f9716621f4e01fc190617934cdfaf072bd976f`; +the publication base is recorded in SOURCES.json. Exact T74 source pins are in +PUBLICATION-SOURCES.json and the source manifest. +The [unaltered T74 NOTICE](target002_upstream/pr1661/research/gmx-t74-p566-ep400/NOTICE) +is included. The original +OpenAI #109 framework and the Harvey–van der Hoeven reduction remain inputs. + +The in-place algebra builds on Giorgi–Grenet–Roche, +[*Fast In-place Algorithms for Polynomial Operations*](https://arxiv.org/abs/2002.10304), +and Dumas–Grenet, [*Fast in-place accumulation*](https://arxiv.org/abs/2302.13600). +SHALLOW-TOEPLITZ.md distinguishes their results from the new parity-split, +low-displacement and prefix-stability arguments. The Gaussian factorization +also relates to +[PR489](https://github.com/CrocSwap/integer-mult-bounds/pull/489), which already +gives a branch-free local Gaussian inverse but leaves joint evaluation, +routing and boundary composition open. The present package supplies a different +in-place tensor compiler and capped boundary transfer for those outer costs. +[PR1141](https://github.com/CrocSwap/integer-mult-bounds/pull/1141) concerns a +reversible quadratic phase stream and is related background, not a dependency. +The overlap check does not establish novelty beyond these identified sources. + +## Open next questions + +1. Can a new finite supplier exceed the present complex rate by a substantial + amount? Even a lossless outer transfer cannot reach 0.002 from b<0.00168. + First step: emit a complete side circuit for a lower-cost decoder and measure + its actual rank profile, helper storage and restoration. The missing piece is + the physical circuit, not an idealized central-rank estimate. +2. Can the capped Gaussian transfer be independently checked or formalized with + its complete fixed-tape schedule? First step: independently reconstruct the + sparse-union and support-local routing lemmas. Existing finite tests cover + algebraic identities, not an end-to-end all-size tape implementation. +3. Can the same outer transfer consume a future reviewed supplier without + changing its proof? First step: rebind the endpoint, prefix and completed-call + restoration contract, then replay the exact ledger. The supplier must satisfy + the full functional interface; a numerical endpoint alone is insufficient. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/REVIEW-RECEIPT.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/REVIEW-RECEIPT.json new file mode 100644 index 0000000000..2521d02ada --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/REVIEW-RECEIPT.json @@ -0,0 +1,53 @@ +{ + "status": "PASS_CONDITIONAL_PHASE_FUSION_REVIEW", + "created_utc": "2026-10-14T02:06:22.293042+00:00", + "kappa": "1672922349588871/1000000000000000000", + "kappa_decimal": "0.001672922349588871", + "upstream_selected_unchanged": true, + "scope": "Local all-size conditional transfer, retaining the selected finite suppliers and common-frame, whole-call, precision, fixed-tape and prime-packing hypotheses.", + "reviews": [ + { + "reviewer": "root agent", + "result": "Read standalone TeX, integrated notes and exact ledger; cap, supplier and layout audits passed; authorized local conditional status." + }, + { + "reviewer": "gaussian_fast agent", + "result": "Independent capped-gauge and finite-block audit passed; exact inherited-weight reanchoring and broad derivatives checked." + }, + { + "reviewer": "global_macro agent", + "result": "Independent capped carving, sparse-union, q-image and microedge layout audit passed." + }, + { + "reviewer": "inplace_algebra agent", + "result": "Global selected-H support and capacity audit passed; all g controls need not fit one original axis." + }, + { + "reviewer": "phase_assembly agent", + "result": "Read named proofs and relevant retained source contracts; reconstructed complete cost ledger and reviewed capped interfaces." + } + ], + "phase_assembly_replays": [ + "check_capped_outer.py: 44 positive exact slacks and 5 rejecting controls", + "check_forward_cell.py: 350 cases, 5184 factorization and 16496 completion entries", + "check_union.py: exact five-factor/tensor/complete-rectangle checks, with dense escape negative control", + "check_q_embedding.py: product order and augmented inverse checks" + ], + "files": { + "work/phase_assembly_ultra/phase_fusion_note.tex": "da2bf119be3ed1e44473c380e43643d16bdc93015c80380fc59da33d84e951de", + "work/phase_assembly_ultra/CAPPED-INTERIORS.md": "983c5cab2d2398f2192a8aec07daecb655f2de136e12a37f75672a14d27172ba", + "work/phase_assembly_ultra/check_capped_outer.py": "b4555c77de7a3ed4abc708a8d93363ef7c9a914be1091f80ab3ddea83f71230a", + "work/phase_assembly_ultra/CAPPED-OUTER-ARITHMETIC.json": "22caac9ec2ecf4d5743b7eb946b633911fbac55a714399556e87e2eae0457dec", + "work/inplace_algebra_ultra/SHALLOW-TOEPLITZ.md": "b384b93f3fb4a8c97da2e617ebc14d55cebb0a739070e7f8dbb66f63e24e9310", + "work/inplace_algebra_ultra/TENSOR-COMPILER.md": "4d3b8466598a864a234b978e25976648d4e761840aad9153dd18d73d3dfe4d15", + "work/inplace_algebra_ultra/SUPPLIER-SUPPORT-AUDIT.md": "bd5b06eca043c5c871227264f6a954473c55cd16ec85bb420ff538fb8ec1d8d6", + "work/gaussian_fast_ultra/LOG-A-PHASE-SCHUR-AUDIT.md": "e05d6b8596c80b6e8676569a0ff464a29fa704c3304143f58914f47cdf38b272", + "work/gaussian_fast_ultra/BILATERAL-LDU.md": "0d65e66d227464dda1a19f781ae0a0be671cbfd347c41e37ec954f3d629d8a77", + "work/gaussian_fast_ultra/FORWARD-SMALL-A-AUDIT.md": "e37aaa30b15671a1dff00676b14572213efaaac99df202dbba5e09f57af487c0", + "work/gaussian_fast_ultra/CAPPED-GAUGE-AUDIT.md": "1030a34922709ab8d3434a4c57a4a58934ae268c237fb598cb415697da411c9f", + "work/phase_layout_audit_ultra/AUDIT.md": "54aafc7afd09fe1a5312e69fad09c87422690543ab75c6ae35f6cbcc26b3eb8a", + "work/phase_layout_audit_ultra/CAPPED-SIGNOFF.md": "70e9175ebde200f8b016236adc88c4a1c4858945e7c3e5c453a8b6a5f79a263a", + "work/halo_layout_ultra/SUPPORT-ROUTER.md": "d4d2f5bd0a8eb51d9ebd28e4d1a38d3c69bdbf97471a705b3aa199c184364c52", + "work/halo_layout_ultra/HALO-THEOREM.md": "cb9e1da38400b658f9209e465b4e5896fadd17dc66afa862f38bae8d8c1f2058" + } +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ROOT-EXACT-REPLAY.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ROOT-EXACT-REPLAY.json new file mode 100644 index 0000000000..4f80ff6ecc --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ROOT-EXACT-REPLAY.json @@ -0,0 +1,39 @@ +{ + "status": "PASS_ROOT_EXACT_BASELINE_AND_CAPPED_MARGIN_REPLAY", + "selected_commit": "e6f9716621f4e01fc190617934cdfaf072bd976f", + "baseline_complex_moment_upper_minus_one": "-2785787033843904352780990891572049605608726093667665717994302747547920313/2135987035920910082395021706169552114602704522356652769947041607822219725780640550022962086936576", + "q_below_seven_step_supplier": "327679999999801168224664734599224105676919239087430234567083836826988376006387856482178928788981393147808286007792385920322253722201767929416477166653535959868879662007824712314966127806177730297423483901027506968664489033051447038531157336856996129340173164228163173132938540666878136418539696486021989985271231781781450073973851986744395930427624741098739356767652210341205493240883041/3276800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "new_kappa": "1672922349588871/1000000000000000000", + "old_kappa": "836330098538459/500000000000000000", + "gain": "262152511953/1000000000000000000", + "powers": { + "main": "160268031909611721506129731833773378546441654700203789/160536597172553998639367526755586138207360088900000000", + "Gaussian": "160268031909611721506129731833773378546441654700203789/160536597172553998639367526755586138207360088900000000", + "routing": "39932981494927675859083/40000000000000000000000", + "grouped routing": "160268031908860553136771869521388943095675654700203789/160536597172553998639367526755586138207360088900000000", + "group scans": "1452698356122892965636680000000000000000000000/1605365971725539986393675267555861382073600889", + "boundary": "160266426543639995966143338158505822685059581099314789/160536597172553998639367526755586138207360088900000000", + "union": "110071801329447180266588989429368954038319544983689789/160536597172553998639367526755586138207360088900000000", + "key surcharge": "3128222851922485017350588232617/4006701850307232414091700000000", + "polynomial leaves": "2433941731074558280108177402661382073600889/1605365971725539986393675267555861382073600889", + "microfaces": "-3062932211310582068590571622361184146220802667/1605365971725539986393675267555861382073600889" + }, + "slacks": { + "main": "16053659929910823493457211548686499459924678309893681/1605365971725539986393675267555861382073600889000000000000000000", + "Gaussian": "16053659929910823493457211548686499459924678309893681/1605365971725539986393675267555861382073600889000000000000000000", + "routing": "101611088769300917/40000000000000000000000", + "grouped routing": "23565343623489446617301566056346499459924678309893681/1605365971725539986393675267555861382073600889000000000000000000", + "group scans": "149981962989277909354528141831190997013103046461962568309893681/1605365971725539986393675267555861382073600889000000000000000000", + "boundary": "16053675770915329774760246132770162507235468814678309893681/1605365971725539986393675267555861382073600889000000000000000000", + "union": "501962305817699072325318247537501456629907596625064678309893681/1605365971725539986393675267555861382073600889000000000000000000", + "key surcharge": "8717760973112293445939482696586781065293/40067018503072324140917000000000000000000", + "polynomial leaves": "1600246377381096316711099964428529614939502157461962568309893681/1605365971725539986393675267555861382073600889000000000000000000", + "microfaces": "4665612530422752943581779764192375143233905713461962568309893681/1605365971725539986393675267555861382073600889000000000000000000" + }, + "guards": { + "group": "1/100000000", + "axis": "2432336365102832740121783727393826212218815399111/1605365971725539986393675267555861382073600889000000", + "membership": "1450264414391818407356571822597338617926399111/1605365971725539986393675267555861382073600889" + }, + "scope": "Exact baseline moment and arithmetic replay. Mathematical transfer depends on the accompanying proved circuit/layout/precision lemmas and inherited repository assumptions." +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ROOT-MATRIX-EXACT-REPLAY.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ROOT-MATRIX-EXACT-REPLAY.json new file mode 100644 index 0000000000..bd509b8377 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ROOT-MATRIX-EXACT-REPLAY.json @@ -0,0 +1,21 @@ +{ + "status": "PASS_ROOT_MATRIX_CONDITIONAL_LEDGER", + "additional_assumption": "supplied complex matrix multiplication exponent <=9/4, used with strict 19/8 algorithm exponent", + "kappa": "836680052702889/500000000000000000", + "gain_over_selected": "34995416443/50000000000000000", + "epsilon": "3204021080669390695403468340153200000000000000/3208046711848432952030355267555861382073600889", + "cap": "6006737803538363603786961767383/8006701850307232414091700000000", + "group": "19999559600000000000000/80067018503072324140917", + "slacks": { + "main": "16040234287175308991291365140577147466485957516731679/1604023355924216476015177633777930691036800444500000000000000000", + "Gaussian": "16040234287175308991291365140577147466485957516731679/1604023355924216476015177633777930691036800444500000000000000000", + "global routing": "84100856093020917/40000000000000000000000", + "grouped routing": "36073302400837752235461073644407147466485957516731679/1604023355924216476015177633777930691036800444500000000000000000", + "scans": "399990069170827316553169929437873914639085240389379902516731679/1604023355924216476015177633777930691036800444500000000000000000", + "matrix boundary": "33307674429019250694161274836955713292695810709060319172243893/534674451974738825338392544592643563678933481500000000000000000", + "union": "16040249599476451935460767629144447487515470930957516731679/1604023355924216476015177633777930691036800444500000000000000000", + "pointwise products": "1599326431642752671058066465736543223602284795889379902516731679/1604023355924216476015177633777930691036800444500000000000000000", + "microfaces": "1470245804132326338277304830206155329249828857963126634172243893/534674451974738825338392544592643563678933481500000000000000000" + }, + "sparse_fraction_slack": "3430918384747396741111767383/8006701850307232414091700000000" +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SHALLOW-TOEPLITZ.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SHALLOW-TOEPLITZ.md new file mode 100644 index 0000000000..bc4349b2da --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SHALLOW-TOEPLITZ.md @@ -0,0 +1,197 @@ +# Shallow, stable, dimension-preserving Toeplitz circuits + +Status: a positive algebraic circuit construction for **dyadic local tiles**. It gives the missing full-Toeplitz primitive in the normalized Sylvester merge. It does not reconcile the anchor coordinates with the original Gaussian gauges; that remains a separate obligation. The construction uses no data ancilla, no zero-initialized coordinate and no fan-out. Fixed coefficient generation is allowed polynomial time in the local tile size and precision. + +## 1. Result + +Let N be a power of two, and let H be an N by N real or complex Toeplitz matrix with + + max(||H-I||_1, ||H-I||_infinity) <= delta < 1/4. + +There is an N-wire linear circuit applying H, with O(log^4 N) rounds of disjoint invertible 2 by 2 gates and diagonal gates, O(N log^4 N) gates, and polynomial-in-N bounds for all coefficients and all partial circuit operator norms and inverse operator norms. Constants depend only on delta. + +For any requested output accuracy 2^-p, rounding the coefficients to p+O(log N) bits gives operator error at most 2^-p; arithmetic at that precision also gives uniform forward error 2^-p on bounded inputs, after allowing the same O(log N) guard bits. A rational approximation to the input Toeplitz coefficients and all required gate coefficients can be generated using poly(N,p) bit operations. This coefficient preprocessing may use polynomial extra memory; the **data circuit** still has exactly N live coordinates. + +The same result applies to upper or lower triangular Toeplitz matrices with max(||T-I||_1,||T-I||_infinity)<=eta for **any fixed eta<1**, with only O(log^2 N) rounds and constants depending on eta. In particular eta=1/2 is permitted for the generator-normalization step below, even though the full-Toeplitz statement uses delta<1/4. Descendants need bounded norm and inverse, not continued distance below 1/4. This independent triangular construction is important: a contiguous bottom-recursion / shear / top-recursion has linear depth even though its work is quasi-linear. + +## 2. Dirty Toeplitz shear is a shallow circuit + +For disjoint m-coordinate vectors x and y, implement + + (x,y) -> (x,y+Tx), + +where T is Toeplitz, in O(log m) rounds when m is dyadic. It is an invertible square map on the existing 2m wires. + +Write the first column and row of T as c_0,...,c_(m-1) and c_0,r_1,...,r_(m-1). Set + + g_0=h_0=c_0/2, + g_j=(c_j+r_(m-j))/2, + h_j=(c_j-r_(m-j))/2, 1 <= j < m. + +Then T=C(g)+C_-(h), where C is a circulant and C_- is a negacyclic circulant. For a unitary m-point FFT F, C(g)=F^* diag(DFT(g)) F. A circulant shear therefore consists of F on x and y in parallel, the disjoint pairwise shears y_j+=DFT(g)_j x_j, and F^* on x and y. Every FFT stage consists of disjoint unitary 2 by 2 butterflies; bit reversal is a disjoint swap stage. + +For gamma=exp(pi i/m), D=diag(1,gamma,...,gamma^(m-1)), + + C_-(h)=D^-1 C(Dh) D. + +Use diagonal twists before and after the same circulant-shear circuit. The two completed shears commute. Source x is restored after each. No circulant inverse is needed, so zero Fourier multipliers cause no problem. Every gate is invertible even when T itself is singular. + +All intermediate norms are polynomial in m and the l1 norm of the Toeplitz symbol. In the 2-norm, FFT and twist stages are unitary, and the spectral diagonal has norm at most the symbol l1 norm. + +## 3. Independent triangular primitive: parity splitting + +Let T_N(f) be lower triangular Toeplitz multiplication by f modulo z^N. Write + + f(z)=e(z^2)+z o(z^2). + +Reorder the existing coordinates into even and odd powers, N=2m. Then + + T_N(f) = [ E ZO ; O E ], + +where E=T_m(e), O=T_m(o), and Z=T_m(z). All these m by m triangular Toeplitz matrices commute. Set + + k=o/e mod z^m, + s=e-z o^2/e mod z^m. + +The exact factorization is + + [ E ZO ; O E ] + = [ I 0 ; T_m(k) I ] + diag(T_m(e),T_m(s)) + [ I T_m(zk) ; 0 I ]. + +Thus apply the right Toeplitz shear, the two child triangular circuits **in parallel**, and the left Toeplitz shear. The recurrence for rounds is + + D_tri(N) <= D_tri(N/2)+O(log N), + +giving D_tri(N)=O(log^2 N). The two recursions act on disjoint coordinates. Inverses are obtained by reversing the gate sequence and inverting every gate, at the same depth. + +Stability is not proved by multiplying coefficient l1 bounds afresh at each depth. Each child is a principal submatrix or principal Schur complement of the original triangular matrix, after a coordinate permutation. If the initial T_N(f) differs from I in both 1- and infinity-norm by at most eta<1, every descendant M satisfies + + ||M-I|| <= eta+eta^2/(1-eta)=eta/(1-eta) + +in both norms, and ||M^-1||_2 <= 1/(1-eta). This follows directly by expressing the descendant as a Schur complement of a principal block of the original matrix; nested elimination and restriction preserve that description. Hence all local diagonal blocks and local Schur multipliers have constant 2-norms. Their triangular Toeplitz coefficient l1 norms are at most sqrt(N) times these constant bounds. The dirty shear circuits from section 2 therefore remain polynomially bounded. + +## 4. Full Toeplitz recursion: displacement rank grows additively + +Use the Sylvester shift displacement + + Delta_m(M)=Z_m M-M Z_m. + +A Toeplitz H has rank Delta_N(H)<=2. At a node of size 2m, partition + + M=[ A B ; C D ], + Z_(2m)=[ Z 0 ; E Z ], E=e_0 e_(m-1)^T, + K=A^-1 B, L=C A^-1, S=D-C A^-1 B. + +The usual block factorization is + + M=[ I 0 ; L I ] diag(A,S) [ I K ; 0 I ]. + +Again A and S run in parallel. To bound ranks, let U=[-C A^-1,I] and V=[-A^-1 B;I]. Then M V=[0;S], U M=[0,S], and direct block multiplication gives + + Delta_m(S)=U Delta_(2m)(M) V-S E A^-1 B. + +Therefore rank Delta(S)<=rank Delta(M)+1. Also, the upper-left block of Delta_(2m)(M) is Delta_m(A)-B E, so rank Delta(A)<=rank Delta(M)+1. At depth d, both children thus have displacement rank at most 2+d. + +The top-right block of Delta(M) equals Delta(B), while its bottom-left equals E A+Delta(C)-D E. Consequently + + rank Delta(B)<=r, + rank Delta(C)<=r+2, + rank Delta(K)<=rank Delta(A)+rank Delta(B)<=2r+1, + rank Delta(L)<=rank Delta(C)+rank Delta(A)<=2r+3. + +All shear matrices have displacement rank O(log N). + +Every recursive M is a principal Schur complement of the original H. Since H=I+R and both ||R||_1 and ||R||_infinity are at most delta, + + max(||M-I||_1,||M-I||_infinity) <= delta/(1-delta), + ||M^-1||_2 <= 1/(1-delta). + +The inverse assertion also follows because M^-1 is a principal submatrix of the inverse of a principal submatrix of H. Thus A,S,K,L are uniformly bounded in 2-norm independently of recursion depth. + +## 5. Bounded-generator shear compiler + +For an m by m matrix T define its Stein displacement + + E_T=T-Z T Z^T=-Delta_m(T) Z^T+T e_0 e_0^T. + +Its rank is at most rank Delta(T)+1. Choose an orthonormal basis g_1,...,g_r for the column space of E_T, and put h_j=E_T^* g_j. With conjugates interpreted appropriately, + + E_T=sum_j g_j h_j^*, + T=sum_j L(g_j) U(conj(h_j)). + +Here L(g) is lower triangular Toeplitz with first column g, and U(h) is upper triangular Toeplitz with first row h. The second identity is the finite telescoping sum T=sum_(k=0)^(m-1) Z^k E_T (Z^T)^k. All g_j have 2-norm 1, and all h_j have 2-norm at most ||E_T||_2=O(1). Their coefficient l1 norms are O(sqrt(m)). + +A zero or tiny first coefficient of h is harmless. Choose an integer gamma >= 2||h||_1 (a fixed conservative gamma=64N suffices under the stated bounds), and set + + P=I+U(h)/gamma. + +P and P^-1 have constant norm, and P is upper triangular Toeplitz. On the same two existing vectors, one generator term is implemented by + + x <- P x, + y <- y+gamma L(g) x, + x <- P^-1 x, + y <- y-gamma L(g) x. + +The result is y<-y+L(g)U(h)x and x is restored. Source transforms use section 3; the other two operations use section 2. Each term costs O(log^2 m) rounds. There are O(log N) terms, hence O(log^3 N) rounds for a full low-displacement-rank shear. + +Although the partial generator sum can be larger than its final T, its norm is at most the sum of O(log N) products of O(sqrt N)-norm factors, hence O(N log N). Within a term the source norm remains constant times its entry norm and the target norm is polynomially bounded. Terms are completed as shears with one common source, so their partial sums add; one must not charge a product of polynomial factors for every generator. + +The full recurrence is therefore + + D_full(N) <= D_full(N/2)+O(log^3 N)=O(log^4 N). + +## 6. Global prefixes, rounding and preprocessing + +At each block-LU node the completed right shear, completed middle block, and completed left shear have constant norm and constant inverse norm. At an intermediate time there is at most one unfinished generator compiler or one unfinished triangular compiler along each recursive path; disjoint paths form a direct sum. If B(N) bounds a full circuit prefix and inverse prefix, this gives B(N)<=max(C B(N/2),N^C), hence B(N)=N^O(1). The same argument applies to suffixes and to the triangular compiler. + +There are N polylog(N) arithmetic gates. Perturbation of one bounded gate by epsilon contributes at most N^C epsilon to the whole operator, by the prefix/suffix bounds. The sum over all gates remains N^O(1) epsilon. Therefore p+O(log N) coefficient/arithmetic bits suffice; there is no N or N^2 precision term on the data. + +The coefficients are fixed before seeing the data. One concrete polynomial-time generation route is: + +1. Approximate the original Toeplitz symbol by dyadic rationals at p+O(log N) bits, preserving Toeplitz structure. The operator perturbation is at most N times the entry perturbation. +2. Compute every recursive Schur matrix as a principal Schur complement of this original rational matrix. Its entries are ratios of minors of that original matrix, so numerator and denominator bitlengths are polynomial in N and p. Avoid an unnecessarily expanded recursive rational expression. +3. For each Stein displacement, use exact rational elimination to select independent columns and rational, unnormalized Gram-Schmidt to obtain orthogonal vectors v_j. Then g_j=v_j/sqrt(v_j^*v_j) and h_j=E_T^*v_j/sqrt(v_j^*v_j). The resulting generators have the bounded norms proved above. Nonzero rational residual norms are at least 2^-poly(N,p), so poly(N,p) offline precision suffices for their normalization. Equivalently a high-accuracy SVD may be used. +4. Compute the finite series divisions and FFT roots to p+O(log N) final bits. All final data-gate coefficients are polynomially bounded. Offline intermediate rational numerators may be longer; they never become data wires. + +This separates polynomial-time coefficient setup from bounded-precision data application. Applying an algebraic-RAM theorem directly to arbitrarily large integers would not provide this separation. + +## 7. Normalized Sylvester merge + +For two b-point children, N=2b, the normalized map supplied by the radical-reduction branch is + + S(B,A)=f(z)B(z)+z^b g(z^-1)A(z), + f(z)=product_lower(1+(x/zeta)z), + g(z^-1)=product_upper(1+(zeta/x)z^-1). + +Let h=g(z^-1)/f(z), K_ij=h_(i-b-j), H_ij=h_(i-j), 0<=i,j0. Every principal submatrix has spectrum in [mu,M]. Every principal Schur complement S also does: S^-1 is a principal block of the inverse of a principal submatrix, whose spectrum is in [1/M,1/mu]. Thus every recursive A,S has norm at most M and inverse norm at most 1/mu. The shears K,L have norm at most kappa=M/mu. The displacement-rank formulas are unchanged. + +Use orthonormal g generators and h of norm O(kappa), and choose gamma>=2||h||_1. The triangular source transform P is still near I, so the depth O(log^4 N) is unchanged. Generator-stage amplitudes and coefficients are poly(N,kappa). Across the O(log N) completed ancestor factors, the bound becomes + + log(max prefix/inverse-prefix norm) + = O(log N * log(2+M+1/mu) + log N). + +If M and 1/mu are exp(O(u)), this is O((u+1)log N). The corresponding data precision is p+O((u+1)log N), and g-axis tensorization adds O(g(u+1)log N) guard bits. This is a usable broad-Gaussian extension once a separate spectral argument supplies the stated eigenvalue interval. Reversing the circuit applies H^-1; the inverse itself need not be Toeplitz. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SOURCES.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SOURCES.json new file mode 100644 index 0000000000..a5d007aae1 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SOURCES.json @@ -0,0 +1,18 @@ +{ + "schema_version": 1, + "base_commit": "a5d4f08ac102d1a6da301d89379c75285eca680e", + "files": [ + { + "path": "certificates/selected-result.json", + "usage": "provenance", + "git_blob": "ae6a99f28aa468649eb66a361e764d769363bf11", + "sha256": "10b9e340fd8e354a37a0c4813c90e5de1dd42044b5f6aca4a3fc5a42b685fa32" + }, + { + "path": "docs/research/agent-task-catalog.json", + "usage": "provenance", + "git_blob": "06c96f5579bb67ed1b86d334e78fbed7da6945f1", + "sha256": "6686ad58f1fbdbc87134a78901b60fd53a20d3984355e91defbbebc9e9fa8075" + } + ] +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SUPPLIER-SUPPORT-AUDIT.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SUPPLIER-SUPPORT-AUDIT.md new file mode 100644 index 0000000000..72404c42d7 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SUPPLIER-SUPPORT-AUDIT.md @@ -0,0 +1,139 @@ +# Independent audit: support-local simultaneous-H supplier + +Conclusion: the retained compact phase supplier can be used at width g with cost + + O(V g^(1-q) polylog(p)) + +without the previously charged additive V p^(1-a), **provided the call is made globally on the complete dyadic tensor, not separately on one fixed coarse-label microbox**. This is conditional on the same accepted finite complex circuit and arbitrary-width equal-chunk interchange as the retained supplier, and on the support-router transfer proved in `work/halo_layout_ultra/SUPPORT-ROUTER.md`. The new support-router's unequal-spacing algebra and its use here have been checked below. + +The full address still has O(p) bits. That quantity remains in descriptor arithmetic, keys and error precision; it no longer determines the width of any newly required fast coordinate interchange. + +## 1. What the actual phase frames touch + +The primary source is `work/integer-mult-current/upstream/build/sections/05-layers.tex`. + +At lines 86–139, a residual basis is a matrix M in GL(m,F_2), extended **inside F_2^m**. At width e=mf it is applied separately to the column + + (x_(1,j),...,x_(m,j)), 0<=j T as prescribed, + T\S -> S\T bijectively, + identity outside S union T + +is a coordinate permutation supported on at most 2gK positions. Its inverse restores the original coarse-coordinate interpretation. The target can be chosen before the payload and a reserved untouched suffix. No stable reordering of every coarse field is required. + +Apply the H supplier to this full global stream, whose complete coarse-coordinate ranges remain present. A fixed coarse-label microbox alone does **not** contain enough complete K-bit fields: its high coarse bits are fixed. Borrowing those fixed labels inside such a microbox would violate the supplier's complete-field hypothesis. This audit approves the global call only. + +The tensor compiler's H schedule is independent of all coarse labels. Those labels affect only diagonal coefficients between complete H calls. The diagonal scan can still be organized by coarse-label microboxes after undoing the global exposure permutation. Coarse-dependent coefficients therefore do not require separate supplier invocations. + +## 3. Deferred reservoirs and the row prefix + +At a phase with h unprocessed selected bits, reserve whole K-bit chunks for two front hG fields, one back hG field, and a leading row prefix. With K=128G, the field reservation is at most 3h/128+O(1) chunks. Row preparation needs O(log h) further chunks, including the product stock for nested bit and complex calls. For h above a fixed polylog(p) threshold the total R(h) is at most h/16. The remaining bounded/polylogarithmic h can be processed individually. + +Every such chunk is one of the current selected chunks. The phase applies C only to the other h-R(h) selected bits and identity to the reserved chunks; the latter are deferred to the next phase. + +This requires one explicit modification to the original exposition: **do not first apply C to the reserved row/front/back selected bits**. That preliminary work in the old all-axis construction only ensured those selected bits were eventually covered. It is not needed to create rows or complete temporary fields. Source `compact-control-layout.tex` lines 30–62 proves that the active invocation is the required C tensor separately on every row and identity on all reserved/spectator coordinates, for arbitrary incoming payloads. Hence dirty, unprocessed reserved selected bits are valid. + +The leading q0 complete chunks have cardinality 2^(q0 K). Choose q0 from the actual product row stock Q_rows=W_complex^D_complex W_bit^D_bit. This preserves the accepted nesting contract; replacing the product by a maximum would be incorrect. Pad the leading row count to a multiple of Q_rows once for this phase, by adding whole rows. The factor is below two. All descendants inherit the same complete within-row fields and the same row stock; no new independent bit coordinates are allocated. + +A completed active invocation is identity on the row label and every temporary coordinate. Each padded zero row is therefore zero at completion and can be deleted. Delete padding and restore the exposure layout **before the next deferred phase**. Consequently row padding does not multiply by 2 at every phase or tensor axis. + +The next deferred phase gathers only its h'=R(h) remaining neighborhoods. A gather/restore can again be extended with support at most 2h'K; it may move previously processed coordinates temporarily but fixes them after the inverse placement. Their values need not be recomputed. There is no need to move all p coordinates back into a stable global axis order. + +## 4. The logarithmic K choice is legal after tightening the statement + +The original compact-control proposition states the sufficient asymptotic condition K/log p -> infinity. K=128G does not satisfy that literal condition. The source proof, however, uses it only at lines 149–154 to obtain + + K >= G+4 ceil(log2 p)+10, + delta_bad <= 5/(128p^3). + +K=128G satisfies the displayed finite inequality directly. The earlier/later-source guard proof, complete-field layout, row stock, scalar gates and semantic guard have no other use of K/log p -> infinity. Thus the transfer must cite the tightened finite guard hypothesis; it must not claim that the new K satisfies the old stronger asymptotic wording. + +With this change, all compact interchanges retain width O(h log p), and the per-node movement overhead is O(V_node h^(1-a) polylog(p)). Here h is the current selected width, not the ambient number d of original Gaussian axes. The supplier's stopping threshold and branching analysis likewise use its own top width g; global p remains only in logarithmic guards and O(p)-bit descriptors. + +## 5. Check of the support-router extension + +The original arbitrary-source router colors active targets by their current location modulo K. Targets in one color have disjoint K-bit guards. The new router stores only the r active control digits, H=rG, even when the target spacings are unequal multiples of K. + +The four-update proof depends solely on disjointness of the guard intervals: on a good address the first y update adds 2zt within a guard, the t update adds its old low bit e without carry, and the second y update adds z(1-2(t+e)). Their net is z(1-2e), changing exactly the selected low bit. The final t update restores t. Nothing uses equality between successive target gaps. A complete F therefore fixes every nontarget source bit, even inside another guard. F; load u from the sources; F; unload implements the desired simultaneous XOR for sources outside the target set. + +All rotations remain globally bijective, because their controls precede the target after the prescribed back-field shuttle. Their current-control inverse is used on bad addresses. The ideal selected-bit XOR preserves the guard/control bad predicate, so the old sparse repair applies unchanged. Its O(p)-bit keys and polynomial per-record arithmetic remain explicit; they are not replaced by a unit-cost sort. + +For a permutation moving k positions, factor it into two involutions and three XOR stages per matching. Three disjoint 3kG-bit reservoirs can be chosen when n>=9kG; the three matching cohorts avoid the respective reservoirs. Each target residue class then uses width at most kG in each control field, rather than ceil(n/K)G. Original equal-width interchanges place and restore the fields. This gives O(V k^(1-a) polylog p), plus descriptor setup. + +When records are short, choose only ell_s=ceil(log2 p)^2 untouched binary bits, not a whole long original axis. Here is explicit noncircular suffix bookkeeping. For a requested permutation pi with moved support at most k, if n>2(k+1)ell_s, a gap in its support contains a consecutive ell_s-bit field S disjoint from the actual last ell_s bits. Use one original equal-ell_s interchange A to move S to the actual suffix. Route the conjugate A pi A^-1 on the n-ell_s prefix only, then undo A. The conjugate fixes that suffix pointwise because pi fixed S. Choose all control reservoirs inside the prefix, after this interchange, and recompute positions and residue classes after their placements. Thus no control operation touches the grouped suffix. Grouping its 2^ell_s complete values into a record preserves the data volume and gives a superpolynomial record length. If n<=2(k+1)ell_s, the retained full-span bound is already O(V(k+1)^(1-a) polylog p), so no suffix grouping is needed for this support bound. The placement costs O(V polylog p), not V ell^(1-a) for the original long axis length ell. + +For the calls here, k=O(hK)=O(h log p), and n/(k log p) tends to infinity because g=p^beta with beta<1 while n is of order p in the retained full tensor. If this inequality fails in a small regime, n=O(k polylog p), so the retained full-span bound is already O(V k^(1-a) polylog p). The support theorem's own temporary reservoirs may have O(kG) bits; this is a polylogarithmic enlargement of support, already priced in the same bound. + +## 6. Complete charge table + +| Operation | Active coordinate/data support | Charge | +| --- | --- | --- | +| Initial and inverse neighborhood exposure | At most 2gK moved bit positions | O(V g^(1-a) polylog p) | +| Deferred phase exposure at width h | At most 2hK positions | O(V h^(1-a) polylog p) | +| Fixed binary residual adapter | h selected bits; compact controls O(hG) | O(V_node h^(1-a) polylog p) | +| Control-field shuttle | At most O(hG)-bit chunks | Original O(V_node(hG)^(1-a)) | +| Modular rotations and exceptional repair | Full scan; O(p)-bit descriptors/keys | O(V_node) after record grouping | +| Residual child concatenation | Existing contiguous first-r slots | Descriptor change only | +| Source/sink/inverse phases | Selected-bit masks and coefficients | O(V_node) | +| Scalar role gates, parking and restoration | Fixed role streams at aligned addresses | O(V_node) | +| Whole-row padding and deletion | One current-phase row prefix | O(V), factor below two, removed before next phase | + +No row in this table requires an interchange of width p. + +Let tau=1-a. The retained stopped branching argument gives O(V h^(1-q) polylog p) for each phase, with q 2(k+1)L. +``` + +Indeed, after excluding the actual suffix, the at most k moved positions +cut the remaining interval into at most k+1 gaps. If every gap had length +less than L, that prefix would have length at most (k+1)L-1. The displayed +inequality contradicts this bound. + +Let A be the old disjoint equal-L swap exchanging S with the actual suffix. +Execute A, route the conjugated permutation A pi A^{-1}, then execute +A^{-1}. Because pi fixes S pointwise, its conjugate fixes the actual suffix +pointwise. It still moves at most k coordinates. All endpoints are now in +the n-L prefix. Choose the three dirty reservoirs in that prefix and run +all compact rotations, original control shuttles, elementary CNOTs, and +bad-hole repair there. Recompute endpoint names after A and after the +reservoir placement. In the application, n-L>=9kG holds with a wide +asymptotic margin. + +The suffix is a complete binary field with arbitrary contents. Reinterpreting +its 2^L values as part of a record gives record length R0*2^L, without +creating, padding, or deleting data. This length exceeds every fixed +polynomial in p. No operation whose cost relies on that record length acts +on its component coordinates. Both instances of A use the already approved +primitive and cost O(V L^(1-a))=O(V polylog p); they do not invoke the new +router. This removes the prospective circularity. + +For the general router outside this sparse branch, the retained +first-L/second-L/actual-last-L candidate convention and matching cohorts +also work. Arbitrary candidates should not be substituted blindly: a +candidate can partially overlap the actual suffix, whereas the old swap +requires equal disjoint fields. After each candidate placement, the same +n-L prefix exclusion is mandatory. If the entire binary span is only +polylogarithmic, the old elementary construction suffices. If +n=O((k+1)polylog p), the old full-span construction gives the desired +support bound up to polylogarithms; its own short-record preparation must +still use the old suffix construction. + +For a full H supplier call, reserve the suffix outside its selected field +and keep it fixed throughout the completed call. If necessary, perform +the same old L-bit placement before exposure, update the logical names of +the neighborhoods, and restore it after inverse exposure. The source +neighborhoods need not remain physically consecutive before exposure: +the exposure permutation explicitly routes their named bits. The target +complete chunks are placed before the reserved suffix. + +## 3. Whole-row padding and the next diagonal scan + +The leading row prefix and the front/back controls are assembled from +complete K-bit neighborhoods in the globally complete binary tensor. +Their bits are not assumed zero or semantically independent of coefficient +values. Completeness means every coordinate value is represented in the +stream. Multiplication by previous coarse-dependent diagonal coefficients +does not remove any address or change this property. + +Deferring the selected bits lying in reserved chunks is valid: the accepted +active invocation is the desired tensor on the other selected bits and +identity on every reserved coordinate, for arbitrary incoming coefficients. +The preliminary individual transforms in the old layout were used to +finish those selected bits, not to create complete row or control ranges. +After deferral, those transforms are performed in later phases instead. + +The row count is rounded once to a multiple of the actual product + +``` +Q_rows = W_complex^D_complex * W_bit^D_bit. +``` + +The padded row label is allowed to be a nonbinary preceding fiber count. +Every within-row field remains a full binary field. The supplier's +interchanges and controls act within those complete fields; the global +exposure router is not applied to the padded row label. Nested bit adapters +consume and restore the bit stock before later complex splits, exactly as +in the retained product-stock argument. + +At the completed invocation boundary, the operator is identity on the row +label. A padded zero row therefore returns to zero even though temporary +role computations may have combined or moved its contents. Delete those +rows before inverse exposure or the next deferred phase. This bounds each +phase's volume by twice its original volume, not by a factor exponential in +the number of phases. + +All H calls in the compiler have the same selected-bit schedule for every +coarse label; label dependence resides in the intervening diagonal tables. +Run one H call on the complete global tensor, complete every deferred +phase, remove padding, and restore the original exposed-coordinate order. +Only then run the next diagonal scan. The microbox layout used for that +scan is the restored layout in which the local coordinates are already +contiguous (or the separately paid low-bit gather layout). No padded row, +partial H result, or temporarily relocated coarse label is presented to +the diagonal-table lookup. Thus scanning different coarse-label tables +does not require separate H invocations or borrowing fixed labels inside +a microbox. + +## 4. The actual parameter inequalities + +The largest exposure moves k=O(gK)=O(p^.093 log p) binary coordinates. +With G=Theta(log p), its three dirty reservoirs require + +``` +9kG = O(p^.093 log^2 p) = o(p). +``` + +The suffix occupies only L=Theta(log^2 p) positions. In particular, + +``` +n/(kG) = Omega(p^.907/log^2 p) -> infinity, +n/((k+1)L) = Omega(p^.907/log^3 p) -> infinity. +``` + +There is ample room both for the old spectator placement and for all +subsequent prefix-only reservoirs. These inequalities concern the full +binary address, not any one original axis. + +The only per-axis inequality is + +``` +K + O(log p) < ell_axis = Theta(p^.002), +``` + +which holds eventually. The original K/log p -> infinity wording must be +replaced, as already noted in `SUPPLIER-SUPPORT-AUDIT.md`, by the finite +guard inequality K>=G+4ceil(log2 p)+10. K=128G satisfies it. + +The supplier's front/back controls are made by concatenating reserved +complete neighborhoods. Their chunk count is + +``` +ceil(2hG/K) + ceil(hG/K) <= 3h/128 + 2. +``` + +The leading row stock adds O(log h) complete chunks. Above a fixed +polylogarithmic cutoff this is at most h/16, and smaller h is handled +individually. No single original axis stores hG control bits. Indeed +gG/ell_axis=Theta(p^.091 log p) diverges; the construction works precisely +because it does not demand this false per-axis fit. + +Consequently the reviewed mechanisms support the proposed +O(V g^(1-q) polylog p) global-call cost under the retained supplier +assumptions. The suffix exclusion and completed-call boundary should be +kept explicit in any final assembly. They are necessary bookkeeping, +not a new exponent restriction or an unproved sorting primitive. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SUPPORT-ROUTER.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SUPPORT-ROUTER.md new file mode 100644 index 0000000000..4f39fa9eaf --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SUPPORT-ROUTER.md @@ -0,0 +1,157 @@ +# Coordinate routing measured by moved support + +This is a conditional extension of the retained compact arbitrary-source +router. It uses the same equal-width chunk interchange with cost +`O(V H^(1-a))`, original fixed-tape modular rotations, counters and sparse +radix repair. It changes the packed-control length from the full address span +to the number of active target positions. No computed-key sort of the full +input is assumed. + +Let a supplied permutation of `n=O(p)` binary address coordinates move at +most `k` positions. The stream is a complete binary rectangle, with arbitrary +preceding fibers and following payload. In the regime used below, +`n/(k log p) -> infinity`; short remaining cases can use the retained +full-span router, since `n=O(k polylog p)` there. The conditional cost is + +``` +O(V (k+1)^(1-a) polylog p + poly(p)). +``` + +All other coordinate positions return to their original values. This is a +support bound, not a bound on how far a moved coordinate travels. + +## Unequally spaced target lemma + +Put `B=2^G`, `G=4 ceil(log2 p)+6`, and `K=64G`. Take target positions +`j_0<...2(k+1)ell`, a gap outside the moved support contains a contiguous ell-bit +field S disjoint from the actual last ell bits. Use an original equal-ell +interchange A to move S to that actual suffix. Route the conjugate +`A pi A^-1` on the n-ell prefix only, then undo A. The conjugate fixes the +suffix pointwise because pi fixed S. Choose every dirty control reservoir +inside the prefix after this interchange, then recompute positions and +residue colors. Thus no control operation touches the enlarged record. +Its 2^ell complete values absorb the polynomial descriptor work; no data +is padded or duplicated. If `n<=2(k+1)ell`, the retained full-span bound +already gives `O(V (k+1)^(1-a) polylog p)`. The placement itself costs only +O(V polylog p). This explicit suffix-conjugation bookkeeping was +independently supplied in `work/inplace_algebra_ultra/SUPPLIER-SUPPORT-AUDIT.md`. + +## The gather uses only S union T + +Let S list the k selected low-coordinate bits in the desired tensor order, +and T list k consecutive destination slots. Send S bijectively to T. Send +the remaining domain slots `T\S` bijectively to the remaining output slots +`S\T`, and fix everything outside `S union T`. This explicitly extends the +requested gather to a coordinate permutation supported on at most 2k bits. + +The other coarse-coordinate bits can be scrambled by this extension. Their +order is retained and described by the inverse permutation; **no stable +compaction of all coarse fields is performed**. A coarse neighbor address +can be decoded, incremented in its logical axis, then encoded in this +physical coarse order when constructing a sparse correction key. + +## Evidence and boundary + +`check_sparse_shear.py` checks all 32,768 addresses for targets 0 and 6 with +guard length 5, including 512 good addresses, inverse composition and every +bad repair. It also checks 4,000 arbitrary/constructed-good addresses with +unequal gaps 9 and 11 and sources inside guard fields. `check_halo.py` +checks three explicit support-at-most-2k gather permutations. + +These controls support the algebra; the cost argument above is the +all-size conditional transfer. It retains the original bit-supplier, +equal-width interchange, fixed-tape and common-label hypotheses. It does +not upgrade an arbitrary full computed-key sort to a fast router. + +Sources: the retained reports `compact-arbitrary-source-routing.md` and +`review-arbitrary-routing.md` under +`work/integer-mult-current/references/semantic-bulk/rad20/reports/`. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/TASK.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/TASK.json new file mode 100644 index 0000000000..8fc25b910b --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/TASK.json @@ -0,0 +1,72 @@ +{ + "schema_version": 1, + "task_id": "uniform-transfer-audit", + "priority_revision": 3, + "base_commit": "a5d4f08ac102d1a6da301d89379c75285eca680e", + "original_card": { + "id": "uniform-transfer-audit", + "question": "Can one exact all-size/compiler, precision, hosting or restoration implication be proved or falsified?", + "starting_points": [ + "certificates/selected-result.json", + "docs/audit.md" + ], + "methods": [ + "Prove one missing implication with explicit quantified hypotheses.", + "Find an exact counterexample at the claimed interface boundary." + ], + "acceptance_gate": "Identify the proposition and what would change downstream; do not equate a finite replay with a universal proof.", + "first_step": { + "command": [ + "python3", + "-B", + "scripts/research_baseline.py" + ], + "expected": "PASS_RESEARCH_BASELINE_BINDINGS_ONLY", + "inspect": "Read the selected review scope and choose one exact all-size or precision implication.", + "scope": "Positive control / source-bound orientation only; this is not a new construction or full cold replay." + }, + "first_experiment": "Write its quantified inputs and conclusion; find a missing hypothesis or construct a minimal exact adversarial instance.", + "bottleneck_link": "Finite supplier improvements are useful only under the retained transfer obligations.", + "allowed_variations": [ + "Choose one tape, precision, hosting or restoration lemma." + ], + "scope_change_triggers": [ + "Replacing a quantified obligation with another finite smoke test." + ], + "overlap_terms": [ + "uniform transfer", + "all-size", + "precision" + ] + }, + "scope_status": "changed", + "actual_scope": "Construct and audit capped phase-cell fusion and substitute the pinned fully replayed T74 supplier to obtain final conditional kappa=0.001677160151714381.", + "scope_change_reason": "The user explicitly requested stronger bounds using broad resources; the resulting work replaces several outer transfer steps rather than auditing a single inherited implication.", + "bottleneck_link": "The outer reduction repeatedly scans Gaussian axes; in-place tensor compilation and capped sparse boundaries reduce that cost. The unchanged complex supplier still caps the possible final saving.", + "budget_minutes": 180, + "stop_rule": "Publish the verified conditional transfer with exact source bindings and bounded replay; retain larger-supplier research as open work.", + "outcome": "completed", + "evidence": "phase_fusion_note.tex; frontier_fusion/FRONTIER-FUSION-ARITHMETIC.json; frontier_fusion/NATIVE-ADMISSION-BINDING.json; PUBLICATION-CHECKS.json", + "author": "Vlado Vojdanovski", + "ai_assistance": "Substantial AI assistance. No independent human or proof-assistant review claimed.", + "open_questions": [ + { + "question": "Can a new finite supplier materially exceed the present complex rate?", + "why_it_matters": "The current complex endpoint is below .00168 and cannot yield final .002.", + "first_step": "Emit and price a full native side circuit for a lower-cost central decoder.", + "blocked_by": "Actual routing, helper and restoration costs." + }, + { + "question": "Can the full capped transfer be independently formalized?", + "why_it_matters": "Finite algebra checks do not establish all-size tape complexity.", + "first_step": "Reconstruct the sparse-union and support-local routing proofs.", + "blocked_by": "Formal all-size schedule and inherited compiler interfaces." + }, + { + "question": "Can future suppliers be substituted without changing the outer proof?", + "why_it_matters": "The outer gain can compose with later finite improvements.", + "first_step": "Bind endpoint, prefix and completed-call restoration contracts and rerun the ledger.", + "blocked_by": "A complete supplier satisfying the same functional contract." + } + ] +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/TENSOR-COMPILER.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/TENSOR-COMPILER.md new file mode 100644 index 0000000000..19efb9cb1c --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/TENSOR-COMPILER.md @@ -0,0 +1,160 @@ +# Tensorizing local circuits without dimension padding + +Status: an algebraic compiler and scan-cost lemma. It reduces a tensor product of different bounded-depth local circuits to a bounded sequence of simultaneous binary Hadamard calls and diagonal scans on the **same** data volume. The retained supplier must support the stated Hadamard call on selected local bits and restore the agreed endpoint record order. No new fast-transform supplier is asserted here. + +## 1. Interface and conclusion + +Let N=2^m and let g axes each have N local coordinates. A coarse-label block contains V=N^g data records in lexicographic local-coordinate order. On axis a let C_a be an N-wire linear circuit of depth D; every layer consists of disjoint invertible two-coordinate gates and one-coordinate diagonals. The permitted gates are bounded shears, swaps, FFT butterflies, and diagonals. Circuits, pair matchings, coefficients and depths can differ by axis and by coarse label. Their tables are fixed independently of data values. + +Write H=[[1,1],[1,-1]]. A simultaneous Hadamard call means the tensor product of one H acting on one selected bit in each axis, with all remaining local and coarse coordinates as spectators. It acts on existing 2^g-coordinate fibers inside the N^g records; it allocates no new coordinate. The bit selected in an axis may be prescribed by the compiler. + +After padding shorter circuits by identity **operations**, the tensor product C_1 tensor ... tensor C_g is a sequence of + + at most (8m+2)D simultaneous H calls + +and O(Dm) tensor-diagonal scans. A tensor diagonal has the form + + d(i_1,...,i_g;c)=product_(a=1)^g d_a(i_a;c), + +where c is the fixed coarse label. Each diagonal scan uses O(1) amortized coefficient multiplications and O(1) amortized coefficient-table record movements per data record, after loading gN local values. The number of arithmetic-data coordinates remains exactly N^g throughout. + +If all local gate coefficients and inverses are bounded by B and all original prefix and inverse-prefix norms by Lambda, the compiler's local prefix bounds are Lambda times poly(B), up to absolute constants. For polynomial B and Lambda this is N^O(1). The tensor-prefix logarithmic bound is O(g log N). More generally depth D=polylog(p), B=poly(p), N=poly(p) gives an O(g polylog(p)) guard even without a stronger prefix theorem. + +An outer similarity whose logarithmic range is Q_a on axis a adds only sum_a Q_a. Therefore the retained phase-cell case Q_a=O(a d) uses + + p + O(g a d + g polylog(p)) + +working bits. The condition g a d+g polylog(p)=O(p) is sufficient for O(p)-bit records. + +## 2. Fixed Hadamard words, including zero shears + +All formulas below are matrix-product order; execution reads right to left. Let U(t)=[[1,t],[0,1]]. Direct multiplication gives + + H diag(2,1) H diag(-3,1) H = [[-8,-10],[0,-6]], + diag(-1/8,-1/6) H diag(2,1) H diag(-3,1) H = U(5/4). + +For q nonzero, conjugate by A_q=diag(4q/5,1): + + U(q)=A_q diag(-1/8,-1/6) H diag(2,1) H diag(-3,1) H A_q^-1. + +This has three H factors. To include t=0 with uniformly invertible diagonals, choose a known B>=|t| and c=2B+1. Then + + U(t)=U(t+c) U(-c). + +Both parameters have magnitude at least B+1 and at most 3B+1. This is a **six-H word for every t**, with all scalar coefficients and inverses bounded by poly(B). There is no division by t and no case split at t=0. Transpose the word to obtain the same six-H count for lower shears. + +There are two bounded identity words: + + I = (1/2) H H, + I = diag((1-i)/4,(1+i)/4) H diag(1,i) H diag(1,i) H. + +The second identity uses three H factors. Its middle product before the leading diagonal equals diag(2+2i,2-2i). Complex coefficients are permitted by the retained complex H interface. + +Consequently every gate type can be given **exactly six H factors**, separated by diagonal matrices: + +- Upper/lower shear: the six-H word above. +- Diagonal, including I: append three two-H identity words. +- Swap J: use J=(1/2)H diag(1,-1)H, then append two two-H identity words. +- FFT butterfly H diag(1,w), optionally scaled by 1/sqrt(2): append a two-H identity and a three-H identity. Here |w|=1. + +Combining neighboring diagonal matrices puts every word in one common alternating shape with six H factors and seven diagonals. Thus different gate types, zero parameters and inactive pairs can coexist in one simultaneous schedule without branches or padded data coordinates. + +## 3. Every matching can be routed to adjacent pairs + +For one local layer, assign its oriented pairs (i,j) to positions (2k,2k+1). Unpaired coordinates are assigned arbitrarily to the remaining positions, in pairs carrying diagonal or identity gates. This defines a permutation pi on exactly N coordinates. The layer equals + + P_pi^-1 (direct sum of adjacent-pair gates) P_pi. + +We use a Beneš network of 2m-1 switch layers. At each layer all switches join indices differing in one fixed bit; the bit sequence is + + 0,1,...,m-1,m-2,...,1,0. + +Here is a constructive proof of rearrangeability. Form a bipartite multigraph whose left vertices are input pairs {2j,2j+1} and whose right vertices are output pairs {2k,2k+1}. Input i supplies an edge to output-pair floor(pi(i)/2). Every vertex has degree two, so each component is an even cycle (parallel edges are allowed). Alternately color each cycle's edges 0 and 1. The first switch sends an input edge into the subnetwork of its color; the last switch sends that color to the required output parity. Each color class induces a permutation on N/2 pair indices. Recursively route both color subnetworks in parallel. This gives exactly the displayed bit sequence and uses no storage coordinates. + +The switch is either I or J. Both are obtained from the common two-H word + + S_epsilon=(1/2) H diag(1,epsilon) H, + epsilon=+1 for I, epsilon=-1 for J. + +Thus all axis-dependent switch controls are diagonal entries. A physical switch on bit k simply uses a simultaneous H call selecting bit k in each axis. No interstage wire shuffle is needed. If a supplier accepts only a contiguous selected-bit field, the existing paid bit router must gather that field and undo the gather; that is a supplier-interface cost, not an uncharged permutation. + +Each forward or inverse Beneš route uses 2(2m-1) H calls. The adjacent gates use six. Hence one original matching layer uses + + 2[2(2m-1)]+6 = 8m+2 + +H calls. The schedule is identical on every axis and every coarse-label block; only diagonal tables change. + +## 4. Tensor fusion is literal multiplication, not a sum expansion + +Let the compiled axis-a circuit be D_(a,L) H_(a,L) ... H_(a,1) D_(a,0), with the same number and arrangement of H factors. Kronecker multiplication gives + + tensor_a C_a + = (tensor_a D_(a,L)) (tensor_a H_(a,L)) ... + (tensor_a H_(a,1)) (tensor_a D_(a,0)). + +Every tensor of diagonals is a single diagonal scan. Every tensor of binary H factors is one simultaneous H call. This introduces neither a sum of 2^g branches nor a 2^g padding factor. The 2^g-dimensional Hadamard fibers are subsets of the N^g existing coordinates. + +An axis with no work at a particular original depth receives an identity layer, routed and compiled with the same fixed shape. Its intermediate H operations are still present, but the complete local word is I. Coarse-label variation is equally harmless: for each fixed label the identity above holds separately, and the whole data operator is a direct sum over labels. + +## 5. Uniform intermediate bounds and precision + +A completed switch route is a permutation and has norm one. Each partial switch word has absolute constant norm and inverse norm. Between original local circuit boundaries, at most one original gate word is partially executed. Its length is constant, and its scalar coefficients and inverses are poly(B); all different pairs act as a direct sum. Therefore + + max_prefix ||C_compiled,prefix||, + max_prefix ||C_compiled,prefix^-1|| <= poly(B) Lambda. + +The length O(D log N) does not require multiplying this polynomial bound afresh at every stage: completed original prefixes already have bound Lambda; completed route and padding words have their exact intended endpoints. The corresponding suffix bound is also polynomial when the original endpoint and inverse-prefix bounds are. + +For g tensor factors, the operator norms multiply, so their logarithms add. A microbox coarse-label direct sum takes the maximum over labels, not a product over labels. Hence polynomial local bounds give exp(O(g log N)); using only the rough original bound Lambda<=(2B)^D gives exp(O(gD log B)). Adding the original cell similarity contributes exp(sum Q_a). + +The number of compiled stages is polylog(p). Allocate each rounding or supplied-transform error below the final tolerance divided by this stage count and the prefix/suffix amplification. This costs O(g polylog(p)+sum Q_a) guard bits. Supplier-internal precision charges still must be those already guaranteed for the simultaneous H call; this compiler does not erase them. + +## 6. Product diagonals with constant amortized scan cost + +Fix one diagonal stage and one coarse label. Load the gN coefficients d_a(i) on a coefficient tape in axis order. Use base-N lexicographic enumeration with axis 0 fastest. Store suffix products + + P_j=product_(a=j)^(g-1) d_a(i_a), 1<=j=1) k/N^k = O(V), + +plus O(g) initialization. No division by d_a(i) is used, so this method also permits zero diagonal entries when an external application permits them. Every cached product is recomputed from current factors, never updated by a long chain of multiplicative ratios, so numerical drift does not depend on the number of records scanned. + +The same accounting works on a fixed number of tapes. Keep the coefficient-tape head normally in axis-0's N-record table. Rewinding that table costs O(N) once per N records. A depth-k carry visits the needed tables up to axis k and returns, moving O(kN) coefficient records. Summing over carries gives + + O(V sum_(k>=1) kN/N^k)=O(V) + +record moves. The suffix-product tape is accessed near its front except on carries, with the same geometric bound. Counter/address arithmetic costs only polylog(p) per record. This does not require g work tapes or a random-access lookup every record. + +The table loading cost is O(gN) records per coarse block and stage. For N>=2 it is O(N^g), including small g, and polynomial-time table construction is negligible per N^g block in the retained asymptotic regime g=p^beta tending to infinity. If tables are supplied rather than constructed locally, no additional assumption is needed. Both generation and loading costs must be charged once per visited coarse block, not silently once for the entire input. + +At O(p) working precision, O(1) amortized scalar multiplications per record and O(1) record movements cost O(V_bits polylog(p)) under the retained pointwise-arithmetic kernel, where V_bits counts bit volume. There is no g V_bits coefficient-generation term. + +## 7. Exact controls + +`check_tensor_compiler.py` constructs the network controls and all fixed words. `TENSOR-COMPILER-CONTROLS.json` records: + +- every permutation for N=2,4,8, including all 40,320 permutations at N=8; +- 100 random permutations each at N=16,32,64; +- exact symbolic checks of upper/lower zero and nonzero shears, diagonal, Swap and FFT words; +- an exact two-axis N=4 replay with different axis matchings and gate types: 16 data coordinates, all 256 input-output matrix entries, 18 simultaneous H calls, no dimension expansion. + +The finite controls support the constructive proofs; the cycle coloring, word identities, Kronecker identity and geometric scan sums establish the asymptotic statements. + +## 8. Cost substitution into the retained supplier + +Suppose a simultaneous H call on g selected bits, across V_bits bits of data and spectators, has paid cost O(V_bits g^(1-q) polylog(p)). Suppose also that any required bit-field gather/restore has cost O(V_bits g^(1-a_bit) polylog(p)). For D=polylog(p), N=poly(p), the compiler uses only polylog(p) such calls, and its diagonal scans cost O(V_bits polylog(p)). Thus the grouped local circuit costs + + O(V_bits [g^(1-q)+g^(1-a_bit)+1] polylog(p)). + +When a_bit>q and 00 for value in row['slacks'].values()) + assert min(row['margins'].values())==row['margins']['main_transform'] + controls={} + tests=[('endpoint_equality',dict(q=Q('0.001675462676808103522925'))), + ('zero_group_guard',dict(zeta=Q(0))), + ('zero_boundary_slack',dict(sigma_boundary=Q(0))), + ('old_per_axis_scan',dict(old_vd=True)), + ('unrecentered_full_cell_gauge',dict(full_cell_gauge=True))] + for name,kwargs in tests: + bad=calculate(**kwargs) + failed={k:v for k,v in bad['slacks'].items() if v<=0} + assert failed,name + controls[name]=failed + output=dict(status='PASS_CONDITIONAL_PHASE_FUSION_REVIEW', + scope='Local conditional transfer and exact arithmetic; inherited supplier and all-size interfaces remain assumptions. No upstream selected certificate is changed.', + review=dict(integrated_review='Root reviewed the complete standalone note, integrated proof chain, exact ledger, and independent cap/supplier/layout audits.', + independent_cap_gauge='CAPPED-GAUGE-AUDIT.md', + independent_cap_layout='CAPPED-SIGNOFF.md', + supplier_support='SUPPLIER-SUPPORT-AUDIT.md'), + **row,controls=controls) + (ROOT/'CAPPED-OUTER-ARITHMETIC.json').write_text(json.dumps(encode(output),indent=2)+'\n') + print(output['status']) + for name in ['epsilon','capped_block_power','beta_group','kappa']: + print(name,decimal(row['parameters'][name])) + print('minimum margin',decimal(min(row['margins'].values()))) + print('gain over selected',decimal(row['slacks']['improvement'])) + print('positive strict slacks',len(row['slacks'])) + print('controls',', '.join(controls)) diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/check_matrix_corollary.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/check_matrix_corollary.py new file mode 100644 index 0000000000..3f543803d7 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/check_matrix_corollary.py @@ -0,0 +1,143 @@ +#!/usr/bin/env python3 +"""Exact corollary ledger, additionally assuming the supplied 9/4 theorem.""" +from fractions import Fraction as Q +from decimal import Decimal,localcontext +from pathlib import Path +import json + +ROOT=Path(__file__).resolve().parent + +def decimal(x): + with localcontext() as ctx: + ctx.prec=65 + return str(Decimal(x.numerator)/Decimal(x.denominator)) + +def calculate(q=None,zeta=None,union_slack=None,old_vd=False, + full_cell_gauge=False,add_full_key_sort=False): + bit=Q('0.001733427039589844234749') + complex_=Q('0.001675462676808103522925') + q=complex_-Q(1,10**10) if q is None else q + a=(q+complex_)/2 + r=Q(1,10**6) + zeta=Q(1,10**8) if zeta is None else zeta + union_slack=Q(1,10**5) if union_slack is None else union_slack + tau_matrix=Q(19,8) + c=(3-tau_matrix)/2 + stop=Q(1,10**9) + cap=(Q(3,2)+q-(1+q)*(r+zeta)+union_slack)/(2+q) + eps=(1+q*(1-cap-r-zeta))/(1+q) + beta=1-cap-r-zeta + kappa=Q('0.001673360105405778') + selected=Q('0.001672660197076918') + first=Q('0.001672922349588871') + tau_bit,sigma=1-a,1-complex_ + internal=tau_bit+(1-stop)*max(sigma-tau_bit,Q(0)) + leaf=sigma+stop*(1-sigma) + lam=1-(q+a)/2 + key=beta+1-eps + margins=dict( + main_transform=eps*q, + global_coordinate_router=a, + fused_gaussian=1-eps+q*beta, + group_bit_router=1-eps+a*beta, + group_scans=1-eps+beta, + boundary_algebraic_matrix=c+cap-eps, + sparse_union_movement=1-eps-beta-Q(1,2)+cap, + polynomial_products=eps, + microbox_face_corrections=1-(eps+beta+3-8+2), + ) + if old_vd:margins['unreplaced_per_axis_scan']=1-eps + if add_full_key_sort: + margins['unnecessary_union_full_key_sort']=margins['sparse_union_movement']-key + slacks=dict( + actual_bit_above_effective=bit-a, + complex_above_effective=complex_-a, + complex_below_one_over_32=Q(1,32)-complex_, + q_positive=q, + complex_endpoint=complex_-q, + q_below_effective_bit=a-q, + stop_positive=stop, + stop_below_one=1-stop, + leaf_saving_above_effective_bit=(1-stop)*complex_-a, + q_below_internal=1-internal-q, + q_below_leaf=1-leaf-q, + lambda_above_tau=lam-tau_bit, + lambda_above_sigma=lam-sigma, + lambda_above_internal=lam-internal, + lambda_prime_above_lambda=1-q-lam, + lambda_prime_above_leaf=1-q-leaf, + epsilon_positive=eps, + epsilon_below_one=1-eps, + capped_block_above_band=cap-Q(1,2), + capped_block_below_cell=eps-cap, + group_positive=beta, + group_below_dimension=eps-beta, + support_router_span=1-beta, + group_gauge_power_slack=1-cap-r-beta, + actual_logarithmic_group_guard=1-cap-beta, + global_gamma_power_slack=1-eps-r, + actual_logarithmic_gamma_guard=1-eps, + alpha_logarithm_absorption=r, + group_key_fits_record=1-key, + membership_arithmetic_fits_record=1-beta-2*(1-eps), + sparse_union_fraction_decays=cap-beta-Q(1,2), + microbox_halo_volume=8-3-beta, + union_positive_slack=union_slack, + matrix_exponent_above_source_bound=tau_matrix-Q(9,4), + matrix_exponent_below_five_halves=Q(5,2)-tau_matrix, + short_record_fallback=eps-a, + improvement_over_selected=kappa-selected, + improvement_over_first_reviewed_transfer=kappa-first, + ) + if full_cell_gauge: + slacks['unrecentered_group_gauge']=1-eps-r-beta + slacks.update({name+'_above_kappa':value-kappa for name,value in margins.items()}) + assert margins['main_transform']==margins['fused_gaussian'] + assert margins['sparse_union_movement']==margins['main_transform']+union_slack + return dict(parameters=dict(a_bit=bit,a_eff=a,complex_saving=complex_,q=q, + r_spare=r,zeta=zeta,sigma_union=union_slack,stop=stop, + epsilon=eps,capped_block_power=cap,beta_group=beta, + matrix_exponent=tau_matrix,matrix_source_bound=Q(9,4), + c_boundary=c,kappa=kappa,selected=selected,first_reviewed_transfer=first, + lambda_=lam,lambda_prime=1-q,tau=tau_bit,sigma=sigma, + microbox_power=Q(8),halo_power=Q(3)),margins=margins,slacks=slacks) + +def encode(o): + if isinstance(o,Q):return dict(rational=str(o),decimal=decimal(o)) + if isinstance(o,dict):return {k:encode(v) for k,v in o.items()} + return o + +if __name__=='__main__': + row=calculate() + assert all(value>0 for value in row['slacks'].values()) + assert min(row['margins'].values())==row['margins']['main_transform'] + controls={} + tests=[('endpoint_equality',dict(q=Q('0.001675462676808103522925'))), + ('zero_group_guard',dict(zeta=Q(0))), + ('zero_union_slack',dict(union_slack=Q(0))), + ('old_per_axis_scan',dict(old_vd=True)), + ('unrecentered_full_cell_gauge',dict(full_cell_gauge=True)), + ('full_key_sort_on_union',dict(add_full_key_sort=True))] + for name,kwargs in tests: + bad=calculate(**kwargs) + failed={k:v for k,v in bad['slacks'].items() if v<=0} + assert failed,name + controls[name]=failed + output=dict(status='PASS_CONDITIONAL_MATRIX_PHASE_FUSION_REVIEW', + scope='Additional matrix-conditioned corollary. Assumes supplied omega_C<=9/4 theorem and the effective algebraic stability transfer, as well as all first-transfer assumptions.', + review=dict(integrated='Root read the matrix corollary and independent layout signoff, reproduced the exact parameters and ledger, and replayed matrix source construction controls.', + matrix_source='PROOF-AND-COVERAGE.md', + effective_stability='ALGEBRAIC-STABILITY-INDEPENDENT.md', + independent_layout='MATRIX-LAYOUT-SIGNOFF.md'), + omitted_row=dict(name='optional full-coordinate-key union surcharge', + reason='The actual U_i complete-rectangle extraction, one-field transpose, and ordered merge do not sort union records. Sparse microhalo keys remain paid in their separate cost.'), + **row,controls=controls) + (ROOT/'MATRIX-COROLLARY-ARITHMETIC.json').write_text(json.dumps(encode(output),indent=2)+'\n') + print(output['status']) + for name in ['epsilon','capped_block_power','beta_group','kappa']: + print(name,decimal(row['parameters'][name])) + print('minimum margin',decimal(min(row['margins'].values()))) + print('gain over selected',decimal(row['slacks']['improvement_over_selected'])) + print('gain over first transfer',decimal(row['slacks']['improvement_over_first_reviewed_transfer'])) + print('positive strict slacks',len(row['slacks'])) + print('controls',', '.join(controls)) diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/BILATERAL-CONTROLS.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/BILATERAL-CONTROLS.json new file mode 100644 index 0000000000..ed4b620d8a --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/BILATERAL-CONTROLS.json @@ -0,0 +1,7 @@ +{ + "status": "all exact assertions passed", + "arithmetic": "fractions.Fraction", + "negative_and_zero_origin_instances": 45, + "finite_LDU_and_shift_entries": 750, + "scope": "Finite-origin algebra, exact origin-shift correction, upper inverse formula and simultaneous periodic shifts; bilateral limiting argument is analytic." +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/BILATERAL-LDU.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/BILATERAL-LDU.md new file mode 100644 index 0000000000..5cad6ee19f --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/BILATERAL-LDU.md @@ -0,0 +1,131 @@ +# Bilateral Gaussian LDU and a fixed-width periodic inverse bound + +Independent audit of the parent's infinite-LDU observation. This is an analytic norm theorem. It does **not** assert that the bilateral factors already have a fully priced fast implementation. + +## Statement + +Let `1=1`, define on Z + +`G_ij=exp(-a[(rho*j-q_i)^2-beta_j^2])`. + +Let `r=exp(2a rho)` and `c=prod_(m>=1)(1-r^-m)>0`. Then G has an exact factorization on bounded bilateral sequences + +`G=L C U`, + +where L is unit lower triangular, U is unit upper triangular, C is diagonal, and all factors and their inverses are bounded. Moreover all six factors are invariant under simultaneous index translation by s. Their periodizations therefore factor the periodic Gaussian matrix N, and + +`||N^-1||_infinity <= c^-4 exp(a/2)/(1-exp(-a rho theta))^2`. + +In particular, at the fixed choice `a=1`, + +`||N^-1||_infinity < 16 theta^-2`. + +Any fixed a>=1, including a=4pi if an integer alpha>=2 is retained, gives a constant times theta^-2. No lower bound proportional to log(1/theta) on a is needed for this norm theorem. + +## 1. Finite-origin factorization and the shift correction + +Write `x_i=r^q_i`, `d_i=exp(-a q_i^2)`, and `e_i=exp(-a rho^2 i^2+a beta_i^2)`. Then `G_ij=d_i x_i^j e_j`, including negative indices, and `d_i x_i^i e_i=1`. + +For a finite square principal interval `[l,r0]`, the Vandermonde powers must begin at zero. The correct shifted row diagonal is **d_i x_i^l**, and the power is `j-l`. This removes a possible erroneous origin-dependent diagonal from the upper factor. + +Put + +`C_i(l)=prod_(l<=k=j`, + +`U^l_ij=(e_j/e_i) h_(j-i)(x_l,...,x_i)`, `j>=i`. + +Here h is the complete symmetric polynomial, h_0=1. Upper and lower inverses are + +`(U^l)^-1_ij=(-1)^(j-i)(e_j/e_i) e_(j-i)(x_l,...,x_(j-1))`, + +`(L^l)^-1_ij=(-1)^(i-j) exp(E_ij) C_i(l)/(C_j(l) D_ij)`, + +where + +`D_ij=prod_(j=j`, + +`|(U^l)^-1_ij|<=c^-1 exp(a/4) exp(-a rho theta(j-i))`, `j>=i`. + +Both use only `-1/2<=beta_k<1/2`. Thus their row norms are at most the corresponding constants divided by `1-exp(-a rho theta)`, uniformly in l and the finite size. + +The row sum of G is uniformly finite, since + +`G_i,i+h <= exp(a/4) exp(-a(rho*|h|-1/2)^2)`. + +The same positive Gaussian bound controls all finite-origin L and U factors. + +## 3. Letting the left origin tend to minus infinity + +For fixed i,j, C_i(l) converges to + +`C_i=prod_(k(i+s,j+s)`. Every displayed factor has the same invariance: ratios `x_k/x_i` are preserved, and the Gaussian/prefix expressions shift together. C_i is s-periodic. + +For an invariant matrix A with bounded absolute row sums, set + +`Pi(A)_ij=sum_(n in Z) A_(i,j+ns)`, `0<=i,j=e^2>7, and the elementary product bound gives `c>=1-sum_(m>=1)r^-m>5/6`. Also `1-exp(-rho theta)>=theta/2` for 04W, choose + +`B=min(Bcap, 2^floor(log2(R-W)))`, + +retain the next B vertices as an interior, then the next W vertices as boundary, and decrement R by B+W. Declare the final R<=4W vertices boundary. + +There are `O(L/Bcap+log Bcap)` interiors: while the cap is active, each step removes at least Bcap vertices; after it ceases to be active, the remaining length halves at each step. Every interior length is dyadic and at most Bcap. Every interior produced by the loop is longer than W; two successive interiors are separated by at least W retained coordinates. + +Total boundary count per original cell is + +`O(W(L/Bcap+log Bcap))`. + +Since original cell lengths are Theta(d), total boundary density is + +`O(W/Bcap + W log Bcap/d)=O((W/Bcap) polylog p)` + +when Bcap<=d. The same selected-input and target-output physical period cuts must be preserved. A clipped endpoint cell of O(W) length is wholly boundary. + +Interior elimination only fills between the adjacent boundary groups of one interior. Each group has O(W) vertices: inserted groups have W; an end remainder has at most 5W after joining the reserved end. Hence scalar Schur half-bandwidth remains O(W), independently of the cap and the number of pieces. No retained matrix coefficient is changed by this new partition. + +## 2. Narrow Gaussian: exact recentering of the existing rounded weights + +In one original phase cell, beta_i=theta*i-c and + +`log a_i=-a(1/4-beta_i^2)/theta`. + +For any two coordinates i,j in that same cell, + +`log(a_i/a_j)=a(i-j)(beta_i+beta_j)`. + +Since both beta values lie in [-1/2,1/2), + +`|log(a_i/a_j)|<=a|i-j|`. + +Thus a capped interior of at most Bcap vertices has ideal weight range at most exp(a Bcap), even when the absolute full-cell gauge has range exp(O(ad)). + +The actual matrix uses already-rounded positive weights ahat_i. Suppose, as ensured by the retained high-precision setup, + +`(1-epsilon) a_i <= ahat_i <= a_i`, with epsilon<=1/2. + +Then for an anchor m in the capped interior, + +`(1-epsilon) exp(-a Bcap) <= ahat_i/ahat_m` + +` <= exp(a Bcap)/(1-epsilon)`. + +Replacing ahat_i by `ahat_i/ahat_m` in both diagonal factors of + +`A=diag(ahat) Ghat diag(ahat)^-1` + +is **exact**. It changes neither A nor the fixed globally rounded H. These ratios must be formed in coefficient setup; the data circuit must not apply the full-cell diagonal and hope to cancel it later. One may anchor at the maximum ahat in the piece to make the direct diagonal contractive and its inverse at most `2 exp(a Bcap)`. + +The old setup provides absolute error below `4*2^-P` and ideal minimum at least exp(-a/(4theta)). It suffices that + +`4*2^-P exp(a/(4theta)) <= epsilon`. + +In the retained family a=Theta(log p), theta^-1=O(d), d=p^epsilon0 with fixed epsilon0<1, so ad=o(p). The existing P=Cp setup precision easily gives epsilon<=2^-cp. The **ad cost occurs in offline coefficient accuracy**, not in the runtime norm of the recentered diagonal. It is not multiplied by the number g of simultaneously executed axes. More explicitly, if the raw relative error is delta0<=4*exp(a/(4theta))*2^-P, then an anchored ratio has relative error at most 2delta0/(1-delta0). A g-fold product of anchored diagonals has error bounded by a polynomial factor times g*delta0*exp(O(g*a*Bcap)). Thus the needed precision is P>=p+O(ad+g*a*Bcap+log g+polylog p), rather than p+O(g*a*d). Both added power terms are o(p) in the proposed parameter family. + +## 3. Broad forward Gaussian: local gauges + +Use the target-grid notation from FORWARD-SMALL-A-AUDIT.md. With lambda=1/rho, b0=pi/alpha^2, original phase c, and an anchor m in the capped interior, + +`delta=(1-lambda)m-c`, `x=i-m`, `y=k-m`. + +The exact split is + +`Dcol(i)=exp[-b0((1-lambda)x^2+2delta*x)]`, + +`Drow(k)=alpha^-1 exp[b0 lambda(1-lambda)y^2+2b0 delta lambda*y-b0 delta^2]`, + +with a fixed Toeplitz kernel `exp[-b0 lambda(i-k)^2]`. + +Throughout the original selected-target phase cell, `beta'_i=theta*i-rho*c` lies in [-1/2,1/2). Therefore + +`d(log Dcol)/di = -2 b0 lambda beta'_i`, + +`d(log Drow)/dk = 2 b0 lambda^2 beta'_k`. + +Their absolute slopes are at most b0 and b0 respectively. Both diagonal logarithmic ranges on the capped block are at most `b0 Bcap`. At the anchor, Dcol=1 and Drow=alpha^-1 exp(-b0 delta^2), so their absolute values also have logarithmic size `O(b0 Bcap+log alpha)`. + +If a globally rounded broad block was already defined using a different anchor, use exact constant ratios to recenter its two diagonals: divide the column diagonal by its value at m and multiply the row diagonal by the same value. Ideal changes of anchor differ only by reciprocal constants, since the derivatives above are independent of m. Uniform relative coefficient error changes the range by only O(1), just as in the narrow case. This preserves the already-defined rounded block exactly. Alternatively the broad block can be initially defined with the capped anchor, using one globally specified rounding construction. + +Holes remain boundary. The completed narrow and broad interior inverse bounds and the completed global/Schur norm bounds proved earlier do not depend on the cap: every new interior is still a contiguous principal block of the same original phase matrix. + +## 4. Group guard and circuit count + +Each capped narrow diagonal contributes at most `a Bcap+O(1)` to the logarithmic norm; the broad contribution `O(Bcap/alpha^2+log alpha)` is smaller. Shallow Toeplitz circuit amplification contributes polylog(p) per axis. The number of capped blocks per line does not multiply these bounds: they are disjoint direct-sum blocks and their circuits run in parallel, padding completed smaller circuits with identity gates. + +Consequently g simultaneously executed axes require + +`O(g a Bcap + g polylog p)` + +extra logarithmic precision. With `Bcap<=p^b`, `g<=p^beta`, a=Theta(log p), and beta+b=1-r-zeta with r,zeta>0, + +`g a Bcap=O(p^(1-r-zeta) log p)=o(p)`. + +In particular no remaining full-cell term g*a*d may be charged after exact recentering. Offline accuracy still needs to dominate ad=o(p), as above. + +## 5. Schur solves and whole-group ordering + +For the narrow matrix, strict row dominance is inherited by any interior elimination, so all completed Schur and inverse norms remain polynomial under the cap. + +For the broad matrix, completed Schur/inverse norms follow from the square identity-hole completion and polynomial principal-interior bounds in FORWARD-SMALL-A-AUDIT.md. To obtain uniform norms for a banded online factorization, eliminate **whole boundary groups** of W to O(W) vertices, rather than appealing without proof to scalar prefixes inside one group. + +After all interiors and a prefix of whole boundary groups are eliminated, the eliminated set is a direct sum of one physical contiguous prefix and disjoint future interiors: each remaining full group contains at least W uneliminated coordinates, blocking every width-W connection across it. The same holds after adding the next whole group. A physical prefix reduces, under selected/hole ordering, to the small-b normalized Gaussian block plus identity hole columns, so it has polynomial inverse norm. Each future interior also has polynomial inverse norm. Thus every required eliminated-set inverse is polynomial, uniformly in the number of pieces. + +At the final group on a full periodic line, use the already-established full periodic H inverse bound instead of a nonperiodic-prefix bound. For a clipped principal window the complement-gap condition excludes wrap edges, so the prefix statement applies directly. Each block pivot inverse is a principal block of the inverse after adding that group. Block Schur entries are bounded by `H+H H_EE^-1 H`, hence polynomial. There are only O(1) neighboring boundary groups in a band row. The resulting block-L and block-U norms are polynomial; their full inverses are polynomial as well, from `L^-1=U S^-1` and `U^-1=S^-1 L`. A scalar expansion inside a group is unnecessary: precompute its dense O(W)-square inverse and apply the block updates to batches by Strassen. + +This whole-group order prevents the subtle gap in which a partially consumed separator of fewer than W vertices permits a connection to the next interior. It preserves the claimed batched boundary exponent and is unaffected by capped subdivision. + +## Scope + +The capped local-gauge change is valid. The listed exact controls check carving, analytic slope identities and preservation of the already-rounded narrow matrix. The final recurrence arithmetic and tensor routing remain separate reviewed components. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CAPPED-GAUGE-CONTROLS.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CAPPED-GAUGE-CONTROLS.json new file mode 100644 index 0000000000..6ea5c59eab --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CAPPED-GAUGE-CONTROLS.json @@ -0,0 +1,11 @@ +{ + "status": "all exact assertions passed", + "arithmetic": "integers and fractions.Fraction", + "checks": { + "partitions": 27216, + "narrow_slope_pairs": 6132, + "rounded_ratio_and_exact_reanchoring_pairs": 6132, + "broad_slope_pairs": 14754 + }, + "scope": "Capped dyadic carving, narrow exact log-slope, positive perturbed global weights, exact local reanchoring, and broad gauge log-slope. Final tensor schedule/ledger excluded." +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CYCLIC-SCAN-CONTROLS.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CYCLIC-SCAN-CONTROLS.json new file mode 100644 index 0000000000..eddd860c96 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CYCLIC-SCAN-CONTROLS.json @@ -0,0 +1,5 @@ +{ + "status": "all exact assertions passed", + "cyclic_signed_scan_systems": 203, + "scope": "Two-pass cyclic affine recurrence against dense exact inversion; bilateral coefficient estimates are analytic." +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/DYADIC-INTERIOR-CONTROLS.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/DYADIC-INTERIOR-CONTROLS.json new file mode 100644 index 0000000000..e42eac6b93 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/DYADIC-INTERIOR-CONTROLS.json @@ -0,0 +1,6 @@ +{ + "status": "all exact assertions passed", + "cell_partitions": 80000, + "reachable_boundary_records": 6413386, + "scope": "Dyadic lengths, exact coverage, w-wide separation, logarithmic block count, and O(w) Schur boundary span." +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/FORWARD-CELL-CONTROLS.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/FORWARD-CELL-CONTROLS.json new file mode 100644 index 0000000000..c74f144886 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/FORWARD-CELL-CONTROLS.json @@ -0,0 +1,7 @@ +{ + "status": "all exact assertions passed", + "phase_cell_cases": 350, + "local_two_factorization_entries": 5184, + "selected_completion_entries": 16496, + "scope": "Exact target-grid coordinate conversion, local Toeplitz/Gaussian-normalized factorizations and selected block of square hole completion. Norm estimates are analytic." +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/FORWARD-SMALL-A-AUDIT.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/FORWARD-SMALL-A-AUDIT.md new file mode 100644 index 0000000000..0f7f80b3f7 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/FORWARD-SMALL-A-AUDIT.md @@ -0,0 +1,109 @@ +# Broad forward Gaussian: finite-block and completed-matrix conditioning + +This note supports the phase-assembly branch. It distinguishes the broad forward map S from the narrow T used in N=C T D. Its conclusions concern conditioning and local circuit guards; the final simultaneous tensor layout remains that branch's obligation. + +Let the narrow parameter be `a=pi alpha^2=Theta(log p)`, `rho=t/s=1+theta`, and `lambda=1/rho`. The forward map is + +`S_(k,j)=alpha^-1 exp[-b0(j-lambda*k)^2]`, `b0=pi/alpha^2`. + +Equivalently it uses the small resampling parameter + +`b=b0 lambda^2=pi/(alpha^2 rho^2)`. + +## 1. The bilateral bound works at every positive parameter + +The finite and bilateral LDU arguments in BILATERAL-LDU.md use a>=1 only for their final numerical simplification of the product c. For any b>0, define + +`c_b=prod_(m>=1)(1-exp(-2b rho m))`. + +The same proof gives, for the periodic normalized matrix and for every finite contiguous principal block with q-gaps at least 1 and |beta_i|<=1/2, + +`||N_b^-1|| <= c_b^-4 exp(b/2)/(1-exp(-b rho theta))^2`. + +There is an explicit useful product bound. Expand the logarithm and sum nonnegative terms: + +`log(c_b^-1)=sum_(k>=1) 1/[k(exp(2b rho k)-1)]` + +` <=(1/(2b rho)) sum_(k>=1)1/k^2=pi^2/(12b rho)`. + +At `b=pi/(alpha^2 rho^2)`, this implies + +`c_b^-4 <= exp(pi alpha^2 rho/3)=exp(a rho/3)`. + +Since b*rho*theta=pi*theta/(alpha^2 rho)<1 for alpha>=2 and theta<=1, its reciprocal gap is at most `2alpha^2 rho/(pi theta)`. Thus every such normalized block inverse has norm polynomial in p when alpha^2=O(log p) and theta^-1 is polynomial in p. + +## 2. Actual target-grid phase-cell block + +Embed source j at target coordinate i=q_j. On an original phase cell q_j=j+c, every selected target coordinate i in that cell corresponds to j=i-c. A square interior of the forward target-grid matrix is therefore + +`K_(k,i)=alpha^-1 exp[-b0(i-lambda*k-c)^2]`. + +Here both i and k run over one contiguous selected-target interval inside that cell. Put + +`q'_k=k+rho*c`, `beta'_k=rho*k-q'_k=theta*k-rho*c`. + +At a selected coordinate k=q_j, beta'_k is exactly the original beta_j, hence lies in [-1/2,1/2). Also q' has consecutive gap 1. Integrality of q' was never needed in the finite LDU proof; monotone separation and the beta bound suffice. Consequently + +`K=alpha^-1 N_b diag(exp(-b*(beta'_i)^2))`, + +and + +`||K^-1|| <= alpha exp(3b/4) c_b^-4/(1-exp(-b rho theta))^2` + +` =O(alpha^5 rho^2 theta^-2 exp(pi alpha^2 rho/3))=poly(p)`. + +This controls the **completed** interior inverse. It avoids multiplying the large individual diagonal-gauge norms to estimate K inverse. Target holes should be retained as boundary vertices, so every interior coordinate has the asserted original beta bound. + +## 3. Square completion of the global forward map + +Add one identity column e_h for every target hole h, and feed zero into these extra columns. This makes an invertible square t-by-t matrix H_aug without changing the desired forward result. Permute selected q_j rows/columns first and holes second. In that order, + +`H_aug = [ alpha^-1 N_b D_b^-1 0 ; R I ]`, + +where `D_b=diag(exp(b beta_j^2))` and R consists of broad Gaussian rows at holes. A Gaussian lattice-sum bound gives `||R||=O(1)` after the alpha^-1 factor. Thus + +`H_aug^-1=[ alpha D_b N_b^-1 0 ; -R alpha D_b N_b^-1 I ]` + +has polynomial row norm. The matrix itself also has O(1) row norm. Gaussian truncation and sufficiently accurate structure-preserving coefficient rounding perturb both it and all required interior blocks by exponentially small amounts, preserving these polynomial bounds. + +If A is the block-diagonal interior matrix and S is the completed boundary Schur complement, then S inverse is the boundary principal block of H_aug inverse; hence its norm is polynomial. Also + +`||S||<=||H_BB||+||H_BI|| ||A^-1|| ||H_IB||=poly(p)`. + +This is enough for the completed Schur map. To justify a particular sequential block-LU implementation, its prefix factor norms still need to be checked. The natural physical-prefix elimination sets consist of one contiguous selected-source prefix plus disjoint future interiors, with identity hole columns. That geometry offers the same uniform contiguous-block inverse bound; it should be made explicit in the assembly proof. + +## 4. Exact local Toeplitz split and guard range + +Choose an anchor m inside the target cell, and write x=i-m, y=k-m, + +`delta=(1-lambda)m-c`, with |delta|<=1/2. + +Then the exact factorization is + +`K_(k,i)=Drow(y) G(y,x) Dcol(x)`, + +`G(y,x)=exp[-b0 lambda(x-y)^2]`, + +`Dcol(x)=exp[-b0((1-lambda)x^2+2delta*x)]`, + +`Drow(y)=alpha^-1 exp[b0 lambda(1-lambda)y^2+2b0 delta lambda*y-b0 delta^2]`. + +Expansion gives exactly `-b0(delta+x-lambda*y)^2`; no approximate recentering is involved. On a phase cell of O(d) coordinates, the two diagonal logarithmic ranges are O(d/alpha^2). These are smaller than the O(alpha^2 d) narrow inverse gauges already paid by the proposed group size. + +## 5. SPD Toeplitz conditioning for the shallow circuit + +Let `gamma=b0 lambda=pi/(alpha^2 rho)`. The full Gaussian Toeplitz symbol has, by the Gaussian Poisson identity, + +`f(omega)=sqrt(pi/gamma) sum_(k in Z) exp[-(omega+2pi*k)^2/(4gamma)]`. + +For -pi<=omega<=pi, + +`sqrt(pi/gamma) exp[-pi^2/(4gamma)] <= f(omega) <= 1+sqrt(pi/gamma)`. + +Every finite principal Gaussian Toeplitz matrix has eigenvalues between these same bounds, by integrating the squared modulus of its coefficient polynomial against f. At alpha^2=O(log p), its condition number is polynomial in p. Truncation width O(sqrt(p/gamma)) and Cp-bit rounding perturb the matrix far less than its lower eigenvalue, so the actual symmetric rounded Toeplitz Ghat remains SPD with polynomial condition number. + +The low-displacement block-LU circuit of SHALLOW-TOEPLITZ.md extends from near identity to this SPD setting: every principal Schur complement has norm at most lambda_max and inverse norm at most lambda_min^-1, and ranks grow by the same additive displacement recurrence. Shear coefficients are polynomial in p; multiplying these bounds along O(log d) recursive levels gives exp(O(log^2 p)) partial-prefix growth. This calls for O(log^2 p) internal circuit guard bits per axis, rather than claiming the near-identity theorem's O(log p) unchanged. It is still below the group budget dominated by the local Gaussian diagonals. + +Dyadic interior subdivision from LOG-A-PHASE-SCHUR-AUDIT.md applies here too, using the broader width O(sqrt(p alpha^2)). It keeps target holes and separators as boundary, adds only polylogarithmic boundary volume, and lets every interior use a dyadic shallow circuit without 2^g padding. + +No numerical final exponent follows from these conditioning statements alone. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOG-A-PHASE-SCHUR-AUDIT.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOG-A-PHASE-SCHUR-AUDIT.md new file mode 100644 index 0000000000..3bcf490a8c --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOG-A-PHASE-SCHUR-AUDIT.md @@ -0,0 +1,140 @@ +# Audit: logarithmic Gaussian width retains the phase-cell Schur solver + +This audit checks the analytic hypotheses of the retained rad20 phase-cell solver at `a=pi alpha^2=Theta(log p)`, `theta=Theta(1/d)`, even though `a theta` tends to zero. It also audits the shallow Toeplitz circuit algebra and identifies the actual matrix that must be precomputed. It does not certify the final tensor layout or multiplication exponent. + +Read inputs: `references/semantic-bulk/rad20/reports/review-bulk-resampling.md`, `review-phase-cell-inverse.md`, `downstream-phase-cell-inverse.md`, and `work/inplace_algebra_ultra/SHALLOW-TOEPLITZ.md`. + +## 1. The sharp elementary diagonal-dominance estimate + +Let `rho=1+theta`, `beta_i=rho*i-q_i`, and let the Gaussian row coefficient at integer offset h be + +`n_i,h=exp(-a[(rho*h+beta_i)^2-beta_(i+h)^2])`. + +The h=0 coefficient is 1. Set `g_i=q_i-q_(i-1)` and `g_(i+1)=q_(i+1)-q_i`, each in {1,2}. For the nearest coefficients, + +`n_i,-1=exp(-a*g_i*(2rho-2beta_i-g_i))`, + +`n_i,+1=exp(-a*g_(i+1)*(2rho+2beta_i-g_(i+1)))`. + +If g_i=1, the first exponent is exactly `1+2theta-2beta_i`; if g_i=2, that gap forces `beta_i=1/2-theta`, so the upper exponent is at least `1+2theta+2beta_i`. Consequently + +`n_i,-1+n_i,+1` + +` <=exp(-a(1+2theta-2beta_i))+exp(-a(1+2theta+2beta_i))` + +` <=exp(-2a theta)+exp(-2a(1+theta))`. + +The last step is convexity in beta on [-1/2,1/2]. The two nearest directions cannot both be charged as exp(-2a theta). + +For |h|>=2, + +`(rho*h+beta_i)^2-beta_(i+h)^2 >= h^2-|h|`, + +so their entire two-sided tail is below `4 exp(-2a)` for a>=1. Therefore + +`||N-I||_infinity <= exp(-2a theta)+5 exp(-2a)`. + +This includes nonzero periodic diagonal aliases in the tail; no alias is silently omitted from this bound. + +For p>=101, theta>=1/(4p), and `a>=4 log(16p)`, + +`1-exp(-2a theta) >= 1-exp(-1/(2p)) >=1/(4p)`, + +`5exp(-2a)<=5/(16p)^8<1/(8p)`. + +Hence N has row diagonal-dominance margin at least `1/(8p)` in the following robust sense: after deleting its tiny nonzero diagonal aliases, its diagonal is 1 and its off-diagonal row sum is at most `1-1/(8p)`. In particular the fixed-width inverse theorem is not needed to supply the retained strict row dominance. + +Choose the legal integer alpha by + +`alpha=ceil(sqrt((4/pi)log(16p)))`. + +Then a has the required lower bound and is O(log p). The old sufficient condition `u>=ceil(log2(8p))` need not be reused: the direct estimate above replaces that prerequisite. + +## 2. Actual rounded H, interior matrices, and guard range + +Use exactly the retained structure: + +- `w=ceil(sqrt(16p/u))+2`, u=alpha^2=a/pi; +- cell weights `a_j=exp(-a(1/4-beta_j^2)/theta)`; +- one globally fixed downward dyadic Toeplitz kernel `Ghat_delta` for |delta|<=w, zero outside, with Ghat_0=1; +- positive downward dyadic weights ahat_j; +- within a physical cell, define H_jk **exactly** as `ahat_j Ghat_(j-k)/ahat_k`; +- across cells, use the retained downward Gaussian entries; set H_jj=1. + +Thus the actual interior block being inverted is + +`A_cell=diag(ahat) Ghat_cell diag(ahat)^-1`. + +It is not the unrounded Gaussian matrix, and its retained truncated Ghat is not silently replaced by the infinite Gaussian kernel. + +The weight range is + +`0<=-log a_j<=a/(4theta)=O(a d)` + +under theta between 1/(4d) and 1/(2d-1). The old eventual condition u*d<=p holds whenever d=p^epsilon, epsilon<1, and u=O(log p). It bounds the old rational perturbation calculation by the same `2^(O(p)) eta` allowance. The stronger range `O(a d)` should be used for grouped tensor precision, rather than charging O(p) independently for every axis. + +Choose the coefficient precision high enough that `||H-N||<1/(16p)`, including the Gaussian truncation, omitted diagonal aliases and weight-ratio rounding. The retained bound `p*2^(16p+7)*eta+2^(-46p)` at eta=2^(-32768p) is more than sufficient. Then H has diagonal 1, row gap at least `1/(16p)`, row norm below 2, and inverse norm at most 16p. All clipped principal windows inherit the same row gap. The physical period cut must remain a cell boundary, as in the retained bulk review. + +## 3. Schur complement bounds without an a*theta>1 assumption + +A scalar elimination step on a strictly row-diagonally-dominant matrix cannot decrease its minimum absolute row gap. For pivot k, + +`gap_i(new) >= gap_i(old)+(|a_ik|/|a_kk|) gap_k(old)`. + +The full absolute row sum also cannot increase, since the added update row has off-pivot sum less than |a_kk|. Induction applies regardless of the signs of filled entries. Since the diagonal begins real positive and the correction magnitude is below it, the surviving diagonal remains positive. + +Consequently the exact Schur complement + +`S=H_BB-H_BI H_II^-1 H_IB` + +has row gap at least `1/(16p)`, row norm below 2, positive diagonal, and + +`||S^-1||_infinity<=16p`. + +Principal interior inverses also have norm at most 16p. Rounding S by a row perturbation below 1/(32p) preserves gap at least 1/(32p) and inverse norm at most 32p. A row has O(w) nonzeros; the retained P-grid readily meets this target. These are polynomial bounds on arbitrary signed inputs, with no factor equal to the number of cells. + +The boundary geometry is unchanged: keep first/last w vertices of each physical cell, yielding O(s*w/d) boundary vertices and circular half-bandwidth at most 2w. Schur fill only joins the two end groups of one cell, while original cross-cell entries join neighboring end groups. Actual inverse and LU coefficient tables must be precomputed for this H/S, not imported from the old parameter values. + +Thus the retained banded/cyclic boundary solver's gap-dependent proof remains applicable with fixed constants enlarged. The proposed batched boundary arithmetic still needs its own data-layout and Strassen error audit, but there is no analytic conditioning obstruction at logarithmic a. + +## 4. Apply the shallow circuit directly to Ghat inverse + +Because a is eventually larger than 4pi, the symmetric Toeplitz matrix Ghat_cell satisfies + +`max(||Ghat_cell-I||_1,||Ghat_cell-I||_infinity)<1/8`. + +Downward rounding only decreases this off-diagonal sum. The shallow full-Toeplitz theorem therefore applies directly to Ghat_cell. Reverse the resulting invertible circuit and invert its gates to obtain Ghat_cell inverse. This avoids the two-branch Gohberg-Semencul difference entirely. The interior inverse is: + +1. multiply by diag(ahat)^-1; +2. apply the reversed shallow circuit for Ghat_cell; +3. multiply by diag(ahat). + +Its only superpolynomial individual scale comes from the **local** weight range O(a d). Completed A_cell inverse has polynomial norm by the strict row gap. Across g axes, the uncompleted local weight contribution is at most exp(O(g*a*d)); choosing `g<=p/(d polylog p)` with sufficient logarithmic slack keeps the total data precision O(p). The shallow circuit contributes polynomial-in-d amplification per axis, hence only O(g log d) additional logarithmic range. This is a guard calculation, not a complete simultaneous-layer routing proof. + +## 5. Independent shallow-Toeplitz algebra audit and a length caveat + +The parity-split triangular identity, block Schur displacement formulas, Stein-generator telescoping identity, and bounded-prefix induction in SHALLOW-TOEPLITZ.md check algebraically. In particular the parity children run in parallel, avoiding the earlier erroneous sequential-depth recurrence. The full block-LU recursion also runs its two children in parallel, with O(log N) displacement rank after O(log N) levels. + +That document currently states its circuit theorem for dyadic N. Actual cell interiors are not generally dyadic. Padding every tensor axis to its next power of two would be invalid. A plausible exact extension has been communicated to its author: split an arbitrary N into balanced sizes differing by at most one; a near-square rectangular Toeplitz dirty shear is a square Toeplitz shear plus one extra row/column rank-one shear. The latter can be implemented by a binary tree of unitary 2-coordinate reductions and its inverse, without clean ancilla. The rectangular Stein identity telescopes as before. This extension needs its own written proof/controls before it is used as an established interface. + +No new final kappa is asserted by this audit. + +## 6. Dyadic interior subdivision resolves the length caveat + +No arbitrary-length shallow FFT theorem is actually needed. Refine the interior/boundary partition inside each original physical phase cell of length L as follows. Keep its first and last w vertices as boundary. Starting with the remaining interval of length R=L-2w: + +- while R>4w, choose the largest power of two B<=R-w; +- mark the next B vertices as one interior, the following w vertices as boundary, and replace R by R-B-w; +- once R<=4w, mark all remaining vertices as boundary. + +Every interior now has exactly dyadic length. If R>4w, then `B>(R-w)/2`, so the next remainder is less than R/2. There are `O(1+log(L/w))` interiors and the total boundary count in the cell is `O(w(1+log(L/w)))`. The final boundary group, including the initially reserved last w vertices, has size at most 5w; all inserted separators have size w. + +The width-w matrix H cannot connect two different new interiors: their separating boundary gap has w vertices, so their nearest physical coordinates differ by w+1. Each new interior is still a principal block of the SAME globally fixed Toeplitz-similar cell matrix. Its weights retain the original cell gauge; there is no new rescaling or rerounding at a subdivision boundary. + +Eliminating one dyadic interior fills only between its immediately neighboring boundary groups. Each such group has O(w) vertices. Original H edges also connect only the same group or neighboring groups; an interior has length greater than w in the loop above. Thus, in inherited physical boundary order, the new Schur complement has half-bandwidth O(w), not O(w log d). Only its number of rows grows by O(log d): + +`n_boundary=O((s/d) w log d)`. + +Clipped endpoint cells of size O(w) may be declared wholly boundary, adding only O(w) rows; preserve the original physical period cut. This is the same endpoint convention as the retained bulk review. + +The boundary solve and coupling work therefore gain only polylogarithmic factors. All dyadic interior blocks use the established SHALLOW-TOEPLITZ theorem directly, without padding any tensor axis and without requiring a non-dyadic Fourier circuit. This resolves the length caveat in section 5 for the intended phase-cell application; it does not prove the separate simultaneous tensor-layer routing claim. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOG-A-SCHUR-CONTROLS.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOG-A-SCHUR-CONTROLS.json new file mode 100644 index 0000000000..301815a2c5 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOG-A-SCHUR-CONTROLS.json @@ -0,0 +1,11 @@ +{ + "status": "all exact assertions passed", + "arithmetic": "fractions.Fraction", + "checks": { + "nearest_exponent_checks": 147618, + "far_exponent_checks": 442854, + "schur_eliminations": 468, + "schur_entries": 19032 + }, + "scope": "Nearest/far Gaussian exponent inequalities and signed/asymmetric Schur row-gap preservation; the transcendental row-sum estimate and tensor transfer are analytic." +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOWER-CONTROLS.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOWER-CONTROLS.json new file mode 100644 index 0000000000..df9fc504c1 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOWER-CONTROLS.json @@ -0,0 +1,13 @@ +{ + "status": "all exact assertions passed", + "arithmetic": "fractions.Fraction", + "checks": { + "instances": 63, + "inverse_entries": 2424, + "tile_entries": 4110, + "suffix_outputs": 1377, + "exponent_bounds": 2424, + "upper_entries": 2424 + }, + "scope": "Nonperiodic Newton L inverse and U inverse algebra; exact signed cross-tile data application; no runtime or tensor-fusion certificate." +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOWER-FACTOR.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOWER-FACTOR.md new file mode 100644 index 0000000000..35af6c7b99 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOWER-FACTOR.md @@ -0,0 +1,180 @@ +# A fast, stable application of the general Newton lower factor + +Status: a proved one-dimensional **nonperiodic lower-factor** algorithm and exact controls. It does not by itself implement the entire periodic inverse. The upper factor has a polynomial norm bound but its fast normalization/fusion remains to be supplied. No final multiplication exponent is claimed. + +## 1. Exact Gaussian LDU + +Let `rho=1+theta`, `q_i=floor(rho*i+1/2)`, `beta_i=rho*i-q_i`, `x_i=r^q_i`, `r=exp(2a rho)>1`, and `d_i=exp(-a q_i^2)`, for `0<=i=j`, zero otherwise. + +The ordinary monic Newton expansion of `X^j` gives exactly + +`G=L diag(C_i) U`, + +where `L=diag(d_i) T diag(d_i)^-1`, `L_ii=U_ii=1`, and + +`(U^-1)_ij=(-1)^(j-i) (e_j/e_i) e_(j-i)(x_0,...,x_(j-1))`, + +`e_j=exp(-a rho^2 j^2+a beta_j^2)`. + +The pivot calculation is exact: + +`d_i P_i(x_i) e_i = C_i`. + +Define + +`A_i=d_i x_i^i C_i/prod_(k<=i)x_k` + +` =C_i exp(-a beta_i^2-a rho^2 i+2a rho sum_(k<=i) beta_k)`. + +Divided differences give the exact inverse lower entries + +`(L^-1)_ij=(-1)^(i-j) (A_i/A_j)/D_(i,j)`, + +`D_(i,j)=prod_(j=1)(1-r^-m)`. Because `q_(i+1)-q_i>=1`, + +`c<=C_i,D_(i,j)<=1`. + +For `i>=j`, direct summation gives + +`log |A_i/A_j| <= -log c+a/4-a rho theta(i-j)`. + +Consequently + +`||L^-1||_infinity <= c^-2 exp(a/4)/(1-exp(-a rho theta))`. + +For the upper factor, compare every elementary-symmetric term with the product of the largest `j-i` variables. The sorted deficits form a partition, hence + +`1<= e_(j-i)(x_0,...,x_(j-1))/prod_(i<=k=-1/2` gives + +`||U^-1||_infinity <= c^-1 exp(a/4)/(1-exp(-a rho theta))`. + +Also `||diag(C_i)^-1||<=c^-1`. For `a>=1`, `r>=e^2`, so `c` has an absolute positive lower bound. For `a=O(log(1/theta))`, both factor norms are polynomial in `theta^-1`. These bounds apply to **arbitrary signed/complex input vectors**, not only correlated outputs of another factor. + +## 3. One stable scan plus a local correction + +Let + +`D_j^+=prod_(j=0`, + +`0<=1-H_i(x_j)<=sum_(k>i)x_j/x_k <= r^(-h-1)/(1-r^-1)`. + +The sum of discarded correction entries for `h>=W` is therefore at most + +`c^-2 exp(a/4) r^(-W-1)/[(1-r^-1)(1-exp(-a rho theta)/r)]`. + +Thus `W=O((p+a+log(1/theta))/a+1)` makes the omitted correction less than `2^-p` in operator norm. At `a=O(log(1/theta))`, `theta>=p^-O(1)`, this is `O(p/a+1)`. + +Partition the line into pages of W indices. Compute the exact correction on each diagonal page and each immediately lower adjacent page, and omit it elsewhere. Every omitted entry has `h>=W`; every retained tile has O(W) rows/columns. A diagonal page is recursively split into ordered cross tiles plus its diagonal. Only O(log W) tree levels are required. The adjacent-page rectangle can use the tile algorithm below directly. Subtracting the scan's contribution on those same tiles gives exactly the desired retained correction. + +## 4. The bounded-polynomial cross-tile algorithm + +Let every column in J precede every row in `I=[l,b]`, and suppose both sets lie in an index interval of length O(W). Put + +`z_j=x_j/x_l` (j in J), `v_k=x_l/x_k` (l=0) M_m Z^m=sum_j w_j/(1-z_j Z)=Q(Z)/P(Z)`. + +Build a balanced tree with leaf pairs `(P,Q)=(1-z_j Z,w_j)` and merge by + +`P=P_left P_right`, + +`Q=Q_left P_right+Q_right P_left`. + +Truncate to the needed degree at each node. Since `sum z_j<=1/(r-1)`, all product coefficient l1 norms are at most `exp(1/(r-1))<2`; numerator norms are at most twice the absolute input weight sum. The power-series reciprocal of P has l1 norm at most `c^-1`. Standard fast power-series inversion, or doubling the geometric series of `1-P` (whose l1 norm is <1/2 for r>=e^2), is therefore stable with polynomially bounded intermediates. Product-tree complexity is soft-O(|J|+|I|) scalar operations. + +### Fast suffix-polynomial evaluation + +The second operation is the transpose of multiplication by the suffix products. Split `[l+1,b]` at m. Right-hand output rows use the moment vector restricted to their degree range. For left rows, replace the moment vector by + +`M'_h=sum_k [Z^k]prod_(m=1; at a=1 this is `<16 theta^-2`. The independent exact negative-origin controls are BILATERAL-CONTROLS.json. +2. **Complete one-dimensional data application:** LOWER-FACTOR.md supplies the lower factor with logarithmic guard overhead. UPPER-DATA-ALGORITHM.md supplies the upper factor and a direct periodic implementation with `O(s p polylog p)` data cost, shared per-axis coefficient preprocessing, and **Cp internal precision**. This is stated in the target `s>>poly(p)` regime. Exact controls are LOWER-CONTROLS.json, UPPER-DATA-CONTROLS.json, and CYCLIC-SCAN-CONTROLS.json. +3. **Length-preserving upper merge:** UPPER-LIFTING.md proves the Newton merge and bounded exact shear algebra. UPPER-MERGE-CONTROLS.json checks its degree indexing and factorization. +4. **Still open:** a realization of the normalized Hankel/Toeplitz steps with only logarithmic internal guard bits, and a bounded-depth width-preserving tensor circuit. Neither the analytic norm theorem nor the one-dimensional time bound establishes those, and no improved final multiplication exponent is claimed. + +Replay all finite controls with Python 3: + +``` +python3 work/gaussian_fast_ultra/check_lower.py +python3 work/gaussian_fast_ultra/check_upper_merge.py +python3 work/gaussian_fast_ultra/check_bilateral.py +python3 work/gaussian_fast_ultra/check_upper_data.py +python3 work/gaussian_fast_ultra/check_cyclic_scan.py +``` + +The package uses no third-party source result beyond the elementary Newton polynomial identities stated and proved by their constructions. It retains the parent Gaussian notation and does not modify the frozen upstream manuscript. + +Focused phase-fusion audit added later: + +- `LOG-A-PHASE-SCHUR-AUDIT.md`: verifies strict row dominance at a=Theta(log p), polynomial Schur bounds, actual rounded Toeplitz interiors, and dyadic interior subdivision with only a logarithmic increase in boundary count. `LOG-A-SCHUR-CONTROLS.json` and `DYADIC-INTERIOR-CONTROLS.json` contain independent exact checks. +- `FORWARD-SMALL-A-AUDIT.md`: handles the distinct broad forward Gaussian S via b=pi/(alpha^2 rho^2), gives polynomial finite-block/completed-matrix inverse bounds, the exact target-grid chirp factorization, and the SPD Toeplitz circuit guard estimate. `FORWARD-CELL-CONTROLS.json` checks the coordinate and matrix identities. + +These are interface components for the parent's focused partial-fusion proposal. They do not independently certify its full tensor schedule or final exponent. + +- `CAPPED-GAUGE-AUDIT.md` independently validates capped dyadic interiors and exact reanchoring of the already-rounded narrow matrix, with local log range O(aB) rather than O(ad). It also validates the broad O(B/alpha^2) gauge and whole-boundary-group solve order. `CAPPED-GAUGE-CONTROLS.json` contains 27,216 partition checks and exact narrow/broad gauge controls. The capped final exponent ledger remains a separate assembly artifact. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-DATA-ALGORITHM.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-DATA-ALGORITHM.md new file mode 100644 index 0000000000..f07f2c68c7 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-DATA-ALGORITHM.md @@ -0,0 +1,166 @@ +# A complete upper-inverse data algorithm with linear precision overhead + +Status: the construction below closes the one-dimensional **data application** of the nonperiodic upper inverse in `O(s p polylog p)` bit operations, after fixed per-axis coefficient preprocessing, using `C p` internal precision for an absolute constant C. It does not obtain logarithmic internal guard bits and does not prove tensor fusion. The lower-factor algorithm in LOWER-FACTOR.md does have logarithmic guard overhead. + +Let `p` be the required output precision, `a>=1`, `theta>=p^-O(1)`, and `a=O(p)`. In the target family a is fixed or logarithmic and every line length s grows faster than any fixed power of p. Preprocessing depending on the axis is shared by all its lines, as allowed by the parent reduction; it is not charged anew for every line. The coefficient words actually read by one data application have total `O(s p polylog p)` bits. + +## 1. Upper inverse is a stable suffix scan plus bandwidth O(p/a) + +Use the column diagonal `e_i=exp(-a rho^2 i^2+a beta_i^2)`. Define + +`B_j=e_j prod_(0<=k=i`, write + +`C_i,j=e_(j-i)(x_0,...,x_(j-1))/prod_(i<=k0. Put `d=m-i`, + +`gamma_i=(U^-1)_i,m`, + +`tau_j=(-1)^(j-m)(B_j/B_m)`. + +An exact Laurent-polynomial coefficient identity gives + +`(U^-1)_ij=gamma_i tau_j sum_(h>=0) (alpha_(d+h)/alpha_d) beta_j,h`. + +The signs are already in gamma and tau; the remaining coefficient sum is nonnegative. Both gamma and tau are polynomially bounded, with the same exponential-distance primary bounds as before. + +To verify the identity, write X=x_m Z and factor + +`P_j(X)=X^m prod_(k=1)(1+r^-k) <= 2/c`. + +A truncated product/sum tree computes M_0,...,M_R in `O((|J|+R) polylog p)` scalar operations. At a split, its exact rule is `S=S_left+P_left S_right`, with P a fixed product. Intermediate norms are bounded by a constant times the absolute weighted input sum, independently of tile length. No large Gaussian diagonal occurs in this step. + +## 3. Exponentially small high degrees + +The partition bound on alpha and beta gives + +`alpha_(d+h)/alpha_d <= c^-1 r^(-d*h-h(h+1)/2)`, + +`beta_j,h <= c^-1 r^(-h(h-1)/2)`. + +Thus the h-term, after summing input weights, is bounded by + +`c^-2 r^(-d*h-h^2) sum_j |tau_j u_j|`. + +Group row distances dyadically: D<=d<2D. For that group retain only + +`R=min(|J|, O(sqrt(P)), O(P/D))`, `P=(p+a+log(1/theta))/a`, + +with sufficiently large absolute constants. If |J| is smaller, the polynomial is already exact. Otherwise all omitted terms sum to less than `2^-p` after allowing the polynomial gamma/tau factors. There are O(log p) row groups. + +## 4. Fast normalized Hankel application, with Cp internal bits + +The remaining map for a row group is + +`y_d=sum_(0<=h<=R) (alpha_(d+h)/alpha_d) M_h`. + +Split the d-range into consecutive blocks of length at most R (or the whole group if shorter). For a block beginning at d0, divide all alpha coefficients used by alpha_d0. Then the numerator is one reversed ordinary convolution of that coefficient segment with M. Divide output d by alpha_d/alpha_d0. + +The decisive height bound is local, not global. If k>=0, comparing dominant products and using q-gaps in {1,2} gives + +`c r^(-2*d0*k-k(k+1)) <= alpha_(d0+k)/alpha_d0 <= c^-1`. + +Here the lower bound is needed only when the coefficient exists; every queried alpha index is <=m. If alpha vanishes because its degree exceeds m, store exact zero and never divide by it. Since d0=O(D), k=O(R), and `D R+R^2=O(P)`, every nonzero coefficient ratio and every divisor in this block lies between `exp(-O(aP))` and an absolute constant. Thus **Cp internal precision** suffices for these convolutions and the final divisions. + +The number of scalar operations for one row group is `O(D polylog p)`; its separate bounded-prefix computation costs `O((|J|+R) polylog p)`. Summing the O(log p) row groups gives `O((|I|+|J|) polylog p)` scalar operations per ordered tile. Recursing through one W-page or processing adjacent pages therefore costs `O(W p polylog p)` bits. Over all pages the data cost is + +`O(s p polylog p)`. + +The Gaussian factors gamma and tau can be evaluated from bounded dominant-product ratios rather than raw e_i or B_i. Precomputed alpha tables can similarly be stored with dominant-product gauges. Every alpha segment actually read by the data algorithm has length O(|I|+|J|) per row-group and tile level; this accounts for the coefficient tape scans in the same bound. + +A conservative preprocessing implementation may compute every required alpha table from O(poly(p)) nearby nodes separately, and can therefore cost `s poly(p)` per axis. This is a one-time axis cost, not an unpriced per-line cost. In the parent regime it is negligible compared with the full tensor data volume. A uniformly quasi-linear preprocessing theorem is not asserted here. + +## 5. Complete nonperiodic and periodic application + +Combining this upper map with the lower map and the bounded diagonal gives the complete nonperiodic inverse `G^-1=U^-1 C^-1 L^-1` in `O(s p polylog p)` data time, at Cp internal precision, with polynomial operator norms. Requested final error is achieved by a fixed additional factor in precision plus O(log p+log(1/theta)) endpoint guard bits. + +For the periodic matrix one may either implement the bilateral factors in BILATERAL-LDU.md or use a finite boundary correction. The latter needs only two nonperiodic inverse data applications: + +- Truncate nonzero Gaussian aliases to the two corner blocks of width `b=O(sqrt((p+log(1/theta))/a)+1)`, obtaining `K=G+UV` and a row-norm tail smaller than `2^-Cp`. +- U inserts O(b) boundary coordinates and V reads a bounded O(b)-by-O(b) corner matrix. +- Precompute `S^-1`, `S=I+V G^-1 U`. Its norm is polynomial because `S^-1=I-V K^-1 U` and the periodic inverse norm plus the tiny discarded tail bounds K inverse. +- Apply `x=G^-1 z`, `w=S^-1 Vx`, and return `x-G^-1 Uw`. + +The boundary data work is polynomial in p. For the target line lengths s growing faster than every fixed polynomial in p, it is negligible relative to sp. The updated matrix in the Woodbury inverse identity is K, not the base G. The periodic Gaussian tail and final correction error are bounded using the fixed-a theorem in BILATERAL-LDU.md. + +## What is still not established + +The normalized Hankel step uses Cp working precision because its local alpha divisors may be exp(-Cp). It has not been converted to a circuit whose every intermediate operator has polynomial norm. Therefore this result does not meet the stronger **logarithmic guard at every internal stage** requirement needed by the proposed full-dimensional fusion. It supplies a complete one-dimensional data algorithm and a precise remaining normalization target; it supplies no improved final kappa. + +## 6. Direct periodic implementation from the bilateral factors + +The bilateral theorem also permits the Woodbury step above to be omitted. This is cleaner in the target regime `s>>W`. + +For the bilateral lower inverse, use + +`C_i=prod_(ki)(1-x_i/x_k)`. + +The same lower formula and scan/correction split hold, with the defining products now bilateral. The adjacent A ratio is still given by the beta formula in LOWER-FACTOR.md. For the upper inverse, use elementary polynomials in the infinite prefix `x_k, k=1-exp(-a)`. Intermediate partial products and scan norms have the polynomial bounds already proved. This supplies a stable two-pass scan on the original s records. + +Retain the correction only for one-sided distances below W on the integer cover of the circle. With `s>>W`, each retained coefficient belongs to its diagonal page or the single adjacent cyclic page; virtual negative or beyond-s indices are generated by periodic q/beta formulas. The same local tile algorithms apply. Periodization cannot increase the row norm of any discarded tail, so all the previous error estimates remain valid. + +In the upper tile algorithm, alpha_d is now the coefficient of the infinite small-root prefix + +`prod_(k=d+O(q/a+1)`: a contribution involving an omitted node has partition deficit at least K-d, and summing the corresponding partition tail gives `O(r^(-(K-d)/2))` relative error (bound the tail by r to half the negative deficit times the convergent partition generating product). For the O(W)-degree tables at q=Cp, this is O(W+p/a) nodes, independent of s. Normalized table storage and data access are unchanged. + +Thus, after fixed per-axis coefficient preprocessing, the bilateral factorization itself gives the **periodic** inverse data application in `O(s p polylog p)` time with Cp working precision, in the target regime `s>>poly(p)`. It needs neither a large raw Vandermonde nor a boundary Schur system. The unresolved logarithmic-internal-guard and tensor-fusion qualifications remain exactly as stated above. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-DATA-CONTROLS.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-DATA-CONTROLS.json new file mode 100644 index 0000000000..0d9410b6a8 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-DATA-CONTROLS.json @@ -0,0 +1,12 @@ +{ + "status": "all exact assertions passed", + "arithmetic": "fractions.Fraction", + "checks": { + "instances": 75, + "suffix_recurrences": 2715, + "tile_entries": 6413, + "signed_prefix_tree_and_hankel_outputs": 1833, + "alpha_ratio_bounds": 10008 + }, + "scope": "Algebra, signs, degree indexing, suffix-tail recurrence, and signed blocked upper data application. Cp-bit stability and asymptotic data cost are analytic, not certified by finite tests." +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-LIFTING.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-LIFTING.md new file mode 100644 index 0000000000..0985ad16cd --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-LIFTING.md @@ -0,0 +1,57 @@ +# The upper factor has a length-preserving Newton merge + +This is a structural advance, not yet the missing fast normalized FFT implementation. It concerns the nonperiodic factor from LOWER-FACTOR.md. + +Write `d_i=exp(-a rho^2 i^2+a beta_i^2)` in this note (this is the column diagonal called `e_i` in LOWER-FACTOR.md). The upper inverse is + +`(U^-1)_ij=(d_j/d_i) [X^i] prod_(k=m and h=j-i, the logarithm of the last Gaussian factor is at most + +`a/4-a rho^2 h^2-a rho(2rho-1)h-2a rho^2(i-m)h`. + +Thus D inverse also has row norm `O(exp(a/4))`, and the shear B D inverse has polynomial norm. These statements hold on arbitrary signed/complex records. + +## Remaining realization problem + +The algebra is length preserving and the exact blocks have bounded norm. Directly executing their diagonal-Toeplitz-diagonal presentation is not yet safe for full-dimensional tensor fusion: the raw d_i ratio can have logarithmic range `Theta(a(r-l)^2)`. A local FFT using that presentation therefore reintroduces an O(p) guard for blocks of length sqrt(p/a). + +A plain unit triangular Toeplitz map can be implemented by recursive Toeplitz shears and in-place cyclic/negacyclic Fourier transforms, as suggested by the parent investigation. To close this upper-factor route, that primitive needs a version for the **Gaussian-conjugated** Toeplitz blocks above whose intermediate norms stay polynomial, or a different bounded lifting factorization of them. The final exact block norms alone do not prove the intermediate FFT normalization claim. + +The numerator Sylvester merge in the lower-factor moment tree remains a separate lifting problem; the one-product Newton merge here avoids that two-product merge for the upper factor only. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-MERGE-CONTROLS.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-MERGE-CONTROLS.json new file mode 100644 index 0000000000..7e851839f8 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-MERGE-CONTROLS.json @@ -0,0 +1,6 @@ +{ + "status": "all exact assertions passed", + "arithmetic": "fractions.Fraction", + "normalized_node_merges_and_shear_factorizations": 286, + "scope": "Algebra and degree indexing, not bounded FFT realization or tensor fusion." +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_bilateral.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_bilateral.py new file mode 100644 index 0000000000..b2f527e951 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_bilateral.py @@ -0,0 +1,45 @@ +#!/usr/bin/env python3 +from fractions import Fraction as F +from pathlib import Path +import json +from check_lower import matmul, inv, elem + +def pp2(n):return F(2)**n +def prod(v): + z=F(1) + for x in v:z*=x + return z +def complete(xs,n): + c=[F(1)]+[F(0)]*n + for x in xs: + for k in range(1,n+1):c[k]+=x*c[k-1] + return c[n] +def case(s,t,l,n): + q=lambda i:(2*t*i+s)//(2*s) + x=lambda i:pp2(2*s*t*q(i)) + e=lambda i:pp2(-t*t*i*i+(t*i-s*q(i))**2) + G=lambda i,j:pp2(-(t*j-s*q(i))**2+(t*j-s*q(j))**2) + C=lambda i,o:prod(1-x(k)/x(i) for k in range(o,i)) + L=lambda i,j,o:G(i,j)*prod(1-x(k)/x(i) for k in range(o,j))/C(j,o) if i>=j else F(0) + U=lambda i,j,o:e(j)/e(i)*complete([x(k) for k in range(o,i+1)],j-i) if j>=i else F(0) + ids=list(range(l,l+n)); LL=[[L(i,j,l) for j in ids] for i in ids];UU=[[U(i,j,l) for j in ids] for i in ids] + CC=[[C(i,l) if i==j else F(0) for j in ids] for i in ids] + assert matmul(matmul(LL,CC),UU)==[[G(i,j) for j in ids] for i in ids] + UI=inv(UU) + for ii,i in enumerate(ids): + for jj,j in enumerate(ids): + assert L(i+s,j+s,l+s)==L(i,j,l) + assert U(i+s,j+s,l+s)==U(i,j,l) + assert G(i+s,j+s)==G(i,j) + if j>=i: + assert UI[ii][jj]==(-1)**(j-i)*e(j)/e(i)*elem([x(k) for k in range(l,j)],j-i) + return n*n + +def main(): + instances=entries=0 + for s,t in [(2,3),(3,4),(3,5),(4,5),(4,7)]: + for l in [-5,-2,0]: + for n in [3,4,5]:entries+=case(s,t,l,n);instances+=1 + out={'status':'all exact assertions passed','arithmetic':'fractions.Fraction','negative_and_zero_origin_instances':instances,'finite_LDU_and_shift_entries':entries,'scope':'Finite-origin algebra, exact origin-shift correction, upper inverse formula and simultaneous periodic shifts; bilateral limiting argument is analytic.'} + Path(__file__).with_name('BILATERAL-CONTROLS.json').write_text(json.dumps(out,indent=2)+'\n');print(json.dumps(out,indent=2)) +if __name__=='__main__':main() diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_capped_gauges.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_capped_gauges.py new file mode 100644 index 0000000000..d6f5a14cb2 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_capped_gauges.py @@ -0,0 +1,73 @@ +#!/usr/bin/env python3 +from fractions import Fraction as F +from pathlib import Path +import json + +def p2(n):return F(2)**n + +def carve(L,W,cap): + if L<=6*W:return [('B',0,L)] + ps=[('B',0,W)];pos=W;R=L-2*W + while R>4*W: + B=min(cap,1<<((R-W).bit_length()-1)) + ps.append(('I',pos,pos+B));pos+=B + ps.append(('B',pos,pos+W));pos+=W;R-=B+W + if R:ps.append(('B',pos,pos+R));pos+=R + ps.append(('B',pos,L)) + return ps + +def main(): + c={'partitions':0,'narrow_slope_pairs':0,'rounded_ratio_and_exact_reanchoring_pairs':0,'broad_slope_pairs':0} + for W in [1,2,3,5,9,17]: + for power in range(2,11): + cap=1<=W for x,y in zip(ins,ins[1:])) + budget=(L+cap-1)//cap+cap.bit_length()+10 + assert len(ins)<=budget + assert sum(b-a for typ,a,b in ps if typ=='B')<=W*budget + c['partitions']+=1 + for s in range(3,31): + for K in range(1,min(s,6)): + rho=F(s+K,s);theta=rho-1;lam=1/rho + q=[(2*(s+K)*i+s)//(2*s) for i in range(s)] + cells={} + for i in range(s):cells.setdefault(q[i]-i,[]).append(i) + # a/log(2)=4*s*K makes every original narrow weight dyadic. + exps=[4*(K*i-s*(q[i]-i))**2-s*s for i in range(s)] + aa=[p2(e) for e in exps];eta=p2(-2*s*s-100) + ah=[x-(1+i%4)*eta for i,x in enumerate(aa)] + for phase,inds in cells.items(): + for start in range(0,len(inds),3): + block=inds[start:start+3];m=block[0] + for i in block: + for j in block: + assert abs(exps[i]-exps[j])<=4*s*K*abs(i-j) + c['narrow_slope_pairs']+=1 + assert F(1,2)*p2(-4*s*K*abs(i-j))<=ah[i]/ah[j]<=2*p2(4*s*K*abs(i-j)) + kernel=F(2,3) if i!=j else F(1) + before=ah[i]*kernel/ah[j] + after=(ah[i]/ah[m])*kernel/(ah[j]/ah[m]) + assert before==after + c['rounded_ratio_and_exact_reanchoring_pairs']+=1 + # Broad gauges on target coordinates in the original physical phase cell. + target=[q[i] for i in inds];anchor=target[len(target)//2] + delta=(1-lam)*anchor-phase + def col(k): + x=k-anchor + return -((1-lam)*x*x+2*delta*x) + def row(k): + y=k-anchor + return lam*(1-lam)*y*y+2*delta*lam*y-delta*delta + for i in target: + for j in target: + assert abs(col(i)-col(j))<=abs(i-j) + assert abs(row(i)-row(j))<=abs(i-j) + c['broad_slope_pairs']+=1 + out={'status':'all exact assertions passed','arithmetic':'integers and fractions.Fraction','checks':c,'scope':'Capped dyadic carving, narrow exact log-slope, positive perturbed global weights, exact local reanchoring, and broad gauge log-slope. Final tensor schedule/ledger excluded.'} + Path(__file__).with_name('CAPPED-GAUGE-CONTROLS.json').write_text(json.dumps(out,indent=2)+'\n');print(json.dumps(out,indent=2)) +if __name__=='__main__':main() diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_cyclic_scan.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_cyclic_scan.py new file mode 100644 index 0000000000..7f8ebba6af --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_cyclic_scan.py @@ -0,0 +1,25 @@ +#!/usr/bin/env python3 +from fractions import Fraction as F +from pathlib import Path +import json +from check_lower import matmul,inv,eye + +def scan(lam,u): + P=F(1);Q=F(0) + for a,b in zip(lam,u):P=a*P;Q=a*Q+b + prev=Q/(1-P);out=[] + for a,b in zip(lam,u):prev=a*prev+b;out.append(prev) + return out + +count=0 +for n in range(2,31): + for offset in range(7): + lam=[F((-1)**(i+offset)*(i%3+1),5+i%4) for i in range(n)] + u=[F((-1)**i*(2*i+offset+1),i+1) for i in range(n)] + A=eye(n) + for i,a in enumerate(lam):A[i][(i-1)%n]-=a + expected=[r[0] for r in matmul(inv(A),[[x] for x in u])] + assert scan(lam,u)==expected + count+=1 +out={'status':'all exact assertions passed','cyclic_signed_scan_systems':count,'scope':'Two-pass cyclic affine recurrence against dense exact inversion; bilateral coefficient estimates are analytic.'} +Path(__file__).with_name('CYCLIC-SCAN-CONTROLS.json').write_text(json.dumps(out,indent=2)+'\n');print(json.dumps(out,indent=2)) diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_dyadic_interiors.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_dyadic_interiors.py new file mode 100644 index 0000000000..9a970cb94e --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_dyadic_interiors.py @@ -0,0 +1,38 @@ +#!/usr/bin/env python3 +from pathlib import Path +import json + +def parts(L,w): + if L<=2*w:return [('B',0,L)] + out=[('B',0,w)];pos=w;R=L-2*w + while R>4*w: + B=1<<((R-w).bit_length()-1) + out.append(('I',pos,pos+B));pos+=B + out.append(('B',pos,pos+w));pos+=w;R-=B+w + if R:out.append(('B',pos,pos+R));pos+=R + out.append(('B',pos,L)) + return out +cases=edges=0 +for w in range(1,41): + for L in range(1,2001): + ps=parts(L,w) + assert ps[0][1]==0 and ps[-1][2]==L + assert all(a[2]==b[1] for a,b in zip(ps,ps[1:])) + ins=[x for x in ps if x[0]=='I'] + assert all((b-a)&(b-a-1)==0 for _,a,b in ins) + assert all(y[1]-x[2]>=w for x,y in zip(ins,ins[1:])) + assert len(ins)<=2+max(0,(max(1,L//w)).bit_length()) + assert sum(b-a for t,a,b in ps if t=='B')<=w*(8+max(1,L//w).bit_length()) + # For each new interior, all boundary neighbors reachable by an original band edge + # lie in its two adjacent retained blocks. Eliminating it can fill only their union. + labels=[-1]*L;bid=0 + for typ,a,b in ps: + if typ=='B': + for i in range(a,b):labels[i]=bid;bid+=1 + for _,a,b in ins: + ns=[labels[i] for i in list(range(max(0,a-w),a))+list(range(b,min(L,b+w))) if labels[i]>=0] + if ns:assert max(ns)-min(ns)<=10*w + edges+=len(ns) + cases+=1 +out={'status':'all exact assertions passed','cell_partitions':cases,'reachable_boundary_records':edges,'scope':'Dyadic lengths, exact coverage, w-wide separation, logarithmic block count, and O(w) Schur boundary span.'} +Path(__file__).with_name('DYADIC-INTERIOR-CONTROLS.json').write_text(json.dumps(out,indent=2)+'\n');print(json.dumps(out,indent=2)) diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_forward_cell.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_forward_cell.py new file mode 100644 index 0000000000..b91b7a6bad --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_forward_cell.py @@ -0,0 +1,40 @@ +#!/usr/bin/env python3 +from fractions import Fraction as F +from pathlib import Path +import json + +def p2(k):return F(2)**k +cases=entries=completion=0 +for s in range(3,22): + for t in range(s+1,min(2*s,s+5)+1): + rho=F(t,s);lam=1/rho;q=[(2*t*j+s)//(2*s) for j in range(s)] + cells={} + for j,i in enumerate(q):cells.setdefault(i-j,[]).append(i) + for c,inds in cells.items(): + m=inds[len(inds)//2];delta=F((t-s)*m-t*c,t) + assert abs(delta)<=F(1,2) + for k in inds: + betak=(rho-1)*k-rho*c + assert -F(1,2)<=betak=1+2*th-2*b + assert upper>=1+2*th+2*b + counts['nearest_exponent_checks']+=2 + for h in [-4,-3,-2,2,3,4]: + assert (rho*h+b)**2-beta(i+h)**2>=h*h-abs(h) + counts['far_exponent_checks']+=1 + # Both signs and asymmetric rows: no positivity hypothesis on filled off-diagonals. + for n in range(3,15): + for seed in range(6): + A=[[F(1) if i==j else F(((-1)**(i+j+seed))*((7*i+3*j+seed)%11+1),40*n) for j in range(n)] for i in range(n)] + original_gap=min(gap(A,i) for i in range(n)); original_norm=norm(A) + while len(A)>2: + k=(seed+len(A))%len(A);idx=[i for i in range(len(A)) if i!=k] + B=[[A[i][j]-A[i][k]*A[k][j]/A[k][k] for j in idx] for i in idx] + assert min(gap(B,i) for i in range(len(B)))>=original_gap + assert norm(B)<=original_norm + assert all(B[i][i]>0 for i in range(len(B))) + counts['schur_eliminations']+=1;counts['schur_entries']+=len(B)**2 + A=B + return counts +if __name__=='__main__': + out={'status':'all exact assertions passed','arithmetic':'fractions.Fraction','checks':run(),'scope':'Nearest/far Gaussian exponent inequalities and signed/asymmetric Schur row-gap preservation; the transcendental row-sum estimate and tensor transfer are analytic.'} + Path(__file__).with_name('LOG-A-SCHUR-CONTROLS.json').write_text(json.dumps(out,indent=2)+'\n');print(json.dumps(out,indent=2)) diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_lower.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_lower.py new file mode 100644 index 0000000000..1260c26dd1 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_lower.py @@ -0,0 +1,92 @@ +#!/usr/bin/env python3 +"""Exact finite controls for LOWER-FACTOR.md; no floating point.""" +from fractions import Fraction as F +from math import prod +import json +from pathlib import Path + +def matmul(A,B): + return [[sum((a*b for a,b in zip(row,col)),F(0)) for col in zip(*B)] for row in A] +def eye(n): return [[F(i==j) for j in range(n)] for i in range(n)] +def inv(A): + n=len(A); B=[list(r)+list(e) for r,e in zip(A,eye(n))] + for k in range(n): + v=B[k][k]; assert v; B[k]=[x/v for x in B[k]] + for i in range(n): + if i!=k: + v=B[i][k]; B[i]=[x-v*y for x,y in zip(B[i],B[k])] + return [r[n:] for r in B] +def poly_mul(a,b): + out=[F(0)]*(len(a)+len(b)-1) + for i,x in enumerate(a): + for j,y in enumerate(b): out[i+j]+=x*y + return out +def newton_poly(xs): + out=[F(1)] + for x in xs: out=poly_mul(out,[-x,F(1)]) + return out +def elem(xs,k): return (-1)**k*newton_poly(xs)[len(xs)-k] +def suffix_pull(vs,M): + """All =i)(1-v_k Z),M>, exact D&C transpose tree.""" + if not vs: return [M[0]] + if len(vs)==1: return [M[0]-vs[0]*M[1],M[0]] + mid=len(vs)//2; left,right=vs[:mid],vs[mid:] + P=[F(1)] + for v in right: P=poly_mul(P,[F(1),-v]) + LM=[sum((P[k]*M[h+k] for k in range(len(P))),F(0)) for h in range(len(left)+1)] + return suffix_pull(left,LM)[:-1]+suffix_pull(right,M[:len(right)+1]) + +def run(): + count={'instances':0,'inverse_entries':0,'tile_entries':0,'suffix_outputs':0,'exponent_bounds':0,'upper_entries':0} + for s in range(3,12): + for t in range(s+1,2*s+1): + rho=F(t,s); q=[(2*t*i+s)//(2*s) for i in range(s)] + beta=[rho*i-q[i] for i in range(s)]; x=[F(2)**k for k in q] + # Arbitrary exact rational diagonal tests all identities independent of Gaussian values. + d=[F(3)**(-q[i]*q[i]) for i in range(s)] + C=[prod((1-x[k]/x[i] for k in range(i)),start=F(1)) for i in range(s)] + D=lambda i,j:prod((1-x[j]/x[k] for k in range(j+1,i+1)),start=F(1)) + A=[d[i]*x[i]**i*C[i]/prod(x[:i+1],start=F(1)) for i in range(s)] + L=[[F(0)]*s for _ in range(s)] + for i in range(s): + for j in range(i+1): + L[i][j]=d[i]/d[j]*prod((x[i]-x[k] for k in range(j)),start=F(1))/prod((x[j]-x[k] for k in range(j)),start=F(1)) + LI=inv(L) + for i in range(s): + for j in range(i+1): + assert LI[i][j]==(-1)**(i-j)*A[i]/A[j]/D(i,j) + count['inverse_entries']+=1 + h=i-j + exponent=-beta[i]**2+beta[j]**2-rho**2*h+2*rho*sum(beta[j+1:i+1],F(0)) + assert exponent<=F(1,4)-rho*(rho-1)*h + count['exponent_bounds']+=1 + # Newton U inverse coefficients and V=L D U, with row diagonal removed. + V=[[x[i]**j for j in range(s)] for i in range(s)] + T=[[L[i][j]*d[j]/d[i] for j in range(s)] for i in range(s)] + U=matmul(inv(T),V) + for i in range(s): + pivot=prod((x[i]-x[k] for k in range(i)),start=F(1)) + U[i]=[v/pivot for v in U[i]] + UI=inv(U) + for i in range(s): + for j in range(i,s): + assert UI[i][j]==(-1)**(j-i)*elem(x[:j],j-i) + count['upper_entries']+=1 + # Every adjacent-cut tile, arbitrary signed inputs, exact moment/suffix algorithm. + u=[F((-1)**j*(2*j+1),j+1) for j in range(s)] + for l in range(1,s): + b=min(s-1,l+3); J=list(range(max(0,l-4),l)); I=list(range(l,b+1)) + z=[x[j]/x[l] for j in J]; v=[x[l]/x[k] for k in range(l+1,b+1)] + w=[(-1)**j*A[l]/A[j]/D(b,j)*u[j] for j in J] + M=[sum((wj*zj**m for wj,zj in zip(w,z)),F(0)) for m in range(len(I))] + pulled=suffix_pull(v,M) + for i,got in zip(I,pulled): + got*=(-1)**i*A[i]/A[l] + expect=sum((LI[i][j]*u[j] for j in J),F(0)) + assert got==expect + count['suffix_outputs']+=1; count['tile_entries']+=len(J) + count['instances']+=1 + return count +if __name__=='__main__': + out={'status':'all exact assertions passed','arithmetic':'fractions.Fraction','checks':run(),'scope':'Nonperiodic Newton L inverse and U inverse algebra; exact signed cross-tile data application; no runtime or tensor-fusion certificate.'} + p=Path(__file__).with_name('LOWER-CONTROLS.json');p.write_text(json.dumps(out,indent=2)+'\n'); print(json.dumps(out,indent=2)) diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_upper_data.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_upper_data.py new file mode 100644 index 0000000000..ad06229d84 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_upper_data.py @@ -0,0 +1,79 @@ +#!/usr/bin/env python3 +"""Exact checks of the upper suffix recurrence, tile identity, and blocked data algorithm.""" +from fractions import Fraction as F +from pathlib import Path +import json +from check_lower import poly_mul, elem + +def prod(xs): + z=F(1) + for x in xs:z*=x + return z + +def add(a,b): + out=[F(0)]*max(len(a),len(b)) + for i,x in enumerate(a):out[i]+=x + for i,x in enumerate(b):out[i]+=x + return out + +def prefix_sum(roots,weights): + """sum weights[j] product_{k=0 + assert delta<=2*F(4)**(-(j-i+1)) + out['suffix_recurrences']+=1 + u=[F((-1)**j*(j+2),j+1) for j in range(s)] + for m in range(1,s): + l=max(0,m-4);r=min(s,m+5);I=list(range(l,m));J=list(range(m,r)) + aa=[elem([x/xs[m] for x in xs[:m]],h) for h in range(m+1)] + tau=[(-1)**(j-m)*BB[j]/BB[m] for j in J] + gamma={i:U(i,m) for i in I} + roots=[xs[m]/xs[k] for k in range(m,r-1)] + moments=prefix_sum(roots,[tau[k]*u[j] for k,j in enumerate(J)]) + R=len(moments)-1 + for i in I: + d=m-i + for j in J: + b=[elem([xs[m]/xs[k] for k in range(m,j)],h) if h<=j-m else F(0) for h in range(R+1)] + v=sum((aa[d+h]/aa[d]*b[h] for h in range(R+1) if d+h<=m),F(0)) + assert gamma[i]*tau[j-m]*v==U(i,j) + out['tile_entries']+=1 + # Blocks of length two for normalized Hankel convolution. + for d0 in range(1,m-l+1,2): + B=min(2,m-l-d0+1) + a=[aa[d0+k]/aa[d0] if d0+k<=m else F(0) for k in range(B+R)] + cv=poly_mul(a,list(reversed(moments))) + for off in range(B): + d=d0+off;i=m-d + got=gamma[i]*cv[off+R]/(aa[d]/aa[d0]) + expected=sum((U(i,j)*u[j] for j in J),F(0)) + assert got==expected + out['signed_prefix_tree_and_hankel_outputs']+=1 + for d in range(1,m+1): + for k in range(m-d+1): + rat=aa[d+k]/aa[d] + assert F(1,2)*F(4)**(-2*d*k-k*(k+1))<=rat<=2 + out['alpha_ratio_bounds']+=1 + out['instances']+=1 + return out +if __name__=='__main__': + out={'status':'all exact assertions passed','arithmetic':'fractions.Fraction','checks':run(),'scope':'Algebra, signs, degree indexing, suffix-tail recurrence, and signed blocked upper data application. Cp-bit stability and asymptotic data cost are analytic, not certified by finite tests.'} + Path(__file__).with_name('UPPER-DATA-CONTROLS.json').write_text(json.dumps(out,indent=2)+'\n');print(json.dumps(out,indent=2)) diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_upper_merge.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_upper_merge.py new file mode 100644 index 0000000000..3dda87e144 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_upper_merge.py @@ -0,0 +1,43 @@ +#!/usr/bin/env python3 +from check_lower import F, poly_mul, newton_poly, matmul, eye, inv +from pathlib import Path +import json + +def local(xs,ds,l,r): + n=r-l;A=[[F(0)]*n for _ in range(n)] + for j in range(l,r): + P=newton_poly(xs[l:j]) + for k,p in enumerate(P):A[k][j-l]=ds[j]*p/ds[l+k] + return A + +def main(): + count=0 + for n in range(2,13): + xs=[F(2)**(i+i//3) for i in range(n)] + ds=[F(3)**(-i*i) for i in range(n)] + for l in range(n-1): + for r in range(l+2,n+1): + m=(l+r)//2;n1=m-l;n2=r-m + P=newton_poly(xs[l:m]);M=eye(r-l) + for i in range(l,r): + for j in range(m,r): + k=i-l-(j-m) + M[i-l][j-l]=ds[j]/ds[i]*P[k] if 0<=k4L` and `gL/N=o(1)`. +Write `b=log2 N`, `k=gb`, and `K0=O(g(h+b)+log g)=O(gh)` for a correction key. +Require `K0^2=O(B)` or retain the explicit extra metadata term below. + +The complete cost is + +``` +O(V [ (gb)^(1-a) polylog p + + (gb)^(1-q) polylog p + + polylog p + + (gL/N) (K0 + g polylog p) ]) ++ polynomial(p) setup, +``` + +plus `O((gL/N)V K0^2/B)` if metadata arithmetic is not absorbed by records. +All scans, duplication, sparse sorts, local transposes and final output +order are included. In particular, there is no gV layout term. + +## 1. One support-limited gather + +Within the active group, gather its g low b-bit fields into a contiguous +suffix using the support-at-most-2gb extension proved in +`SUPPORT-ROUTER.md`. The remaining active coarse bits remain in their +possibly scrambled order. Every coarse tile is now one contiguous block +of N^g complete R-payloads. No other active coarse bit is put into a new +stable order, and no spectator coordinate is gathered. + +The initial and inverse gather together cost +`O(V (gb)^(1-a) polylog p)`. The explicit permutation maps each physical +coarse tile name back to its logical vector; that small map is used only +for tile setup and sparse correction metadata. + +## 2. Interior outputs from ordinary cyclic convolution + +Flatten a tile by `phi(x)=sum_i x_i N^(g-1-i)` into Q=N^g slots. Put the +product kernel at offsets `psi(z)=sum_i z_i N^(g-1-i) mod Q` in an ordinary +one-dimensional cyclic convolution kernel. These offsets are distinct: +reduce a putative collision modulo N, use `2L= p^eta`, `g -> infinity`; alternatively a supplied sequential dense +kernel generator is an explicit acceptable input. + +If every tile coordinate satisfies `L<=x_ij: [0,N). +``` + +These 2g rectangles are disjoint and contain every discarded output once. +Their required unwrapped input rectangles have intervals + +``` +ij: [-L,N+L). +``` + +Coordinates outside `[0,N)` are taken from the correct neighboring coarse +tile, including periodic wrap in each actual axis. All input dimensions +are less than 2N; no assumption of independent full 2N padding is used. + +The total copied input volume is exactly + +``` +M = 6L V/N^g * sum_{j=0}^{g-1} N^j (N+2L)^(g-1-j) + = 3V [ (1+2L/N)^g - 1 ] + = O((gL/N)V). +``` + +The corrected output volume is +`V [1-(1-2L/N)^g] = O((gL/N)V)`. The formulas count corner duplication +exactly. An individual corner may have many destinations; its total traffic +is already included in M. No bound by worst-case 2^g multiplicity is charged +to all records. + +## 4. One full scan generates all correction copies + +For each original core tile, recover its logical coarse coordinates once. +Scan its local coordinate tuple with a binary odometer. Maintain flags for +membership in the four fixed edge intervals `[0,L)`, `[0,2L)`, +`[N-2L,N)` and `[N-L,N)`. Only coordinates changed by the odometer update +their flags. The number of coordinate updates over a whole tile is +`Q(1+1/N+...)<2Q`. Comparisons cost O(log N), and counters/head resets use +the retained amortized stream-counter convention. Maintain a count of +active near-boundary flags. A nonexceptional record takes no scan through +the g flags. + +For an exceptional record, enumerate candidate first-boundary axes from +the flag tape and all valid neighboring-tile choices. The exact choices +are the ones implemented in `sparse_copies` in `check_halo.py`: earlier +axes stay in the original tile; the selected face axis has its own or one +adjacent tile; each later axis has its own tile plus an adjacent tile only +when within L of that edge. Every emitted record carries + +``` +(j, side, destination coarse tile, unwrapped local coordinates). +``` + +These are K0=O(gh) bits. Precompute the plus/minus-one forms of each logical +coarse coordinate once per tile. A copy's logical neighbor is generated +by selecting those forms, then encoding the known scrambled coarse order. +All carries, periodic wraps and changed tile order are explicit. Using +ordinary binary arithmetic gives O(K0^2) safe metadata work per copy. + +The full scan costs O(V polylog p). The exceptional flag scans and address +work cost O(M K0^2/B+M) in bit-volume units when R includes the B-bit record. +Their setup per coarse tile is absorbed by its N^g payload. This is not an +unpaid nonlinear boundary-signature evaluation on every payload bit. + +## 5. Sparse radix gather and fixed-tape local processing + +Within each *earlier-coordinate prefix fiber*, stable-radix sort the copies +by the displayed key, with unwrapped local coordinates in ordinary tensor +order. Only the g active axes occur in the key; all following spectator +coordinates remain one R-block payload. A radix pass scans each complete +header and payload, splits into two bucket tapes, concatenates, and resets +the same fixed set of tapes. Since K0=O(B), each pass costs O(M); K0 passes +cost O(M K0). No simultaneous open tape per tile, face or corner is needed. + +Sorted copies form the exact input rectangles of section 3, consecutively. +Process one rectangle at a time. For each axis, expose its current local +coordinate field, apply the length-polynomial one-dimensional convolution, +and crop L positions from each end. Thus its length changes from its input +interval to the corresponding output interval. Other axes remain unchanged +until their own pass. This yields the tensor product of the restricted +one-dimensional maps, hence the exact desired face outputs. + +Every current axis has length at most N+2L=poly(p). Its mixed-radix transpose +is the retained short-field construction: pad **only that field** to its +next power of two temporarily, move its O(log p) bits using O(log p) linear +block interchanges, remove the temporary padding, and use the correct new +field length on return. The temporary factor below two is removed before +the next axis. A rectangle therefore costs its volume times +`O(g polylog p)` for movement and unconditional polynomial-length arithmetic. +Summing over rectangles costs `O(M g polylog p)`. Signed/complex dyadic +convolution can use sign splitting and ordinary Kronecker packing with +O(p+log N)=O(p) guard bits, followed by the unconditional quasilinear integer +multiplier; no improved supplier is used on this sparse path. + +After cropping, attach each output's physical coarse-tile and flat inner +address. Their keys are distinct because the face output partition is +disjoint. A second sparse radix sort orders them as holes in the retained +core-output stream. One merge scan replaces exactly those holes. The inverse +support-limited gather restores the original axis-major stream, including +the initially displaced coarse coordinates. All metadata is discarded. + +## 6. Parameters for the proposed partial fusion + +Use `d=p^epsilon`, `h=Theta(p/d)`, `g=p^(1-epsilon-zeta)` with fixed positive +zeta and epsilon>5/6. Suppose `L=O(p polylog p)` and take the dyadic side +`N=2^ceil((3/2)log2 p)`. The actual S_i eventually exceed every polynomial, +so N divides them and each periodic window is shorter than S_i. + +Then `K0=O(p^(2(1-epsilon)-zeta) polylog p)` and `K0^2=o(p)`. The two sparse +cost multipliers satisfy + +``` +(gL/N) K0 = O(p^(5/2-3epsilon-2zeta) polylog p) = o(1), +(gL/N) g = O(p^(3/2-2epsilon-2zeta) polylog p) = o(1). +``` + +All halo work is therefore O(V polylog p), below the desired +`O(V g^(1-a) polylog p)` routing term. The core convolution is +`O(V g^(1-q) polylog p)` since log N=Theta(log p). + +The bounded-gauge condition cited in `PARTIAL-FUSION.md` remains payable: +with `a0=Theta(log d)` and theta=Theta(1/d), its variation is + +``` +g [a0 theta N + a0/theta] + = O(p^(5/2-2epsilon-zeta) polylog p + + p^(1-zeta) polylog p) + = o(p) +``` + +for epsilon>5/6 and fixed zeta>0. Thus the larger polynomial tile does not +consume the O(p)-bit guard budget. This checks a layout/precision inequality; +it does not establish the missing Gaussian convolution factorization. + +## Diagonal and factorization boundary + +The theorem also applies to a fixed or polylogarithmic composition of these +translation-invariant convolutions and diagonal factors if every diagonal +scan/factor page has a proved sequential O(V polylog p) implementation and +all normalized tile-core and tile-halo values use O(p) bits. A tile-dependent +common scalar gauge may multiply every input to that tile and divide its +outputs; boundary copies must use the **destination** tile's gauge. No +enormous diagonal is formed and later canceled numerically by assertion. + +A concrete sufficient diagonal implementation is available for +`D(x)=product_i d_i(x_i)`. Supply each one-axis factor page in coordinate +order, with all normalized prefix products bounded to O(p) bits. Traverse +the rectangle by nested coordinate loops and retain the g successive prefix +products on work tape. Multiply by the innermost factor once per record; +outer prefix updates occur once per complete inner row, then once per +complete inner rectangle, and so on. With side lengths at least two their +number is less than twice the record count. Singleton axes are folded into +one constant per rectangle. Rewinding a factor page costs its length and is +charged to the corresponding completed row. Ordinary O(p)-bit multiplication +therefore gives O(V polylog p) scan cost with O(gp) temporary bits. This +argument uses bounded normalized **prefix products**; bounds on the final +product alone do not suffice. + +It does **not** cover an unbounded collection of different short kernels +inside one tile, a product-tree level with factor-two padding on all g axes, +or an unspecified transform-dependent sparse correction. Those require a +new representation theorem. In particular, the Gaussian_fast/product-tree +algorithm is not silently substituted for the translation-invariant kernel +assumed here. + +## Finite evidence + +`check_halo.py` verifies 5,632 exact outputs in three two/three-axis cyclic +examples, with asymmetric signed kernels, nontrivial diagonal conjugations, +periodic coarse carries, scrambled coarse order, unique sparse gather/scatter +keys and all local sequential crops. Pure flattening gives 3,040 wrong +boundary outputs across these examples; all are repaired. The exact copied +volumes equal `3V[(1+2L/N)^g-1]` in every case. These are constructive finite +controls; the preceding scan, metadata and volume arguments give the +conditional asymptotic claim. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/MANIFEST.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/MANIFEST.json new file mode 100644 index 0000000000..48dbb2a6bf --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/MANIFEST.json @@ -0,0 +1,20 @@ +{ + "EMBEDDING-CONTROLS.json": "d0182e172f16b55ec64a5edfabb10816e416348ef2db15449f3ed4b47f3fec1f", + "HALO-CONTROLS.json": "ae370f7d7421f2f96e101a4b9d8082110507c47211220fd6ead065c2366aa828", + "HALO-THEOREM.md": "cb9e1da38400b658f9209e465b4e5896fadd17dc66afa862f38bae8d8c1f2058", + "PARAMETER-CHECK.json": "e38cdfc13f1959186d888383458c9030c4bd3c8c3915aea4743d55637d2f8d76", + "RAGGED-CONTROLS.json": "c3688f65565486b585727374abfbe478f7544aa61381bd73cc6ffa168b4221b6", + "RAGGED-PERIODS.md": "c6e4dfe7f58dac7c5a513ffb3a9ab4801ab0717efae5c1e764e570335402ff25", + "README.md": "575a3acfc18a0e05ffe04a8563318a2770ce32cd7bf3a5e6123ce2de39a1cd4c", + "RECTANGULAR-EMBEDDING.md": "e64447bff7e7717802ee049290faaf29e45db3e36a6f7fcec109184478f15f26", + "SPARSE-SHEAR-CONTROLS.json": "d3b9763f7ef6a3a5752c6c11a8a4d5f465646ad75b178a1c1b3363540fcc4871", + "SUPPORT-ROUTER.md": "6ddb322e11883c1177ba6cd1a77d23a1dac827d7290b32eaf642457b1d762a54", + "check_embedding.py": "597cb5304498456575c99d46a7fb503e04db28d5a7f57857b102b50f703b7464", + "check_halo.py": "0a3257cbb8f37b6cc9bb44019cb114ea2ae9b28738a416bff4bc712d1306e1b7", + "check_ragged.py": "54b761cfe3404d524af3a2abdf09bcea8dfb5cca6199c0c182cee310e3ca8c78", + "check_sparse_shear.py": "6e22c989e6bae92c4cd209c9336aad4359956cf370bdbd5f6b70609144598121", + "embedding.log": "d0182e172f16b55ec64a5edfabb10816e416348ef2db15449f3ed4b47f3fec1f", + "halo.log": "ae370f7d7421f2f96e101a4b9d8082110507c47211220fd6ead065c2366aa828", + "ragged.log": "c3688f65565486b585727374abfbe478f7544aa61381bd73cc6ffa168b4221b6", + "sparse-shear.log": "d3b9763f7ef6a3a5752c6c11a8a4d5f465646ad75b178a1c1b3363540fcc4871" +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/PARAMETER-CHECK.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/PARAMETER-CHECK.json new file mode 100644 index 0000000000..5844ead5c0 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/PARAMETER-CHECK.json @@ -0,0 +1,10 @@ +{ + "epsilon": "0.99833013302245016130167750009820221155623107175809", + "g_exponent": "0.00166985697754983869832249990179778844376892824191", + "K0_exponent": "0.00333972395509967739664499980359557688753785648382", + "halo_sort_exponent": "-0.4949904190673504839050325002946066346686932152743", + "halo_local_axes_exponent": "-0.4966602860449003226033550001964044231124621435162", + "tile_gauge_exponent": "0.50333972395509967739664499980359557688753785648381", + "K0_squared_exponent": "0.00667944791019935479328999960719115377507571296764", + "initial_gather_exponent": "0.0016669624023127060364416759538459168913455129064535" +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RAGGED-CONTROLS.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RAGGED-CONTROLS.json new file mode 100644 index 0000000000..553ea1a36a --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RAGGED-CONTROLS.json @@ -0,0 +1,36 @@ +{ + "status": "PASS_RAGGED_TRUE_PERIOD_SPARSE_HALO", + "cases": [ + { + "S": [ + 19, + 22 + ], + "N": 8, + "L": 1, + "g": 2, + "input_records": 418, + "halo_records": 732, + "full_halo_candidate_pairs": 700, + "corrected_outputs": 274, + "source_and_rectangle_gathers_identical": true, + "true_period_tensor_convolution_checked": true + }, + { + "S": [ + 17, + 18, + 20 + ], + "N": 8, + "L": 1, + "g": 3, + "input_records": 6120, + "halo_records": 18064, + "full_halo_candidate_pairs": 14352, + "corrected_outputs": 4392, + "source_and_rectangle_gathers_identical": true, + "true_period_tensor_convolution_checked": true + } + ] +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RAGGED-PERIODS.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RAGGED-PERIODS.md new file mode 100644 index 0000000000..fdfe26d197 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RAGGED-PERIODS.md @@ -0,0 +1,89 @@ +# True periods inside a near-one dyadic container + +The primary halo theorem extends to arbitrary true periods s_i when an +already supplied dyadic rectangle t_i>=s_i has bounded total inflation +`product t_i / product s_i=O(1)`. Simultaneous zero embedding and its inverse +cost one ordered scan each by `RECTANGULAR-EMBEDDING.md`. This prerequisite +is satisfied only where the inherited near-one capacity bound applies; it +must not be replaced by independently rounding every axis to its next power. + +Take N dividing every t_i. Write `s_i=q_i N+r_i`, `0<=r_i0, one ragged core in axis i. The initial +support-limited gather uses the dyadic storage coordinates, not mixed-radix +division. It may produce invalid all-zero storage tiles; discard those. + +Apply ordinary flat cyclic convolution only to tiles whose every active +side has valid length N. Their interior outputs remain exact. Regular tile +face corrections use the earlier first-boundary-axis rectangles, but every +halo coordinate is now reduced modulo **s_i**, never t_i. + +If any side of a tile is ragged, discard its entire flat-convolution output. +For its actual side lengths r_i(tile), compute every valid output in +`product [0,r_i(tile))` using the input rectangle +`product [-L,r_i(tile)+L)`. All sides are at most N+2L. The same g successive +polynomial-length convolution/crop passes therefore produce exact outputs. +Full ragged tiles and regular face outputs form a disjoint correction set. + +Let Q_i=q_i+1_(r_i>0). The total full-halo volume of *all* valid tiles is + +``` +H_all = product_i [s_i + 2L Q_i]. +``` + +Their all-full-tile contribution is `product_i q_i(N+2L)`. The sum of the +ragged-tile halo volumes is their difference. Expanding by a first ragged +axis, or simply telescoping the product, gives + +``` +H_ragged <= H_all * sum_i (N+2L)/s_i + = O(S gN/s_min), +``` + +since `H_all/S <= exp(2L sum_i Q_i/s_i)=O(1)` when gL/N=o(1). +Regular face input volume is O(S gL/N). Thus total sparse copy volume is + +``` +M=O(V [gL/N + gN/s_min]). +``` + +The new term is smaller than V divided by every fixed polynomial in p when +`s_min=2^Theta(p/d)` and `N,g=poly(p)`. It pays all the same key sorting, +metadata and local computation factors. No new per-axis full scan appears. + +## One source-driven enumerator + +For each valid source coordinate x_i, list the valid destination tiles t +for which an unwrapped representative + +``` +y_i = x_i - tN + k s_i +``` + +lies in `[-L,r_i(t)+L)`. Only the home and neighboring core intervals can +qualify; there are at most three choices because L5/6, +all sparse halo work is O(V polylog p). The initial gather costs +`O(V g^(1-a_bit) polylog p)` and the grouped convolution costs +`O(V g^(1-q) polylog p)`. The cited bounded-gauge variation is still o(p). +Actual parameter exponents are recorded in `PARAMETER-CHECK.json`. + +Read: + +1. `SUPPORT-ROUTER.md`: arbitrary-spacing guarded shears, support-sized + reservoirs, fixed-tape repair, and the support-at-most-2k gather. +2. `HALO-THEOREM.md`: tensor identity, exact sparse halo volume, all record + movement, key lengths, local transposes, final output order and costs. +3. `RECTANGULAR-EMBEDDING.md`: simultaneous near-one zero embedding and crop + in one scan, using B=Omega(p) record width and an O(p)-bit descriptor. +4. `RAGGED-PERIODS.md`: arbitrary true periods inside that dyadic container, + using full ragged tiles as exponentially sparse additional exceptions. + +No rank/select oracle or sort of the complete tensor by a computed key is +used. Full scans preserve stream order. Only sparse correction records +are sorted, with every key bit pass charged. + +Reproduce, from the chat workspace: + +``` +python3 -B work/halo_layout_ultra/check_sparse_shear.py +python3 -B work/halo_layout_ultra/check_halo.py +python3 -B work/halo_layout_ultra/check_embedding.py +python3 -B work/halo_layout_ultra/check_ragged.py +``` + +Controls include an exhaustive 32,768-address shear permutation, 4,000 +unequal-spacing probes, 5,632 regular-grid convolution outputs and 6,538 +true-period inputs for ragged gather/correction checks. Wrong naive cyclic +flattening is explicitly detected before correction. Source/result hashes +are in `MANIFEST.json`. + +This is not a complete Gaussian resampler or a larger multiplication +exponent certificate. The kernel must be translation invariant and +separable; a fixed/polylogarithmic composition with bounded and sequentially +generated diagonal conjugations is admitted. A product tree with many +different short kernels or per-axis factor-two padding is not admitted by +renaming it a convolution. The missing Gaussian representation/normalization +theorem remains separate. The original bit/complex supplier, fixed-tape, +precision and all-size interfaces remain conditional inputs. + +Prepared with substantial OpenAI Codex assistance, continuing the retained +arbitrary-source router and bulk-resampling proofs in +`work/integer-mult-current/references/semantic-bulk/rad20/reports/`. +No frozen source or selected certificate was changed. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RECTANGULAR-EMBEDDING.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RECTANGULAR-EMBEDDING.md new file mode 100644 index 0000000000..191867c72e --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RECTANGULAR-EMBEDDING.md @@ -0,0 +1,51 @@ +# One-pass near-one rectangular embedding and crop + +This supplies the dyadic-container qualification for the halo theorem. It +does not require one full payload scan per axis. + +Let input axes have arbitrary lengths `s_1,...,s_D` and let dyadic target +lengths `t_i>=s_i` be given, with total address width +`A=sum_i log2 t_i=O(p)`. The input and output use lexicographic axis-major +order, the last coordinate changing fastest. Every payload record has at +least `c p` bits, as in the retained coefficient representation. Assume +`T=product t_i <= C product s_i = C S`; C is the separately proved +near-one capacity bound, not a product of per-axis dyadic roundings. + +Enumerate the complete target rectangle in lexicographic order with its +ordinary A-bit binary counter. For each target address x, output the next +source record if `x_i infinity`; short remaining cases can use the retained +full-span router, since `n=O(k polylog p)` there. The conditional cost is + +``` +O(V (k+1)^(1-a) polylog p + poly(p)). +``` + +All other coordinate positions return to their original values. This is a +support bound, not a bound on how far a moved coordinate travels. + +## Unequally spaced target lemma + +Put `B=2^G`, `G=4 ceil(log2 p)+6`, and `K=64G`. Take target positions +`j_0<...2(k+1)ell`, a gap outside the moved support contains a contiguous ell-bit +field S disjoint from the actual last ell bits. Use an original equal-ell +interchange A to move S to that actual suffix. Route the conjugate +`A pi A^-1` on the n-ell prefix only, then undo A. The conjugate fixes the +suffix pointwise because pi fixed S. Choose every dirty control reservoir +inside the prefix after this interchange, then recompute positions and +residue colors. Thus no control operation touches the enlarged record. +Its 2^ell complete values absorb the polynomial descriptor work; no data +is padded or duplicated. If `n<=2(k+1)ell`, the retained full-span bound +already gives `O(V (k+1)^(1-a) polylog p)`. The placement itself costs only +O(V polylog p). This explicit suffix-conjugation bookkeeping was +independently supplied in `work/inplace_algebra_ultra/SUPPLIER-SUPPORT-AUDIT.md`. + +## The gather uses only S union T + +Let S list the k selected low-coordinate bits in the desired tensor order, +and T list k consecutive destination slots. Send S bijectively to T. Send +the remaining domain slots `T\S` bijectively to the remaining output slots +`S\T`, and fix everything outside `S union T`. This explicitly extends the +requested gather to a coordinate permutation supported on at most 2k bits. + +The other coarse-coordinate bits can be scrambled by this extension. Their +order is retained and described by the inverse permutation; **no stable +compaction of all coarse fields is performed**. A coarse neighbor address +can be decoded, incremented in its logical axis, then encoded in this +physical coarse order when constructing a sparse correction key. + +## Evidence and boundary + +`check_sparse_shear.py` checks all 32,768 addresses for targets 0 and 6 with +guard length 5, including 512 good addresses, inverse composition and every +bad repair. It also checks 4,000 arbitrary/constructed-good addresses with +unequal gaps 9 and 11 and sources inside guard fields. `check_halo.py` +checks three explicit support-at-most-2k gather permutations. + +These controls support the algebra; the cost argument above is the +all-size conditional transfer. It retains the original bit-supplier, +equal-width interchange, fixed-tape and common-label hypotheses. It does +not upgrade an arbitrary full computed-key sort to a fast router. + +Sources: the retained reports `compact-arbitrary-source-routing.md` and +`review-arbitrary-routing.md` under +`work/integer-mult-current/references/semantic-bulk/rad20/reports/`. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_embedding.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_embedding.py new file mode 100644 index 0000000000..54556ee93d --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_embedding.py @@ -0,0 +1,22 @@ +"""Exact simultaneous zero embedding/cropping in lexicographic order.""" +from itertools import product +from pathlib import Path +import json,math +HERE=Path(__file__).resolve().parent +def check(s,t): + original=list(product(*(range(n) for n in s)));it=iter(enumerate(original,1)) + embedded=[];valid=[] + for x in product(*(range(n) for n in t)): + if all(a=N-2*L] + for j in active: + for side in (0,1): + choices=[] + for i,a in enumerate(x): + if i=N-L:opts.append((1,a-N)) + else: + if a>=N-2*L:opts.append((0,a)) + if a=N-L:opts.append((1,a-N)) + choices.append(opts) + for selected in product(*choices): + dest=tuple((tile[i]+selected[i][0])%Q[i] for i in range(g)) + y=tuple(v[1] for v in selected) + result.append(((j,side,dest,y),value)) + return result + +def radix(records,key): + pairs=[(key(k),k,v) for k,v in records] + bits=max((k.bit_length() for k,_,_ in pairs),default=0) + for b in range(bits): + zero=[];one=[] + for row in pairs:(one if row[0]>>b&1 else zero).append(row) + pairs=zero+one + assert [k for k,_,_ in pairs]==sorted(k for k,_,_ in pairs) + return [(k,v) for _,k,v in pairs],bits + +def key_encoder(N,L,g,Q): + # Deliberately scramble coarse address significance. This represents the + # displaced coordinate slots in a support-limited gather. + coarse=[(i,j) for i,q in enumerate(Q) for j in range(q.bit_length()-1)] + coarse=coarse[::2]+coarse[1::2][::-1] + def enc(key): + j,side,tile,y=key + out=j*2+side + for i,b in coarse:out=(out<<1)|((tile[i]>>b)&1) + for a in y:out=(out*(N+2*L))+(a+L) + return out + return enc + +def replay(N,L,g,Q): + assert N>4*L and N&(N-1)==0 and all(q>=2 and q&(q-1)==0 for q in Q) + S=[N*q for q in Q];global_ranges=[(0,s) for s in S] + raw={x:1+sum((i+3)*a*a+(i+1)*a for i,a in enumerate(x)) for x in box(global_ranges)} + pre=lambda x:1+sum((i+1)*a for i,a in enumerate(x))%3 + post=lambda x:1+sum((i+2)*a for i,a in enumerate(x))%2 + data={x:v*pre(x) for x,v in raw.items()} + kernels=[[((i+2)*(z+L+1))*(-1 if z==0 else 1) for z in range(-L,L+1)] for i in range(g)] + shifts=list(product(range(-L,L+1),repeat=g)) + weight={z:math.prod(kernels[i][a+L] for i,a in enumerate(z)) for z in shifts} + direct={x:post(x)*sum(weight[z]*data[tuple((a-b)%s for a,b,s in zip(x,z,S))] for z in shifts) for x in data} + merged={};wrong=interior=0 + for tile in product(*(range(q) for q in Q)): + core=[data[tuple(t*N+a for t,a in zip(tile,unflat(u,N,g)))] for u in range(N**g)] + for u in range(N**g): + x=unflat(u,N,g);glob=tuple(t*N+a for t,a in zip(tile,x)) + val=post(glob)*sum(w*core[(u-sum(z[i]*N**(g-1-i) for i in range(g)))%(N**g)] for z,w in weight.items()) + wrong+=val!=direct[glob] + if all(L<=a0 + tiles=math.prod(Q) + expected_copies=tiles*2*sum((N**j)*(3*L)*(N+2*L)**(g-j-1) for j in range(g)) + assert len(copies)==expected_copies + expected_boundary=tiles*(N**g-(N-2*L)**g) + assert boundary==expected_boundary + return dict(N=N,L=L,g=g,coarse_sizes=Q,input_records=len(data),interior_outputs=interior, + corrected_boundary_outputs=boundary,gathered_halo_records=len(copies),predicted_halo_records=expected_copies, + direct_flattening_wrong_outputs=wrong,radix_key_bits=keybits, + exact_tensor_outputs_checked=len(data),diagonal_conjugations_checked=True, + scalar_coefficients='signed asymmetric integer product kernel') + +def main(): + cases=[replay(8,1,2,[2,4]),replay(8,1,3,[2,2,2]),replay(16,2,2,[2,2])] + perms=[gather_permutation([5,7,6],3),gather_permutation([4,4,4],3),gather_permutation([9,6],4)] + out=dict(status='PASS_EXACT_CORE_PLUS_SPARSE_BOUNDARY_TENSOR_CONVOLUTION',cases=cases, + support_limited_gathers=perms, + scope='Finite exact map, sparse-copy completeness, unique scatter, radix ordering and support controls; asymptotic fixed-tape costs are in the companion proof.') + (HERE/'HALO-CONTROLS.json').write_text(json.dumps(out,indent=2)+'\n');print(json.dumps(out,indent=2)) +if __name__=='__main__':main() diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_ragged.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_ragged.py new file mode 100644 index 0000000000..4665063452 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_ragged.py @@ -0,0 +1,69 @@ +"""Independent source-driven versus rectangle-driven ragged halo gather.""" +from itertools import product +from collections import defaultdict +from pathlib import Path +import json,math +HERE=Path(__file__).resolve().parent +def points(ranges):return product(*(range(a,b) for a,b in ranges)) +def rectangles(S,N,L): + Q=[(s+N-1)//N for s in S];g=len(S) + for tile in product(*(range(q) for q in Q)): + sizes=[min(N,s-t*N) for s,t in zip(S,tile)] + if min(sizes)>(i*G))&((1<>(j+1))&((1<<(K-1))-1))<(1<<(K-1))-2*B + for i,j in enumerate(targets)) + +def ops(targets,sources,G): + out=[] + F=[('y1',1),('t1',1),('y2',1),('t2',-1)] + return F+[('load',1)]+F+[('load',-1)] + +def run(state,targets,sources,G,n,inverse=False): + u,t,y=state;H=len(targets)*G;mask=(1<>j)&1)<<(i*G) for i,j in enumerate(targets)))&mask + elif tag=='t2':t=(t+sign*sum((((y>>j)&1)^(digit(u,i,G)&1))<<(i*G) for i,j in enumerate(targets)))&mask + else:u=(u+sign*sum(((y>>s)&1)<<(i*G) for i,s in enumerate(sources)))&mask + return u,t,y + +def ideal(state,targets,sources): + u,t,y=state + return u,t,y^sum(((y>>s)&1)<=K for a,b in zip(sorted(targets),sorted(targets)[1:])) + assert all(j+K<=n for j in targets) + count=good_count=bad_count=corrected=0;images=set() + for state in states: + count+=1;out=run(state,targets,sources,G,n) + assert run(out,targets,sources,G,n,True)==state + assert good(*out,targets,G,K)==good(*state,targets,G,K) + assert good(*ideal(state,targets,sources),targets,G,K)==good(*state,targets,G,K) + if good(*state,targets,G,K): + good_count+=1;assert out==ideal(state,targets,sources) + else: + bad_count+=1 + fixed=ideal(run(out,targets,sources,G,n,True),targets,sources) + assert fixed==ideal(state,targets,sources) + corrected+=fixed!=out + images.add(out) + return dict(targets=targets,sources=sources,G=G,K=K,n=n,states=count, + good=good_count,bad=bad_count,changed_by_repair=corrected,distinct_images=len(images)) + +def main(): + small=check_case([0,6],[4,8],1,5,11, + product(range(4),range(4),range(1<<11))) + assert small['states']==small['distinct_images']==32768 + rng=random.Random(713) + targets=[1,10,21];sources=[5,15,25];G=2;K=7;n=29 + arbitrary=[(rng.randrange(64),rng.randrange(64),rng.randrange(1< infinity`. Their aggregate and all helper reservoirs + fit the full address because beta<1. There is no necessary constraint + beta<1-epsilon; a group is allowed to be wider than one original axis. +* The width-dependent phase sums are geometric. With q=2`, the exponent is at least +`h^2-|h|`; the two-sided tail is at most `4 exp(-2a)`. Thus the claimed +`exp(-2a theta)+5 exp(-2a)` bound follows. In particular, counting both nearest +neighbors separately at the larger bound would be invalid, but the supplied +argument does not do so. + +The actual H is specified by globally fixed rounded weights and a globally +fixed truncated Toeplitz kernel inside each physical phase cell. Its diagonal +is one, with the omitted aliases included in the perturbation. The candidate's +perturbation budget is strictly below the displayed row-dominance gap. Principal +submatrices preserve this row gap. Adding identity hole rows/columns preserves +it as well, and increases the physical bandwidth by at most the q-image spacing +factor, which is bounded by two. + +For `F=H_aug-I`, `||F||_infinity<=1-delta` with +`delta>=1/(16p)`. Powers through order J agree on a core row whose distance from +the principal-window edge exceeds J times the bandwidth. The two inverse tails +are bounded by `2(1-delta)^J/delta`. With `J=C p^2`, this is exponentially small +in p. The distance requirement is `O(p^(5/2) polylog p)`, below the candidate's +`A=C_A p^3` eventually. The preserved physical period cut and the fact that +true axes exceed every polynomial in p exclude spurious short wrap edges. + +## 2. Broad Gaussian conditioning is a different argument, and it works + +Sources: candidate lines 151–201; +`work/gaussian_fast_ultra/FORWARD-SMALL-A-AUDIT.md` lines 13–73 and 75–105; +`work/gaussian_fast_ultra/BILATERAL-LDU.md` lines 25–119. + +For the finite LDU formulas, I checked the origin-shift correction and the +triangular inverse estimates. If `h=j-i`, the elementary-polynomial estimate +for the upper inverse reduces its exponential part to + +`b[beta_j^2-beta_i^2-rho^2 h-2 rho sum_{k=i}^{j-1} beta_k]`. + +Using `|beta_k|<=1/2` gives at most `b/4-b rho theta h`. The lower inverse uses +the corresponding expression with the other sign on the beta sum and has the +same decay. The factors `c_b^-1` and `c_b^-2` come from the explicitly bounded +products. This proves the stated uniform finite-interval bound; integrality of +the q-values is not needed, only gaps at least one and the beta bound. + +The broad target-cell identity also checks directly. With +`q'_k=k+rho c`, `beta'_k=theta k-rho c`, and +`b=b0/rho^2`, one obtains + +`K=alpha^-1 N_b diag(exp(-b beta'^2))`. + +At a selected target index, `beta'_k` equals the original source beta. Therefore +the finite LDU bound really applies to the block K used in the candidate; it is +not a bound for a different narrow matrix. The product estimate +`log(c_b^-1)<=pi^2/(12 b rho)` gives +`c_b^-4<=exp(pi alpha^2 rho/3)=p^O(1)`. The reciprocal gap is also polynomial +because `theta^-1=poly(p)` and `alpha^2=O(log p)`. + +The square identity-hole completion has block form `[A 0; R I]`. Its inverse is +`[A^-1 0; -R A^-1 I]`. Hence bounded Gaussian row sums and the selected-row +inverse bound give a polynomial full inverse bound. Dividing the completion +by four is contractive even on numerical hole errors. Its extra factor of +one half per axis is exactly compensated by the stated `2^D` shift. + +For the Toeplitz core, the Poisson symbol bound supplies a polynomial lower +eigenvalue, since its exponent is `O(alpha^2)=O(log p)`. An exponentially small +truncation/rounding perturbation preserves that bound. The extension from +these SPD cores to shallow circuits is outside this subreview, but the +Gaussian side supplies the conditioning claimed for that extension. + +## 3. Capping changes the runtime gauge, without changing H + +Sources: candidate lines 203–221 and 273–283; +`work/gaussian_fast_ultra/CAPPED-GAUGE-AUDIT.md` lines 31–107; +`work/phase_assembly_ultra/CAPPED-INTERIORS.md` lines 13–29 and 68–70. + +Within a fixed narrow phase cell, + +`log(a_i/a_j)=a(i-j)(beta_i+beta_j)`. + +Its absolute value is at most `a|i-j|`. Taking exact ratios of the already +rounded positive weights at one local anchor cancels the same common scalar +from both sides of the similarity, so the matrix is unchanged. Relative +rounding error of the original weights remains small because their minimum +is `exp(-O(ad))` and the absolute setup precision is `Cp`, with `ad=o(p)`. +Thus the local circuit sees range `O(aB)`, not the original `O(ad)`. + +For the broad split, expansion of the displayed exponents gives exactly +`-b0(delta+x-lambda y)^2`. The two logarithmic derivatives are +`-2 b0 lambda beta'_i` and `2 b0 lambda^2 beta'_k`; each is bounded in absolute +value by b0. Changing anchor changes the two ideal diagonals by reciprocal +constants. Applying the same exact reciprocal change to previously rounded +diagonals preserves their product with the Toeplitz core. Thus the broad +rounding scheme can consistently use the same global matrix and locally +recenter its capped restrictions. + +The number of pieces does not multiply the norm of their direct sum. The +group logarithmic range is consequently `O(gaB+g polylog p)`. The inherited +absolute weight accuracy adds `O(ad)` once to the precision requirement, rather +than once for every tensor axis. The candidate's condition +`beta+xi+r0=1-zeta`, with `a=O(log p)<=p^r0` eventually, makes this range o(p). +The total precision is therefore `p+O(ad+gaB+g polylog p)=O(p)` in both parameter +families. This conclusion concerns asymptotics; no reasonable finite cutoff +is supplied or required by the statement. + +## 4. Boundary factorization and rounding do not introduce a window-count factor + +Sources: candidate lines 225–240; +`work/gaussian_fast_ultra/LOG-A-PHASE-SCHUR-AUDIT.md` lines 78–98; +`work/integer-mult-current/references/semantic-bulk/rad20/reports/review-phase-cell-inverse.md` +lines 203–301. + +The five-factor identities check by ordinary block multiplication. The shears +use B and C from the original banded matrix. They do not use the generally +dense products `A^-1 B` or `C A^-1`. For forward expansion, F is only applied; +its inverse is not required by that formula. + +For a strictly row-diagonally-dominant matrix, one elimination step gives + +`gap_i(new)>=gap_i(old)+|a_ik/a_kk| gap_k(old)`. + +Its absolute row norm does not increase. Thus the narrow Schur matrix retains +the polynomial gap and bounded row norm. A noncyclic cut of its banded matrix +also retains row dominance. In its LU factors, U has bounded row norm and the +unit-lower factor has only O(W) entries per row, each bounded by the reciprocal +pivot gap. Therefore `||L||=poly(p)`. The identities +`L^-1=U A^-1` and `U^-1=A^-1 L` then give polynomial inverse-factor norms. +The periodic correction has rank O(W) and is controlled by the full completed +inverse, as in the retained identity `K^-1=I-V A^-1 U`. + +The exact partial right-hand sides are consequently polynomially bounded. +Rounding a completed block update creates a row residual bounded by +`poly(p) 2^-P`. Equivalently, rounding and coefficient error can be treated as +a perturbation whose norm is small enough to close the same bound on computed +values. Applying the polynomial full inverse bounds the output error by that +residual. Infinity norm takes the maximum over windows rather than summing +their count. Strassen's fixed recursion contributes polynomial W growth and +O(log W) guard bits, already covered by the precision allowance. + +## 5. Density, stream layout, and global calls + +Sources: candidate lines 207–211, 242–271, and 368–385; +`work/phase_layout_audit_ultra/AUDIT.md` lines 15–188; +`work/phase_layout_audit_ultra/CAPPED-SIGNOFF.md` lines 7–65; +`work/phase_layout_audit_ultra/MATRIX-LAYOUT-SIGNOFF.md` lines 16–58; +`work/halo_layout_ultra/HALO-THEOREM.md` lines 88–196. + +The capped carve contributes O(d/B+log B) separators per physical phase cell. +Retaining W-wide separators ensures distinct interiors are uncoupled. Each +elimination only joins adjacent O(W)-sized boundary groups, so the Schur +bandwidth remains O(W). The extra clipped-endpoint term in an L-core is +O(W polylog p), negligible relative to `L W/B polylog p`. + +For the union U, every sparse factor changes its own axis only inside E_i; +therefore it preserves U. The dense A stage does not preserve U, and the +candidate explicitly scatters and regathers around it. For one sparse axis, +`U_i=E_i x [L]^(g-1)` is a complete rectangle inside U. Extracting it in order, +transposing only its polynomial-width axis field, processing, undoing the +transpose, and merging back needs no full g-axis key sort. The full union +scan is charged once per sparse axis, producing the stated g-squared factor +per group. The matrix corollary cannot afford an extra full-key union sort, +but this algorithm does not require one. + +The q-image predicate checks the exact half-open interval +`s(2k-1)<=2tj 2(k+1)L. +``` + +Indeed, after excluding the actual suffix, the at most k moved positions +cut the remaining interval into at most k+1 gaps. If every gap had length +less than L, that prefix would have length at most (k+1)L-1. The displayed +inequality contradicts this bound. + +Let A be the old disjoint equal-L swap exchanging S with the actual suffix. +Execute A, route the conjugated permutation A pi A^{-1}, then execute +A^{-1}. Because pi fixes S pointwise, its conjugate fixes the actual suffix +pointwise. It still moves at most k coordinates. All endpoints are now in +the n-L prefix. Choose the three dirty reservoirs in that prefix and run +all compact rotations, original control shuttles, elementary CNOTs, and +bad-hole repair there. Recompute endpoint names after A and after the +reservoir placement. In the application, n-L>=9kG holds with a wide +asymptotic margin. + +The suffix is a complete binary field with arbitrary contents. Reinterpreting +its 2^L values as part of a record gives record length R0*2^L, without +creating, padding, or deleting data. This length exceeds every fixed +polynomial in p. No operation whose cost relies on that record length acts +on its component coordinates. Both instances of A use the already approved +primitive and cost O(V L^(1-a))=O(V polylog p); they do not invoke the new +router. This removes the prospective circularity. + +For the general router outside this sparse branch, the retained +first-L/second-L/actual-last-L candidate convention and matching cohorts +also work. Arbitrary candidates should not be substituted blindly: a +candidate can partially overlap the actual suffix, whereas the old swap +requires equal disjoint fields. After each candidate placement, the same +n-L prefix exclusion is mandatory. If the entire binary span is only +polylogarithmic, the old elementary construction suffices. If +n=O((k+1)polylog p), the old full-span construction gives the desired +support bound up to polylogarithms; its own short-record preparation must +still use the old suffix construction. + +For a full H supplier call, reserve the suffix outside its selected field +and keep it fixed throughout the completed call. If necessary, perform +the same old L-bit placement before exposure, update the logical names of +the neighborhoods, and restore it after inverse exposure. The source +neighborhoods need not remain physically consecutive before exposure: +the exposure permutation explicitly routes their named bits. The target +complete chunks are placed before the reserved suffix. + +## 3. Whole-row padding and the next diagonal scan + +The leading row prefix and the front/back controls are assembled from +complete K-bit neighborhoods in the globally complete binary tensor. +Their bits are not assumed zero or semantically independent of coefficient +values. Completeness means every coordinate value is represented in the +stream. Multiplication by previous coarse-dependent diagonal coefficients +does not remove any address or change this property. + +Deferring the selected bits lying in reserved chunks is valid: the accepted +active invocation is the desired tensor on the other selected bits and +identity on every reserved coordinate, for arbitrary incoming coefficients. +The preliminary individual transforms in the old layout were used to +finish those selected bits, not to create complete row or control ranges. +After deferral, those transforms are performed in later phases instead. + +The row count is rounded once to a multiple of the actual product + +``` +Q_rows = W_complex^D_complex * W_bit^D_bit. +``` + +The padded row label is allowed to be a nonbinary preceding fiber count. +Every within-row field remains a full binary field. The supplier's +interchanges and controls act within those complete fields; the global +exposure router is not applied to the padded row label. Nested bit adapters +consume and restore the bit stock before later complex splits, exactly as +in the retained product-stock argument. + +At the completed invocation boundary, the operator is identity on the row +label. A padded zero row therefore returns to zero even though temporary +role computations may have combined or moved its contents. Delete those +rows before inverse exposure or the next deferred phase. This bounds each +phase's volume by twice its original volume, not by a factor exponential in +the number of phases. + +All H calls in the compiler have the same selected-bit schedule for every +coarse label; label dependence resides in the intervening diagonal tables. +Run one H call on the complete global tensor, complete every deferred +phase, remove padding, and restore the original exposed-coordinate order. +Only then run the next diagonal scan. The microbox layout used for that +scan is the restored layout in which the local coordinates are already +contiguous (or the separately paid low-bit gather layout). No padded row, +partial H result, or temporarily relocated coarse label is presented to +the diagonal-table lookup. Thus scanning different coarse-label tables +does not require separate H invocations or borrowing fixed labels inside +a microbox. + +## 4. The actual parameter inequalities + +The largest exposure moves k=O(gK)=O(p^.093 log p) binary coordinates. +With G=Theta(log p), its three dirty reservoirs require + +``` +9kG = O(p^.093 log^2 p) = o(p). +``` + +The suffix occupies only L=Theta(log^2 p) positions. In particular, + +``` +n/(kG) = Omega(p^.907/log^2 p) -> infinity, +n/((k+1)L) = Omega(p^.907/log^3 p) -> infinity. +``` + +There is ample room both for the old spectator placement and for all +subsequent prefix-only reservoirs. These inequalities concern the full +binary address, not any one original axis. + +The only per-axis inequality is + +``` +K + O(log p) < ell_axis = Theta(p^.002), +``` + +which holds eventually. The original K/log p -> infinity wording must be +replaced, as already noted in `SUPPLIER-SUPPORT-AUDIT.md`, by the finite +guard inequality K>=G+4ceil(log2 p)+10. K=128G satisfies it. + +The supplier's front/back controls are made by concatenating reserved +complete neighborhoods. Their chunk count is + +``` +ceil(2hG/K) + ceil(hG/K) <= 3h/128 + 2. +``` + +The leading row stock adds O(log h) complete chunks. Above a fixed +polylogarithmic cutoff this is at most h/16, and smaller h is handled +individually. No single original axis stores hG control bits. Indeed +gG/ell_axis=Theta(p^.091 log p) diverges; the construction works precisely +because it does not demand this false per-axis fit. + +Consequently the reviewed mechanisms support the proposed +O(V g^(1-q) polylog p) global-call cost under the retained supplier +assumptions. The suffix exclusion and completed-call boundary should be +kept explicit in any final assembly. They are necessary bookkeeping, +not a new exponent restriction or an unproved sorting primitive. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/TENSOR-COMPILER-CONTROLS.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/TENSOR-COMPILER-CONTROLS.json new file mode 100644 index 0000000000..80cb2c8083 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/TENSOR-COMPILER-CONTROLS.json @@ -0,0 +1,154 @@ +{ + "status": "pass", + "arithmetic": "exact symbolic rational/complex", + "routing": [ + { + "N": 2, + "permutations": 2, + "switch_depth": 1 + }, + { + "N": 4, + "permutations": 24, + "switch_depth": 3 + }, + { + "N": 8, + "permutations": 40320, + "switch_depth": 5 + }, + { + "N": 16, + "random_permutations": 100, + "switch_depth": 7 + }, + { + "N": 32, + "random_permutations": 100, + "switch_depth": 9 + }, + { + "N": 64, + "random_permutations": 100, + "switch_depth": 11 + } + ], + "fixed_H_word_checks": [ + { + "kind": "upper", + "parameter": "-10", + "H_calls": 6 + }, + { + "kind": "lower", + "parameter": "-10", + "H_calls": 6 + }, + { + "kind": "upper", + "parameter": "-3/7", + "H_calls": 6 + }, + { + "kind": "lower", + "parameter": "-3/7", + "H_calls": 6 + }, + { + "kind": "upper", + "parameter": "0", + "H_calls": 6 + }, + { + "kind": "lower", + "parameter": "0", + "H_calls": 6 + }, + { + "kind": "upper", + "parameter": "7/9", + "H_calls": 6 + }, + { + "kind": "lower", + "parameter": "7/9", + "H_calls": 6 + }, + { + "kind": "upper", + "parameter": "10", + "H_calls": 6 + }, + { + "kind": "lower", + "parameter": "10", + "H_calls": 6 + }, + { + "kind": "diag", + "H_calls": 6 + }, + { + "kind": "swap", + "H_calls": 6 + }, + { + "kind": "fft", + "H_calls": 6 + }, + { + "kind": "diag", + "H_calls": 6 + } + ], + "coefficient_odometer": [ + { + "N": 2, + "g": 1, + "records": 2, + "coefficient_products": 2, + "products_per_record": 1.0, + "table_movement_bound": 2, + "zeros_in_table": true + }, + { + "N": 2, + "g": 8, + "records": 256, + "coefficient_products": 510, + "products_per_record": 1.9921875, + "table_movement_bound": 510, + "zeros_in_table": true + }, + { + "N": 4, + "g": 5, + "records": 1024, + "coefficient_products": 1364, + "products_per_record": 1.33203125, + "table_movement_bound": 1364, + "zeros_in_table": true + }, + { + "N": 8, + "g": 4, + "records": 4096, + "coefficient_products": 4680, + "products_per_record": 1.142578125, + "table_movement_bound": 4680, + "zeros_in_table": true + } + ], + "tensor_test": { + "N": 4, + "axes": 2, + "data_coordinates": 16, + "input_output_matrix_entries": 256, + "simultaneous_H_calls": 18, + "expected_H_calls": 18, + "dimension_expansion": false, + "different_axis_matchings": true, + "different_axis_gate_kinds": true, + "local_matching_endpoints_checked": true + } +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/TENSOR-COMPILER.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/TENSOR-COMPILER.md new file mode 100644 index 0000000000..19efb9cb1c --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/TENSOR-COMPILER.md @@ -0,0 +1,160 @@ +# Tensorizing local circuits without dimension padding + +Status: an algebraic compiler and scan-cost lemma. It reduces a tensor product of different bounded-depth local circuits to a bounded sequence of simultaneous binary Hadamard calls and diagonal scans on the **same** data volume. The retained supplier must support the stated Hadamard call on selected local bits and restore the agreed endpoint record order. No new fast-transform supplier is asserted here. + +## 1. Interface and conclusion + +Let N=2^m and let g axes each have N local coordinates. A coarse-label block contains V=N^g data records in lexicographic local-coordinate order. On axis a let C_a be an N-wire linear circuit of depth D; every layer consists of disjoint invertible two-coordinate gates and one-coordinate diagonals. The permitted gates are bounded shears, swaps, FFT butterflies, and diagonals. Circuits, pair matchings, coefficients and depths can differ by axis and by coarse label. Their tables are fixed independently of data values. + +Write H=[[1,1],[1,-1]]. A simultaneous Hadamard call means the tensor product of one H acting on one selected bit in each axis, with all remaining local and coarse coordinates as spectators. It acts on existing 2^g-coordinate fibers inside the N^g records; it allocates no new coordinate. The bit selected in an axis may be prescribed by the compiler. + +After padding shorter circuits by identity **operations**, the tensor product C_1 tensor ... tensor C_g is a sequence of + + at most (8m+2)D simultaneous H calls + +and O(Dm) tensor-diagonal scans. A tensor diagonal has the form + + d(i_1,...,i_g;c)=product_(a=1)^g d_a(i_a;c), + +where c is the fixed coarse label. Each diagonal scan uses O(1) amortized coefficient multiplications and O(1) amortized coefficient-table record movements per data record, after loading gN local values. The number of arithmetic-data coordinates remains exactly N^g throughout. + +If all local gate coefficients and inverses are bounded by B and all original prefix and inverse-prefix norms by Lambda, the compiler's local prefix bounds are Lambda times poly(B), up to absolute constants. For polynomial B and Lambda this is N^O(1). The tensor-prefix logarithmic bound is O(g log N). More generally depth D=polylog(p), B=poly(p), N=poly(p) gives an O(g polylog(p)) guard even without a stronger prefix theorem. + +An outer similarity whose logarithmic range is Q_a on axis a adds only sum_a Q_a. Therefore the retained phase-cell case Q_a=O(a d) uses + + p + O(g a d + g polylog(p)) + +working bits. The condition g a d+g polylog(p)=O(p) is sufficient for O(p)-bit records. + +## 2. Fixed Hadamard words, including zero shears + +All formulas below are matrix-product order; execution reads right to left. Let U(t)=[[1,t],[0,1]]. Direct multiplication gives + + H diag(2,1) H diag(-3,1) H = [[-8,-10],[0,-6]], + diag(-1/8,-1/6) H diag(2,1) H diag(-3,1) H = U(5/4). + +For q nonzero, conjugate by A_q=diag(4q/5,1): + + U(q)=A_q diag(-1/8,-1/6) H diag(2,1) H diag(-3,1) H A_q^-1. + +This has three H factors. To include t=0 with uniformly invertible diagonals, choose a known B>=|t| and c=2B+1. Then + + U(t)=U(t+c) U(-c). + +Both parameters have magnitude at least B+1 and at most 3B+1. This is a **six-H word for every t**, with all scalar coefficients and inverses bounded by poly(B). There is no division by t and no case split at t=0. Transpose the word to obtain the same six-H count for lower shears. + +There are two bounded identity words: + + I = (1/2) H H, + I = diag((1-i)/4,(1+i)/4) H diag(1,i) H diag(1,i) H. + +The second identity uses three H factors. Its middle product before the leading diagonal equals diag(2+2i,2-2i). Complex coefficients are permitted by the retained complex H interface. + +Consequently every gate type can be given **exactly six H factors**, separated by diagonal matrices: + +- Upper/lower shear: the six-H word above. +- Diagonal, including I: append three two-H identity words. +- Swap J: use J=(1/2)H diag(1,-1)H, then append two two-H identity words. +- FFT butterfly H diag(1,w), optionally scaled by 1/sqrt(2): append a two-H identity and a three-H identity. Here |w|=1. + +Combining neighboring diagonal matrices puts every word in one common alternating shape with six H factors and seven diagonals. Thus different gate types, zero parameters and inactive pairs can coexist in one simultaneous schedule without branches or padded data coordinates. + +## 3. Every matching can be routed to adjacent pairs + +For one local layer, assign its oriented pairs (i,j) to positions (2k,2k+1). Unpaired coordinates are assigned arbitrarily to the remaining positions, in pairs carrying diagonal or identity gates. This defines a permutation pi on exactly N coordinates. The layer equals + + P_pi^-1 (direct sum of adjacent-pair gates) P_pi. + +We use a Beneš network of 2m-1 switch layers. At each layer all switches join indices differing in one fixed bit; the bit sequence is + + 0,1,...,m-1,m-2,...,1,0. + +Here is a constructive proof of rearrangeability. Form a bipartite multigraph whose left vertices are input pairs {2j,2j+1} and whose right vertices are output pairs {2k,2k+1}. Input i supplies an edge to output-pair floor(pi(i)/2). Every vertex has degree two, so each component is an even cycle (parallel edges are allowed). Alternately color each cycle's edges 0 and 1. The first switch sends an input edge into the subnetwork of its color; the last switch sends that color to the required output parity. Each color class induces a permutation on N/2 pair indices. Recursively route both color subnetworks in parallel. This gives exactly the displayed bit sequence and uses no storage coordinates. + +The switch is either I or J. Both are obtained from the common two-H word + + S_epsilon=(1/2) H diag(1,epsilon) H, + epsilon=+1 for I, epsilon=-1 for J. + +Thus all axis-dependent switch controls are diagonal entries. A physical switch on bit k simply uses a simultaneous H call selecting bit k in each axis. No interstage wire shuffle is needed. If a supplier accepts only a contiguous selected-bit field, the existing paid bit router must gather that field and undo the gather; that is a supplier-interface cost, not an uncharged permutation. + +Each forward or inverse Beneš route uses 2(2m-1) H calls. The adjacent gates use six. Hence one original matching layer uses + + 2[2(2m-1)]+6 = 8m+2 + +H calls. The schedule is identical on every axis and every coarse-label block; only diagonal tables change. + +## 4. Tensor fusion is literal multiplication, not a sum expansion + +Let the compiled axis-a circuit be D_(a,L) H_(a,L) ... H_(a,1) D_(a,0), with the same number and arrangement of H factors. Kronecker multiplication gives + + tensor_a C_a + = (tensor_a D_(a,L)) (tensor_a H_(a,L)) ... + (tensor_a H_(a,1)) (tensor_a D_(a,0)). + +Every tensor of diagonals is a single diagonal scan. Every tensor of binary H factors is one simultaneous H call. This introduces neither a sum of 2^g branches nor a 2^g padding factor. The 2^g-dimensional Hadamard fibers are subsets of the N^g existing coordinates. + +An axis with no work at a particular original depth receives an identity layer, routed and compiled with the same fixed shape. Its intermediate H operations are still present, but the complete local word is I. Coarse-label variation is equally harmless: for each fixed label the identity above holds separately, and the whole data operator is a direct sum over labels. + +## 5. Uniform intermediate bounds and precision + +A completed switch route is a permutation and has norm one. Each partial switch word has absolute constant norm and inverse norm. Between original local circuit boundaries, at most one original gate word is partially executed. Its length is constant, and its scalar coefficients and inverses are poly(B); all different pairs act as a direct sum. Therefore + + max_prefix ||C_compiled,prefix||, + max_prefix ||C_compiled,prefix^-1|| <= poly(B) Lambda. + +The length O(D log N) does not require multiplying this polynomial bound afresh at every stage: completed original prefixes already have bound Lambda; completed route and padding words have their exact intended endpoints. The corresponding suffix bound is also polynomial when the original endpoint and inverse-prefix bounds are. + +For g tensor factors, the operator norms multiply, so their logarithms add. A microbox coarse-label direct sum takes the maximum over labels, not a product over labels. Hence polynomial local bounds give exp(O(g log N)); using only the rough original bound Lambda<=(2B)^D gives exp(O(gD log B)). Adding the original cell similarity contributes exp(sum Q_a). + +The number of compiled stages is polylog(p). Allocate each rounding or supplied-transform error below the final tolerance divided by this stage count and the prefix/suffix amplification. This costs O(g polylog(p)+sum Q_a) guard bits. Supplier-internal precision charges still must be those already guaranteed for the simultaneous H call; this compiler does not erase them. + +## 6. Product diagonals with constant amortized scan cost + +Fix one diagonal stage and one coarse label. Load the gN coefficients d_a(i) on a coefficient tape in axis order. Use base-N lexicographic enumeration with axis 0 fastest. Store suffix products + + P_j=product_(a=j)^(g-1) d_a(i_a), 1<=j=1) k/N^k = O(V), + +plus O(g) initialization. No division by d_a(i) is used, so this method also permits zero diagonal entries when an external application permits them. Every cached product is recomputed from current factors, never updated by a long chain of multiplicative ratios, so numerical drift does not depend on the number of records scanned. + +The same accounting works on a fixed number of tapes. Keep the coefficient-tape head normally in axis-0's N-record table. Rewinding that table costs O(N) once per N records. A depth-k carry visits the needed tables up to axis k and returns, moving O(kN) coefficient records. Summing over carries gives + + O(V sum_(k>=1) kN/N^k)=O(V) + +record moves. The suffix-product tape is accessed near its front except on carries, with the same geometric bound. Counter/address arithmetic costs only polylog(p) per record. This does not require g work tapes or a random-access lookup every record. + +The table loading cost is O(gN) records per coarse block and stage. For N>=2 it is O(N^g), including small g, and polynomial-time table construction is negligible per N^g block in the retained asymptotic regime g=p^beta tending to infinity. If tables are supplied rather than constructed locally, no additional assumption is needed. Both generation and loading costs must be charged once per visited coarse block, not silently once for the entire input. + +At O(p) working precision, O(1) amortized scalar multiplications per record and O(1) record movements cost O(V_bits polylog(p)) under the retained pointwise-arithmetic kernel, where V_bits counts bit volume. There is no g V_bits coefficient-generation term. + +## 7. Exact controls + +`check_tensor_compiler.py` constructs the network controls and all fixed words. `TENSOR-COMPILER-CONTROLS.json` records: + +- every permutation for N=2,4,8, including all 40,320 permutations at N=8; +- 100 random permutations each at N=16,32,64; +- exact symbolic checks of upper/lower zero and nonzero shears, diagonal, Swap and FFT words; +- an exact two-axis N=4 replay with different axis matchings and gate types: 16 data coordinates, all 256 input-output matrix entries, 18 simultaneous H calls, no dimension expansion. + +The finite controls support the constructive proofs; the cycle coloring, word identities, Kronecker identity and geometric scan sums establish the asymptotic statements. + +## 8. Cost substitution into the retained supplier + +Suppose a simultaneous H call on g selected bits, across V_bits bits of data and spectators, has paid cost O(V_bits g^(1-q) polylog(p)). Suppose also that any required bit-field gather/restore has cost O(V_bits g^(1-a_bit) polylog(p)). For D=polylog(p), N=poly(p), the compiler uses only polylog(p) such calls, and its diagonal scans cost O(V_bits polylog(p)). Thus the grouped local circuit costs + + O(V_bits [g^(1-q)+g^(1-a_bit)+1] polylog(p)). + +When a_bit>q and 0= j else row[j-i] + for j in range(n)] for i in range(n)]) + + +def lower(c): + return toep(c) + + +def invseries(f): + n = len(f) + ans = np.zeros(n, complex) + ans[0] = 1 / f[0] + for j in range(1, n): + ans[j] = -sum(f[k] * ans[j-k] for k in range(1, j+1)) / f[0] + return ans + + +def conv(a, b, n): + return np.convolve(a, b)[:n] + + +def diag(indices, values): + return [[((int(i),), np.array([[v]], complex)) for i, v in zip(indices, values)]] + + +def inverse(plan): + return [[(ids, np.linalg.inv(g)) for ids, g in layer] + for layer in reversed(plan)] + + +def parallel(a, b): + return [(a[j] if j < len(a) else []) + (b[j] if j < len(b) else []) + for j in range(max(len(a), len(b)))] + + +def fft(indices): + n = len(indices) + if n <= 1: + return [] + assert n & (n - 1) == 0 + bits = n.bit_length() - 1 + rev = [int(f"{j:0{bits}b}"[::-1], 2) for j in range(n)] + plan = [[((indices[i], indices[j]), np.array([[0, 1], [1, 0]], complex)) + for i, j in enumerate(rev) if i < j]] + size = 2 + while size <= n: + layer = [] + for start in range(0, n, size): + for j in range(size // 2): + w = np.exp(-2j * np.pi * j / size) + layer.append(((indices[start+j], indices[start+j+size//2]), + np.array([[1, w], [1, -w]], complex) / math.sqrt(2))) + plan.append(layer) + size *= 2 + return plan + + +def circ_shear(target, source, kernel): + """target += circulant(kernel) source, using these wires only.""" + p = parallel(fft(target), fft(source)) + lams = np.fft.fft(kernel) + mid = [[((source[j], target[j]), np.array([[1, 0], [lams[j], 1]], complex)) + for j in range(len(source))]] + return p + mid + inverse(p) + + +def toeplitz_shear(target, source, T): + """Cyclic + negacyclic decomposition; source and target are disjoint.""" + n = len(source) + assert T.shape == (n, n) and len(target) == n + c, r = T[:, 0], T[0, :] + g = np.zeros(n, complex) + h = np.zeros(n, complex) + g[0] = h[0] = c[0] / 2 + for j in range(1, n): + g[j] = (c[j] + r[n-j]) / 2 + h[j] = (c[j] - r[n-j]) / 2 + gamma = np.exp(1j * np.pi / n) + d = gamma ** np.arange(n) + twists = parallel(diag(target, d), diag(source, d)) + return (circ_shear(target, source, g) + twists + + circ_shear(target, source, d * h) + inverse(twists)) + + +def triangle_plan(indices, f): + n = len(indices) + STATS["triangle_nodes"] += 1 + STATS["max_triangle_coefficient"] = max( + STATS["max_triangle_coefficient"], float(np.max(np.abs(f)))) + if n == 1: + return diag(indices, f) + assert n % 2 == 0 + m = n // 2 + ev, od = indices[::2], indices[1::2] + e, o = np.asarray(f[::2]), np.asarray(f[1::2]) + k = conv(o, invseries(e), m) + zk = np.r_[0, k[:-1]] + s = e - np.r_[0, conv(o, k, m)[:-1]] + right = toeplitz_shear(ev, od, lower(zk)) + middle = parallel(triangle_plan(ev, e), triangle_plan(od, s)) + left = toeplitz_shear(od, ev, lower(k)) + return right + middle + left + + +def lowdisp_shear(target, source, T): + n = len(source) + Z = np.eye(n, k=-1) + Delta = T - Z @ T @ Z.T + U, vals, Vh = np.linalg.svd(Delta) + cutoff = 1e-11 * max(1.0, vals[0]) + rank = int(np.sum(vals > cutoff)) + STATS["max_displacement_rank"] = max(STATS["max_displacement_rank"], rank) + STATS["generator_shears"] += 1 + result = [] + reconstructed = np.zeros_like(T) + for j in range(rank): + g = U[:, j] + h = vals[j] * Vh[j, :] + STATS["max_generator_entry"] = max( + STATS["max_generator_entry"], float(np.max(np.abs(g))), + float(np.max(np.abs(h)))) + reconstructed += lower(g) @ lower(h).T + gamma = max(1.0, 2 * float(np.sum(np.abs(h)))) + p = h / gamma + p[0] += 1 + # U(h)=J L(h) J. This is a genuinely invertible source transform. + transform = triangle_plan(source[::-1], p) + result += transform + result += toeplitz_shear(target, source, gamma * lower(g)) + result += inverse(transform) + result += toeplitz_shear(target, source, -gamma * lower(g)) + assert np.max(np.abs(T - reconstructed)) < 1e-9 + return result + + +def full_plan(indices, M): + n = len(indices) + STATS["full_nodes"] += 1 + if n == 1: + return diag(indices, [M[0, 0]]) + m = n // 2 + A, B, C, D = M[:m, :m], M[:m, m:], M[m:, :m], M[m:, m:] + K = np.linalg.solve(A, B) + L = np.linalg.solve(A.T, C.T).T + S = D - C @ K + right = lowdisp_shear(indices[:m], indices[m:], K) + mid = parallel(full_plan(indices[:m], A), full_plan(indices[m:], S)) + left = lowdisp_shear(indices[m:], indices[:m], L) + return right + mid + left + + +def replay(plan, n, track=True): + out = np.eye(n, dtype=complex) + peak = 1.0 + min_det = 1.0 + for layer in plan: + used = set() + for ids, g in layer: + assert not used.intersection(ids), "non-disjoint layer" + used.update(ids) + min_det = min(min_det, float(abs(np.linalg.det(g)))) + out[list(ids), :] = g @ out[list(ids), :] + if track: + peak = max(peak, float(np.linalg.norm(out, 2))) + STATS["min_gate_determinant"] = min(STATS["min_gate_determinant"], min_det) + return out, peak + + +def main(): + rng = np.random.default_rng(20261013) + rows = [] + for n in [2, 4, 8, 16]: + f = rng.normal(size=n) / (12 * n) + f[0] += 1 + p = triangle_plan(list(range(n)), f) + actual, peak = replay(p, n) + rows.append({"kind": "triangular", "n": n, "rounds": len(p), + "gates": sum(map(len, p)), + "max_error": float(np.max(np.abs(actual-lower(f)))), + "peak_prefix_norm_2": peak}) + + c = rng.normal(size=n) / (20 * n) + r = rng.normal(size=n) / (20 * n) + c[0] += 1 + H = toep(c, r) + p = full_plan(list(range(n)), H) + actual, peak = replay(p, n, track=n <= 8) + rows.append({"kind": "full_toeplitz", "n": n, "rounds": len(p), + "gates": sum(map(len, p)), + "max_error": float(np.max(np.abs(actual-H))), + "peak_prefix_norm_2": peak if n <= 8 else None, + "input_distance_from_I_2": float(np.linalg.norm(H-np.eye(n), 2))}) + # Destructive control: dropping the second subtraction computes the wrong map. + # Independent direct parity block algebra across a range of sizes. + identities = [] + for n in [2, 4, 8, 16, 32]: + f = rng.normal(size=n) / n + f[0] += 2 + m = n // 2 + e, o = f[::2], f[1::2] + k = conv(o, invseries(e), m) + s = e - np.r_[0, conv(o, k, m)[:-1]] + E, O, K = lower(e), lower(o), lower(k) + Z = np.eye(m, k=-1) + left = np.block([[np.eye(m), np.zeros((m,m))], [K, np.eye(m)]]) + diagblock = np.block([[E, np.zeros((m,m))], [np.zeros((m,m)), lower(s)]]) + right = np.block([[np.eye(m), Z@K], [np.zeros((m,m)), np.eye(m)]]) + order = list(range(0,n,2)) + list(range(1,n,2)) + exact = lower(f)[np.ix_(order,order)] + identities.append({"n": n, "error": float(np.max(np.abs(left@diagblock@right-exact)))}) + sylvester = [] + for b in [1, 2, 4, 8]: + f = np.array([1.0]) + g = np.array([1.0]) + for j in range(b): + f = np.convolve(f, [1.0, 256.0 ** (j-b+0.5)]) + g = np.convolve(g, [1.0, 256.0 ** (-j-0.5)]) + fp = np.r_[f, np.zeros(3*b+2-len(f))] + fi = invseries(fp) + def hc(k): + return sum(g[v]*fi[k+v] for v in range(b+1) if 0 <= k+v < len(fi)) + K = np.array([[hc(i-b-j) for j in range(b)] for i in range(b)]) + H = np.array([[hc(i-j) for j in range(b)] for i in range(b)]) + S = np.zeros((2*b, 2*b), complex) + for j in range(b): + for k in range(b+1): + if j+k < 2*b: + S[j+k, j] += f[k] + if 0 <= b+j-k < 2*b: + S[b+j-k, b+j] += g[k] + inds = list(range(2*b)) + p = toeplitz_shear(inds[:b], inds[b:], K) + p += full_plan(inds[b:], H) + p += triangle_plan(inds, np.r_[f, np.zeros(2*b-len(f))]) + actual, peak = replay(p, 2*b, track=b <= 4) + sylvester.append({"b": b, "total_wires": 2*b, "rounds": len(p), + "gates": sum(map(len, p)), + "max_error": float(np.max(np.abs(actual-S))), + "H_minus_I_norm_1": float(np.linalg.norm(H-np.eye(b), 1)), + "H_minus_I_norm_infinity": float(np.linalg.norm(H-np.eye(b), np.inf)), + "peak_prefix_norm_2": peak if b <= 4 else None}) + # Removing the compensating dirty subtraction must fail. + b = 4 + gi, hi = np.array([1, .02, .01, .005]), np.array([.1, .04, .02, .01]) + pi = hi.copy() + pi[0] += 1 + target = np.block([[np.eye(b), np.zeros((b,b))], [lower(gi)@lower(hi).T, np.eye(b)]]) + pp = triangle_plan(list(range(b))[::-1], pi) + correct = pp + toeplitz_shear(list(range(b, 2*b)), list(range(b)), lower(gi)) + inverse(pp) + broken_actual, _ = replay(correct, 2*b, track=False) + correct += toeplitz_shear(list(range(b, 2*b)), list(range(b)), -lower(gi)) + correct_actual, _ = replay(correct, 2*b, track=False) + omission = {"correct_error": float(np.max(np.abs(correct_actual-target))), + "omit_second_subtraction_error": float(np.max(np.abs(broken_actual-target)))} + result = {"seed": 20261013, "note": "Floating replay supports, does not replace, algebraic proof.", + "controls": rows, "polyphase_identity": identities, + "normalized_sylvester": sylvester, "omission_control": omission, "stats": STATS} + (ROOT / "CIRCUIT-REPLAY.json").write_text(json.dumps(result, indent=2)+"\n") + print(json.dumps(result, indent=2)) + + +if __name__ == "__main__": + main() diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_exact_algebra.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_exact_algebra.py new file mode 100644 index 0000000000..4f0180c88f --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_exact_algebra.py @@ -0,0 +1,157 @@ +"""Exact rational checks of parity LU and displacement rank closure.""" +from fractions import Fraction as F +from pathlib import Path +import json +import random + + +def zeros(n, m=None): + return [[F(0) for _ in range(n if m is None else m)] for _ in range(n)] + + +def eye(n): + a = zeros(n) + for i in range(n): + a[i][i] = F(1) + return a + + +def mm(a,b): + return [[sum(a[i][k]*b[k][j] for k in range(len(b))) + for j in range(len(b[0]))] for i in range(len(a))] + + +def add(a,b,sgn=1): + return [[x+sgn*y for x,y in zip(r,s)] for r,s in zip(a,b)] + + +def inv(a): + n=len(a) + q=[r[:] + s for r,s in zip(a,eye(n))] + for j in range(n): + k=next(k for k in range(j,n) if q[k][j]) + q[j],q[k]=q[k],q[j] + v=q[j][j] + q[j]=[x/v for x in q[j]] + for i in range(n): + if i!=j: + v=q[i][j] + q[i]=[x-v*y for x,y in zip(q[i],q[j])] + return [r[n:] for r in q] + + +def rank(a): + a=[r[:] for r in a] + k=0 + for j in range(len(a[0])): + p=next((i for i in range(k,len(a)) if a[i][j]),None) + if p is None: + continue + a[k],a[p]=a[p],a[k] + v=a[k][j] + a[k]=[x/v for x in a[k]] + for i in range(k+1,len(a)): + v=a[i][j] + a[i]=[x-v*y for x,y in zip(a[i],a[k])] + k+=1 + if k==len(a): + break + return k + + +def block(a,b,c,d): + return [r+s for r,s in zip(a,b)] + [r+s for r,s in zip(c,d)] + + +def lo(f): + return [[f[i-j] if i>=j else F(0) for j in range(len(f))] + for i in range(len(f))] + + +def shift(n): + a=zeros(n) + for i in range(1,n): + a[i][i-1]=F(1) + return a + + +def displacement(a): + z=shift(len(a)) + return add(mm(z,a),mm(a,z),-1) + + +def series_inv(f): + g=[1/f[0]] + for i in range(1,len(f)): + g.append(-sum(f[j]*g[i-j] for j in range(1,i+1))/f[0]) + return g + + +def conv(a,b,n): + return [sum(a[j]*b[i-j] for j in range(i+1) + if j=j else r[j-i] for j in range(n)] for i in range(n)] + walk(H) + receipt={"status":"pass","arithmetic":"exact rational", + "parity_instances":parity,"schur_nodes":trace} + Path(__file__).with_name('EXACT-ALGEBRA.json').write_text(json.dumps(receipt,indent=2)+'\n') + print(json.dumps({"status":"pass","parity_instances":len(parity), + "parity_entries":sum(x['matrix_entries_checked'] for x in parity), + "schur_nodes":len(trace)},indent=2)) + + +if __name__=='__main__': + main() diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_supplier_capacity.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_supplier_capacity.py new file mode 100644 index 0000000000..65b20b8b68 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_supplier_capacity.py @@ -0,0 +1,47 @@ +"""Exact capacity controls in the large-g, gG >> single-axis-ell regime.""" +from pathlib import Path +from fractions import Fraction +import hashlib +import json + + +def main(): + # p itself has one million binary exponent bits. Only short descriptions + # and modest exact powers are needed; no input tensor is materialized. + logp=1_000_000 + eps=Fraction(998,1000) + beta=Fraction(93,1000) + interior=Fraction(907,1000) + d_exp=int(eps*logp) + g_exp=int(beta*logp) + ell_exp=logp-d_exp + g=1<ell + assert reserved<=g//16 + assert (g*K*G).bit_length() 2` is a fixed rational number. There is a single, uniform algorithm, with a fixed finite description, with the following properties. + +* Its recursive block multiplication uses a fixed finite bilinear formula whose coefficients are computable algebraic complex numbers. +* Given two `W` by `W` complex dyadic matrices with component magnitudes at most `2^h`, it computes their product with maximum entrywise absolute error at most `2^{-p}` in + +\[ +O\!\left(W^\tau M(p+h+\log(W+1))\right) +\] + +bit operations. Here `M(t)` is a regular integer multiplication bound: `M(t) >= t`, `M(Ct)=O_C(M(t))` for fixed `C`, and precision doubling sums to `O(M(t))`. All constants can depend on the chosen fixed block formula. +* If the input encoding has `h = O(p)`, this is + +\[ +O\!\left(W^\tau M(p+\log(W+1))\right). +\] + +If also `log W = O(p)`, it is exactly `O(W^tau M(p))`, without a suppressed logarithmic factor. In particular this holds for `W = Theta(sqrt(p))`. + +The strict exponent slack is essential to this statement: an exponent infimum does not by itself supply a finite scheme attaining that infimum. If a source proves `omega_C <= 9/4`, one may take any fixed rational `tau` with `9/4 < tau < 5/2`, for example `tau = 19/8`. + +The proof below also gives an exponent strictly below a specified threshold from only the promise that `omega_C` is below that threshold. It does not give useful numerical constants or an efficient way to discover the block formula. + +## 1. A finite exact bilinear formula exists with exponent slack + +Write `R(b)` for the exact complex tensor rank of `b` by `b` matrix multiplication. Use the usual equivalent definition + +\[ +\omega_{\mathbb C}=\inf_{b\ge2}\log_b R(b). +\] + +Thus some fixed integers `b >= 2` and `r` satisfy + +\[ +R(b)\le r= 2`, `r >= 1` satisfying `r < b^tau`; +2. finite encoded algebraic tuples of the required length; +3. exact tests of all rank equations. + +For rational `tau=a/d`, the first comparison is the integer comparison `r^d < b^a`. The search halts under the stated exponent promise, by Sections 1 and 2. Its output supplies the single fixed block formula. This search may be extremely expensive, but its cost is an absolute constant independent of `W,p,h`, so including it does not change the asymptotic bound. The same result can be phrased by fixing the first successful tuple once and for all. + +For just the promise `omega_C < 5/2`, search using `r^2 < b^5`. Upon success choose a rational `sigma` with + +\[ +\max\{2,\log_b r\}<\sigma<5/2. +\] + +The resulting algorithm has exponent at most `sigma < 5/2`. Thus one need not know a numerical gap in advance to obtain a uniform algorithm below the threshold. A practical certificate or practical constant is a separate issue. + +## 4. Each fixed algebraic coefficient has an ordinary `O(M(q))` precision algorithm + +Every chosen coefficient has a fixed minimal polynomial and a fixed isolating region. In characteristic zero its minimal-polynomial root is simple. Fix a rational starting approximation in a sufficiently small Newton convergence neighborhood. Newton iteration with successively doubled precision computes the root to absolute error `2^{-q}` with `O(M(q))` bit operations. + +The polynomial degree, coefficient heights, root separation, initial precision, and bounds on the derivative and its reciprocal are all fixed constants here. Polynomial evaluation, complex division, and the finite number of operations per Newton step cost `O(M(t))` at precision `t`; the usual precision-doubling sum is `O(M(q))`. This is not a claim uniform in algebraic degree or height. + +There are only finitely many block coefficients. Compute their dyadic approximations once at the precision needed for the current multiplication, and reuse them at all recursive nodes. This costs `O(M(q))` total, with a formula-dependent constant, rather than a logarithmic factor per scalar operation. + +## 5. Recursive arithmetic work + +Pad the matrices with zeros to size `N=b^L`, where `W <= N < bW` (and handle `W=1` directly). At each node, form the fixed `r` input linear combinations, recursively multiply the corresponding submatrices, and form the fixed output linear combinations. + +The arithmetic operation count satisfies + +\[ +T(N)\le rT(N/b)+O(N^2). +\] + +Let `rho=log_b r`. If `rho>2`, this is `O(N^rho)`; if `rho=2`, it is `O(N^2 log N)`; and if `rho<2`, it is `O(N^2)`. Every case is `O(N^tau)` because `rho2`. In particular the possible equality case `r=b^2` creates no extra factor in the advertised bound: its logarithm is absorbed by the fixed exponent slack. + +One could instead tensor a fixed formula a fixed number of times and add a zero product to arrange `b^2 < r < b^tau`, obtaining an exact recursion exponent `rho` strictly between two and `tau`. This refinement is unnecessary for the advertised `O(W^tau)` conclusion. + +## 6. Fixed-point roundoff grows only polynomially in the dimension + +Use fixed-point complex arithmetic with `q` fractional bits, round after scalar products, and use dyadic block coefficients whose absolute errors are at most + +\[ +\epsilon=2^{-q}. +\] + +Complex arithmetic introduces only absolute constant factors. Additions may be done exactly on this fixed grid; allowing an additional absolute error `O(epsilon)` after an addition also satisfies the following bounds. + +For a multiplication node with remaining depth `d`, let `a,beta >= 1` bound the maximum absolute entries of its two inputs. There is a fixed constant `K`, depending only on the block formula, such that the computed result obeys + +\[ +\|\widehat T_d(A,B)-AB\|_{\max} +\le \epsilon E_d a\,\beta, +\qquad +E_d\le K E_{d-1}+K b^{d-1},\quad E_0\le K. +\] + +Here the symbol `b` in `b^{d-1}` is the fixed block dimension; `beta` is the second input bound. + +To verify the recurrence, every local input linear combination has fixed length and fixed coefficients. Its rounded value differs from its exact value by at most `c epsilon a` or `c epsilon beta`, and its size is at most `S a` or `S beta`, for fixed `c,S`. Applying the inductive child bound therefore contributes at most + +\[ +c\epsilon E_{d-1}a\beta. +\] + +Perturbing the two child inputs in their *exact* matrix product contributes at most + +\[ +c\epsilon b^{d-1}a\beta, +\] + +because each entry of that child product sums `b^{d-1}` scalar products. Finally, the output reconstruction has fixed length and fixed coefficients. Propagation through its exact coefficients is a fixed factor; coefficient approximation and reconstruction rounding contribute at most + +\[ +c\epsilon\bigl(b^{d-1}+\epsilon E_{d-1}+1\bigr)a\beta. +\] + +For `epsilon <= 1`, all these terms have the stated recurrence after enlarging `K`. Taking `K >= 2b` gives `E_d <= C K^d` for a fixed `C`. Thus at the root + +\[ +\|\widehat T_L(A,B)-AB\|_{\max} +\le C\,2^{-q}K^L a\beta +=2^{-q}N^{O(1)}a\beta. +\] + +For root input magnitude at most `2^h`, take `a=beta=max(1,2^h)` and choose + +\[ +q=p+2\max(h,0)+\lceil L\log_2K\rceil+O(1). +\] + +The final absolute error is then at most `2^{-p}`. + +There is also no hidden exponential-in-precision magnitude growth. Along a path, each preprocessing step multiplies a magnitude envelope by a fixed `S`. A node at depth `t` therefore receives inputs bounded by `S^t a` and `S^t beta`. Its computed output is bounded by its exact product size plus the proved error: + +\[ +\bigl(b^{L-t}+\epsilon C K^{L-t}\bigr)S^{2t}a\beta. +\] + +Local scalar products and partial sums obey the same bound up to fixed factors. All intermediate magnitudes are consequently `N^{O(1)} max(1,2^{2h})`. Only `O(h+log N)` integer bits are needed. The total working bit width is therefore `O(p+h+log N)`. + +The polynomial error estimate exploits the structure of a bilinear recursion: linear preprocessing, one variable-by-variable scalar product at a leaf, and linear reconstruction. Bounding an arbitrary multiplication by the largest intermediate magnitude at every level would give an unnecessarily pessimistic estimate and is not the argument used here. + +## 7. Bit complexity and scope + +Every scalar operation uses `O(p+h+log W)` bits and costs `O(M(p+h+log W))`. Multiplying by the `O(W^tau)` arithmetic operation count proves the statement. Padding, input conversion, output rounding, and storage of the fixed coefficient approximations fit the same bound. + +The result supplies absolute accuracy. It does not promise small relative error in entries canceled nearly to zero. It applies to arbitrary fixed finite complex bilinear formulas; large fixed coefficient heights or norms worsen only the constants and the fixed multiple of `log W` in the precision requirement. + +An exponent theorem alone therefore suffices for computable, stable approximate multiplication with any fixed strictly larger exponent. It does not justify using the exact infimum exponent without slack, treating a varying family of coefficients as fixed, or claiming a concrete efficient implementation without constructing its constants. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/MANIFEST.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/MANIFEST.json new file mode 100644 index 0000000000..5a943f0fd6 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/MANIFEST.json @@ -0,0 +1,35 @@ +{ + "status": "MATRIX_BOUNDARY_TRANSFER_SIGNED_OFF", + "scope": "Full 9/4 source audit plus effective fixed algebraic rank scheme and approximate p-bit transfer; no final outer ledger promotion.", + "target_exponent": "19/8", + "source_rank_exponent_bound": "9/4", + "poly_W_error_growth": true, + "computable_fixed_selection": true, + "files": [ + { + "name": "PROOF-AND-COVERAGE.md", + "bytes": 12130, + "sha256": "db7509d754bb7fc3381419e0fed2674f22a9d57d34e8420fd5afa3c688fde9aa" + }, + { + "name": "ALGEBRAIC-STABILITY-INDEPENDENT.md", + "bytes": 11743, + "sha256": "7873e7d9a99fdc9de3ee224b9925d3e277e9773d7f5f8c2d0f1c19b0e52bc87f" + }, + { + "name": "SOURCE-COVERAGE.json", + "bytes": 2839, + "sha256": "fdc6849f97999a6cf99cdaa50591d24f78d6fb0bc580315f205452e5906b35cc" + }, + { + "name": "SOURCE-CONSTRUCTIONS.json", + "bytes": 21018, + "sha256": "114c1d8fb70592455a80c73d8a1bc6bfc9aca4e7395a420b6331d5474b4d1917" + }, + { + "name": "check_source_constructions.py", + "bytes": 6388, + "sha256": "9d387098403c0355be8e93158df02bae5a435b2366bd28efdf0b127e470c8c1c" + } + ] +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/PROOF-AND-COVERAGE.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/PROOF-AND-COVERAGE.md new file mode 100644 index 0000000000..1a98011b1f --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/PROOF-AND-COVERAGE.md @@ -0,0 +1,91 @@ +# Matrix boundary transfer: full-source audit and interface signoff + +Status: the supplied 9/4 source supports the matrix boundary substitution, with strict exponent slack. This is a theorem-level, computable asymptotic transfer. It is not a numerical finite-size rank certificate and it does not remove any supplier or computational-interface assumptions in the outer integer-multiplication argument. + +The independent reader for this note read all 1,022 lines of +`/Users/vlado/Downloads/math-main/preprints/Matrix-Multiplication-Nine-Fourths-October-2-2026/build/paper.tex` +in order, including the full character-existence appendix and all bibliography entries, and also read the README. The companion 2.258 paper is unnecessary for this transfer and is not claimed as read in this new audit. + +## 1. Source coverage + +| Source lines | Material read | Audit result | +|---|---|---| +| 1–36 | Preamble, title, abstract | Establishes complex arithmetic setting. | +| 37–141 | Introduction, theorem and proof route | Explicitly promises an asymptotic exponent, not a competitive finite size. | +| 142–203 | Tensor semiring, rank, characters, detecting lemma | Uses exact rank and mutual restriction. Rank need only be subadditive; no false additivity assumption. | +| 204–235 | Oriented dot-product exponents | Monotonic completely multiplicative functions give power laws; tensor product of the three orientations is square matrix multiplication. | +| 236–269 | Degenerations and interpolation | Fixed degeneration degree is handled before the tensor-power limit. No uniform-in-power degree assumption is made. | +| 270–349 | Finite shared-leg separation | Fourier relation is exact since the phase has absolute size below 5M. Surviving weights equal `(g-h)^2`; the retained auxiliary dot index is distinct from the direct-sum block index. | +| 350–391 | Shared-leg entropy | The factor M cancels correctly before the N-th-root limit. Fixed-frequency counts and continuity cover every probability vector. | +| 392–432 | Polynomial multiplication and symmetrized profile | Rank is exactly a+b−1 by interpolation and output flattening. All six leg permutations are needed for the later middle branch. | +| 433–523 | Determinant filtration and discrete concavity | Fixed input/output bases work for every first-input slice. Multiplication preserves the determinant submodule; the forbidden upper-right block vanishes. The residual lower-left block receives positive weight. | +| 524–604 | Three sectors and shifted tripling | Outer sectors equal C(a,h); the middle is obtained by reversing the first basis and exchanging its second/third legs. This is an identification of an individual block and does not apply incompatible maps to the shared first leg. | +| 605–651 | Diagonal growth | Concavity gives the stated two-increment recurrence; H_a grows at least as a^(1/3). | +| 652–689 | Spectral bound, rank bound, recursion | Detecting characters may depend on d. The conclusion is `nu<=9/4`; selecting a fixed rank scheme requires a strict larger exponent. Rectangular block substitution preserves product order. | +| 690–699 | Algebraic-coefficient remark | The source explicitly allows replacing a complex solution of rational rank equations by a point over Qbar. | +| 700–769 | Appendix: invariant state family and multiplicativity | The fixed-point map is continuous, not asserted affine. Freezing its scalar eigenvalue produces a compact convex invariant subset, permitting finite intersections. | +| 770–905 | Appendix: detecting state existence | Finite rational separation gives an additive catalyst. Reuse keeps one s factor; no tensor cancellation is assumed. Amplification with a second multiplication tensor gives the contradiction to k9/4`. + +If the surrounding proof allows polylog p factors, the bandwidth's polylogs remain polylogs; no positive power of p is introduced by coefficient approximation or error amplification. The algorithm provides absolute accuracy, which is what local residual bounds use. It makes no relative-error promise for nearly canceled output entries. + +The recursion can also be scheduled with sequential tapes. At one fixed-base node, its fixed number of input block combinations and output block sums require a fixed number of complete scans and fixed block permutations of `O(n^2)` records. Store child inputs consecutively, process children depth-first, and stream their returned blocks into accumulators. Copying a pending-child region or repositioning a finite set of tapes costs another `O(n^2)`-record pass at that node, already covered by the recurrence's addition term. Addresses and recursion descriptions add at most logarithmic factors. If any implementation retains an additional `polylog W` factor, choose the rank scheme first with exponent strictly between 9/4 and the stated target tau, leaving enough fixed exponent slack to absorb it. No algebraic unit-cost random-access assumption is needed for the target power tau. + +## 4. Boundary substitution and the outer ledger + +The existing capped boundary algebra uses W simultaneous right-hand sides. A square product costs `O(W^tau M(p))`; dividing by W² processed entries gives `O(W^(tau-2) M(p))` per entry. One axis has `O(V W/B)` boundary entries, and there are d axes. Its total is consequently + +`O(V (d/B) W^(tau-1) [M(p)/p] polylog p)` + +when V is the total bit volume, as in the phase-assembly notes. There are V/Theta(p) scalar entries, so the factor M(p)/p is the per-bit arithmetic charge. Equivalently, if V counts scalar entries instead, the formula has M(p) without the division. The retained quasi-linear short multiplier has M(p)/p=polylog p. + +This retains the essential d/B factor. With `d=p^epsilon`, `B=p^b`, and `W=p^(1/2) polylog p`, its normalized exponent is + +`epsilon-b+(tau-1)/2`. + +Taking `tau=19/8` gives `(tau-1)/2=11/16` and boundary saving `5/16+b-epsilon`. This is already more than enough to put the basic sparse-union cost near the binding row at b near 3/4. Pushing tau down to the unattained endpoint 9/4 is unnecessary. + +The changed matrix algorithm has the same input/output interface as the former Strassen product. It does not change the original Gaussian matrix, boundary support, anchored gauge, square-block inverse choice, or number of right-hand sides. The surrounding local-residual proof must still supply polynomial bounds on local exact inverses and partial right-hand sides. The new product's error is `poly(p)2^-P`, so that proof applies with a fixed larger guard constant. + +The optional full-coordinate-key surcharge in the old arithmetic ledger would become binding if mechanically retained at b near 3/4. It is not part of the actual rectangle extraction/one-field transpose/ordered-merge algorithm, as confirmed by the separate phase-layout audit. Dropping it is a distinct layout fact, not a consequence of matrix multiplication. It must remain explicitly justified in the final outer ledger. All retained supplier assumptions remain in force. + +No final improved outer exponent is claimed in this note; that requires the whole ledger and the independent group-layout/gauge checks. + +## 5. Exact controls run in this audit + +`check_source_constructions.py` uses only Python's exact rational arithmetic and writes `SOURCE-CONSTRUCTIONS.json`: + +* Finite Fourier/separation support for M=1,...,12: the modular relation has no wraparound and zero weight is exactly g=h,u=v. +* Determinant change of basis for a=1,...,8 and b=2,...,8, for every first-input monomial: quotient and kernel diagonal slices are exactly the two claimed neighboring convolution tensors; the upper-right block vanishes. +* Three-sector identity for a,h=1,...,14: all weights are nonnegative and each of the three retained branches is exactly the claimed tensor after its permitted identification. +* Exact rational diagonal product lower bound through a=300. + +All controls passed. They detect several relevant implementation mistakes but are not a finite substitute for the universal arguments above or for the theorem's nonconstructive rank-existence step. + +## 6. Deliberate limitations + +There is no generated competitive finite matrix scheme, no numeric claim about its constants, no use of a rank formula at exponent exactly 9/4, and no fast algorithm for finding the first successful algebraic tuple. The algorithm remains computable and uniform because the finite search halts under the proved existence statement and its cost is independent of the growing input. The outer conclusion remains conditional on exactly the previously retained supplier/computational assumptions. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/SOURCE-CONSTRUCTIONS.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/SOURCE-CONSTRUCTIONS.json new file mode 100644 index 0000000000..65880dc95c --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/SOURCE-CONSTRUCTIONS.json @@ -0,0 +1,1356 @@ +{ + "status": "PASS_EXACT_SOURCE_CONTROLS", + "scope": "Finite controls accompany a full universal proof audit; no rank algorithm synthesized.", + "source": "/Users/vlado/Downloads/math-main/preprints/Matrix-Multiplication-Nine-Fourths-October-2-2026/build/paper.tex", + "source_sha256": "c396f2580a711b8b9e51ecf1265cb0e691acd745943f81bfc14ec0df209e1028", + "source_lines": 1022, + "fourier": [ + { + "M": 1, + "potential_terms": 1, + "fourier_survivors": 1, + "weight_zero_terms": 1 + }, + { + "M": 2, + "potential_terms": 16, + "fourier_survivors": 4, + "weight_zero_terms": 4 + }, + { + "M": 3, + "potential_terms": 81, + "fourier_survivors": 13, + "weight_zero_terms": 9 + }, + { + "M": 4, + "potential_terms": 256, + "fourier_survivors": 28, + "weight_zero_terms": 16 + }, + { + "M": 5, + "potential_terms": 625, + "fourier_survivors": 55, + "weight_zero_terms": 25 + }, + { + "M": 6, + "potential_terms": 1296, + "fourier_survivors": 92, + "weight_zero_terms": 36 + }, + { + "M": 7, + "potential_terms": 2401, + "fourier_survivors": 147, + "weight_zero_terms": 49 + }, + { + "M": 8, + "potential_terms": 4096, + "fourier_survivors": 216, + "weight_zero_terms": 64 + }, + { + "M": 9, + "potential_terms": 6561, + "fourier_survivors": 309, + "weight_zero_terms": 81 + }, + { + "M": 10, + "potential_terms": 10000, + "fourier_survivors": 420, + "weight_zero_terms": 100 + }, + { + "M": 11, + "potential_terms": 14641, + "fourier_survivors": 561, + "weight_zero_terms": 121 + }, + { + "M": 12, + "potential_terms": 20736, + "fourier_survivors": 724, + "weight_zero_terms": 144 + } + ], + "determinant_filtration": [ + { + "a": 1, + "b": 2, + "slices_checked": 1 + }, + { + "a": 1, + "b": 3, + "slices_checked": 1 + }, + { + "a": 1, + "b": 4, + "slices_checked": 1 + }, + { + "a": 1, + "b": 5, + "slices_checked": 1 + }, + { + "a": 1, + "b": 6, + "slices_checked": 1 + }, + { + "a": 1, + "b": 7, + "slices_checked": 1 + }, + { + "a": 1, + "b": 8, + "slices_checked": 1 + }, + { + "a": 2, + "b": 2, + "slices_checked": 2 + }, + { + "a": 2, + "b": 3, + "slices_checked": 2 + }, + { + "a": 2, + "b": 4, + "slices_checked": 2 + }, + { + "a": 2, + "b": 5, + "slices_checked": 2 + }, + { + "a": 2, + "b": 6, + "slices_checked": 2 + }, + { + "a": 2, + "b": 7, + "slices_checked": 2 + }, + { + "a": 2, + "b": 8, + "slices_checked": 2 + }, + { + "a": 3, + "b": 2, + "slices_checked": 3 + }, + { + "a": 3, + "b": 3, + "slices_checked": 3 + }, + { + "a": 3, + "b": 4, + "slices_checked": 3 + }, + { + "a": 3, + "b": 5, + "slices_checked": 3 + }, + { + "a": 3, + "b": 6, + "slices_checked": 3 + }, + { + "a": 3, + "b": 7, + "slices_checked": 3 + }, + { + "a": 3, + "b": 8, + "slices_checked": 3 + }, + { + "a": 4, + "b": 2, + "slices_checked": 4 + }, + { + "a": 4, + "b": 3, + "slices_checked": 4 + }, + { + "a": 4, + "b": 4, + "slices_checked": 4 + }, + { + "a": 4, + "b": 5, + "slices_checked": 4 + }, + { + "a": 4, + "b": 6, + "slices_checked": 4 + }, + { + "a": 4, + "b": 7, + "slices_checked": 4 + }, + { + "a": 4, + "b": 8, + "slices_checked": 4 + }, + { + "a": 5, + "b": 2, + "slices_checked": 5 + }, + { + "a": 5, + "b": 3, + "slices_checked": 5 + }, + { + "a": 5, + "b": 4, + "slices_checked": 5 + }, + { + "a": 5, + "b": 5, + "slices_checked": 5 + }, + { + "a": 5, + "b": 6, + "slices_checked": 5 + }, + { + "a": 5, + "b": 7, + "slices_checked": 5 + }, + { + "a": 5, + "b": 8, + "slices_checked": 5 + }, + { + "a": 6, + "b": 2, + "slices_checked": 6 + }, + { + "a": 6, + "b": 3, + "slices_checked": 6 + }, + { + "a": 6, + "b": 4, + "slices_checked": 6 + }, + { + "a": 6, + "b": 5, + "slices_checked": 6 + }, + { + "a": 6, + "b": 6, + "slices_checked": 6 + }, + { + "a": 6, + "b": 7, + "slices_checked": 6 + }, + { + "a": 6, + "b": 8, + "slices_checked": 6 + }, + { + "a": 7, + "b": 2, + "slices_checked": 7 + }, + { + "a": 7, + "b": 3, + "slices_checked": 7 + }, + { + "a": 7, + "b": 4, + "slices_checked": 7 + }, + { + "a": 7, + "b": 5, + "slices_checked": 7 + }, + { + "a": 7, + "b": 6, + "slices_checked": 7 + }, + { + "a": 7, + "b": 7, + "slices_checked": 7 + }, + { + "a": 7, + "b": 8, + "slices_checked": 7 + }, + { + "a": 8, + "b": 2, + "slices_checked": 8 + }, + { + "a": 8, + "b": 3, + "slices_checked": 8 + }, + { + "a": 8, + "b": 4, + "slices_checked": 8 + }, + { + "a": 8, + "b": 5, + "slices_checked": 8 + }, + { + "a": 8, + "b": 6, + "slices_checked": 8 + }, + { + "a": 8, + "b": 7, + "slices_checked": 8 + }, + { + "a": 8, + "b": 8, + "slices_checked": 8 + } + ], + "tripling": [ + { + "a": 1, + "h": 1, + "terms_in_each_branch": 1 + }, + { + "a": 1, + "h": 2, + "terms_in_each_branch": 2 + }, + { + "a": 1, + "h": 3, + "terms_in_each_branch": 3 + }, + { + "a": 1, + "h": 4, + "terms_in_each_branch": 4 + }, + { + "a": 1, + "h": 5, + "terms_in_each_branch": 5 + }, + { + "a": 1, + "h": 6, + "terms_in_each_branch": 6 + }, + { + "a": 1, + "h": 7, + "terms_in_each_branch": 7 + }, + { + "a": 1, + "h": 8, + "terms_in_each_branch": 8 + }, + { + "a": 1, + "h": 9, + "terms_in_each_branch": 9 + }, + { + "a": 1, + "h": 10, + "terms_in_each_branch": 10 + }, + { + "a": 1, + "h": 11, + "terms_in_each_branch": 11 + }, + { + "a": 1, + "h": 12, + "terms_in_each_branch": 12 + }, + { + "a": 1, + "h": 13, + "terms_in_each_branch": 13 + }, + { + "a": 1, + "h": 14, + "terms_in_each_branch": 14 + }, + { + "a": 2, + "h": 1, + "terms_in_each_branch": 2 + }, + { + "a": 2, + "h": 2, + "terms_in_each_branch": 4 + }, + { + "a": 2, + "h": 3, + "terms_in_each_branch": 6 + }, + { + "a": 2, + "h": 4, + "terms_in_each_branch": 8 + }, + { + "a": 2, + "h": 5, + "terms_in_each_branch": 10 + }, + { + "a": 2, + "h": 6, + "terms_in_each_branch": 12 + }, + { + "a": 2, + "h": 7, + "terms_in_each_branch": 14 + }, + { + "a": 2, + "h": 8, + "terms_in_each_branch": 16 + }, + { + "a": 2, + "h": 9, + "terms_in_each_branch": 18 + }, + { + "a": 2, + "h": 10, + "terms_in_each_branch": 20 + }, + { + "a": 2, + "h": 11, + "terms_in_each_branch": 22 + }, + { + "a": 2, + "h": 12, + "terms_in_each_branch": 24 + }, + { + "a": 2, + "h": 13, + "terms_in_each_branch": 26 + }, + { + "a": 2, + "h": 14, + "terms_in_each_branch": 28 + }, + { + "a": 3, + "h": 1, + "terms_in_each_branch": 3 + }, + { + "a": 3, + "h": 2, + "terms_in_each_branch": 6 + }, + { + "a": 3, + "h": 3, + "terms_in_each_branch": 9 + }, + { + "a": 3, + "h": 4, + "terms_in_each_branch": 12 + }, + { + "a": 3, + "h": 5, + "terms_in_each_branch": 15 + }, + { + "a": 3, + "h": 6, + "terms_in_each_branch": 18 + }, + { + "a": 3, + "h": 7, + "terms_in_each_branch": 21 + }, + { + "a": 3, + "h": 8, + "terms_in_each_branch": 24 + }, + { + "a": 3, + "h": 9, + "terms_in_each_branch": 27 + }, + { + "a": 3, + "h": 10, + "terms_in_each_branch": 30 + }, + { + "a": 3, + "h": 11, + "terms_in_each_branch": 33 + }, + { + "a": 3, + "h": 12, + "terms_in_each_branch": 36 + }, + { + "a": 3, + "h": 13, + "terms_in_each_branch": 39 + }, + { + "a": 3, + "h": 14, + "terms_in_each_branch": 42 + }, + { + "a": 4, + "h": 1, + "terms_in_each_branch": 4 + }, + { + "a": 4, + "h": 2, + "terms_in_each_branch": 8 + }, + { + "a": 4, + "h": 3, + "terms_in_each_branch": 12 + }, + { + "a": 4, + "h": 4, + "terms_in_each_branch": 16 + }, + { + "a": 4, + "h": 5, + "terms_in_each_branch": 20 + }, + { + "a": 4, + "h": 6, + "terms_in_each_branch": 24 + }, + { + "a": 4, + "h": 7, + "terms_in_each_branch": 28 + }, + { + "a": 4, + "h": 8, + "terms_in_each_branch": 32 + }, + { + "a": 4, + "h": 9, + "terms_in_each_branch": 36 + }, + { + "a": 4, + "h": 10, + "terms_in_each_branch": 40 + }, + { + "a": 4, + "h": 11, + "terms_in_each_branch": 44 + }, + { + "a": 4, + "h": 12, + "terms_in_each_branch": 48 + }, + { + "a": 4, + "h": 13, + "terms_in_each_branch": 52 + }, + { + "a": 4, + "h": 14, + "terms_in_each_branch": 56 + }, + { + "a": 5, + "h": 1, + "terms_in_each_branch": 5 + }, + { + "a": 5, + "h": 2, + "terms_in_each_branch": 10 + }, + { + "a": 5, + "h": 3, + "terms_in_each_branch": 15 + }, + { + "a": 5, + "h": 4, + "terms_in_each_branch": 20 + }, + { + "a": 5, + "h": 5, + "terms_in_each_branch": 25 + }, + { + "a": 5, + "h": 6, + "terms_in_each_branch": 30 + }, + { + "a": 5, + "h": 7, + "terms_in_each_branch": 35 + }, + { + "a": 5, + "h": 8, + "terms_in_each_branch": 40 + }, + { + "a": 5, + "h": 9, + "terms_in_each_branch": 45 + }, + { + "a": 5, + "h": 10, + "terms_in_each_branch": 50 + }, + { + "a": 5, + "h": 11, + "terms_in_each_branch": 55 + }, + { + "a": 5, + "h": 12, + "terms_in_each_branch": 60 + }, + { + "a": 5, + "h": 13, + "terms_in_each_branch": 65 + }, + { + "a": 5, + "h": 14, + "terms_in_each_branch": 70 + }, + { + "a": 6, + "h": 1, + "terms_in_each_branch": 6 + }, + { + "a": 6, + "h": 2, + "terms_in_each_branch": 12 + }, + { + "a": 6, + "h": 3, + "terms_in_each_branch": 18 + }, + { + "a": 6, + "h": 4, + "terms_in_each_branch": 24 + }, + { + "a": 6, + "h": 5, + "terms_in_each_branch": 30 + }, + { + "a": 6, + "h": 6, + "terms_in_each_branch": 36 + }, + { + "a": 6, + "h": 7, + "terms_in_each_branch": 42 + }, + { + "a": 6, + "h": 8, + "terms_in_each_branch": 48 + }, + { + "a": 6, + "h": 9, + "terms_in_each_branch": 54 + }, + { + "a": 6, + "h": 10, + "terms_in_each_branch": 60 + }, + { + "a": 6, + "h": 11, + "terms_in_each_branch": 66 + }, + { + "a": 6, + "h": 12, + "terms_in_each_branch": 72 + }, + { + "a": 6, + "h": 13, + "terms_in_each_branch": 78 + }, + { + "a": 6, + "h": 14, + "terms_in_each_branch": 84 + }, + { + "a": 7, + "h": 1, + "terms_in_each_branch": 7 + }, + { + "a": 7, + "h": 2, + "terms_in_each_branch": 14 + }, + { + "a": 7, + "h": 3, + "terms_in_each_branch": 21 + }, + { + "a": 7, + "h": 4, + "terms_in_each_branch": 28 + }, + { + "a": 7, + "h": 5, + "terms_in_each_branch": 35 + }, + { + "a": 7, + "h": 6, + "terms_in_each_branch": 42 + }, + { + "a": 7, + "h": 7, + "terms_in_each_branch": 49 + }, + { + "a": 7, + "h": 8, + "terms_in_each_branch": 56 + }, + { + "a": 7, + "h": 9, + "terms_in_each_branch": 63 + }, + { + "a": 7, + "h": 10, + "terms_in_each_branch": 70 + }, + { + "a": 7, + "h": 11, + "terms_in_each_branch": 77 + }, + { + "a": 7, + "h": 12, + "terms_in_each_branch": 84 + }, + { + "a": 7, + "h": 13, + "terms_in_each_branch": 91 + }, + { + "a": 7, + "h": 14, + "terms_in_each_branch": 98 + }, + { + "a": 8, + "h": 1, + "terms_in_each_branch": 8 + }, + { + "a": 8, + "h": 2, + "terms_in_each_branch": 16 + }, + { + "a": 8, + "h": 3, + "terms_in_each_branch": 24 + }, + { + "a": 8, + "h": 4, + "terms_in_each_branch": 32 + }, + { + "a": 8, + "h": 5, + "terms_in_each_branch": 40 + }, + { + "a": 8, + "h": 6, + "terms_in_each_branch": 48 + }, + { + "a": 8, + "h": 7, + "terms_in_each_branch": 56 + }, + { + "a": 8, + "h": 8, + "terms_in_each_branch": 64 + }, + { + "a": 8, + "h": 9, + "terms_in_each_branch": 72 + }, + { + "a": 8, + "h": 10, + "terms_in_each_branch": 80 + }, + { + "a": 8, + "h": 11, + "terms_in_each_branch": 88 + }, + { + "a": 8, + "h": 12, + "terms_in_each_branch": 96 + }, + { + "a": 8, + "h": 13, + "terms_in_each_branch": 104 + }, + { + "a": 8, + "h": 14, + "terms_in_each_branch": 112 + }, + { + "a": 9, + "h": 1, + "terms_in_each_branch": 9 + }, + { + "a": 9, + "h": 2, + "terms_in_each_branch": 18 + }, + { + "a": 9, + "h": 3, + "terms_in_each_branch": 27 + }, + { + "a": 9, + "h": 4, + "terms_in_each_branch": 36 + }, + { + "a": 9, + "h": 5, + "terms_in_each_branch": 45 + }, + { + "a": 9, + "h": 6, + "terms_in_each_branch": 54 + }, + { + "a": 9, + "h": 7, + "terms_in_each_branch": 63 + }, + { + "a": 9, + "h": 8, + "terms_in_each_branch": 72 + }, + { + "a": 9, + "h": 9, + "terms_in_each_branch": 81 + }, + { + "a": 9, + "h": 10, + "terms_in_each_branch": 90 + }, + { + "a": 9, + "h": 11, + "terms_in_each_branch": 99 + }, + { + "a": 9, + "h": 12, + "terms_in_each_branch": 108 + }, + { + "a": 9, + "h": 13, + "terms_in_each_branch": 117 + }, + { + "a": 9, + "h": 14, + "terms_in_each_branch": 126 + }, + { + "a": 10, + "h": 1, + "terms_in_each_branch": 10 + }, + { + "a": 10, + "h": 2, + "terms_in_each_branch": 20 + }, + { + "a": 10, + "h": 3, + "terms_in_each_branch": 30 + }, + { + "a": 10, + "h": 4, + "terms_in_each_branch": 40 + }, + { + "a": 10, + "h": 5, + "terms_in_each_branch": 50 + }, + { + "a": 10, + "h": 6, + "terms_in_each_branch": 60 + }, + { + "a": 10, + "h": 7, + "terms_in_each_branch": 70 + }, + { + "a": 10, + "h": 8, + "terms_in_each_branch": 80 + }, + { + "a": 10, + "h": 9, + "terms_in_each_branch": 90 + }, + { + "a": 10, + "h": 10, + "terms_in_each_branch": 100 + }, + { + "a": 10, + "h": 11, + "terms_in_each_branch": 110 + }, + { + "a": 10, + "h": 12, + "terms_in_each_branch": 120 + }, + { + "a": 10, + "h": 13, + "terms_in_each_branch": 130 + }, + { + "a": 10, + "h": 14, + "terms_in_each_branch": 140 + }, + { + "a": 11, + "h": 1, + "terms_in_each_branch": 11 + }, + { + "a": 11, + "h": 2, + "terms_in_each_branch": 22 + }, + { + "a": 11, + "h": 3, + "terms_in_each_branch": 33 + }, + { + "a": 11, + "h": 4, + "terms_in_each_branch": 44 + }, + { + "a": 11, + "h": 5, + "terms_in_each_branch": 55 + }, + { + "a": 11, + "h": 6, + "terms_in_each_branch": 66 + }, + { + "a": 11, + "h": 7, + "terms_in_each_branch": 77 + }, + { + "a": 11, + "h": 8, + "terms_in_each_branch": 88 + }, + { + "a": 11, + "h": 9, + "terms_in_each_branch": 99 + }, + { + "a": 11, + "h": 10, + "terms_in_each_branch": 110 + }, + { + "a": 11, + "h": 11, + "terms_in_each_branch": 121 + }, + { + "a": 11, + "h": 12, + "terms_in_each_branch": 132 + }, + { + "a": 11, + "h": 13, + "terms_in_each_branch": 143 + }, + { + "a": 11, + "h": 14, + "terms_in_each_branch": 154 + }, + { + "a": 12, + "h": 1, + "terms_in_each_branch": 12 + }, + { + "a": 12, + "h": 2, + "terms_in_each_branch": 24 + }, + { + "a": 12, + "h": 3, + "terms_in_each_branch": 36 + }, + { + "a": 12, + "h": 4, + "terms_in_each_branch": 48 + }, + { + "a": 12, + "h": 5, + "terms_in_each_branch": 60 + }, + { + "a": 12, + "h": 6, + "terms_in_each_branch": 72 + }, + { + "a": 12, + "h": 7, + "terms_in_each_branch": 84 + }, + { + "a": 12, + "h": 8, + "terms_in_each_branch": 96 + }, + { + "a": 12, + "h": 9, + "terms_in_each_branch": 108 + }, + { + "a": 12, + "h": 10, + "terms_in_each_branch": 120 + }, + { + "a": 12, + "h": 11, + "terms_in_each_branch": 132 + }, + { + "a": 12, + "h": 12, + "terms_in_each_branch": 144 + }, + { + "a": 12, + "h": 13, + "terms_in_each_branch": 156 + }, + { + "a": 12, + "h": 14, + "terms_in_each_branch": 168 + }, + { + "a": 13, + "h": 1, + "terms_in_each_branch": 13 + }, + { + "a": 13, + "h": 2, + "terms_in_each_branch": 26 + }, + { + "a": 13, + "h": 3, + "terms_in_each_branch": 39 + }, + { + "a": 13, + "h": 4, + "terms_in_each_branch": 52 + }, + { + "a": 13, + "h": 5, + "terms_in_each_branch": 65 + }, + { + "a": 13, + "h": 6, + "terms_in_each_branch": 78 + }, + { + "a": 13, + "h": 7, + "terms_in_each_branch": 91 + }, + { + "a": 13, + "h": 8, + "terms_in_each_branch": 104 + }, + { + "a": 13, + "h": 9, + "terms_in_each_branch": 117 + }, + { + "a": 13, + "h": 10, + "terms_in_each_branch": 130 + }, + { + "a": 13, + "h": 11, + "terms_in_each_branch": 143 + }, + { + "a": 13, + "h": 12, + "terms_in_each_branch": 156 + }, + { + "a": 13, + "h": 13, + "terms_in_each_branch": 169 + }, + { + "a": 13, + "h": 14, + "terms_in_each_branch": 182 + }, + { + "a": 14, + "h": 1, + "terms_in_each_branch": 14 + }, + { + "a": 14, + "h": 2, + "terms_in_each_branch": 28 + }, + { + "a": 14, + "h": 3, + "terms_in_each_branch": 42 + }, + { + "a": 14, + "h": 4, + "terms_in_each_branch": 56 + }, + { + "a": 14, + "h": 5, + "terms_in_each_branch": 70 + }, + { + "a": 14, + "h": 6, + "terms_in_each_branch": 84 + }, + { + "a": 14, + "h": 7, + "terms_in_each_branch": 98 + }, + { + "a": 14, + "h": 8, + "terms_in_each_branch": 112 + }, + { + "a": 14, + "h": 9, + "terms_in_each_branch": 126 + }, + { + "a": 14, + "h": 10, + "terms_in_each_branch": 140 + }, + { + "a": 14, + "h": 11, + "terms_in_each_branch": 154 + }, + { + "a": 14, + "h": 12, + "terms_in_each_branch": 168 + }, + { + "a": 14, + "h": 13, + "terms_in_each_branch": 182 + }, + { + "a": 14, + "h": 14, + "terms_in_each_branch": 196 + } + ], + "growth": { + "maximum_a": 300, + "exact_product_inequalities": "PASS" + }, + "negative_controls": { + "drop_fourier_phase": "reject: weights need not be nonnegative, e.g. M=2,h=2,g=1,u=1,v=2 has weight -5", + "keep_only_one_outer_branch": "reject: factor 3 requires both outer branches and the leg-swapped middle branch", + "arbitrary_arithmetic_circuit": "reject: stability proof requires recursive bilinear structure; unbounded sequential multiplication does not follow", + "endpoint_exponent_9/4": "reject: rank infimum only supplies fixed algorithms strictly above 9/4", + "arbitrary_complex_constants": "reject: computability requires algebraic-point replacement or explicit computable coefficients" + } +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/SOURCE-COVERAGE.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/SOURCE-COVERAGE.json new file mode 100644 index 0000000000..c6275bc1cb --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/SOURCE-COVERAGE.json @@ -0,0 +1,114 @@ +{ + "status": "FULL_SOURCE_READ_AND_AUDITED", + "source": "/Users/vlado/Downloads/math-main/preprints/Matrix-Multiplication-Nine-Fourths-October-2-2026/build/paper.tex", + "sha256": "c396f2580a711b8b9e51ecf1265cb0e691acd745943f81bfc14ec0df209e1028", + "line_count": 1022, + "coverage": [ + { + "first_line": 1, + "last_line": 36, + "topic": "preamble and abstract", + "read": true + }, + { + "first_line": 37, + "last_line": 141, + "topic": "introduction and theorem", + "read": true + }, + { + "first_line": 142, + "last_line": 203, + "topic": "tensor semiring and rank", + "read": true + }, + { + "first_line": 204, + "last_line": 235, + "topic": "dot exponents", + "read": true + }, + { + "first_line": 236, + "last_line": 269, + "topic": "interpolation", + "read": true + }, + { + "first_line": 270, + "last_line": 349, + "topic": "finite shared-leg separation", + "read": true + }, + { + "first_line": 350, + "last_line": 391, + "topic": "entropy", + "read": true + }, + { + "first_line": 392, + "last_line": 432, + "topic": "polynomial profile", + "read": true + }, + { + "first_line": 433, + "last_line": 523, + "topic": "determinant filtration", + "read": true + }, + { + "first_line": 524, + "last_line": 604, + "topic": "tripling", + "read": true + }, + { + "first_line": 605, + "last_line": 651, + "topic": "diagonal growth", + "read": true + }, + { + "first_line": 652, + "last_line": 689, + "topic": "rank and arithmetic conclusion", + "read": true + }, + { + "first_line": 690, + "last_line": 699, + "topic": "algebraic coefficients", + "read": true + }, + { + "first_line": 700, + "last_line": 769, + "topic": "multiplicativity appendix", + "read": true + }, + { + "first_line": 770, + "last_line": 905, + "topic": "detecting-state existence appendix", + "read": true + }, + { + "first_line": 906, + "last_line": 1022, + "topic": "bibliography and ending", + "read": true + } + ], + "readme": { + "path": "/Users/vlado/Downloads/math-main/preprints/Matrix-Multiplication-Nine-Fourths-October-2-2026/README.md", + "sha256": "1857fc06d04a43588207ba2f726679c50a418299a5fd0313423a354680a783a7", + "read": true + }, + "companion_2_258_claimed_read": false, + "companion_required": false, + "proof_dependencies": "The required new interpolation, determinant, entropy, growth and spectral detection arguments are contained in this source. Standard background dependencies are listed in PROOF-AND-COVERAGE.md.", + "finite_rank_scheme_generated": false, + "outer_improvement_claimed_by_this_audit": false +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/check_source_constructions.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/check_source_constructions.py new file mode 100644 index 0000000000..c8e362e90d --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/check_source_constructions.py @@ -0,0 +1,164 @@ +#!/usr/bin/env python3 +"""Exact finite controls for the constructions in the supplied 9/4 paper. + +These checks are controls for an end-to-end human proof audit, not substitutes +for the universal proofs or an executable fast matrix multiplication scheme. +""" +from fractions import Fraction as Q +from pathlib import Path +import hashlib +import json + +ROOT = Path(__file__).resolve().parent +SOURCE = Path('/Users/vlado/Downloads/math-main/preprints/Matrix-Multiplication-Nine-Fourths-October-2-2026/build/paper.tex') + +def inverse(a): + n = len(a) + t = [[Q(v) for v in row] + [Q(i == j) for j in range(n)] + for i, row in enumerate(a)] + for j in range(n): + p = next(i for i in range(j, n) if t[i][j]) + t[j], t[p] = t[p], t[j] + z = t[j][j] + t[j] = [v/z for v in t[j]] + for i in range(n): + if i != j: + z = t[i][j] + t[i] = [v-z*w for v,w in zip(t[i],t[j])] + return [row[n:] for row in t] + +def mm(a,b): + return [[sum(x*y for x,y in zip(row,col)) for col in zip(*b)] + for row in a] + +def basis(e): + # Ambient coordinates: u^(e-i)v^i s, then u^(e-i)v^i w. + n = 2*(e+1) + cols = [] + for i in range(e+1): + v = [Q(0)]*n + v[i] = 1 + cols.append(v) + v = [Q(0)]*n + v[-1] = 1 + cols.append(v) + for j in range(e): + v = [Q(0)]*n + v[j+1] = -1 + v[e+1+j] = 1 + cols.append(v) + return [list(row) for row in zip(*cols)] + +def check_determinant(): + cases = [] + for a in range(1,9): + for b in range(2,9): + ei, eo = b-1, a+b-2 + bi, bo = basis(ei), basis(eo) + inv = inverse(bo) + for k in range(a): + mult = [[Q(0)]*(2*b) for _ in range(2*(a+b-1))] + for side in range(2): + for i in range(b): + mult[side*(a+b-1)+i+k][side*b+i] = 1 + t = mm(inv,mm(mult,bi)) + qo, qi = a+b, b+1 + for i,row in enumerate(t): + for j,val in enumerate(row): + if i < qo and j < qi: + assert val == Q(i == j+k) + elif i < qo and j >= qi: + assert val == 0 + elif i >= qo and j >= qi: + assert val == Q(i-qo == j-qi+k) + # Only the lower-left block may remain, with weight +1. + cases.append({'a':a,'b':b,'slices_checked':a}) + return cases + +def check_fourier(): + cases = [] + for m in range(1,13): + terms = surviving = zeros = 0 + for h in range(1,m+1): + for g in range(1,m+1): + for u in range(1,m+1): + for v in range(1,m+1): + terms += 1 + phase = u-v+2*(g-h) + assert abs(phase) < 5*m + if phase % (5*m) == 0: + surviving += 1 + assert phase == 0 + weight = g*g+h*u-h*h-h*v + assert weight == (g-h)**2 >= 0 + if weight == 0: + zeros += 1 + assert g == h and u == v + assert zeros == m*m + cases.append({'M':m,'potential_terms':terms, + 'fourier_survivors':surviving,'weight_zero_terms':zeros}) + return cases + +def check_tripling(): + cases = [] + for a in range(1,15): + for h in range(1,15): + B=3*h+a-1 + sectors=[set(),set(),set()] + for x in range(a): + for y in range(B): + z=x+y + sy=0 if y= 0 + if weight==0: + assert sy==sz + if sy==0: + t=(x,y,z) + elif sy==2: + t=(x,y-(2*h+a-1),z-(2*h+a-1)) + else: + # Swap second/third legs; reverse first-leg basis. + t=(a-1-x,z-(h+a-1),y-h) + assert t[2]==t[0]+t[1] + sectors[sy].add(t) + expected={(x,y,x+y) for x in range(a) for y in range(h)} + assert all(s==expected for s in sectors) + cases.append({'a':a,'h':h,'terms_in_each_branch':a*h}) + return cases + +def check_growth(): + h=Q(1) + for a in range(1,301): + if a>1: h *= 1+Q(1,3*(a-1)) + assert h**3 >= a + assert Q(3*a-1,2) >= a + return {'maximum_a':300,'exact_product_inequalities':'PASS'} + +if __name__ == '__main__': + raw=SOURCE.read_bytes() + result={ + 'status':'PASS_EXACT_SOURCE_CONTROLS', + 'scope':'Finite controls accompany a full universal proof audit; no rank algorithm synthesized.', + 'source':str(SOURCE), + 'source_sha256':hashlib.sha256(raw).hexdigest(), + 'source_lines':len(raw.splitlines()), + 'fourier':check_fourier(), + 'determinant_filtration':check_determinant(), + 'tripling':check_tripling(), + 'growth':check_growth(), + 'negative_controls':{ + 'drop_fourier_phase': 'reject: weights need not be nonnegative, e.g. M=2,h=2,g=1,u=1,v=2 has weight -5', + 'keep_only_one_outer_branch':'reject: factor 3 requires both outer branches and the leg-swapped middle branch', + 'arbitrary_arithmetic_circuit':'reject: stability proof requires recursive bilinear structure; unbounded sequential multiplication does not follow', + 'endpoint_exponent_9/4':'reject: rank infimum only supplies fixed algorithms strictly above 9/4', + 'arbitrary_complex_constants':'reject: computability requires algebraic-point replacement or explicit computable coefficients', + }, + } + (ROOT/'SOURCE-CONSTRUCTIONS.json').write_text(json.dumps(result,indent=2)+'\n') + print(result['status']) + print('source lines',result['source_lines']) + print('fourier M cases',len(result['fourier'])) + print('determinant cases',len(result['determinant_filtration'])) + print('tripling cases',len(result['tripling'])) diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/CAPPED-INTERIORS.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/CAPPED-INTERIORS.md new file mode 100644 index 0000000000..62c3fa27b6 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/CAPPED-INTERIORS.md @@ -0,0 +1,72 @@ +# Conditional refinement: cap interior length independently of d + +This is a separate follow-up to the uncapped proof audit. Its current status is **PASS_CONDITIONAL_PHASE_FUSION_REVIEW**, following the independent capped-gauge and capped-layout audits and an integrated root review. It preserves the weaker `OUTER-ARITHMETIC.json` as history. Under the retained supplier assumptions and the reviewed interfaces, the capped construction below gives `kappa=0.001672922349588871`. The only new analytic change is the anchored O(aB) local gauge; all altered operation counts are derived explicitly here. No upstream selected certificate is changed. + +Let the original phase-cell scale remain `d=p^epsilon`, and cap dyadic interior lengths at `B=2^floor(b log2 p)`, where `1/20. The supplier support proof needs each individual K-neighborhood to fit its original axis and total moved support o(p); it does **not** require all g controls to fit within one original axis. The sufficient auxiliary inequality `beta<1-epsilon` in the uncapped ledger must therefore be removed in this follow-up. + +The changed principal exponents, normalized by V, are + +| Component | exponent | +|---|---:| +| main transform | `1-epsilon*q` | +| fused Gaussian circuits | `epsilon-q*beta` | +| boundary algebra | `epsilon-b+(omega-1)/2` | +| sparse union movement | `epsilon+beta+1/2-b` | +| grouped scans | `epsilon-beta` | + +For the boundary row, one axis has O(V W/B) boundary records. A band solve or coupling product on W simultaneous right-hand sides costs O(W^(omega-2)) per boundary record, so all d axes cost `O(V (d/B) W^(omega-1) polylog p)`. The new factor d/B must not be omitted. For the sparse union, its fraction within a group is O(gW/B polylog p); g sequential axis operations and d/g groups give `O(V (dg/B) W polylog p)`. These are precisely the third and fourth changed rows. + +All other costs in `OUTER-AUDIT.md` remain paid. Global routing has saving a_eff; packed polynomial products have saving epsilon. Even a conservative full active-group key surcharge adds only `beta+1-epsilon` to the union exponent. Sparse core-face corrections have exponent at most `epsilon+beta-3`, using the former p² per-record allowance on their O(gA/L) copied volume. + +With the rational bound omega<45/16, put c=(3-omega_upper)/2=3/32 and take a positive boundary slack s_boundary=10^-5. Balancing the two dominant rows while leaving that boundary slack gives + +``` +epsilon=(1+q+q*(c-s_boundary-r-zeta))/(1+q)^2, +b=epsilon*(1+q)-c+s_boundary, +beta=1-b-r-zeta, +kappa_limit=epsilon*q. +``` + +Using the same q, r and zeta as the uncapped candidate yields approximately + +``` +epsilon = 0.9984838711085557536432677624420451614... +b = 0.9064167934681446247757331487619919695... +beta = 0.0935821965318553752242668512380080305... +kappa_limit = 0.0016729223595888711324653863199468081... +kappa = 0.001672922349588871 +``` + +The boundary saving equals `kappa_limit+10^-5`. The union movement exponent is below 0.686, and even its optional full-key surcharge leaves it below 0.781. The per-record phase metadata exponent `beta+2(1-epsilon)` is below 0.097, so calculating all g membership predicates remains cheaper than scanning one p-bit record. Core-face repair costs remain negligible at L=p^8. + +The common compiled H calls are still made globally across complete coarse-label ranges. Each selected bit needs only its own K=128G neighborhood to fit its original axis. Since `1-epsilon>0`, this holds eventually even though gK is larger than one axis width. The total support is O(g polylog p)=o(p), because beta<1. All support-router reservoirs, product row stock and exact endpoint restoration are those of the independently audited supplier. + +At the displayed parameters, `b>1/2`, `epsilon>b`, `beta>0`, `epsilon>beta`, `1-b-r-beta=zeta>0`, and `1-epsilon-r>0`. These respectively pay the wide-band separation, cap below original cell scale, growing group payload, number of groups, compiled local-gauge precision, and global gamma/rounding range. The raw global rounded weights may still have O(ad) logarithmic range during offline generation. The **data** only sees exact anchored ratios of range O(aB); approximating those ratios to the retained precision introduces `exp(o(p))` error amplification, already paid by the strict group guard. + +The assembled group endpoints are the same full normalized Haug inverse or Saug/4 operators as in the uncapped proof. Changing the interior partition changes only their factorization. It does not change their completed contraction bounds, intended zero-hole semantics, principal-core locality, or the final `2^D` scale compensation. Consequently the uncapped precision and error argument applies with the improved group gauge budget. + +`check_capped_outer.py` computes 44 exact positive slacks, every displayed cost margin, and five rejecting controls. The full-cell-gauge control is especially relevant: it fails, so the stronger result depends on the independently reviewed anchored-gauge proof. The local review retains the original supplier and all-size conditional assumptions. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/CAPPED-OUTER-ARITHMETIC.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/CAPPED-OUTER-ARITHMETIC.json new file mode 100644 index 0000000000..56c871f4f3 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/CAPPED-OUTER-ARITHMETIC.json @@ -0,0 +1,388 @@ +{ + "status": "PASS_CONDITIONAL_PHASE_FUSION_REVIEW", + "scope": "Local conditional transfer and exact arithmetic; inherited supplier and all-size interfaces remain assumptions. No upstream selected certificate is changed.", + "review": { + "integrated_review": "Root reviewed the complete standalone note, integrated proof chain, exact ledger, and independent cap/supplier/layout audits.", + "independent_cap_gauge": "CAPPED-GAUGE-AUDIT.md", + "independent_cap_layout": "CAPPED-SIGNOFF.md", + "supplier_support": "SUPPLIER-SUPPORT-AUDIT.md" + }, + "parameters": { + "a_bit": { + "rational": "1733427039589844234749/1000000000000000000000000", + "decimal": "0.001733427039589844234749" + }, + "a_eff": { + "rational": "67018505072324140917/40000000000000000000000", + "decimal": "0.001675462626808103522925" + }, + "complex_saving": { + "rational": "67018507072324140917/40000000000000000000000", + "decimal": "0.001675462676808103522925" + }, + "q": { + "rational": "67018503072324140917/40000000000000000000000", + "decimal": "0.001675462576808103522925" + }, + "r_spare": { + "rational": "1/1000000", + "decimal": "0.000001" + }, + "zeta": { + "rational": "1/100000000", + "decimal": "1E-8" + }, + "sigma_boundary": { + "rational": "1/100000", + "decimal": "0.00001" + }, + "stop": { + "rational": "1/1000000000", + "decimal": "1E-9" + }, + "epsilon": { + "rational": "1602932029994465428113567090153200000000000000/1605365971725539986393675267555861382073600889", + "decimal": "0.99848387110855575364326776244204516140889758204436646471254886062" + }, + "capped_block_power": { + "rational": "3631741843538363603786961767383/4006701850307232414091700000000", + "decimal": "0.90641679346814462477573314876199196952827856807257517068829472760" + }, + "beta_group": { + "rational": "3749559600000000000000/40067018503072324140917", + "decimal": "0.093582196531855375224266851238008030471721431927424829311705272400" + }, + "omega_upper": { + "rational": "45/16", + "decimal": "2.8125" + }, + "c_boundary": { + "rational": "3/32", + "decimal": "0.09375" + }, + "kappa": { + "rational": "1672922349588871/1000000000000000000", + "decimal": "0.001672922349588871" + }, + "selected": { + "rational": "836330098538459/500000000000000000", + "decimal": "0.001672660197076918" + }, + "lambda_": { + "rational": "39932981495927675859083/40000000000000000000000", + "decimal": "0.998324537398191896477075" + }, + "lambda_prime": { + "rational": "39932981496927675859083/40000000000000000000000", + "decimal": "0.998324537423191896477075" + }, + "tau": { + "rational": "39932981494927675859083/40000000000000000000000", + "decimal": "0.998324537373191896477075" + }, + "sigma": { + "rational": "39932981492927675859083/40000000000000000000000", + "decimal": "0.998324537323191896477075" + }, + "microbox_power": { + "rational": "8", + "decimal": "8" + }, + "halo_power": { + "rational": "3", + "decimal": "3" + } + }, + "margins": { + "main_transform": { + "rational": "268565262942277133237794921812759660918434199796211/160536597172553998639367526755586138207360088900000000", + "decimal": "0.0016729223595888711324653863199468081193809860282087059757458669773" + }, + "global_coordinate_router": { + "rational": "67018505072324140917/40000000000000000000000", + "decimal": "0.001675462626808103522925" + }, + "fused_gaussian": { + "rational": "268565262942277133237794921812759660918434199796211/160536597172553998639367526755586138207360088900000000", + "decimal": "0.0016729223595888711324653863199468081193809860282087059757458669773" + }, + "group_bit_router": { + "rational": "268565263693445502595657234197195111684434199796211/160536597172553998639367526755586138207360088900000000", + "decimal": "0.0016729223642679809590581550811601506812813875517947775721171084429" + }, + "group_scans": { + "rational": "152667615602647020756995267555861382073600889/1605365971725539986393675267555861382073600889", + "decimal": "0.095098325423299621580999088795962869062823849883058364599156411777" + }, + "boundary_batched_algebra": { + "rational": "270170628914002673224188597080315522300507800685211/160536597172553998639367526755586138207360088900000000", + "decimal": "0.0016829223595888711324653863199468081193809860282087059757458669773" + }, + "sparse_union_movement": { + "rational": "50464795843106818372778537326217184169040543916310211/160536597172553998639367526755586138207360088900000000", + "decimal": "0.31435072582773349590819853508193877764765955410078387666404059458" + }, + "sparse_union_full_key": { + "rational": "878478998384747396741111767383/4006701850307232414091700000000", + "decimal": "0.21925240040443387432719944628597590858483570421772551206488418280" + }, + "polynomial_products": { + "rational": "1602932029994465428113567090153200000000000000/1605365971725539986393675267555861382073600889", + "decimal": "0.99848387110855575364326776244204516140889758204436646471254886062" + }, + "microbox_face_corrections": { + "rational": "4668298183036122054984246889917045528294403556/1605365971725539986393675267555861382073600889", + "decimal": "2.9079339323595888711324653863199468081193809860282087059757458670" + } + }, + "slacks": { + "actual_bit_above_effective": { + "rational": "3622775798858794489/62500000000000000000000", + "decimal": "0.000057964412781740711824" + }, + "complex_above_effective": { + "rational": "1/20000000000", + "decimal": "5E-11" + }, + "complex_below_one_over_32": { + "rational": "1182981492927675859083/40000000000000000000000", + "decimal": "0.029574537323191896477075" + }, + "q_positive": { + "rational": "67018503072324140917/40000000000000000000000", + "decimal": "0.001675462576808103522925" + }, + "complex_endpoint": { + "rational": "1/10000000000", + "decimal": "1E-10" + }, + "q_below_effective_bit": { + "rational": "1/20000000000", + "decimal": "5E-11" + }, + "stop_positive": { + "rational": "1/1000000000", + "decimal": "1E-9" + }, + "stop_below_one": { + "rational": "999999999/1000000000", + "decimal": "0.999999999" + }, + "leaf_saving_above_effective_bit": { + "rational": "1932981492927675859083/40000000000000000000000000000000", + "decimal": "4.8324537323191896477075E-11" + }, + "q_below_internal": { + "rational": "1/20000000000", + "decimal": "5E-11" + }, + "q_below_leaf": { + "rational": "3932981492927675859083/40000000000000000000000000000000", + "decimal": "9.8324537323191896477075E-11" + }, + "lambda_above_tau": { + "rational": "1/40000000000", + "decimal": "2.5E-11" + }, + "lambda_above_sigma": { + "rational": "3/40000000000", + "decimal": "7.5E-11" + }, + "lambda_above_internal": { + "rational": "1/40000000000", + "decimal": "2.5E-11" + }, + "lambda_prime_above_lambda": { + "rational": "1/40000000000", + "decimal": "2.5E-11" + }, + "lambda_prime_above_leaf": { + "rational": "3932981492927675859083/40000000000000000000000000000000", + "decimal": "9.8324537323191896477075E-11" + }, + "epsilon_positive": { + "rational": "1602932029994465428113567090153200000000000000/1605365971725539986393675267555861382073600889", + "decimal": "0.99848387110855575364326776244204516140889758204436646471254886062" + }, + "epsilon_below_one": { + "rational": "2433941731074558280108177402661382073600889/1605365971725539986393675267555861382073600889", + "decimal": "0.0015161288914442463567322375579548385911024179556335352874511393772" + }, + "capped_block_above_band": { + "rational": "1628390918384747396741111767383/4006701850307232414091700000000", + "decimal": "0.40641679346814462477573314876199196952827856807257517068829472760" + }, + "capped_block_below_cell": { + "rational": "14780135356012934699216517036255884934639500533689789/160536597172553998639367526755586138207360088900000000", + "decimal": "0.092067077640411128867534613680053191880619013971791294024254133023" + }, + "group_positive": { + "rational": "3749559600000000000000/40067018503072324140917", + "decimal": "0.093582196531855375224266851238008030471721431927424829311705272400" + }, + "group_below_dimension": { + "rational": "1452698356122892965636680000000000000000000000/1605365971725539986393675267555861382073600889", + "decimal": "0.90490167457670037841900091120403713093717615011694163540084358822" + }, + "support_router_span": { + "rational": "36317458903072324140917/40067018503072324140917", + "decimal": "0.90641780346814462477573314876199196952827856807257517068829472760" + }, + "group_gauge_power_slack": { + "rational": "1/100000000", + "decimal": "1E-8" + }, + "actual_logarithmic_group_guard": { + "rational": "101/100000000", + "decimal": "0.00000101" + }, + "global_gamma_power_slack": { + "rational": "2432336365102832740121783727393826212218815399111/1605365971725539986393675267555861382073600889000000", + "decimal": "0.0015151288914442463567322375579548385911024179556335352874511393772" + }, + "actual_logarithmic_gamma_guard": { + "rational": "2433941731074558280108177402661382073600889/1605365971725539986393675267555861382073600889", + "decimal": "0.0015161288914442463567322375579548385911024179556335352874511393772" + }, + "alpha_logarithm_absorption": { + "rational": "1/1000000", + "decimal": "0.000001" + }, + "group_key_fits_record": { + "rational": "1452698356122892965636680000000000000000000000/1605365971725539986393675267555861382073600889", + "decimal": "0.90490167457670037841900091120403713093717615011694163540084358822" + }, + "membership_arithmetic_fits_record": { + "rational": "1450264414391818407356571822597338617926399111/1605365971725539986393675267555861382073600889", + "decimal": "0.90338554568525613206226867364608229234607373216130810011339244885" + }, + "microbox_halo_volume": { + "rational": "196585532915361620704585/40067018503072324140917", + "decimal": "4.9064178034681446247757331487619919695282785680725751706882947276" + }, + "boundary_positive_slack": { + "rational": "1/100000", + "decimal": "0.00001" + }, + "short_record_fallback": { + "rational": "64009691972259592449574424556617076733497945671686139566638347524787/64214638869021599455747010702234455282944035560000000000000000000000", + "decimal": "0.99680840848174765012034276244204516140889758204436646471254886062" + }, + "improvement": { + "rational": "262152511953/1000000000000000000", + "decimal": "2.62152511953E-7" + }, + "main_transform_above_kappa": { + "rational": "16053659929910823493457211548686499459924678309893681/1605365971725539986393675267555861382073600889000000000000000000", + "decimal": "1.0000000132465386319946808119380986028208705975745866977328894739E-11" + }, + "global_coordinate_router_above_kappa": { + "rational": "101611088769300917/40000000000000000000000", + "decimal": "0.000002540277219232522925" + }, + "fused_gaussian_above_kappa": { + "rational": "16053659929910823493457211548686499459924678309893681/1605365971725539986393675267555861382073600889000000000000000000", + "decimal": "1.0000000132465386319946808119380986028208705975745866977328894739E-11" + }, + "group_bit_router_above_kappa": { + "rational": "23565343623489446617301566056346499459924678309893681/1605365971725539986393675267555861382073600889000000000000000000", + "decimal": "1.4679109959058155081160150681281387551794777572117108442914158359E-11" + }, + "group_scans_above_kappa": { + "rational": "149981962989277909354528141831190997013103046461962568309893681/1605365971725539986393675267555861382073600889000000000000000000", + "decimal": "0.093425403073710750580999088795962869062823849883058364599156411777" + }, + "boundary_batched_algebra_above_kappa": { + "rational": "16053675770915329774760246132770162507235468814678309893681/1605365971725539986393675267555861382073600889000000000000000000", + "decimal": "0.000010000010000000132465386319946808119380986028208705975745866977329" + }, + "sparse_union_movement_above_kappa": { + "rational": "501962305817699072325318247537501456629907596625064678309893681/1605365971725539986393675267555861382073600889000000000000000000", + "decimal": "0.31267780347814462490819853508193877764765955410078387666404059458" + }, + "sparse_union_full_key_above_kappa": { + "rational": "8717760973112293445939482696586781065293/40067018503072324140917000000000000000000", + "decimal": "0.21757947805484500332719944628597590858483570421772551206488418280" + }, + "polynomial_products_above_kappa": { + "rational": "1600246377381096316711099964428529614939502157461962568309893681/1605365971725539986393675267555861382073600889000000000000000000", + "decimal": "0.99681094875896688264326776244204516140889758204436646471254886062" + }, + "microbox_face_corrections_above_kappa": { + "rational": "4665612530422752943581779764192375143233905713461962568309893681/1605365971725539986393675267555861382073600889000000000000000000", + "decimal": "2.9062610100100000001324653863199468081193809860282087059757458670" + } + }, + "controls": { + "endpoint_equality": { + "complex_above_effective": { + "rational": "0", + "decimal": "0" + }, + "complex_endpoint": { + "rational": "0", + "decimal": "0" + }, + "q_below_effective_bit": { + "rational": "0", + "decimal": "0" + }, + "leaf_saving_above_effective_bit": { + "rational": "-67018507072324140917/40000000000000000000000000000000", + "decimal": "-1.675462676808103522925E-12" + }, + "q_below_internal": { + "rational": "0", + "decimal": "0" + }, + "q_below_leaf": { + "rational": "-67018507072324140917/40000000000000000000000000000000", + "decimal": "-1.675462676808103522925E-12" + }, + "lambda_above_tau": { + "rational": "0", + "decimal": "0" + }, + "lambda_above_sigma": { + "rational": "0", + "decimal": "0" + }, + "lambda_above_internal": { + "rational": "0", + "decimal": "0" + }, + "lambda_prime_above_lambda": { + "rational": "0", + "decimal": "0" + }, + "lambda_prime_above_leaf": { + "rational": "-67018507072324140917/40000000000000000000000000000000", + "decimal": "-1.675462676808103522925E-12" + } + }, + "zero_group_guard": { + "group_gauge_power_slack": { + "rational": "0", + "decimal": "0" + } + }, + "zero_boundary_slack": { + "boundary_positive_slack": { + "rational": "0", + "decimal": "0" + } + }, + "old_per_axis_scan": { + "unreplaced_per_axis_scan_above_kappa": { + "rational": "-251710882294553122358948322009002986896953538037431690106319/1605365971725539986393675267555861382073600889000000000000000000", + "decimal": "-0.00015679345814462464326776244204516140889758204436646471254886062281" + } + }, + "unrecentered_full_cell_gauge": { + "unrecentered_group_gauge": { + "rational": "-147801337506469629736765306425806173787781184600889/1605365971725539986393675267555861382073600889000000", + "decimal": "-0.092067067640411128867534613680053191880619013971791294024254133023" + } + } + } +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY-ARITHMETIC.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY-ARITHMETIC.json new file mode 100644 index 0000000000..54ad0ed498 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY-ARITHMETIC.json @@ -0,0 +1,414 @@ +{ + "status": "PASS_CONDITIONAL_MATRIX_PHASE_FUSION_REVIEW", + "scope": "Additional matrix-conditioned corollary. Assumes supplied omega_C<=9/4 theorem and the effective algebraic stability transfer, as well as all first-transfer assumptions.", + "review": { + "integrated": "Root read the matrix corollary and independent layout signoff, reproduced the exact parameters and ledger, and replayed matrix source construction controls.", + "matrix_source": "PROOF-AND-COVERAGE.md", + "effective_stability": "ALGEBRAIC-STABILITY-INDEPENDENT.md", + "independent_layout": "MATRIX-LAYOUT-SIGNOFF.md" + }, + "omitted_row": { + "name": "optional full-coordinate-key union surcharge", + "reason": "The actual U_i complete-rectangle extraction, one-field transpose, and ordered merge do not sort union records. Sparse microhalo keys remain paid in their separate cost." + }, + "parameters": { + "a_bit": { + "rational": "1733427039589844234749/1000000000000000000000000", + "decimal": "0.001733427039589844234749" + }, + "a_eff": { + "rational": "67018505072324140917/40000000000000000000000", + "decimal": "0.001675462626808103522925" + }, + "complex_saving": { + "rational": "67018507072324140917/40000000000000000000000", + "decimal": "0.001675462676808103522925" + }, + "q": { + "rational": "67018503072324140917/40000000000000000000000", + "decimal": "0.001675462576808103522925" + }, + "r_spare": { + "rational": "1/1000000", + "decimal": "0.000001" + }, + "zeta": { + "rational": "1/100000000", + "decimal": "1E-8" + }, + "sigma_union": { + "rational": "1/100000", + "decimal": "0.00001" + }, + "stop": { + "rational": "1/1000000000", + "decimal": "1E-9" + }, + "epsilon": { + "rational": "3204021080669390695403468340153200000000000000/3208046711848432952030355267555861382073600889", + "decimal": "0.99874514570995048179732933476913026729312515313683012792547577565" + }, + "capped_block_power": { + "rational": "6006737803538363603786961767383/8006701850307232414091700000000", + "decimal": "0.75021374791267813012557319136042532178866352100676648857598350268" + }, + "beta_group": { + "rational": "19999559600000000000000/80067018503072324140917", + "decimal": "0.24978524208732186987442680863957467821133647899323351142401649732" + }, + "matrix_exponent": { + "rational": "19/8", + "decimal": "2.375" + }, + "matrix_source_bound": { + "rational": "9/4", + "decimal": "2.25" + }, + "c_boundary": { + "rational": "5/16", + "decimal": "0.3125" + }, + "kappa": { + "rational": "836680052702889/500000000000000000", + "decimal": "0.001673360105405778" + }, + "selected": { + "rational": "836330098538459/500000000000000000", + "decimal": "0.001672660197076918" + }, + "first_reviewed_transfer": { + "rational": "1672922349588871/1000000000000000000", + "decimal": "0.001672922349588871" + }, + "lambda_": { + "rational": "39932981495927675859083/40000000000000000000000", + "decimal": "0.998324537398191896477075" + }, + "lambda_prime": { + "rational": "39932981496927675859083/40000000000000000000000", + "decimal": "0.998324537423191896477075" + }, + "tau": { + "rational": "39932981494927675859083/40000000000000000000000", + "decimal": "0.998324537373191896477075" + }, + "sigma": { + "rational": "39932981492927675859083/40000000000000000000000", + "decimal": "0.998324537323191896477075" + }, + "microbox_power": { + "rational": "8", + "decimal": "8" + }, + "halo_power": { + "rational": "3", + "decimal": "3" + } + }, + "margins": { + "main_transform": { + "rational": "536821741596582186168602666269628307658470315421211/320804671184843295203035526755586138207360088900000000", + "decimal": "0.0016733601154057784538170479517203762842018888767028492264912297200" + }, + "global_coordinate_router": { + "rational": "67018505072324140917/40000000000000000000000", + "decimal": "0.001675462626808103522925" + }, + "fused_gaussian": { + "rational": "536821741596582186168602666269628307658470315421211/320804671184843295203035526755586138207360088900000000", + "decimal": "0.0016733601154057784538170479517203762842018888767028492264912297200" + }, + "group_bit_router": { + "rational": "536821745603195808901091315103570008424470315421211/320804671184843295203035526755586138207360088900000000", + "decimal": "0.0016733601278950405581831414454417167161806227872696731761529052912" + }, + "group_scans": { + "rational": "805348355725539986393675267555861382073600889/3208046711848432952030355267555861382073600889", + "decimal": "0.25104009637737138807709747387044441091821132585640338349854072167" + }, + "boundary_algebraic_matrix": { + "rational": "6840475465266695248410101923394927751720175749186737/106934890394947765067678508918528712735786696300000000", + "decimal": "0.063968602202727648328243856591295054495538367869936360650507727037" + }, + "sparse_union_movement": { + "rational": "540029788308430619120633021537184169040543916310211/320804671184843295203035526755586138207360088900000000", + "decimal": "0.0016833601154057784538170479517203762842018888767028492264912297200" + }, + "polynomial_products": { + "rational": "3204021080669390695403468340153200000000000000/3208046711848432952030355267555861382073600889", + "decimal": "0.99874514570995048179732933476913026729312515313683012792547577565" + }, + "microbox_face_corrections": { + "rational": "2942281014059281127650388129972348509431467852/1069348903949477650676785089185287127357866963", + "decimal": "2.7514696122027276483282438565912950544955383678699363606505077270" + } + }, + "slacks": { + "actual_bit_above_effective": { + "rational": "3622775798858794489/62500000000000000000000", + "decimal": "0.000057964412781740711824" + }, + "complex_above_effective": { + "rational": "1/20000000000", + "decimal": "5E-11" + }, + "complex_below_one_over_32": { + "rational": "1182981492927675859083/40000000000000000000000", + "decimal": "0.029574537323191896477075" + }, + "q_positive": { + "rational": "67018503072324140917/40000000000000000000000", + "decimal": "0.001675462576808103522925" + }, + "complex_endpoint": { + "rational": "1/10000000000", + "decimal": "1E-10" + }, + "q_below_effective_bit": { + "rational": "1/20000000000", + "decimal": "5E-11" + }, + "stop_positive": { + "rational": "1/1000000000", + "decimal": "1E-9" + }, + "stop_below_one": { + "rational": "999999999/1000000000", + "decimal": "0.999999999" + }, + "leaf_saving_above_effective_bit": { + "rational": "1932981492927675859083/40000000000000000000000000000000", + "decimal": "4.8324537323191896477075E-11" + }, + "q_below_internal": { + "rational": "1/20000000000", + "decimal": "5E-11" + }, + "q_below_leaf": { + "rational": "3932981492927675859083/40000000000000000000000000000000", + "decimal": "9.8324537323191896477075E-11" + }, + "lambda_above_tau": { + "rational": "1/40000000000", + "decimal": "2.5E-11" + }, + "lambda_above_sigma": { + "rational": "3/40000000000", + "decimal": "7.5E-11" + }, + "lambda_above_internal": { + "rational": "1/40000000000", + "decimal": "2.5E-11" + }, + "lambda_prime_above_lambda": { + "rational": "1/40000000000", + "decimal": "2.5E-11" + }, + "lambda_prime_above_leaf": { + "rational": "3932981492927675859083/40000000000000000000000000000000", + "decimal": "9.8324537323191896477075E-11" + }, + "epsilon_positive": { + "rational": "3204021080669390695403468340153200000000000000/3208046711848432952030355267555861382073600889", + "decimal": "0.99874514570995048179732933476913026729312515313683012792547577565" + }, + "epsilon_below_one": { + "rational": "4025631179042256626886927402661382073600889/3208046711848432952030355267555861382073600889", + "decimal": "0.0012548542900495182026706652308697327068748468631698720745242243534" + }, + "capped_block_above_band": { + "rational": "2003386878384747396741111767383/8006701850307232414091700000000", + "decimal": "0.25021374791267813012557319136042532178866352100676648857598350268" + }, + "capped_block_below_cell": { + "rational": "26576677783154481335239432113645294978213166844563263/106934890394947765067678508918528712735786696300000000", + "decimal": "0.24853139779727235167175614340870494550446163213006363934949227296" + }, + "group_positive": { + "rational": "19999559600000000000000/80067018503072324140917", + "decimal": "0.24978524208732186987442680863957467821133647899323351142401649732" + }, + "group_below_dimension": { + "rational": "2402698356122892965636680000000000000000000000/3208046711848432952030355267555861382073600889", + "decimal": "0.74895990362262861192290252612955558908178867414359661650145927833" + }, + "support_router_span": { + "rational": "60067458903072324140917/80067018503072324140917", + "decimal": "0.75021475791267813012557319136042532178866352100676648857598350268" + }, + "group_gauge_power_slack": { + "rational": "1/100000000", + "decimal": "1E-8" + }, + "actual_logarithmic_group_guard": { + "rational": "101/100000000", + "decimal": "0.00000101" + }, + "global_gamma_power_slack": { + "rational": "4022423132330408193934897047393826212218815399111/3208046711848432952030355267555861382073600889000000", + "decimal": "0.0012538542900495182026706652308697327068748468631698720745242243534" + }, + "actual_logarithmic_gamma_guard": { + "rational": "4025631179042256626886927402661382073600889/3208046711848432952030355267555861382073600889", + "decimal": "0.0012548542900495182026706652308697327068748468631698720745242243534" + }, + "alpha_logarithm_absorption": { + "rational": "1/1000000", + "decimal": "0.000001" + }, + "group_key_fits_record": { + "rational": "2402698356122892965636680000000000000000000000/3208046711848432952030355267555861382073600889", + "decimal": "0.74895990362262861192290252612955558908178867414359661650145927833" + }, + "membership_arithmetic_fits_record": { + "rational": "799557574981283569669931024199112872642133037/1069348903949477650676785089185287127357866963", + "decimal": "0.74770504933257909372023186089868585637491382728042674442693505398" + }, + "sparse_union_fraction_decays": { + "rational": "3430918384747396741111767383/8006701850307232414091700000000", + "decimal": "0.00042850582535626025114638272085064357732704201353297715196700536668" + }, + "microbox_halo_volume": { + "rational": "380335532915361620704585/80067018503072324140917", + "decimal": "4.7502147579126781301255731913604253217886635210067664885759835027" + }, + "union_positive_slack": { + "rational": "1/100000", + "decimal": "0.00001" + }, + "matrix_exponent_above_source_bound": { + "rational": "1/8", + "decimal": "0.125" + }, + "matrix_exponent_below_five_halves": { + "rational": "1/8", + "decimal": "0.125" + }, + "short_record_fallback": { + "rational": "127945844731945360830644877923109261450553910111686139566638347524787/128321868473937318081214210702234455282944035560000000000000000000000", + "decimal": "0.99706968308314237827440433476913026729312515313683012792547577565" + }, + "improvement_over_selected": { + "rational": "34995416443/50000000000000000", + "decimal": "6.9990832886E-7" + }, + "improvement_over_first_reviewed_transfer": { + "rational": "437755816907/1000000000000000000", + "decimal": "4.37755816907E-7" + }, + "main_transform_above_kappa": { + "rational": "16040234287175308991291365140577147466485957516731679/1604023355924216476015177633777930691036800444500000000000000000", + "decimal": "1.0000000453817047951720376284201888876702849226491229720034381634E-11" + }, + "global_coordinate_router_above_kappa": { + "rational": "84100856093020917/40000000000000000000000", + "decimal": "0.000002102521402325522925" + }, + "fused_gaussian_above_kappa": { + "rational": "16040234287175308991291365140577147466485957516731679/1604023355924216476015177633777930691036800444500000000000000000", + "decimal": "1.0000000453817047951720376284201888876702849226491229720034381634E-11" + }, + "group_bit_router_above_kappa": { + "rational": "36073302400837752235461073644407147466485957516731679/1604023355924216476015177633777930691036800444500000000000000000", + "decimal": "2.2489262558183141445441716716180622787269673176152905291235206499E-11" + }, + "group_scans_above_kappa": { + "rational": "399990069170827316553169929437873914639085240389379902516731679/1604023355924216476015177633777930691036800444500000000000000000", + "decimal": "0.24936673627196561007709747387044441091821132585640338349854072167" + }, + "boundary_algebraic_matrix_above_kappa": { + "rational": "33307674429019250694161274836955713292695810709060319172243893/534674451974738825338392544592643563678933481500000000000000000", + "decimal": "0.062295242097321870328243856591295054495538367869936360650507727037" + }, + "sparse_union_movement_above_kappa": { + "rational": "16040249599476451935460767629144447487515470930957516731679/1604023355924216476015177633777930691036800444500000000000000000", + "decimal": "0.000010000010000000453817047951720376284201888876702849226491229720034" + }, + "polynomial_products_above_kappa": { + "rational": "1599326431642752671058066465736543223602284795889379902516731679/1604023355924216476015177633777930691036800444500000000000000000", + "decimal": "0.99707178560454470379732933476913026729312515313683012792547577565" + }, + "microbox_face_corrections_above_kappa": { + "rational": "1470245804132326338277304830206155329249828857963126634172243893/534674451974738825338392544592643563678933481500000000000000000", + "decimal": "2.7497962520973218703282438565912950544955383678699363606505077270" + } + }, + "controls": { + "endpoint_equality": { + "complex_above_effective": { + "rational": "0", + "decimal": "0" + }, + "complex_endpoint": { + "rational": "0", + "decimal": "0" + }, + "q_below_effective_bit": { + "rational": "0", + "decimal": "0" + }, + "leaf_saving_above_effective_bit": { + "rational": "-67018507072324140917/40000000000000000000000000000000", + "decimal": "-1.675462676808103522925E-12" + }, + "q_below_internal": { + "rational": "0", + "decimal": "0" + }, + "q_below_leaf": { + "rational": "-67018507072324140917/40000000000000000000000000000000", + "decimal": "-1.675462676808103522925E-12" + }, + "lambda_above_tau": { + "rational": "0", + "decimal": "0" + }, + "lambda_above_sigma": { + "rational": "0", + "decimal": "0" + }, + "lambda_above_internal": { + "rational": "0", + "decimal": "0" + }, + "lambda_prime_above_lambda": { + "rational": "0", + "decimal": "0" + }, + "lambda_prime_above_leaf": { + "rational": "-67018507072324140917/40000000000000000000000000000000", + "decimal": "-1.675462676808103522925E-12" + } + }, + "zero_group_guard": { + "group_gauge_power_slack": { + "rational": "0", + "decimal": "0" + } + }, + "zero_union_slack": { + "union_positive_slack": { + "rational": "0", + "decimal": "0" + } + }, + "old_per_axis_scan": { + "unreplaced_per_axis_scan_above_kappa": { + "rational": "-671293102421548330224240638726085360914759610620097483268321/1604023355924216476015177633777930691036800444500000000000000000", + "decimal": "-0.00041850581535625979732933476913026729312515313683012792547577564665" + } + }, + "unrecentered_full_cell_gauge": { + "unrecentered_group_gauge": { + "rational": "-265766767138055773857617814368602057929260394866963/1069348903949477650676785089185287127357866963000000", + "decimal": "-0.24853138779727235167175614340870494550446163213006363934949227296" + } + }, + "full_key_sort_on_union": { + "unnecessary_union_full_key_sort_above_kappa": { + "rational": "-3349871895112392252395010152271923003071/13344503083845387356819500000000000000000", + "decimal": "-0.25103009636737138762328042591872403463400943697970053427204949195" + } + } + } +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY-REVIEW.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY-REVIEW.json new file mode 100644 index 0000000000..fea12fbe37 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY-REVIEW.json @@ -0,0 +1,164 @@ +{ + "status": "PASS_CONDITIONAL_MATRIX_PHASE_FUSION_REVIEW", + "created_utc": "2026-10-14T02:11:15.272021+00:00", + "kappa": "836680052702889/500000000000000000", + "kappa_decimal": "0.001673360105405778", + "upstream_selected_unchanged": true, + "base_transfer_preserved": "CAPPED-OUTER-ARITHMETIC.json and REVIEW-RECEIPT.json", + "additional_hypothesis": "The supplied Matrix Multiplication in Nine Fourths theorem gives omega_C<=9/4; apply the independently audited effective algebraic transfer at tau=19/8.", + "limitations": [ + "All finite supplier, common-frame, whole-call, semantic precision, fixed-tape and prime-packing assumptions of the first transfer remain.", + "No generated competitive finite matrix formula or practical runtime claim is made; the fixed formula search is effective but may have enormous constant cost.", + "This is a local conditional corollary, not an upstream selected certificate or an unconditional integer-multiplication theorem." + ], + "reviews": [ + { + "reviewer": "root agent", + "result": "Read matrix corollary and independent layout signoff; reproduced exact parameters/ledger and matrix construction controls; approved integrated conditional corollary." + }, + { + "reviewer": "matrix_boundary agent", + "result": "Read all 1022 supplied source lines and audited effective algebraic coefficient, fixed-tape, precision and rank-exponent transfer." + }, + { + "reviewer": "global_macro agent", + "result": "Independent new-parameter no-sort union, metadata, q-ordering and microhalo layout signoff." + }, + { + "reviewer": "phase_assembly agent", + "result": "Read both complete matrix transfer notes and independent layout signoff; constructed and replayed 47-slack ledger and six rejecting controls." + }, + { + "reviewer": "independent_fusion_review agent and independent children", + "result": "No blocking gap found under stated assumptions after full compiler, support, Gaussian, layout and tape-cost review. Generic SPD scale wording corrected without changing parameters. See independent FINAL-REVIEW.json." + } + ], + "arithmetic": { + "positive_slacks": 47, + "rejecting_controls": 6, + "minimum_saving": "0.0016733601154057784538170479517203762842018888767028492264912297200" + }, + "files": [ + { + "bundle_filename": "phase_fusion_note.tex", + "source_path": "work/phase_assembly_ultra/phase_fusion_note.tex", + "sha256": "08ecb1876695beee25484158e14cfd57c3d48f551a8a41d5abc998d71d674555", + "bytes": 33757 + }, + { + "bundle_filename": "MATRIX-COROLLARY.md", + "source_path": "work/phase_assembly_ultra/MATRIX-COROLLARY.md", + "sha256": "2d7fb1088e58bb86e574277733e082f135362215a69add71d9090213d32c9221", + "bytes": 5787 + }, + { + "bundle_filename": "check_matrix_corollary.py", + "source_path": "work/phase_assembly_ultra/check_matrix_corollary.py", + "sha256": "30db2d8e0f40fcc5c91e25f74cdc54e46aa4a0353c725345f9bcf5744e0b617f", + "bytes": 6692 + }, + { + "bundle_filename": "MATRIX-COROLLARY-ARITHMETIC.json", + "source_path": "work/phase_assembly_ultra/MATRIX-COROLLARY-ARITHMETIC.json", + "sha256": "c6efc4d2f6d17159cefebf5c2dd6099a6327fe0911c5dd87623cad96c7d6c56a", + "bytes": 16783 + }, + { + "bundle_filename": "PROOF-AND-COVERAGE.md", + "source_path": "work/matrix_boundary_ultra/PROOF-AND-COVERAGE.md", + "sha256": "db7509d754bb7fc3381419e0fed2674f22a9d57d34e8420fd5afa3c688fde9aa", + "bytes": 12130 + }, + { + "bundle_filename": "ALGEBRAIC-STABILITY-INDEPENDENT.md", + "source_path": "work/matrix_boundary_ultra/ALGEBRAIC-STABILITY-INDEPENDENT.md", + "sha256": "7873e7d9a99fdc9de3ee224b9925d3e277e9773d7f5f8c2d0f1c19b0e52bc87f", + "bytes": 11743 + }, + { + "bundle_filename": "MATRIX-SOURCE-COVERAGE.json", + "source_path": "work/matrix_boundary_ultra/SOURCE-COVERAGE.json", + "sha256": "fdc6849f97999a6cf99cdaa50591d24f78d6fb0bc580315f205452e5906b35cc", + "bytes": 2839 + }, + { + "bundle_filename": "MATRIX-SOURCE-CONSTRUCTIONS.json", + "source_path": "work/matrix_boundary_ultra/SOURCE-CONSTRUCTIONS.json", + "sha256": "114c1d8fb70592455a80c73d8a1bc6bfc9aca4e7395a420b6331d5474b4d1917", + "bytes": 21018 + }, + { + "bundle_filename": "MATRIX-TRANSFER-MANIFEST.json", + "source_path": "work/matrix_boundary_ultra/MANIFEST.json", + "sha256": "35d98d7579a16dae36530b4e5f4d0b8f925a069daa3f6fe1ea5276916167e0c2", + "bytes": 1159 + }, + { + "bundle_filename": "MATRIX-LAYOUT-SIGNOFF.md", + "source_path": "work/phase_layout_audit_ultra/MATRIX-LAYOUT-SIGNOFF.md", + "sha256": "4c8c62f723232e842dc3bbdcc4defcc8ff1aeb86ba9f694661899dc6783b13c4", + "bytes": 3081 + }, + { + "bundle_filename": "MATRIX-LAYOUT-CONTROLS.json", + "source_path": "work/phase_layout_audit_ultra/MATRIX-LAYOUT-CONTROLS.json", + "sha256": "f8bd8729cb8438188e90fb9149f598b825461c97b4ed290584ca4367f812a48a", + "bytes": 1446 + }, + { + "bundle_filename": "PHASE-LAYOUT-AUDIT.md", + "source_path": "work/phase_layout_audit_ultra/AUDIT.md", + "sha256": "54aafc7afd09fe1a5312e69fad09c87422690543ab75c6ae35f6cbcc26b3eb8a", + "bytes": 11774 + }, + { + "bundle_filename": "CAPPED-SIGNOFF.md", + "source_path": "work/phase_layout_audit_ultra/CAPPED-SIGNOFF.md", + "sha256": "70e9175ebde200f8b016236adc88c4a1c4858945e7c3e5c453a8b6a5f79a263a", + "bytes": 4414 + }, + { + "bundle_filename": "CAPPED-GAUGE-AUDIT.md", + "source_path": "work/gaussian_fast_ultra/CAPPED-GAUGE-AUDIT.md", + "sha256": "1030a34922709ab8d3434a4c57a4a58934ae268c237fb598cb415697da411c9f", + "bytes": 9176 + }, + { + "bundle_filename": "LOG-A-PHASE-SCHUR-AUDIT.md", + "source_path": "work/gaussian_fast_ultra/LOG-A-PHASE-SCHUR-AUDIT.md", + "sha256": "e05d6b8596c80b6e8676569a0ff464a29fa704c3304143f58914f47cdf38b272", + "bytes": 10642 + }, + { + "bundle_filename": "FORWARD-SMALL-A-AUDIT.md", + "source_path": "work/gaussian_fast_ultra/FORWARD-SMALL-A-AUDIT.md", + "sha256": "e37aaa30b15671a1dff00676b14572213efaaac99df202dbba5e09f57af487c0", + "bytes": 6689 + }, + { + "bundle_filename": "SHALLOW-TOEPLITZ.md", + "source_path": "work/inplace_algebra_ultra/SHALLOW-TOEPLITZ.md", + "sha256": "b384b93f3fb4a8c97da2e617ebc14d55cebb0a739070e7f8dbb66f63e24e9310", + "bytes": 15480 + }, + { + "bundle_filename": "TENSOR-COMPILER.md", + "source_path": "work/inplace_algebra_ultra/TENSOR-COMPILER.md", + "sha256": "4d3b8466598a864a234b978e25976648d4e761840aad9153dd18d73d3dfe4d15", + "bytes": 13430 + }, + { + "bundle_filename": "SUPPLIER-SUPPORT-AUDIT.md", + "source_path": "work/inplace_algebra_ultra/SUPPLIER-SUPPORT-AUDIT.md", + "sha256": "bd5b06eca043c5c871227264f6a954473c55cd16ec85bb420ff538fb8ec1d8d6", + "bytes": 16557 + }, + { + "bundle_filename": "SUPPORT-ROUTER.md", + "source_path": "work/halo_layout_ultra/SUPPORT-ROUTER.md", + "sha256": "6ddb322e11883c1177ba6cd1a77d23a1dac827d7290b32eaf642457b1d762a54", + "bytes": 7755 + } + ], + "post_review_correction": "Generic SPD prefix bound records both M and 1/m, not condition number alone; actual Gaussian bounds already satisfy it." +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY.md new file mode 100644 index 0000000000..f08bb57f9c --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY.md @@ -0,0 +1,72 @@ +# Additional corollary using the supplied matrix-exponent theorem + +Status: **PASS_CONDITIONAL_MATRIX_PHASE_FUSION_REVIEW**. The independent matrix-transfer and new-parameter layout audits passed, followed by the integrated root review and exact ledger replay. The first, Strassen-based result `kappa=0.001672922349588871` remains separately reviewed and unchanged. Neither result changes the upstream selected certificate. + +This corollary has an **additional hypothesis**: the supplied *Matrix Multiplication in Nine Fourths* theorem gives `omega_C<=9/4`. Its complete-source audit is `PROOF-AND-COVERAGE.md`; the effective approximate-bit transfer is `ALGEBRAIC-STABILITY-INDEPENDENT.md`. The result here retains every supplier and all-size assumption of the first phase-fusion theorem. + +## Effective matrix operation with the required error interface + +Fix `tau=19/8>9/4`. The matrix exponent theorem supplies a fixed block dimension m and rank r with `r0`. All local coefficient pages remain polynomial in p, while `L^g` remains superpolynomial. Microedge correction has exponent `epsilon+beta-3<-1.75`, including the generous old scalar arithmetic bound. Sparse microhalo key passes remain explicitly paid inside that negligible budget. + +All forward q-image group embeddings occur in native axis-major order before the one global low-bit gather. All compression q-image extractions occur after the inverse global gather. The entire Gaussian calculation keeps full dyadic target coordinate ranges, so every globally invoked H stage has complete coarse labels. This schedule needs no per-group gathering of the whole long-axis fields; the q-image scans have the already-paid Vd/g cost. + +The **optional full-group-key sort surcharge on the sparse union is omitted** because it is absent from the actual algorithm. The reviewed union routine extracts the complete rectangle `U_i=E_i x [L]^(g-1)`, transposes only its one polynomial-size field, computes its axis operator, and merges it into U in the original order. It does not radix-sort U. Reintroducing that sort is a rejecting control in the new ledger; it would destroy this parameter choice. This omission relies on the existing positive layout proof, not on the matrix theorem. + +`check_matrix_corollary.py` verifies 47 exact positive slacks and six rejecting controls and writes `MATRIX-COROLLARY-ARITHMETIC.json`. The rejected variants are endpoint equality, zero group guard, zero union slack, the old Vd row, the old full-cell data gauge, and adding a full-key sort to U. The first theorem's records are not overwritten. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/OUTER-ARITHMETIC.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/OUTER-ARITHMETIC.json new file mode 100644 index 0000000000..3ea510f010 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/OUTER-ARITHMETIC.json @@ -0,0 +1,369 @@ +{ + "status": "PASS_EXACT_ARITHMETIC_PENDING_FULL_PROOF_REVIEW", + "scope": "Exact outer arithmetic; no automatic theorem promotion.", + "parameters": { + "a_bit": { + "rational": "1733427039589844234749/1000000000000000000000000", + "decimal": "0.001733427039589844234749" + }, + "a_eff": { + "rational": "67018505072324140917/40000000000000000000000", + "decimal": "0.001675462626808103522925" + }, + "b": { + "rational": "67018507072324140917/40000000000000000000000", + "decimal": "0.001675462676808103522925" + }, + "q": { + "rational": "67018503072324140917/40000000000000000000000", + "decimal": "0.001675462576808103522925" + }, + "r": { + "rational": "1/1000000", + "decimal": "0.000001" + }, + "zeta": { + "rational": "1/100000000", + "decimal": "1E-8" + }, + "t_stop": { + "rational": "1/1000000000", + "decimal": "1E-9" + }, + "tau": { + "rational": "39932981494927675859083/40000000000000000000000", + "decimal": "0.998324537373191896477075" + }, + "sigma": { + "rational": "39932981492927675859083/40000000000000000000000", + "decimal": "0.998324537323191896477075" + }, + "lambda_": { + "rational": "39932981495927675859083/40000000000000000000000", + "decimal": "0.998324537398191896477075" + }, + "lambda_prime": { + "rational": "39932981496927675859083/40000000000000000000000", + "decimal": "0.998324537423191896477075" + }, + "epsilon": { + "rational": "1335567281179454534595653922461/1337801233538154942727800000000", + "decimal": "0.99833013133588451397634041479247731074046474355146915320872932959" + }, + "beta_group": { + "rational": "2232601179454534595653922461/1337801233538154942727800000000", + "decimal": "0.0016688586641154860236595852075226892595352564485308467912706704140" + }, + "kappa": { + "rational": "1672664764353193/1000000000000000000", + "decimal": "0.001672664764353193" + }, + "selected": { + "rational": "836330098538459/500000000000000000", + "decimal": "0.001672660197076918" + }, + "omega_upper": { + "rational": "45/16", + "decimal": "2.8125" + }, + "microbox_power": { + "rational": "8", + "decimal": "8" + }, + "halo_power": { + "rational": "3", + "decimal": "3" + } + }, + "margins": { + "main_transform": { + "rational": "89507719937020873513319867914705021786833155436737/53512049341526197709112000000000000000000000000000000", + "decimal": "0.0016726647743531934852000135266363446297676282242654233956353352070" + }, + "global_coordinate_router": { + "rational": "67018505072324140917/40000000000000000000000", + "decimal": "0.001675462626808103522925" + }, + "fused_gaussian": { + "rational": "89507719937020873513319867914705021786833155436737/53512049341526197709112000000000000000000000000000000", + "decimal": "0.0016726647743531934852000135266363446297676282242654233956353352070" + }, + "group_bit_router": { + "rational": "89507719941486075872228937106012866708833155436737/53512049341526197709112000000000000000000000000000000", + "decimal": "0.0016726647744366364184057878278193238901437626872421862180618775466" + }, + "group_scans": { + "rational": "22332767690774713639/6689006167690774713639", + "decimal": "0.0033387273282309720473191704150453785190705128970616935825413408280" + }, + "boundary_batched_algebra": { + "rational": "3/32", + "decimal": "0.09375" + }, + "sparse_union_movement": { + "rational": "666668015589622936768246077539/1337801233538154942727800000000", + "decimal": "0.49833114133588451397634041479247731074046474355146915320872932959" + }, + "sparse_union_full_key": { + "rational": "220733820683822664680148692513/445933744512718314242600000000", + "decimal": "0.49499241400765354192902124437743193222139423065440745962618798876" + }, + "polynomial_products": { + "rational": "1335567281179454534595653922461/1337801233538154942727800000000", + "decimal": "0.99833013133588451397634041479247731074046474355146915320872932959" + }, + "microbox_face_corrections": { + "rational": "300000101/100000000", + "decimal": "3.00000101" + } + }, + "slacks": { + "actual_bit_above_effective": { + "rational": "3622775798858794489/62500000000000000000000", + "decimal": "0.000057964412781740711824" + }, + "complex_above_effective": { + "rational": "1/20000000000", + "decimal": "5E-11" + }, + "complex_below_one_over_32": { + "rational": "1182981492927675859083/40000000000000000000000", + "decimal": "0.029574537323191896477075" + }, + "q_positive": { + "rational": "67018503072324140917/40000000000000000000000", + "decimal": "0.001675462576808103522925" + }, + "complex_endpoint": { + "rational": "1/10000000000", + "decimal": "1E-10" + }, + "q_below_effective_bit": { + "rational": "1/20000000000", + "decimal": "5E-11" + }, + "stop_positive": { + "rational": "1/1000000000", + "decimal": "1E-9" + }, + "stop_below_one": { + "rational": "999999999/1000000000", + "decimal": "0.999999999" + }, + "leaf_saving_above_effective_bit": { + "rational": "1932981492927675859083/40000000000000000000000000000000", + "decimal": "4.8324537323191896477075E-11" + }, + "q_below_internal": { + "rational": "1/20000000000", + "decimal": "5E-11" + }, + "q_below_leaf": { + "rational": "3932981492927675859083/40000000000000000000000000000000", + "decimal": "9.8324537323191896477075E-11" + }, + "lambda_above_tau": { + "rational": "1/40000000000", + "decimal": "2.5E-11" + }, + "lambda_above_sigma": { + "rational": "3/40000000000", + "decimal": "7.5E-11" + }, + "lambda_above_internal": { + "rational": "1/40000000000", + "decimal": "2.5E-11" + }, + "lambda_prime_above_lambda": { + "rational": "1/40000000000", + "decimal": "2.5E-11" + }, + "lambda_prime_above_leaf": { + "rational": "3932981492927675859083/40000000000000000000000000000000", + "decimal": "9.8324537323191896477075E-11" + }, + "lambda_prime_below_one": { + "rational": "67018503072324140917/40000000000000000000000", + "decimal": "0.001675462576808103522925" + }, + "epsilon_positive": { + "rational": "1335567281179454534595653922461/1337801233538154942727800000000", + "decimal": "0.99833013133588451397634041479247731074046474355146915320872932959" + }, + "epsilon_below_one": { + "rational": "2233952358700408132146077539/1337801233538154942727800000000", + "decimal": "0.0016698686641154860236595852075226892595352564485308467912706704140" + }, + "group_positive": { + "rational": "2232601179454534595653922461/1337801233538154942727800000000", + "decimal": "0.0016688586641154860236595852075226892595352564485308467912706704140" + }, + "group_below_dimension": { + "rational": "6666673400000000000000/6689006167690774713639", + "decimal": "0.99666127267176902795268082958495462148092948710293830641745865917" + }, + "group_controls_below_one_axis_width": { + "rational": "101/100000000", + "decimal": "0.00000101" + }, + "support_router_span": { + "rational": "1335568632358700408132146077539/1337801233538154942727800000000", + "decimal": "0.99833114133588451397634041479247731074046474355146915320872932959" + }, + "group_guard": { + "rational": "1/100000000", + "decimal": "1E-8" + }, + "alpha_logarithm_absorption": { + "rational": "1/1000000", + "decimal": "0.000001" + }, + "local_gauge_sublinear": { + "rational": "2232614557466869977203349739/1337801233538154942727800000000", + "decimal": "0.0016688686641154860236595852075226892595352564485308467912706704140" + }, + "core_above_band": { + "rational": "666666664410377063231753922461/1337801233538154942727800000000", + "decimal": "0.49833013133588451397634041479247731074046474355146915320872932959" + }, + "record_suffix": { + "rational": "2233952358700408132146077539/1337801233538154942727800000000", + "decimal": "0.0016698686641154860236595852075226892595352564485308467912706704140" + }, + "prime_interval_packing": { + "rational": "2233952358700408132146077539/1337801233538154942727800000000", + "decimal": "0.0016698686641154860236595852075226892595352564485308467912706704140" + }, + "semantic_dimension_guard": { + "rational": "2233952358700408132146077539/1337801233538154942727800000000", + "decimal": "0.0016698686641154860236595852075226892595352564485308467912706704140" + }, + "microbox_larger_than_halo": { + "rational": "6686773566511320179043346077539/1337801233538154942727800000000", + "decimal": "4.9983311413358845139763404147924773107404647435514691532087293296" + }, + "short_record_fallback": { + "rational": "266665169042112715270864145879634872642133037/267560246707630988545560000000000000000000000", + "decimal": "0.99665466870907641045341541479247731074046474355146915320872932959" + }, + "improvement": { + "rational": "182691051/40000000000000000", + "decimal": "4.567276275E-9" + }, + "main_transform_above_kappa": { + "rational": "535120519379309041437662627170833155436737/53512049341526197709112000000000000000000000000000000", + "decimal": "1.0000000485200013526636344629767628224265423395635335207002345453E-11" + }, + "global_coordinate_router_above_kappa": { + "rational": "111914498196420917/40000000000000000000000", + "decimal": "0.000002797862454910522925" + }, + "fused_gaussian_above_kappa": { + "rational": "535120519379309041437662627170833155436737/53512049341526197709112000000000000000000000000000000", + "decimal": "1.0000000485200013526636344629767628224265423395635335207002345453E-11" + }, + "group_bit_router_above_kappa": { + "rational": "539585721738218110628970472092833155436737/53512049341526197709112000000000000000000000000000000", + "decimal": "1.0083443418405787827819323890143762687242186218061877546565878974E-11" + }, + "group_scans_above_kappa": { + "rational": "11144302765537169372248646690369700673/6689006167690774713639000000000000000000", + "decimal": "0.0016660625638777790473191704150453785190705128970616935825413408280" + }, + "boundary_batched_algebra_above_kappa": { + "rational": "92077335235646807/1000000000000000000", + "decimal": "0.092077335235646807" + }, + "sparse_union_movement_above_kappa": { + "rational": "3322151613022877139574479034385369700673/6689006167690774713639000000000000000000", + "decimal": "0.49665847657153132097634041479247731074046474355146915320872932959" + }, + "sparse_union_full_key_above_kappa": { + "rational": "1099939615110700808645159678128456566891/2229668722563591571213000000000000000000", + "decimal": "0.49331974924330034892902124437743193222139423065440745962618798876" + }, + "polynomial_products_above_kappa": { + "rational": "6666647940972035128711518258995369700673/6689006167690774713639000000000000000000", + "decimal": "0.99665746657153132097634041479247731074046474355146915320872932959" + }, + "microbox_face_corrections_above_kappa": { + "rational": "2998328345235646807/1000000000000000000", + "decimal": "2.998328345235646807" + } + }, + "controls": { + "complex_endpoint_equality": { + "rejected_slacks": { + "complex_above_effective": { + "rational": "0", + "decimal": "0" + }, + "complex_endpoint": { + "rational": "0", + "decimal": "0" + }, + "q_below_effective_bit": { + "rational": "0", + "decimal": "0" + }, + "leaf_saving_above_effective_bit": { + "rational": "-67018507072324140917/40000000000000000000000000000000", + "decimal": "-1.675462676808103522925E-12" + }, + "q_below_internal": { + "rational": "0", + "decimal": "0" + }, + "q_below_leaf": { + "rational": "-67018507072324140917/40000000000000000000000000000000", + "decimal": "-1.675462676808103522925E-12" + }, + "lambda_above_tau": { + "rational": "0", + "decimal": "0" + }, + "lambda_above_sigma": { + "rational": "0", + "decimal": "0" + }, + "lambda_above_internal": { + "rational": "0", + "decimal": "0" + }, + "lambda_prime_above_lambda": { + "rational": "0", + "decimal": "0" + }, + "lambda_prime_above_leaf": { + "rational": "-67018507072324140917/40000000000000000000000000000000", + "decimal": "-1.675462676808103522925E-12" + } + } + }, + "zero_group_guard": { + "rejected_slacks": { + "group_guard": { + "rational": "0", + "decimal": "0" + } + } + }, + "old_per_axis_scan": { + "rejected_slacks": { + "unreplaced_per_axis_scan_above_kappa": { + "rational": "-18703131735503606020965614630299327/6689006167690774713639000000000000000000", + "decimal": "-0.0000027961002377069763404147924773107404647435514691532087293295859953" + } + } + } + }, + "theorem_obligations": [ + "retained finite suppliers and exact common-frame/mutable-source compiler", + "deferred reservations and paid global synthetic layout", + "shallow Toeplitz plus SPD extension and tensor compiler", + "small-a forward conditioning and exact target-grid square completion", + "grouped sparse-union route and batched boundary arithmetic", + "dyadic core with sparse microbox-face repair and monotone q-image scans", + "scalar product-diagonal scan and retained all-size semantic/prime/error transfer" + ] +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/OUTER-AUDIT.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/OUTER-AUDIT.md new file mode 100644 index 0000000000..974b8db67f --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/OUTER-AUDIT.md @@ -0,0 +1,93 @@ +# Phase-cell fusion: outer assembly audit + +Status: assembly audit in progress. The exact arithmetic in this directory is a **conditional target**, not a replacement of the selected certificate. The remaining proof interfaces are recorded explicitly below. + +## Conditional transfer statement + +Assume the same finite bit/complex suppliers, common-label arithmetic compiler, semantic guard and all-size fixed-tape interfaces as the selected conditional PR1094 result. Also assume the new deferred-reservation, support-limited H supplier, shallow-circuit tensorization, and grouped sparse/core-halo lemmas below have their stated uniform implementations. Then the retained integer-multiplication reduction runs in + +`O(n (log n)^(1-kappa))`, `kappa=0.001672664764353193`. + +Here p=Theta(log n) and the live scalar bit volume V=Theta(n). Global one-axis preprocessing is polynomial in the original axis sizes and p, hence `n^o(1)`. Table construction or page loading repeated per coarse block is charged to its superpolynomial `L^g` payload by the tensor/scan lemmas; it is included in the displayed V costs, rather than called one global preprocessing operation. Every cost row below is `O(V p^e polylog p)` with `1-e>kappa`. The minimum excess is greater than `10^-11`. Consequently every fixed logarithmic factor and each use of the unconditional quasi-linear short arithmetic kernel can be absorbed in a single positive fraction of that excess. Floors, rounded alpha, and dyadic L alter constants or logarithmic factors. All claims are eventual in p; one fixed finite prefix of inputs can use the retained elementary fallback. This statement becomes an admitted theorem only when the named implementation hypotheses receive the intended full review. + +## Parameter convention + +Let `a_bit=0.001733427039589844234749` and `b=0.001675462676808103522925` be the retained lower bounds certified by the selected PR1094 replay. For applying the older compact recurrence, lower the usable bit saving to `a_eff=(b+q)/2`; this keeps its historical convention `a_eff0` with `(1-t_stop)b>a_eff` and `q<(1-t_stop)b`. + +For each visited coarse block and group, all required local coefficient pages can instead be regenerated in polynomial time in p: there are g local windows of size at most L=Theta(p^8), their rational origins have O(p/d) bits, and the published local coefficient/Schur/circuit constructors are polynomial in that size and requested precision. Recover local phases and anchor gauges from these origins; do not form a raw uncentered global q² exponential on the data. The page contains O(p)-bit online coefficients. Its polynomial setup and sequential loading are amortized by the complete `L^g` payload, which eventually dominates every fixed power of p. This gives an explicit access method even when the coarse labels are permuted; no random global coefficient-table lookup is assumed. + +Global chirps, twists, positive diagonal normalizations and exact scale factors are separable products. The prefix-product scan supplies their products in O(V polylog p), with completed scalar range `O(d alpha^2)=o(p)`. Packed polynomial products retain their saving epsilon. The finite supplier, exact common-label frame, whole-call hosting, semantic depth bound with C1=1, phase precision, prime packing and fixed-tape input/output assumptions are inherited unchanged. They are still conditional interfaces, as in the selected result. + +## Cost ledger, with conservative wide bandwidth + +Let `h_w=1/2` and `h_K=beta+1-epsilon`. Normalize all costs by V. Fixed logarithmic factors are absorbed by strict gaps. + +| Component | power of p | reason | +|---|---:|---| +| main transform | `1-epsilon*q` | deferred reservations | +| constant global coordinate routing | `1-a_eff` | paid support/full router | +| dense Gaussian groups | `epsilon-q*beta` | `(d/g) g^(1-q)` | +| grouped bit routing | `epsilon-a_eff*beta` | same grouping, bit supplier | +| one/fixed group scans | `epsilon-beta` | d/g groups | +| boundary algebra | `(omega-1)*h_w` | batched w-column Strassen | +| sparse union, basic movement | `beta+h_w` | V g w overall | +| sparse union, conservative key surcharge | `beta+h_w+h_K` | full active-group keys | +| polynomial products | `1-epsilon` | retained short polynomial products | +| core-face corrections | `epsilon+beta+3-8+2` | old local maps on sparse copies, with a loose p² allowance | + +Use the rational upper bound `omega<45/16`, checked by `7^16<2^45`. The target balances the first and third rows exactly before a fixed 10^-11 absorption backoff. + +This ledger is accepted only after its circuit tensorizer, grouped sparse route, target-grid core/halo adapter, forward small-a inverse bound, and deferred-reservation interfaces have written proofs. Exact positive inequalities alone do not discharge those interfaces. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/README.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/README.md new file mode 100644 index 0000000000..c9bd9bfd6f --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/README.md @@ -0,0 +1,15 @@ +# Reviewed conditional phase-cell fusion + +With the explicit additional supplied matrix-exponent premise `omega_C<=9/4`, the reviewed local corollary gives **`kappa=0.001673360105405778`**, a gain of `6.9990832886e-7` over the selected conditional exponent. Its status is `PASS_CONDITIONAL_MATRIX_PHASE_FUSION_REVIEW`. + +The separate Strassen-based transfer gives `kappa=0.001672922349588871` with status `PASS_CONDITIONAL_PHASE_FUSION_REVIEW`, without that additional matrix premise. Both retain the original supplier and all-size computational assumptions. The upstream selected certificate is unchanged. + +- `phase_fusion_note.tex` is the standalone proof note. +- `CAPPED-INTERIORS.md` records the local gauge and boundary-count change. +- `check_capped_outer.py` recomputes 44 positive rational slacks and five rejecting controls; `CAPPED-OUTER-ARITHMETIC.json` records the reviewed local status. +- `MATRIX-COROLLARY.md` and `check_matrix_corollary.py` give the additional corollary; `MATRIX-COROLLARY-ARITHMETIC.json` contains 47 positive slacks and six rejecting controls. `MATRIX-COROLLARY-REVIEW.json` records its separate review and source hashes. +- `OUTER-AUDIT.md`, `check_outer.py`, and `OUTER-ARITHMETIC.json` preserve the weaker uncapped arithmetic as history. + +Run `python3 -B work/phase_assembly_ultra/check_capped_outer.py` and `python3 -B work/phase_assembly_ultra/check_matrix_corollary.py` from the workspace root. + +The old `Vd` row and the unrecentered full-cell gauge both reject this result. The improvement uses the reviewed Gaussian circuits, support-limited compact supplier, anchored capped gauges, and grouped sparse/halo scans. Tightening the old arithmetic alone cannot produce it. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/REVIEW-RECEIPT.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/REVIEW-RECEIPT.json new file mode 100644 index 0000000000..2521d02ada --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/REVIEW-RECEIPT.json @@ -0,0 +1,53 @@ +{ + "status": "PASS_CONDITIONAL_PHASE_FUSION_REVIEW", + "created_utc": "2026-10-14T02:06:22.293042+00:00", + "kappa": "1672922349588871/1000000000000000000", + "kappa_decimal": "0.001672922349588871", + "upstream_selected_unchanged": true, + "scope": "Local all-size conditional transfer, retaining the selected finite suppliers and common-frame, whole-call, precision, fixed-tape and prime-packing hypotheses.", + "reviews": [ + { + "reviewer": "root agent", + "result": "Read standalone TeX, integrated notes and exact ledger; cap, supplier and layout audits passed; authorized local conditional status." + }, + { + "reviewer": "gaussian_fast agent", + "result": "Independent capped-gauge and finite-block audit passed; exact inherited-weight reanchoring and broad derivatives checked." + }, + { + "reviewer": "global_macro agent", + "result": "Independent capped carving, sparse-union, q-image and microedge layout audit passed." + }, + { + "reviewer": "inplace_algebra agent", + "result": "Global selected-H support and capacity audit passed; all g controls need not fit one original axis." + }, + { + "reviewer": "phase_assembly agent", + "result": "Read named proofs and relevant retained source contracts; reconstructed complete cost ledger and reviewed capped interfaces." + } + ], + "phase_assembly_replays": [ + "check_capped_outer.py: 44 positive exact slacks and 5 rejecting controls", + "check_forward_cell.py: 350 cases, 5184 factorization and 16496 completion entries", + "check_union.py: exact five-factor/tensor/complete-rectangle checks, with dense escape negative control", + "check_q_embedding.py: product order and augmented inverse checks" + ], + "files": { + "work/phase_assembly_ultra/phase_fusion_note.tex": "da2bf119be3ed1e44473c380e43643d16bdc93015c80380fc59da33d84e951de", + "work/phase_assembly_ultra/CAPPED-INTERIORS.md": "983c5cab2d2398f2192a8aec07daecb655f2de136e12a37f75672a14d27172ba", + "work/phase_assembly_ultra/check_capped_outer.py": "b4555c77de7a3ed4abc708a8d93363ef7c9a914be1091f80ab3ddea83f71230a", + "work/phase_assembly_ultra/CAPPED-OUTER-ARITHMETIC.json": "22caac9ec2ecf4d5743b7eb946b633911fbac55a714399556e87e2eae0457dec", + "work/inplace_algebra_ultra/SHALLOW-TOEPLITZ.md": "b384b93f3fb4a8c97da2e617ebc14d55cebb0a739070e7f8dbb66f63e24e9310", + "work/inplace_algebra_ultra/TENSOR-COMPILER.md": "4d3b8466598a864a234b978e25976648d4e761840aad9153dd18d73d3dfe4d15", + "work/inplace_algebra_ultra/SUPPLIER-SUPPORT-AUDIT.md": "bd5b06eca043c5c871227264f6a954473c55cd16ec85bb420ff538fb8ec1d8d6", + "work/gaussian_fast_ultra/LOG-A-PHASE-SCHUR-AUDIT.md": "e05d6b8596c80b6e8676569a0ff464a29fa704c3304143f58914f47cdf38b272", + "work/gaussian_fast_ultra/BILATERAL-LDU.md": "0d65e66d227464dda1a19f781ae0a0be671cbfd347c41e37ec954f3d629d8a77", + "work/gaussian_fast_ultra/FORWARD-SMALL-A-AUDIT.md": "e37aaa30b15671a1dff00676b14572213efaaac99df202dbba5e09f57af487c0", + "work/gaussian_fast_ultra/CAPPED-GAUGE-AUDIT.md": "1030a34922709ab8d3434a4c57a4a58934ae268c237fb598cb415697da411c9f", + "work/phase_layout_audit_ultra/AUDIT.md": "54aafc7afd09fe1a5312e69fad09c87422690543ab75c6ae35f6cbcc26b3eb8a", + "work/phase_layout_audit_ultra/CAPPED-SIGNOFF.md": "70e9175ebde200f8b016236adc88c4a1c4858945e7c3e5c453a8b6a5f79a263a", + "work/halo_layout_ultra/SUPPORT-ROUTER.md": "d4d2f5bd0a8eb51d9ebd28e4d1a38d3c69bdbf97471a705b3aa199c184364c52", + "work/halo_layout_ultra/HALO-THEOREM.md": "cb9e1da38400b658f9209e465b4e5896fadd17dc66afa862f38bae8d8c1f2058" + } +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_capped_outer.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_capped_outer.py new file mode 100644 index 0000000000..83223e0a2b --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_capped_outer.py @@ -0,0 +1,131 @@ +#!/usr/bin/env python3 +"""Independent rational ledger for capped phase interiors; proof review separate.""" +from fractions import Fraction as Q +from decimal import Decimal, localcontext +from pathlib import Path +import json + +ROOT=Path(__file__).resolve().parent + +def decimal(x): + with localcontext() as ctx: + ctx.prec=65 + return str(Decimal(x.numerator)/Decimal(x.denominator)) + +def calculate(q=None,zeta=None,sigma_boundary=None,old_vd=False,full_cell_gauge=False): + bit=Q('0.001733427039589844234749') + complex_=Q('0.001675462676808103522925') + q=complex_-Q(1,10**10) if q is None else q + a=(q+complex_)/2 + r=Q(1,10**6) + zeta=Q(1,10**8) if zeta is None else zeta + sigma_boundary=Q(1,10**5) if sigma_boundary is None else sigma_boundary + c=Q(3,32) + stop=Q(1,10**9) + eps=(1+q+q*(c-sigma_boundary-r-zeta))/(1+q)**2 + b=eps*(1+q)-c+sigma_boundary + beta=1-b-r-zeta + kappa=Q('0.001672922349588871') + selected=Q('0.001672660197076918') + tau,s=1-a,1-complex_ + internal=tau+(1-stop)*max(s-tau,Q(0)) + leaf=s+stop*(1-s) + lam=1-(q+a)/2 + key=beta+1-eps + margins=dict( + main_transform=eps*q, + global_coordinate_router=a, + fused_gaussian=1-eps+q*beta, + group_bit_router=1-eps+a*beta, + group_scans=1-eps+beta, + boundary_batched_algebra=c+b-eps, + sparse_union_movement=1-eps-beta-Q(1,2)+b, + sparse_union_full_key=1-eps-beta-Q(1,2)+b-key, + polynomial_products=eps, + microbox_face_corrections=1-(eps+beta+3-8+2), + ) + if old_vd: margins['unreplaced_per_axis_scan']=1-eps + slacks=dict( + actual_bit_above_effective=bit-a, + complex_above_effective=complex_-a, + complex_below_one_over_32=Q(1,32)-complex_, + q_positive=q, + complex_endpoint=complex_-q, + q_below_effective_bit=a-q, + stop_positive=stop, + stop_below_one=1-stop, + leaf_saving_above_effective_bit=(1-stop)*complex_-a, + q_below_internal=1-internal-q, + q_below_leaf=1-leaf-q, + lambda_above_tau=lam-tau, + lambda_above_sigma=lam-s, + lambda_above_internal=lam-internal, + lambda_prime_above_lambda=1-q-lam, + lambda_prime_above_leaf=1-q-leaf, + epsilon_positive=eps, + epsilon_below_one=1-eps, + capped_block_above_band=b-Q(1,2), + capped_block_below_cell=eps-b, + group_positive=beta, + group_below_dimension=eps-beta, + support_router_span=1-beta, + group_gauge_power_slack=1-b-r-beta, + actual_logarithmic_group_guard=1-b-beta, + global_gamma_power_slack=1-eps-r, + actual_logarithmic_gamma_guard=1-eps, + alpha_logarithm_absorption=r, + group_key_fits_record=1-key, + membership_arithmetic_fits_record=1-beta-2*(1-eps), + microbox_halo_volume=8-3-beta, + boundary_positive_slack=sigma_boundary, + short_record_fallback=eps-a, + improvement=kappa-selected, + ) + if full_cell_gauge: + slacks['unrecentered_group_gauge']=1-eps-r-beta + slacks.update({name+'_above_kappa':value-kappa for name,value in margins.items()}) + assert margins['main_transform']==margins['fused_gaussian'] + assert margins['boundary_batched_algebra']==margins['main_transform']+sigma_boundary + return dict(parameters=dict(a_bit=bit,a_eff=a,complex_saving=complex_,q=q, + r_spare=r,zeta=zeta,sigma_boundary=sigma_boundary,stop=stop, + epsilon=eps,capped_block_power=b,beta_group=beta, + omega_upper=Q(45,16),c_boundary=c,kappa=kappa,selected=selected, + lambda_=lam,lambda_prime=1-q,tau=tau,sigma=s, + microbox_power=Q(8),halo_power=Q(3)),margins=margins,slacks=slacks) + +def encode(o): + if isinstance(o,Q):return dict(rational=str(o),decimal=decimal(o)) + if isinstance(o,dict):return {k:encode(v) for k,v in o.items()} + return o + +if __name__=='__main__': + row=calculate() + assert 7**16<2**45 + assert all(value>0 for value in row['slacks'].values()) + assert min(row['margins'].values())==row['margins']['main_transform'] + controls={} + tests=[('endpoint_equality',dict(q=Q('0.001675462676808103522925'))), + ('zero_group_guard',dict(zeta=Q(0))), + ('zero_boundary_slack',dict(sigma_boundary=Q(0))), + ('old_per_axis_scan',dict(old_vd=True)), + ('unrecentered_full_cell_gauge',dict(full_cell_gauge=True))] + for name,kwargs in tests: + bad=calculate(**kwargs) + failed={k:v for k,v in bad['slacks'].items() if v<=0} + assert failed,name + controls[name]=failed + output=dict(status='PASS_CONDITIONAL_PHASE_FUSION_REVIEW', + scope='Local conditional transfer and exact arithmetic; inherited supplier and all-size interfaces remain assumptions. No upstream selected certificate is changed.', + review=dict(integrated_review='Root reviewed the complete standalone note, integrated proof chain, exact ledger, and independent cap/supplier/layout audits.', + independent_cap_gauge='CAPPED-GAUGE-AUDIT.md', + independent_cap_layout='CAPPED-SIGNOFF.md', + supplier_support='SUPPLIER-SUPPORT-AUDIT.md'), + **row,controls=controls) + (ROOT/'CAPPED-OUTER-ARITHMETIC.json').write_text(json.dumps(encode(output),indent=2)+'\n') + print(output['status']) + for name in ['epsilon','capped_block_power','beta_group','kappa']: + print(name,decimal(row['parameters'][name])) + print('minimum margin',decimal(min(row['margins'].values()))) + print('gain over selected',decimal(row['slacks']['improvement'])) + print('positive strict slacks',len(row['slacks'])) + print('controls',', '.join(controls)) diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_matrix_corollary.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_matrix_corollary.py new file mode 100644 index 0000000000..3f543803d7 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_matrix_corollary.py @@ -0,0 +1,143 @@ +#!/usr/bin/env python3 +"""Exact corollary ledger, additionally assuming the supplied 9/4 theorem.""" +from fractions import Fraction as Q +from decimal import Decimal,localcontext +from pathlib import Path +import json + +ROOT=Path(__file__).resolve().parent + +def decimal(x): + with localcontext() as ctx: + ctx.prec=65 + return str(Decimal(x.numerator)/Decimal(x.denominator)) + +def calculate(q=None,zeta=None,union_slack=None,old_vd=False, + full_cell_gauge=False,add_full_key_sort=False): + bit=Q('0.001733427039589844234749') + complex_=Q('0.001675462676808103522925') + q=complex_-Q(1,10**10) if q is None else q + a=(q+complex_)/2 + r=Q(1,10**6) + zeta=Q(1,10**8) if zeta is None else zeta + union_slack=Q(1,10**5) if union_slack is None else union_slack + tau_matrix=Q(19,8) + c=(3-tau_matrix)/2 + stop=Q(1,10**9) + cap=(Q(3,2)+q-(1+q)*(r+zeta)+union_slack)/(2+q) + eps=(1+q*(1-cap-r-zeta))/(1+q) + beta=1-cap-r-zeta + kappa=Q('0.001673360105405778') + selected=Q('0.001672660197076918') + first=Q('0.001672922349588871') + tau_bit,sigma=1-a,1-complex_ + internal=tau_bit+(1-stop)*max(sigma-tau_bit,Q(0)) + leaf=sigma+stop*(1-sigma) + lam=1-(q+a)/2 + key=beta+1-eps + margins=dict( + main_transform=eps*q, + global_coordinate_router=a, + fused_gaussian=1-eps+q*beta, + group_bit_router=1-eps+a*beta, + group_scans=1-eps+beta, + boundary_algebraic_matrix=c+cap-eps, + sparse_union_movement=1-eps-beta-Q(1,2)+cap, + polynomial_products=eps, + microbox_face_corrections=1-(eps+beta+3-8+2), + ) + if old_vd:margins['unreplaced_per_axis_scan']=1-eps + if add_full_key_sort: + margins['unnecessary_union_full_key_sort']=margins['sparse_union_movement']-key + slacks=dict( + actual_bit_above_effective=bit-a, + complex_above_effective=complex_-a, + complex_below_one_over_32=Q(1,32)-complex_, + q_positive=q, + complex_endpoint=complex_-q, + q_below_effective_bit=a-q, + stop_positive=stop, + stop_below_one=1-stop, + leaf_saving_above_effective_bit=(1-stop)*complex_-a, + q_below_internal=1-internal-q, + q_below_leaf=1-leaf-q, + lambda_above_tau=lam-tau_bit, + lambda_above_sigma=lam-sigma, + lambda_above_internal=lam-internal, + lambda_prime_above_lambda=1-q-lam, + lambda_prime_above_leaf=1-q-leaf, + epsilon_positive=eps, + epsilon_below_one=1-eps, + capped_block_above_band=cap-Q(1,2), + capped_block_below_cell=eps-cap, + group_positive=beta, + group_below_dimension=eps-beta, + support_router_span=1-beta, + group_gauge_power_slack=1-cap-r-beta, + actual_logarithmic_group_guard=1-cap-beta, + global_gamma_power_slack=1-eps-r, + actual_logarithmic_gamma_guard=1-eps, + alpha_logarithm_absorption=r, + group_key_fits_record=1-key, + membership_arithmetic_fits_record=1-beta-2*(1-eps), + sparse_union_fraction_decays=cap-beta-Q(1,2), + microbox_halo_volume=8-3-beta, + union_positive_slack=union_slack, + matrix_exponent_above_source_bound=tau_matrix-Q(9,4), + matrix_exponent_below_five_halves=Q(5,2)-tau_matrix, + short_record_fallback=eps-a, + improvement_over_selected=kappa-selected, + improvement_over_first_reviewed_transfer=kappa-first, + ) + if full_cell_gauge: + slacks['unrecentered_group_gauge']=1-eps-r-beta + slacks.update({name+'_above_kappa':value-kappa for name,value in margins.items()}) + assert margins['main_transform']==margins['fused_gaussian'] + assert margins['sparse_union_movement']==margins['main_transform']+union_slack + return dict(parameters=dict(a_bit=bit,a_eff=a,complex_saving=complex_,q=q, + r_spare=r,zeta=zeta,sigma_union=union_slack,stop=stop, + epsilon=eps,capped_block_power=cap,beta_group=beta, + matrix_exponent=tau_matrix,matrix_source_bound=Q(9,4), + c_boundary=c,kappa=kappa,selected=selected,first_reviewed_transfer=first, + lambda_=lam,lambda_prime=1-q,tau=tau_bit,sigma=sigma, + microbox_power=Q(8),halo_power=Q(3)),margins=margins,slacks=slacks) + +def encode(o): + if isinstance(o,Q):return dict(rational=str(o),decimal=decimal(o)) + if isinstance(o,dict):return {k:encode(v) for k,v in o.items()} + return o + +if __name__=='__main__': + row=calculate() + assert all(value>0 for value in row['slacks'].values()) + assert min(row['margins'].values())==row['margins']['main_transform'] + controls={} + tests=[('endpoint_equality',dict(q=Q('0.001675462676808103522925'))), + ('zero_group_guard',dict(zeta=Q(0))), + ('zero_union_slack',dict(union_slack=Q(0))), + ('old_per_axis_scan',dict(old_vd=True)), + ('unrecentered_full_cell_gauge',dict(full_cell_gauge=True)), + ('full_key_sort_on_union',dict(add_full_key_sort=True))] + for name,kwargs in tests: + bad=calculate(**kwargs) + failed={k:v for k,v in bad['slacks'].items() if v<=0} + assert failed,name + controls[name]=failed + output=dict(status='PASS_CONDITIONAL_MATRIX_PHASE_FUSION_REVIEW', + scope='Additional matrix-conditioned corollary. Assumes supplied omega_C<=9/4 theorem and the effective algebraic stability transfer, as well as all first-transfer assumptions.', + review=dict(integrated='Root read the matrix corollary and independent layout signoff, reproduced the exact parameters and ledger, and replayed matrix source construction controls.', + matrix_source='PROOF-AND-COVERAGE.md', + effective_stability='ALGEBRAIC-STABILITY-INDEPENDENT.md', + independent_layout='MATRIX-LAYOUT-SIGNOFF.md'), + omitted_row=dict(name='optional full-coordinate-key union surcharge', + reason='The actual U_i complete-rectangle extraction, one-field transpose, and ordered merge do not sort union records. Sparse microhalo keys remain paid in their separate cost.'), + **row,controls=controls) + (ROOT/'MATRIX-COROLLARY-ARITHMETIC.json').write_text(json.dumps(encode(output),indent=2)+'\n') + print(output['status']) + for name in ['epsilon','capped_block_power','beta_group','kappa']: + print(name,decimal(row['parameters'][name])) + print('minimum margin',decimal(min(row['margins'].values()))) + print('gain over selected',decimal(row['slacks']['improvement_over_selected'])) + print('gain over first transfer',decimal(row['slacks']['improvement_over_first_reviewed_transfer'])) + print('positive strict slacks',len(row['slacks'])) + print('controls',', '.join(controls)) diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_outer.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_outer.py new file mode 100644 index 0000000000..2bd3f6eb68 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_outer.py @@ -0,0 +1,131 @@ +#!/usr/bin/env python3 +"""Exact arithmetic only. This does not automatically certify proof obligations.""" +from fractions import Fraction as Q +from decimal import Decimal, localcontext +from pathlib import Path +import json + +ROOT = Path(__file__).resolve().parent + +def dec(x): + with localcontext() as ctx: + ctx.prec = 65 + return str(Decimal(x.numerator) / Decimal(x.denominator)) + +def compute(q=None, zeta=None, old_vd=False): + b = Q('0.001675462676808103522925') + a_bit = Q('0.001733427039589844234749') + q = b-Q(1,10**10) if q is None else q + r = Q(1,10**6) + zeta = Q(1,10**8) if zeta is None else zeta + a_eff = (q+b)/2 + t_stop = Q(1,10**9) + tau, sigma = 1-a_eff, 1-b + lam_prime = 1-q + lam = 1-(q+a_eff)/2 + internal = tau + (1-t_stop)*max(sigma-tau,Q(0)) + leaf = sigma+t_stop*(1-sigma) + eps = (1+q-q*(r+zeta))/(1+2*q) + beta = 1-eps-r-zeta + kappa = Q('0.001672664764353193') + selected = Q('0.001672660197076918') + omega_upper = Q(45,16) + # alpha^2=O(log p), so w=O(sqrt(p) polylog(p)). + wide = Q(1,2) + key = beta+1-eps + margins = dict( + main_transform=eps*q, + global_coordinate_router=a_eff, + fused_gaussian=1-eps+q*beta, + group_bit_router=1-eps+a_eff*beta, + group_scans=1-eps+beta, + boundary_batched_algebra=1-(omega_upper-1)*wide, + sparse_union_movement=1-beta-wide, + sparse_union_full_key=1-beta-wide-key, + polynomial_products=eps, + # gA/L copies, g sequential passes, each p^2 conservatively. + microbox_face_corrections=1-(eps+beta+3-8+2), + ) + if old_vd: + margins['unreplaced_per_axis_scan'] = 1-eps + slacks = dict( + actual_bit_above_effective=a_bit-a_eff, + complex_above_effective=b-a_eff, + complex_below_one_over_32=Q(1,32)-b, + q_positive=q, + complex_endpoint=b-q, + q_below_effective_bit=a_eff-q, + stop_positive=t_stop, + stop_below_one=1-t_stop, + leaf_saving_above_effective_bit=(1-t_stop)*b-a_eff, + q_below_internal=1-internal-q, + q_below_leaf=1-leaf-q, + lambda_above_tau=lam-tau, + lambda_above_sigma=lam-sigma, + lambda_above_internal=lam-internal, + lambda_prime_above_lambda=lam_prime-lam, + lambda_prime_above_leaf=lam_prime-leaf, + lambda_prime_below_one=q, + epsilon_positive=eps, + epsilon_below_one=1-eps, + group_positive=beta, + group_below_dimension=eps-beta, + group_controls_below_one_axis_width=1-eps-beta, + support_router_span=1-beta, + group_guard=1-eps-r-beta, + alpha_logarithm_absorption=r, + local_gauge_sublinear=1-eps-r, + core_above_band=eps-wide, + record_suffix=1-eps, + prime_interval_packing=1-eps, + semantic_dimension_guard=1-eps, + microbox_larger_than_halo=Q(8-3)-beta, + short_record_fallback=eps-a_eff, + improvement=kappa-selected, + ) + slacks.update({name+'_above_kappa':val-kappa for name,val in margins.items()}) + assert eps*q == 1-eps+q*beta + return dict(parameters=dict(a_bit=a_bit,a_eff=a_eff,b=b,q=q,r=r,zeta=zeta, + t_stop=t_stop,tau=tau,sigma=sigma,lambda_=lam,lambda_prime=lam_prime, + epsilon=eps,beta_group=beta,kappa=kappa,selected=selected, + omega_upper=omega_upper,microbox_power=Q(8),halo_power=Q(3)), + margins=margins,slacks=slacks) + +def convert(o): + if isinstance(o,Q): return {'rational':str(o),'decimal':dec(o)} + if isinstance(o,dict): return {k:convert(v) for k,v in o.items()} + return o + +if __name__ == '__main__': + row=compute() + assert 7**16 < 2**45 + assert all(x>0 for x in row['slacks'].values()) + assert min(row['margins'].values())==row['margins']['main_transform'] + controls={} + for name,kw in [('complex_endpoint_equality',{'q':Q('0.001675462676808103522925')}), + ('zero_group_guard',{'zeta':Q(0)}), + ('old_per_axis_scan',{'old_vd':True})]: + bad=compute(**kw) + failed={n:v for n,v in bad['slacks'].items() if v<=0} + assert failed, name + controls[name]={'rejected_slacks':failed} + result=dict(status='PASS_EXACT_ARITHMETIC_PENDING_FULL_PROOF_REVIEW', + scope='Exact outer arithmetic; no automatic theorem promotion.', + **row, controls=controls, + theorem_obligations=[ + 'retained finite suppliers and exact common-frame/mutable-source compiler', + 'deferred reservations and paid global synthetic layout', + 'shallow Toeplitz plus SPD extension and tensor compiler', + 'small-a forward conditioning and exact target-grid square completion', + 'grouped sparse-union route and batched boundary arithmetic', + 'dyadic core with sparse microbox-face repair and monotone q-image scans', + 'scalar product-diagonal scan and retained all-size semantic/prime/error transfer', + ]) + path=ROOT/'OUTER-ARITHMETIC.json' + path.write_text(json.dumps(convert(result),indent=2)+'\n') + print(result['status']) + print('kappa',dec(row['parameters']['kappa'])) + print('minimum margin',dec(min(row['margins'].values()))) + print('gain',dec(row['slacks']['improvement'])) + print('positive exact slacks',len(row['slacks'])) + print('negative controls',', '.join(controls)) diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/AUDIT.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/AUDIT.md new file mode 100644 index 0000000000..bbeeee7431 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/AUDIT.md @@ -0,0 +1,242 @@ +# Grouped phase-cell layout audit + +The sparse-union layout in `REFINED-PHASE-FUSION.md` has a constructive +implementation with its stated `V g^2 W polylog(p)/d` per-group movement +budget. It does not require sorting the full tensor or retaining d full +payload scans. The conclusion is conditional on the separately supplied +dense local tensor compiler, rounded phase-cell factorization, and precision +bounds. This audit does not prove those algebraic/analytic inputs. + +The maximum physical bandwidth **W**, including the broad forward map, must +be used in the dyadic carving and support sets below. The narrower inverse +bandwidth alone is insufficient for the broad map. The phase-assembly +branch confirms this convention. + +## Exact operator order and the union that is actually invariant + +Write H in interior/boundary order as `[A B; C D]` and let +`S=D-C A^-1 B`. The displayed identity in the parent note is correct. In +execution order its inverse can be scheduled as + +``` +diag(A^-1,I) +[I 0; -C I] +diag(I,S^-1) +diag(A,I) +[I -B; 0 I] +diag(A^-1,I). +``` + +The middle two diagonal factors commute. Thus there are three dense +interior stages and two sparse windows: the C and S^-1 stages share one +window; B uses the second window. For H itself, reverse and invert this +sequence: the same original B,C and S occur, with signs reversed and dense +A/A^-1 interchanged. No dense A^-1 B or C A^-1 shear is smuggled into the +sparse boundary cost. + +For each active axis i, let J_i be its designated boundary coordinates. +Let E_i contain J_i and every interior coordinate incident to an original +nonzero entry of B_i or C_i. Original physical bandwidth W implies that E_i +lies within O(W) of the carved endpoints. Include physical-period cuts, +artificial phase cuts and clipped microbox endpoints. Dyadic carving gives + +``` +|E_i| <= C (L/d+1) W log d, +mu := max_i |E_i|/L = O(W log d/d + W log d/L) +``` + +inside a length-L microbox. All sparse factors have the block form +`T_i = I_(E_i^c) direct_sum T_i|E_i`. In particular S_i^-1 can be dense on +J_i: J_i is already included in E_i. Let + +``` +U = {x in [L]^g : some x_i belongs to E_i}. +``` + +Then `|U|/L^g <= g mu`. Every sparse tensor-axis operation preserves U and +its complement. If x_i is changed by a nonzero off-diagonal entry, both +its old and new coordinates belong to E_i; otherwise it is unchanged. +This proves closure for an arbitrarily long sequence of these sparse +operations, not just one application. + +Dense A or A^-1 is **not** covered. It can move a near-boundary interior +coordinate into the deep interior. Scatter U before a dense stage and +regather afterwards. `check_union.py` includes an exact example in which +dense A^-1 sends union-supported data outside U. The actual schedule above +therefore uses two union gathers, not one retained union for all six stages. + +## Complete rectangles inside the union: no missing-zero assumption + +For one sparse axis i define + +``` +U_i = {x : x_i in E_i} = E_i x [L]^(g-1). +``` + +This is a **complete rectangle**, and it is wholly present in U regardless +of which other coordinates are near a boundary. All nonidentity data needed +by T_i is in U_i. A line with every other coordinate outside its own E_j +still has every E_i coordinate present. A line with another boundary +coordinate may contain more data, but those extra E_i^c entries are identity +coordinates and need no boundary computation. + +Keep a copy of U in its original microbox lexicographic order, with a short +coordinate/membership header. For each axis i: + +1. Scan U once and copy records with x_i in E_i to an auxiliary stream. + The copied stream is lexicographic E_i x [L]^(g-1). +2. Rename the increasing E_i coordinates by their ordinal 0,...,|E_i|-1. + This is a stream counter; no rank/select query is needed. +3. Expose that one field at the line suffix using the retained small-field + transpose. Its length is at most L=poly(p), so only O(log p) binary + block moves are needed. Pad only this field to its next power of two + temporarily, at a factor below two, and remove that padding before the + next axis. The other fields may be arbitrary spectators. +4. Apply the original B/C or boundary S/S^-1 factor on its complete E_i + line, retaining identity coordinates E_i\J_i when appropriate. +5. Undo the transpose at the actual field length. Merge the ordered E_i + stream back into a fresh copy of U, replacing exactly those entries. + +No array is completed by invented zero coordinates. The finite checker +verifies the extracted rectangle cardinality and the full tensor result. + +The extraction/merge costs O(|U|) per axis. Transposition costs +O(|U_i| polylog p). Consequently one sparse window costs + +``` +O(V [g^2 mu + g mu polylog p]) + = O(V g^2 W polylog p/d) + O(V g^2 W polylog p/L). +``` + +There is no factor `K=g log s` from a computed-key sort in this part of the +algorithm. A more general radix implementation would still fit with extra +small powers of g, but the complete-rectangle construction avoids it. + +## Union extraction and piece catalogues + +Only one full microbox scan is needed to form U, and one to scatter it. +For every complete p-bit coefficient record, compute its g membership flags +from its coordinate tuple and OR them. The flags and coordinate header have +O(g log L) bits. A nonzero number of flags sends the whole record once to U; +it is not duplicated for each active axis. + +This is a charged descriptor calculation. For actual source periods of +bitlength h=Theta(p/d), q_j inversion and phase-cell endpoint calculations +use O(h^2 polylog p) elementary bit operations per axis. Within a phase +cell, the greedy dyadic carve is found by at most O(log d) halvings and +integer comparisons. Thus a conservative membership cost is +`O(g h^2 polylog p)` per record, which is o(p) for +`g=p^(1-epsilon-r-zeta)` and epsilon>2/3. At the proposed epsilon this has +power about 0.005. It is absorbed by reading the p-bit record once. +Alternatively the original remainder phase generator and an odometer give +the same membership flags in sequential coordinate order. + +Factor pages may be regenerated once per complete microbox/group from its +actual coarse origins, using the supplied polynomial-time coefficient +generation. The complete inner microbox and untouched spectator payload +are superpolynomial in p and amortize this polynomial setup. This avoids +random access to a global catalogue in the scrambled coarse order created +by a support-limited gather. Online row/factor pages are then visited in +the ordered extracted E_i line. All page rewinds are within that line or +RHS batch and are included in the corresponding boundary arithmetic. + +## Batched right-hand sides do not add a large transpose + +All other inner coordinates and following tensor axes are independent +right-hand sides for an axis operation. Their count R is superpolynomial. +Batch them in a dyadic width between W and 2W; the final incomplete batch +can be padded once at constant cost. To put the batch index outside the +boundary-row field, move only that polynomial-width row field. This costs +O(log p) times the boundary volume, not a transpose of the long spectator +field. Each W-by-W factor page is scanned once per RHS batch and reused in +the block product. Reverse the small-field layout after the solve. + +Thus the assumed Strassen `W^omega` per W RHS gives the quoted total +`O(V W^(omega-1) polylog p)` boundary arithmetic. This audit checks the +layout and factor reuse; stability and the no-pivot factor theorem remain +the phase-assembly branch's responsibility. + +## q_j embeddings, selections and source order need one group scan + +For a group, each coordinate map `j -> q_j=floor(tj/s+1/2)` is increasing +and injective. Its tensor product preserves lexicographic order on its +image. Enumerate the target-group rectangle once. At target coordinate k, +set + +``` +j=max(0,ceil(s(2k-1)/(2t))). +``` + +The coordinate belongs to the image iff `j infinity`. Individual guarded neighborhoods +fit the original long axis; the collection of all g controls does not have +to fit in a single axis. This is the same support proof already audited. + +Microedge correction is unchanged. The underlying rounded operator and its +physical bandwidth do not change when a factorization receives more cuts. +Only the principal restriction and Schur decomposition are repartitioned. +The retained Neumann/principal-window comparison still applies to that +same operator. With L=p^8 and halo A=p^3, the additional output fraction is +O(g p^-5), now about p^-4.9064. Its sparse gather, true-period correction and +old sequential local solvers are still negligible. Capping does not turn +this into a dense non-dyadic tensor halo. + +The pinned independent arithmetic checks give approximately + +``` +epsilon = .9984838711085558 +b = .9064167934681446 +beta = .0935821965318554 + +per-group union movement power = -.2192524004044339 +total union movement power = .6856492741722665 +total group scan power = .9049016745767004 +membership descriptor power = .0966144543147439. +``` + +`check_capped_layout.py` independently checks finite capped partitions, +dyadic block sizes, separator distances, worst-pattern elimination fill, +and these exact rational layout inequalities against the pinned candidate +JSON. No layout blocker was found. + +This signoff is specifically for carving, sparse support, actual stream +movement, descriptors, and inherited microedge placement. It does not +independently prove the newly anchored broad/narrow Gaussian formulas or +their final precision bound. Those remain the algebraic/analytic cap audit. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MANIFEST.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MANIFEST.json new file mode 100644 index 0000000000..1fd05118b7 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MANIFEST.json @@ -0,0 +1,16 @@ +{ + "AUDIT.md": "54aafc7afd09fe1a5312e69fad09c87422690543ab75c6ae35f6cbcc26b3eb8a", + "CAPPED-LAYOUT-CONTROLS.json": "6c1342c436fb487a5aa39cf563d2a2e2fddd94d3e441a6f4889cb1e2b73a478c", + "CAPPED-SIGNOFF.md": "70e9175ebde200f8b016236adc88c4a1c4858945e7c3e5c453a8b6a5f79a263a", + "MATRIX-LAYOUT-CONTROLS.json": "f8bd8729cb8438188e90fb9149f598b825461c97b4ed290584ca4367f812a48a", + "MATRIX-LAYOUT-SIGNOFF.md": "4c8c62f723232e842dc3bbdcc4defcc8ff1aeb86ba9f694661899dc6783b13c4", + "PARAMETERS.json": "9f72cfffa34844764ca65a6b4431cc5c779141751df746019db9d3ad8f1dee92", + "Q-EMBEDDING-CONTROLS.json": "24ead3534482397c00c23ad3dbbd4e930e02290e00c97765353d8783c6575c7d", + "README.md": "0ec721f76dfa943e808afd3c2cc39ee69f1a6e5f4f77ba3c7c1373ad60db25af", + "UNION-CONTROLS.json": "6c5262144215cc603bbc3bee93a9a6d9d2318d0177a59115fe560762998498f9", + "check_capped_layout.py": "267d93ab5114ec160f88a6e65fd34c9f0696a686c36ba2dd194d6b70fa32a6bd", + "check_q_embedding.py": "ac858a14bbaf37e0e412a7ada282cd1586632f52b8a979733e775f50130969b6", + "check_union.py": "74608380d72567edcd4470c8d226b15848f9d3a4e5d77d652bdd8963480ab9ce", + "q-embedding.log": "24ead3534482397c00c23ad3dbbd4e930e02290e00c97765353d8783c6575c7d", + "union.log": "6c5262144215cc603bbc3bee93a9a6d9d2318d0177a59115fe560762998498f9" +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-CONTROLS.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-CONTROLS.json new file mode 100644 index 0000000000..aee3270196 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-CONTROLS.json @@ -0,0 +1,30 @@ +{ + "status": "PASS_MATRIX_COROLLARY_NO_SORT_LAYOUT", + "source_sha256": "b0d4648e16df74fc0a3644baa8a82cbb82842c0aa21abe915a28c0c4c949182a", + "exponents": { + "union_fraction": { + "rational": "-3430918384747396741111767383/8006701850307232414091700000000", + "decimal": "-0.000428505825356260251146382720850643577327042013532977151967005" + }, + "membership": { + "rational": "269791328968194081006854064986174254715733926/1069348903949477650676785089185287127357866963", + "decimal": "0.252294950667420906279768139101314143625086172719573255573065" + }, + "total_union": { + "rational": "320264641396534864583914893734048954038319544983689789/320804671184843295203035526755586138207360088900000000", + "decimal": "0.998316639884594221546182952048279623715798111123297150773509" + }, + "group_scans": { + "rational": "2402698356122892965636680000000000000000000000/3208046711848432952030355267555861382073600889", + "decimal": "0.748959903622628611922902526129555589081788674143596616501459" + }, + "microhalo_fraction": { + "rational": "-380335532915361620704585/80067018503072324140917", + "decimal": "-4.75021475791267813012557319136042532178866352100676648857598" + }, + "rejected_union_full_key": { + "rational": "3334408963974161672450196077539/2668900616769077471363900000000", + "decimal": "1.24935673626196560962328042591872403463400943697970053427205" + } + } +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-SIGNOFF.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-SIGNOFF.md new file mode 100644 index 0000000000..d683e4d495 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-SIGNOFF.md @@ -0,0 +1,64 @@ +# Matrix-corollary layout: positive signoff + +The no-sort union layout in `AUDIT.md` applies unchanged to +`work/phase_assembly_ultra/MATRIX-COROLLARY.md`. Its algebraic conditions are +closed axis supports E_i and a complete microbox; neither its proof nor its +implementation requires g2*W and B&(B-1)==0 and n>=2*W + J=set(range(W))|set(range(n-W,n));blocks=[];c=W;stop=n-W + while stop-c>=B+W: + blocks.append(list(range(c,c+B)));J.update(range(c+B,c+B+W));c+=B+W + while stop-c>4*W: + rem=stop-c;k=1<<((rem-2*W).bit_length()-1) + assert k<=B + J.update(range(c,c+W));blocks.append(list(range(c+W,c+W+k))) + J.update(range(c+W+k,c+2*W+k));c+=2*W+k + J.update(range(c,stop)) + assert sorted(J|{j for b in blocks for j in b})==list(range(n)) + assert sum(map(len,blocks))+len(J)==n + assert all(len(b)<=B and len(b)&(len(b)-1)==0 for b in blocks) + assert all(b[0]-a[-1]>W for a,b in zip(blocks,blocks[1:])) + assert len(J)<=10*W*((n+B-1)//B+B.bit_length()+1) + return blocks,J + +def fill_bound(n,blocks,J,W): + adj=[set(j for j in range(n) if j!=i and abs(i-j)<=W) for i in range(n)] + for block in blocks: + for v in block: + nbr=list(adj[v]) + for x in nbr: + adj[x].update(y for y in nbr if y!=x);adj[x].discard(v) + adj[v].clear() + order={v:i for i,v in enumerate(sorted(J))} + bandwidth=max((abs(order[i]-order[j]) for i in J for j in adj[i]),default=0) + assert bandwidth<=2*W + return bandwidth + +def main(): + total=0;examples=[] + for W in (1,2,3,4): + for B in (8,16,32,64): + if B<=2*W:continue + for n in range(2*W,4*B+1): + blocks,J=carve(n,B,W);total+=1 + n=4*B+7;blocks,J=carve(n,B,W);bw=fill_bound(n,blocks,J,W) + examples.append(dict(W=W,B=B,n=n,blocks=len(blocks),boundary=len(J),schur_boundary_bandwidth=bw)) + raw=SOURCE.read_bytes();source=json.loads(raw);p={k:Q(v['rational']) for k,v in source['parameters'].items()} + e,b,g=p['epsilon'],p['capped_block_power'],p['beta_group'];w=Q(1,2);h=1-e + exponents=dict(per_group_union_movement=2*g+w-b,total_union_movement=e+g+w-b, + total_group_scans=e-g,metadata_membership=g+2*h,microbox_key=g, + global_sparse_key=g+h,guarded_support_span=g, + sparse_microhalo_volume=g+3-8, + hypothetical_fullkey_union=e+2*g+h+w-b) + assert Q(1,2)1, theta=rho-1, q_i=floor(rho i+1/2), beta_i=rho i-q_i for all integer i. Define + +``` +x_i=exp(2a rho q_i), e_i=exp(-a rho^2 i^2+a beta_i^2), +G_ij=exp(-a q_i^2) x_i^j e_j, +r=exp(2a rho), c=product_(m>=1)(1-r^-m)>0. +``` + +The sequence x_i increases at least by a factor r at every step and tends geometrically to zero toward minus infinity. + +## Finite-origin identities + +For an integer origin l, Newton interpolation of columns j>=l gives, on every finite principal interval starting at l, + +``` +C_i(l)=product_(l<=k=j, +U_ij(l)=(e_j/e_i) h_(j-i)(x_l,...,x_i), j>=i, +G=L(l) diag(C_i(l)) U(l). +``` + +Here h denotes complete homogeneous symmetric polynomials, and both triangular factors have diagonal one. The powers arising from moving the monomial origin from zero to l cancel exactly: the pivot is C_i(l), not a residual power of x_i. + +Since C_i(l)>=c and the normalized complete-homogeneous coefficient is at most c^-1, + +``` +|L_ij(l)| <= c^-1 G_ij, +|U_ij(l)| <= c^-1 G_ij. +``` + +All limits as l tends to minus infinity exist, including fixed-degree h over the infinite summable past. The displayed Gaussian domination permits passing the factorization to the bilateral limit. + +## Inverse factors + +For i>=j and h=i-j, + +``` +(L(l)^-1)_ij=(-1)^h C_i(l)/C_j(l) + * exp(a[-beta_i^2+beta_j^2-rho^2 h+2rho sum_(j=i and h=j-i, + +``` +(U(l)^-1)_ij=(-1)^h (e_j/e_i) e_h(x_l,...,x_(j-1)). +``` + +The latter e_h is elementary symmetric, distinct from the scalar normalization e_j. Its dominant product consists of x_i,...,x_(j-1), so its normalized value is at most c^-1. + +Using |beta_i|<=1/2 in the two exact exponents gives uniform estimates + +``` +|(L(l)^-1)_ij| <= c^-2 exp(a/4-a rho theta h), +|(U(l)^-1)_ij| <= c^-1 exp(a/4-a rho theta h). +``` + +These pass to the bilateral limits. Products of triangular factors and their inverse factors have only finitely many terms for each supported matrix entry, so both inverse identities survive directly. All four factors define bounded absolutely row-summable operators. + +## Periodization + +Every limiting factor is simultaneously s-periodic in its row and column indices. For a bounded absolutely row-summable periodic array A, define + +``` +Pi(A)_ij=sum_(n in Z) A_(i,j+ns), 0<=i,j=1**, this is O(theta^-2), with a constant depending only on a. Thus a fixed admissible integer Gaussian width alpha suffices for the norm and perturbation estimates. No logarithmic growth of alpha is needed for conditioning. + +The theorem changes an analytic parameter constraint. Applying these factors quickly on the tape remains a separate constructive obligation. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/HOLES-AND-Q-LDU.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/HOLES-AND-Q-LDU.md new file mode 100644 index 0000000000..59d9128d75 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/HOLES-AND-Q-LDU.md @@ -0,0 +1,211 @@ +# Independent checks of Gaussian interpolation and holes completion + +Status: exact algebraic identities and analytic bounds below; no complete new inverse implementation, and no final kappa claim. This continues the parent investigation after the first outer-reduction package. + +## 1. Local scaled Vandermonde identity + +Write `a=pi*alpha^2`, `rho=t/s`, `q_i=floor(rho*i+1/2)`, and `beta_j=rho*j-q_j`. On any nonwrapping index interval, + +``` +N_ij = exp[-a*(rho*j-q_i)^2 + a*beta_j^2] + = exp[-a*q_i^2] * (exp[2a*rho*q_i])^j + * exp[-a*rho^2*j^2+a*beta_j^2]. +``` + +Translations of both index origins preserve a diagonally scaled Vandermonde representation. If the local span is L, centered nodes have logarithms O(aL), and the product-tree polynomials, Lagrange denominators, and outer diagonals have logarithmic height O(aL^2+L). Thus L=O(sqrt(p/a)) is compatible with Cp-bit working precision. Distinct nodes are explicitly separated, so the inverse of a *single supplied principal block* can be computed by multipoint interpolation with that precision and O(L p polylog p) bit cost. + +This does not justify independent short blocks. The current inverse has strong directed coupling near the end of a phase cell. Its exact q-LDU below shows why a halo of width merely sqrt(p/a) can lose much more than 2^-p. + +## 2. Exact Gaussian Toeplitz LDU in a no-gap phase cell + +Within a cell `q_i=i+c`, put `theta=rho-1`, + +``` +q=exp(-a*rho), Q=q^2, +P_j=product_(k=1..j) (1-Q^k), P_0=1, +D_i=exp(a*theta*i^2-2a*c*i), +G_ij=q^((i-j)^2). +``` + +Then `N=diag(D_i)*G*diag(D_i)^-1`. With the Gaussian binomial + +``` +{i choose j}_Q = P_i/(P_j*P_(i-j)), +``` + +the exact lower factor and its inverse are + +``` +L_ij = q^((i-j)^2) * {i choose j}_Q, i>=j, +Linv_ij = (-q)^(i-j) * {i choose j}_Q, i>=j, +G = L * diag(P_j) * L^T. +``` + +These follow from the ordinary Newton factorization of the Vandermonde matrix at nodes Q^-i; eliminating its successive monic Newton polynomials gives the displayed Gaussian binomial factors and pivot P_j. The inverse follows from the finite q-binomial theorem, or multiplying the two triangular factors and grouping equal powers of Q. `check_q_ldu.py` verifies both identities exactly at 30 rational q/size choices (1,155 matrix entries), including diagonal conjugations. + +Each triangular application is a diagonally scaled Toeplitz convolution: + +``` +L = diag(P_i) T_(q^(h^2)/P_h) diag(P_i)^-1, +Linv = diag(P_i) T_((-q)^h/P_h) diag(P_i)^-1. +``` + +The N factors add only the D_i conjugations. Their inverse lower entries have exponent + +``` +a*((2*beta_i-rho)*h - theta*h^2), h=i-j. +``` + +Since beta_i<=1/2, + +``` +abs((D Linv D^-1)_ij) + <= C exp[-a*theta*h*(h+1)], +C = product_(k>=1)(1-Q^k)^-1. +``` + +The upper inverse obeys the same bound using beta_i>=-1/2. For a>=pi and rho>1, C<2 by a geometric bound on the logarithm of the infinite product. Hence both inverse triangular factors have row norm O(1+(a theta)^-1/2). The P_j diagonal is bounded between 1/C and 1. This avoids using cancellation of exponentially large factors to bound the *completed* inverse. Over one cell, the explicit D_i range costs O(a/theta) guard bits, so the retained condition alpha^2/theta=O(p) still suffices for a straightforward implementation. + +This supplies a clean alternative to the retained Gohberg–Semencul interior solve. The latter already has linear convolution cost; a new exponent requires treating the gaps between cells or their boundary system. + +## 3. Exact complementary hole positions + +Let 11, x_k=r^k, and V_t=(x_k^j)_(0<=k,j=k, and 0 otherwise, +(V_holes^T)_(j,h) = x_h^j. +``` + +The coefficient of X^(t-1-j) in P(X)/(X-x_h) equals +`sum_(k=0..j) p_(t-k) x_h^(j-k)`, by synthetic division from the leading end. Lagrange interpolation gives the identity. + +Given values only on selected nodes, set the H missing values initially to zero and do one full interpolation. Solve A for the missing values that cancel the H degree-tail coefficients, then interpolate with the completed values. The resulting polynomial has degree=1, + +``` +abs(B_ij) <= exp[-a*rho*(rho'*k^2-k)]. +``` + +Indeed the relevant distance is at least rho'k-1/2, and the subtractive delta_j^2 is at most 1/4. Thus off-diagonal row sums are bounded by a convergent geometric Gaussian tail, with first exponent a rho(rho'-1). For small theta, rho' is Theta(1/theta), so this exponent is Theta(a/theta). To obtain error 2^-p a direct truncated solve only needs complementary width + +``` +O(1+sqrt(p/(a*rho*rho'))) = O(1+sqrt(p theta/a)). +``` + +This rigorously confirms the conditioning and narrow-band part of the parent's holes-completion proposal. It is not a cost proof for the complete original inverse: the Toeplitz T and full geometric interpolation must first be implemented with their enormous diagonal scalings canceled symbolically. + +## 6. A useful normalized erasure-coefficient bound + +Let hole exponents h_0<...=g, let R=r^g>1, and e_k be the kth elementary symmetric polynomial in r^h. Let M_k be the product of the k largest nodes. Then + +``` +1 <= e_k/M_k <= product_(j>=1)(1-R^-j)^-1. +``` + +For any selected k-index subset, compare its indices with the k largest indices. Its nonnegative deficits form a partition, and its product divided by M_k is at most R to the negative partition size. Summing over partitions proves the bound. The contribution from deficit >=m is at most + +``` +R^(-m/2) * product_(j>=1)(1-R^(-j/2))^-1. +``` + +For R>=4 the latter product is below 4, so retaining deficit less than `m >= (2p+4)/log2 R` suffices for relative error below 2^-p. Thus normalized coefficients have bounded height even when unnormalized coefficients contain Theta(a theta t^2) exponent bits. Only O(p theta/a) partition energy near the subset boundary is relevant. + +Likewise, for a nonhole i, pull `product_h max(r^i,r^h)` out of |E(r^i)|. The residual is `product_h(1-r^-|i-h|)`, which lies between `product_(k>=1)(1-r^-k)^2` and 1. It is uniformly bounded away from zero for fixed r>1. These are positive products and sums; the bounds do not depend on fortuitous numerical cancellation. + +The unresolved algorithmic question is performing the needed polynomial multiplication/division while storing these *degree-dependent* scales, rather than one common scale. Feeding the raw coefficients to an ordinary FFT requires Theta(a theta t^2) bits; declaring that cost absent is invalid. The positive partition estimates give a concrete starting point for a banded or locally normalized implementation. + +## 7. Correct boundary of the result + +- Exact q-LDU, exact hole indexing, exact completion, complementary conditioning, and the normalized erasure bounds above are established algebraically. +- `Q-LDU-CONTROLS.json` and `HOLES-CONTROLS.json` contain finite independent checks. +- No stable all-size global holes solver is implemented here. Its fully paid precision/tape cost remains open. +- No final multiplication exponent follows from these identities alone. + +## 8. Weighted full-geometric interpolation: a stable local implementation + +This is a further positive lemma for one component of holes completion. It does **not** complete the Toeplitz/complement adapters. + +Let beta=H/t=theta/rho, let h_l be the actual holes above, and let h*_l=(l+1/2)/beta be the ideal equally spaced holes. For x in [0,t], define + +``` +R(x) = 2a*rho * sum_l (x-h_l)_+ - a*theta*x^2. +``` + +This is the logarithm of the dominant erasure evaluation after canceling the full-geometric Gaussian input diagonal, up to a constant independent of x. That constant can be kept symbolically and canceled at the final adapter. + +For ideal holes, put m=floor(beta*x+1/2). Then + +``` +sum_l (x-h*_l)_+ = m*x - m^2/(2beta), +R*(x) = -(a*rho/beta)*(m-beta*x)^2, +-a*rho/(4beta) <= R*(x) <= 0. +``` + +Since |h_l-h*_l|<=1/2, compare increments on [x,x+v]. Holes below both endpoints give the same increment v under both locations, and holes above both give zero. Only O(beta*v+1) holes whose ideal or actual locations meet the interval can contribute; each contributes an error at most 1/2. Consequently, for 0<=x<=x+v<=t, + +``` +|[R-R*](x+v)-[R-R*](x)| <= a*theta*v + O(a*rho), +|R(x+v)-R(x)| <= a*theta*v + K, +K <= 4a/theta (01. It is a norm lemma, not a complete fast inverse algorithm. + +Let s>=5, s=1. The exact periodic normalized Gaussian matrix is + +``` +N_(i,j mod s) = sum_(k congruent j-i mod s) + exp[-a*((beta_i+rho*k)^2-beta_(i+k)^2)]. +``` + +Its principal k=0 term is one. Let L be its k=-1 weighted cyclic shift and U its k=+1 shift. Thus + +``` +L_i = exp[-a*((beta_i-rho)^2-beta_(i-1)^2)], +U_i = exp[-a*((beta_i+rho)^2-beta_(i+1)^2)]. +``` + +All other k terms form R. The aliases k=±s and beyond remain in R; they are not discarded. + +For h consecutive lower factors the exponent telescopes to + +``` +beta_i^2-beta_(i-h)^2 - 2rho sum_(j=0..h-1) beta_(i-j) + h rho^2 + >= h rho theta - 1/4. +``` + +The upper factors obey the same bound. Therefore both alternating Neumann inverses exist, including over arbitrarily many cyclic wraps, and + +``` +||(I+L)^-1||, ||(I+U)^-1|| + <= B = exp(a/4)/(1-exp(-a rho theta)) + <= 2 exp(a/4)/theta. +``` + +The final inequality uses a>=1 and 0=2, + +``` +(beta_i+rho*k)^2-beta_(i+k)^2 + >= (rho*|k|-1/2)^2-1/4 + >= k^2-|k|. +``` + +Consequently + +``` +||R|| <= 2 exp(-2a)/(1-exp(-4a)) < 4 exp(-2a). +``` + +Write `A=(I+L)(I+U)`. Then N=A+(R-LU), and + +``` +||A^-1(R-LU)|| <= 5 B^2 exp(-2a) + <= 20 theta^-2 exp(-3a/2). +``` + +If `a>=4 ln(16/theta)`, this is bounded above by +`20 theta^4/16^6 < 1/2`. Hence + +``` +||N^-1|| <= 2 B^2 <= 8 exp(a/2)/theta^2. +``` + +Choose the integer `alpha=ceil(sqrt(4 ln(16/theta)/pi))`. With +`a0=4 ln(16/theta)`, the elementary ceiling inequality gives +`a<=2a0+2pi`; therefore + +``` +||N^-1|| <= 8 exp(pi) 16^4 theta^-6. +``` + +This is an explicit polynomial bound. For theta=Theta(1/d), alpha^2=O(log d) and the total original tensor scale has logarithm O(d log d)=o(p) for every fixed d=p^epsilon, epsilon<1. The period and aliases introduce no exception. + +## Exact controls + +`check_nearest_neighbor.py` checks 69 admissible finite (s,t) pairs and 93,976 product identities/bounds, including all skip gaps and two complete cyclic wraps. It uses exact rational exponents and no floating point. The exponential conclusions follow from monotonicity and the displayed convergent geometric sums. The output is `NEAREST-NEIGHBOR-CONTROLS.json`. + +## Remaining algorithmic obligation + +This lemma establishes that logarithmic alpha squared is analytically permitted. The old inverse implementation still incurs too much work at that alpha. A fast stable inverse, such as a fully normalized holes-completion algorithm, must still supply its actual movement, rounding and operation count. Erasing the inverse cost from the outer ledger would not follow from this norm proof alone. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/PARTIAL-FUSION.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/PARTIAL-FUSION.md new file mode 100644 index 0000000000..876f44a23e --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/PARTIAL-FUSION.md @@ -0,0 +1,60 @@ +# Partial tensor fusion: a strictly better prospective outer balance + +This is a prospective cost theorem, not an implemented resampler. It changes the full-fusion target to a smaller interface whose precision is payable. + +Suppose the normalized holes construction is completed so that a g-axis Gaussian group is a fixed number of tensor geometric/Toeplitz convolutions, diagonal factors, and corrections supported on the hole rows, and suppose its halo gather/scatter has the same asymptotic cost. Let d=p^epsilon and a=Theta(log d), theta=Theta(1/d). + +The exact normalizations developed in HOLES-AND-Q-LDU.md have local logarithmic range O(a/theta)=O(a d) per axis. Therefore g axes can be fused with O(p) guard bits if + +``` +g*a*d = O(p). +``` + +Taking `g=p^(1-epsilon-zeta)` for fixed zeta>0 pays the logarithm and leaves strict slack. There are d/g groups. A group convolution using the retained supplier with saving q costs, after division by full volume, + +``` +g^(1-q) polylog p. +``` + +Thus all Gaussian groups cost + +``` +(d/g)*g^(1-q) = d/g^q + = p^[epsilon-q*(1-epsilon-zeta)]. +``` + +Its saving is `(1+q)*(1-epsilon)-q*zeta`. The main synthetic transform, using deferred reservations, retains saving epsilon*q. Ignoring the arbitrarily small fixed zeta and strict absorption gaps, balancing yields + +``` +epsilon=(1+q)/(1+2q), +kappa=q*(1+q)/(1+2q). +``` + +This exceeds the old `q/(1+q)` by exactly + +``` +q^3 / ((1+q)*(1+2q)). +``` + +That is a new outer balance, rather than tighter rational margins in the old family. At the selected complex endpoint the difference is about 4.7e-9. For example take q equal to the selected complex saving minus 10^-10, zeta=10^-8, the displayed epsilon, and kappa ten^-11 below the smaller main/Gaussian margin. The resulting exact arithmetic target is approximately + +``` +0.00167266475042434534254271472, +``` + +about 4.55335e-9 above the selected 0.001672660197076918. This is only a prospective target until both missing interfaces below are established. + +## Other paid terms + +The bit routing saving is larger than q at the selected pair. Moving a group of O(g log p) small coordinate bits across spectator fields costs O(V g^(1-a_bit) polylog p) per group, hence O(V d/g^a_bit polylog p), below the convolution cost since a_bit>q. A superpolynomial untouched spectator suffix remains available while processing a group, so the compact supplier's descriptor work can still be paid; pointwise small-polynomial products require a separately paid small-field transpose but only logarithmic-width fields. + +The g-axis scalar normalization costs O(g a), and the stronger local weights cost O(g a d); both fit O(p) by construction. For local convolution window L=O(p/a+d), take a dyadic microtile N≫gL. The total halo volume is bounded by `(1+O(L/N))^g=O(1)`. The gauge increment bound implies total logarithmic variation O(g[a theta N+a/theta]); with N=Theta(gL), the extra condition is g^2<=O(d). It holds at the proposed epsilon near one, since 2(1-epsilon)q`, and requires `dK=o(p)`. Thus even if all Gaussian work disappeared, retaining that reservation argument would still force `epsilon<1/(1+q)`. It is insufficient to erase just the Gaussian row from a ledger. + +The selected outer logic was read in `research/complex-pr615-ceiling/vendor/multicold/engines/outer.py`; its seven margins and 47 slacks match the current 1094 assembly. The underlying detailed interfaces are in upstream sections 02, 04, 05, 06, 07, 08, 09, 10 and the cited `references/semantic-bulk/rad20/reports/` transfer notes. In particular, the current bulk Gaussian proof already uses local principal windows and short fields; proposing that same improvement again would not change the selected result. + +## 2. Deferred reservations: removing the power-width reservation condition + +This is an all-size **conditional transfer argument**, assuming the retained complete rectangular compact gadget, exact common-frame circuit, arbitrary coordinate router, and linear semantic guard. It does not require a new finite supplier identity. + +Let `G=4 ceil(log2 p)+6`, and choose `K=128G`. At a layer on `h` still-unprocessed selected bits, reserve enough complete K-bit chunks to provide the two front H-bit fields, one back H-bit field, and row bits, where `H=hG`. The number of reserved chunks is + +``` +R(h) = ceil(3hG/K) + O(log h). +``` + +For `h` above a fixed polynomial in `log p`, `R(h) <= h/16`. Select those chunks from the still-unprocessed axes. Apply the retained compact circuit to the other `h-R(h)` bits, borrowing all three dirty fields from the reserved subset. At the completed-call boundary it is exactly `C` on the active bits and identity on every reserved or spectator bit, for arbitrary initial coefficients and arbitrary dirty addresses. Therefore all reserved bits retain their original complete ranges and can be processed next. + +Repeat on the reserved subset. The processed subsets are disjoint. Stop once `h=polylog(p)` and apply those remaining kernels individually. This is **not** a recursive call on a truncated record or a clean-scratch claim: the entire original stream is still present, with the same full polynomial suffix, and every previously processed coordinate is an untouched spectator. Completed kernels on disjoint selected bits commute. All row padding is removed before moving to the next phase, so temporary factor-two padding never multiplies across phases. + +To establish the time bound, retain the original `m,W,s` recurrence and stop its internal recursion at `d^beta`. With `sigma=1-b`, any `lambda>max(1-a,sigma)` gives, with logarithmic factors suppressed, + +``` +F(h) <= O(h^lambda + h^sigma d^(beta*(1-sigma)) + 1). +``` + +This follows because a packed local basis change has width `O(hG)` and hence cost `O(V h^(1-a) polylog p)`. The term formerly written `(h d^c)^(1-a)` is now `h^(1-a) polylog p`. All compact-gadget exceptional fractions remain polynomially small with K=128G; the retained repair proof uses the current call's O(p)-bit address and is not replaced by a global exception count. + +Since `h_j <= d/16^j` above the polylogarithmic tail, + +``` +sum_j F(h_j) + = O((d^lambda + d^(sigma+beta*(1-sigma))) polylog p). +``` + +The extra physical rearrangements of complete existing fields cost +`O(V p^(1-a) polylog p)` by the retained arbitrary coordinate router, over O(log d) phases. Its polynomial descriptor work is paid by the unchanged superpolynomial polynomial-record suffix, at every internal call. This is additive, not free routing. + +Consequently, for every fixed `q < min(a,(1-beta)*b)`, the whole layer has + +``` +O(V [d^(1-q) + p^(1-a)] polylog p). +``` + +The common guard remains O(d): each completed phase changes semantic numerator/denominator bounds by O(h_j), and `sum h_j=O(d)`. Only the currently active phase contributes its internal excess. There is still exactly one truncation after the entire normalized layer. No power K=d^c and no condition c>q remains. K=o(ell) now follows from `ell=p^(1-epsilon)` for every fixed epsilon<1. + +The extra top round on the long axes can use the same layer after a paid coordinate rearrangement collecting its selected bits and K-bit complete neighborhoods. The common rounds use a single paid global layout router, rather than `p/K` separate K-swaps. Thus the transformed version of the synthetic cost is + +``` +O(V [p^(1-a) + ell*d^(1-q)] polylog p). +``` + +This is the strongest positive transfer established by the present note. It removes the geometric source of `q/(1+q)` in the compact compiler. It does not remove the independent O(Vd) Gaussian and scalar costs. + +### Checks + +`check_constructions.py` checks 1,000 exact reservation schedules and 5,460 entries of actual Gaussian-rational `C` tensor matrices. Every axis is processed once; the phasewise output equals the independently calculated closed tensor matrix. Omitting the deferred subset is a retained failing control. These checks support the written argument; they are not an all-size compiler implementation. + +## 3. Batched right-hand sides for the Gaussian boundary inverse + +This refinement applies to the precomputed noncyclic banded L/U factors in the retained principal-window solver. It uses the many spectator lines carrying the same axis matrix. + +For a triangular matrix with scalar bandwidth w, group consecutive rows into blocks of a power-of-two width `B in [w,2w)`. There is only one preceding block in a lower solve (one following block for an upper solve). Precompute each diagonal-block inverse. For B simultaneous right-hand sides, the update is + +``` +X_j = L_jj^-1 * (Y_j - L_j,j-1 * X_j-1). +``` + +Two B-by-B products implement each update. The seven-product identity gives `O(B^omega)` scalar operations, `omega=log_2(7)`. For z boundary rows and R>=B right-hand sides, splitting the columns into B-column batches gives + +``` +O(z R B^(omega-2)) +``` + +scalar work. Incomplete edge blocks and the last RHS batch are zero-padded only for the current product; this is a constant temporary volume increase, not a tensor-axis padding factor. The matrices may vary from row block to row block. No Toeplitz assumption is made. + +The original boundary has `z=O(M w/d + w)` rows in a length-M local window. Summed over axes and lines, the old regular contribution `V w^2` becomes + +``` +O(V w^(omega-1) polylog p). +``` + +The artificial-end contribution is handled by a polynomial-size microbox L; it is +`O(V d w^(omega-1)/L polylog p)`. The O(Vd polylog p) local field motion and interior-convolution cost is still paid and is still present. + +### Tape layout + +Expose the same axis and factor page used by the retained solver. Gather B adjacent RHS indices with a B-valued local field, moving that O(log p)-bit field across the current row field by the retained small-field transposition. It costs O(V log p) per axis. This charge belongs to the existing d-pass term. Read factor pages and RHS row blocks sequentially. Keep the immediately preceding solved B-by-B block on a fixed work tape. Products use a depth-first seven-product recursion, parking/restoring the other finitely many matrices at each node; scanning and quadrant rearrangement is O(B^2) per level and is dominated by B^omega. There is no random factor lookup and no separate tape for every RHS. + +### Precision + +Keep the retained O(p)-bit rounded factor entries and compute each B-by-B product exactly as a dyadic matrix product before one component rounding. An individual seven-product recursion has depth log B. Additions grow integers by only O(log B) bits at every product boundary, so exact products and their sums have O(p+log B)=O(p) bits. A block inverse is precomputed at the retained high precision, with its row-norm perturbation charged explicitly. + +Round after a completed block update, not between scalar products. The residual of the completed triangular system is bounded rowwise by `poly(p)*2^-P*(1+||X||)`, with P the retained large constant multiple of p. The retained inverse-norm bounds then give a uniform global solution error after absorption, independent of the number of row blocks. This is the same residual closure used by the original banded solver; it must be instantiated with new block-factor rounding constants in any adoption. An unproved claim of numerical stability of fast floating-point multiplication is unnecessary. + +For `u=p^r`, `w^2=O(p^(1-r))`. The revised regular boundary exponent is + +``` +((omega-1)/2)*(1-r), +``` + +whose saving at r=0 is `(3-log_2 7)/2 > 0.096`. Thus an implemented version could remove the old requirement r>kappa while keeping `epsilon+r<1`. It cannot remove the separate O(Vd) scan term by itself. + +### Exact checks and remaining check + +The script independently compares seven-product multiplication against classical multiplication, then compares 60 varied-size blocked triangular solves against exact Gaussian-elimination inverses (1,976 output entries). A dropped-predecessor-block control fails. This establishes finite algebraic orientation, padding and dependencies. A complete adaptation of the original numerical residual constants is still required before adopting the changed analytic interface. + +## 4. A concrete route toward tensor Gaussian fusion + +This section is **conjectural construction work**, not an established algorithm. The missing step is stated so it can be attacked. + +A possible way to avoid d separate Gaussian passes is to compute the tensor Gaussian on a microbox through one tensor convolution. For `rho=s/t`, a real Gaussian row has the exact scalar identity + +``` +exp[-a(j-rho*k)^2] + = exp[-a(1-rho)j^2] + exp[+a*rho(1-rho)k^2] + exp[-a*rho(j-k)^2]. +``` + +Integer translations of j and k add only linear factors, so each local rectangle is a diagonal, Toeplitz convolution, diagonal. Across axes, the diagonal factors fuse into one per-record multiplication. The central convolution is a tensor cyclic convolution after sufficient halos. + +With the current theta≈1/d, a local Gaussian halo has radius +`A=O(alpha*sqrt(p))`. To keep product halo volume constant, the core needs length `L=Omega(dA)`. But the fused diagonal logarithmic range is then +`O(d*theta*L^2/alpha^2)=O(d^2 p)`, not O(p). Thus the most obvious tensor-chirp fusion fails its precision ledger. This explicit failure should prevent a false positive. + +One changed hypothesis makes that favorable: choose source primes much closer to t, with `theta=Theta(d^-3)`. Then at `L=Theta(dA)`, that logarithmic range is O(p), and the product halo overhead is still constant. Such prime lengths are available eventually for every fixed epsilon<1: the explicit prime-counting error from Fiori–Kadiri–Swidinsky, Corollary 22, is `O(x sqrt(log x) exp(-c sqrt(log x)))`; on an interval of width `x/d^3`, with `log x=Theta(p^(1-epsilon))`, its error is o(x/(d^3 log x)). The interval contains far more than d primes, so distinct choices and `S/T=1-o(1)` follow. Trial division setup remains `n^o(1)`. This is an asymptotic existence argument with an enormous cutoff, not a practical prime-search claim. + +However two serious costs remain unproved: + +1. A power-of-two convolution window N has a useful core N-2A. Reinterpreting an axis by these variable non-dyadic cores is not the known binary-coordinate router. Padding every N-2A field to the next power of two costs 2^d. Performing the known small-field reshape one axis at a time costs Vd. A new simultaneous variable-core gather/scatter is needed, with full payload movement charged. +2. The inverse Gaussian correction is not itself one convolution. With theta=d^-3, the current phase-cell similarity weights range like `exp(O(u/theta))`, too large for its old O(p)-bit proof. The generic banded solve can avoid those enormous weights, but the present batched bound still has a d factor outside its favorable structured regime. The tensor inverse needs a different stable factorization or a sparse-boundary construction with a fully paid ledger. + +Therefore “choose closer primes” plus “use a multidimensional FFT” is not a proved bypass. It is an explicit construction program with two specified lemmas. + +## 5. Exact optimistic target and fully paid comparison + +Assume a new tensor-resampling interface gives + +``` +O(V [p^(1-a) + d^(1-q) + w^(omega-1)] polylog p) +``` + +for the complete expansion and inverse, including variable-core layout, coefficient factors, stable inverse, all restoration and only O(p)-bit records. Combine it with Section 2. The complete normalized saving is at least + +``` +min(a, epsilon*q, 1-epsilon*(1-q), + 1-((omega-1)/2)*(1-r), epsilon), +``` + +with strict `epsilon+r<1`, `q 0`, the complex endpoint exceeds q by `0.000000462676808103522925`, and the gamma gap is `0.000005`. The target exceeds the selected kappa by `0.000002319802923082` (about 0.1386894%). Letting epsilon approach one and q approach b would recover the complex saving itself, up to arbitrary strict slack. + +**Fully paid ledger today:** without the unproved tensor-resampling interface, the unchanged Vd term remains. It imposes `kappa<1-epsilon`, so maximizing the proven/reused terms still gives at most `b/(1+b)`. Sections 2 and 3 alone do not improve final kappa. Under the displayed sample, the paid Gaussian margin is only `0.00001`, so that sample FAILS the current interface. It is deliberately not emitted as a passing outer certificate. + +## 6. Reproduction and evidence + +Run from the parent workspace: + +``` +python3 work/radical_reduction_ultra/check_constructions.py +python3 work/radical_reduction_ultra/check_ledger.py +``` + +`CONTROLS.json` contains exact finite controls. `LEDGER.json` contains the optimistic row and the correctly rejected fully paid row. Neither imports a producer or mutates the source checkout. + +## Open next questions + +- Instantiate Section 2 against the exact current compact field-layout code and reject malformed reservoir choices. This is a bounded integration task; it could remove a real interface restriction even before a new final exponent is obtained. +- Carry the block residual argument in Section 3 through the retained P=32768p constants and factor-page format. The algebraic and layout reductions are explicit; numerical certification is the remaining bounded task. +- For the fusion program, first prove or disprove a simultaneous variable-core gather/scatter with O(V p^(1-a) polylog p) cost and no 2^d padding. This isolates the data-layout bottleneck before more analytic effort. +- Seek a stable tensor inverse for near-identity Gaussian resampling with theta≈d^-3 that avoids both enormous diagonal similarities and d sequential full scans. A finite small-d result is not enough; require the exact operator, record width and mass recurrence. + +## Primary sources and attribution + +- CrocSwap/integer-mult-bounds pinned upstream and transfer reports, in particular 02-streams, 04-swap, 05-layers, 06-transforms, 07-resampling, 08-assembly, 09-exact-arithmetic, 10-transposition; reviewed contributions by Douglas Colkitt and the cited independent contributors are retained unchanged. +- Harvey and van der Hoeven's original Gaussian resampling and multiplication interfaces are inherited through those source proofs. +- V. Strassen, *Gaussian Elimination is Not Optimal*, Numerische Mathematik 13 (1969), 354–356, DOI `10.1007/BF02165411`. The seven-product identity is reproduced and independently checked here; no modern matrix multiplication exponent is needed. +- A. Fiori, H. Kadiri, J. Swidinsky, *Sharper bounds for the error term in the prime number theorem*, arXiv:2206.12557v2, Corollary 22: https://arxiv.org/pdf/2206.12557 . Used only for the clearly marked close-prime construction program. + +## Later constructive developments + +The positive interpolation-tree and global two-tail results are in `STABLE-POSITIVE-TREE.md`, with exact controls in `POSITIVE-TREE-CONTROLS.json`. They provide bounded gauges for every signed-data intermediate and show that all high-level rank-one contributions collapse to two global running sums. Its Section 6 gives a normalized Sylvester factorization into a dirty Toeplitz shear, one well-conditioned full Toeplitz map, and one triangular Toeplitz map; `SYLVESTER-CONTROLS.json` checks that identity. + +The stronger fixed-width Gaussian norm theorem is independently audited in `FIXED-A-PERIODIC-NORM-AUDIT.md`, with `FIXED-A-LDU-CONTROLS.json`. It replaces the earlier sufficient logarithmic-width condition: for any fixed admissible a>=1, the periodic inverse has norm O(theta^-2). This is an analytic parameter improvement, not a completed fast inverse. + +The outer partial-fusion candidate in `PARTIAL-FUSION.md` remains prospective. Neither the stable, shallow in-place algebra for plain Toeplitz matrices nor bounded final Gaussian conditioning alone proves that the curved Gaussian coefficient gauges can be processed with only O(p) total guard bits when many axes are fused. That interface, and the actual halo movement cost, must be resolved before claiming a new kappa. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/REFINED-PHASE-FUSION.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/REFINED-PHASE-FUSION.md new file mode 100644 index 0000000000..51920b3b76 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/REFINED-PHASE-FUSION.md @@ -0,0 +1,125 @@ +# A narrower positive route: fuse retained phase-cell interiors + +Status: a complete parameter ledger for a concrete conditional transfer. It avoids the unresolved normalized-erasure adapter. It still requires the new shallow in-place structured-matrix circuit to be integrated with the retained fast tensor supplier and a grouped sparse boundary gather. No new selected certificate is asserted. + +## Construction + +Keep the already reviewed phase-cell Schur decomposition, with + +``` +d=p^epsilon, u=alpha^2=Theta(p^r), w=Theta(p^((1-r)/2)), +0(1-r)/2. +``` + +The positive r may be arbitrarily small; it eventually dominates the old logarithmic lower bound on u. Thus this route can retain the established diagonal-dominance, rounded H, local inverse, and Schur residual proofs. The stronger fixed-a theorem is not needed here. + +Within each no-gap phase cell, the interior matrix is exactly + +``` +A=diag(a_j) G diag(a_j)^-1, +G_ij=G_(i-j), log(max a_j/min a_j)=O(u d). +``` + +The retained G is a symmetric truncated Gaussian Toeplitz matrix with `||G-I||<1/8`; hence G and G^-1 are uniformly conditioned. Apply its inverse by the new shallow in-place low-displacement circuit, rather than summing the two Gohberg-Semencul branches. The circuit's Toeplitz coefficients and Schur generators are precomputed. This is the algebraic connection to the new in-place work; the old source proof did not provide such a tensor-fusible circuit. + +Fuse + +``` +g=p^beta, beta=1-epsilon-r-zeta, +``` + +axes at a time, with fixed zeta>0. The total diagonal similarity guard is +`O(g u d)=O(p^(1-zeta))=o(p)`. Polylogarithmic circuit depth and bounded polynomial factor growth add only `O(g polylog p)=o(p)` bits. Every completed group has polynomial norm; error is allocated at the completed-group boundaries, preserving the retained O(p)-bit record model. + +### Dyadic interiors without exponential padding + +Inside a phase cell, repeatedly choose the largest power of two K such that `K+2w` fits the remaining interval, while its remaining length exceeds 4w. Make a piece of length K+2w, designate w endpoints on each side as boundary, and use its K remaining indices as the interior. The leftover interval of length at most 4w is all boundary. + +The remaining length at least halves on each step. Thus there are O(log d) pieces per original cell, every interior has dyadic length, and the total boundary size grows by only O(log d). No padding by a factor two per tensor axis is used. Schur fill still joins only the two w-sized endpoint groups of a piece, so its scalar bandwidth remains O(w). Distinct dyadic size classes require only O(log p) circuit schedules; inactive axes use identity stages. + +### Boundary arithmetic + +Let R denote the number of spectator right-hand sides, which eventually exceeds every polynomial in p. Batch them in groups of w. Every dense w-by-w block multiplication in the banded forward/backward solve, the border correction, and the boundary/interior couplings then costs O(w^omega) scalar products for w right-hand sides, omega=log_2(7)<2.8081. The retained no-pivot factors are precomputed; Strassen creates only polynomial intermediate growth in w, hence O(log p) extra guard bits. Use the existing global residual argument to bound the completed solve error. + +There are O(s*w*log(d)/d) boundary rows per axis. Consequently the total boundary arithmetic over all d axes is + +``` +O(V * w^(omega-1) * polylog(p)), +``` + +where V counts p-bit data volume. This includes H_BI and H_IB couplings; doing those couplings scalarly would incorrectly reintroduce V*w^2. + +### Five stages separate fused interiors from sparse corrections + +For the interior/boundary order write H=[A B; C D] and S=D-C A^-1 B. The exact identity + +``` +H^-1 = diag(A^-1,I) [I -B;0 I] diag(A,S^-1) + [I 0;-C I] diag(A^-1,I) +``` + +is verified by multiplication. Thus the only full-interior stages are A and A^-1. The two shears use original banded B and C, whose support is within O(w) of each artificial cell boundary. The middle factor splits into the commuting interior A and boundary S^-1. + +For a g-axis group, collect the union U of the O(w log d)-wide endpoint slabs. Its volume is O(V*g*w*log(d)/d). All sparse shear and boundary stages preserve this union; outside it they are identity. Process the g axis operators sequentially on U, without g scans of the full V data. Even a deliberately loose movement cost is + +``` +O(V*g^2*w*polylog(p)/d) per group, +O(V*g*w*polylog(p)) over all d/g groups. +``` + +Add one full scan per group to gather/scatter U, for O(V*d/g). This is below the proposed fused interior cost at the displayed parameters. Dense boundary arithmetic is still batched as above and costs O(V*w^(omega-1)*polylog p); scanning inactive entries in U is included in the movement bound. + +The union-slab gather/scatter and the evaluation of its piece catalogues must be implemented in the retained macro-routing model. The address fields have polynomial length and g*polylog(p)=o(p), but that observation alone is not a tape routing proof. Importantly, the cost budget now tolerates a sequential factor g on the **sparse union**, so the required route is weaker than a fully fused boundary solver. + +## Paid exponents + +Let q be strictly below the supplied complex saving and below the bit saving. The proposed dominant costs, normalized by V, are + +| Component | Power of p | Saving | +|---|---:|---:| +| Main transform with deferred reservations | 1-epsilon*q | epsilon*q | +| Fused Gaussian interior / convolution groups | epsilon-q*beta | 1-epsilon+q*beta | +| Group bit routing | epsilon-a_bit*beta | 1-epsilon+a_bit*beta | +| Sparse group scans | epsilon-beta | 1-epsilon+beta | +| Boundary algebra | (omega-1)*(1-r)/2 | 1-(omega-1)*(1-r)/2 | +| Sequential operations on sparse union | beta+(1-r)/2 | (1+r)/2-beta | + +Every entry has an explicit cost source above. The similarity/normalization condition is `epsilon+r+beta<1`. The old full-axis scan Vd is not part of the claimed implementation; until its replacement is proved, this remains conditional. + +Ignoring arbitrarily small zeta and strict absorption margins, balancing the first two rows gives + +``` +epsilon=(1+q-q*r)/(1+2q), +beta=(q-(1+q)*r)/(1+2q), +kappa=q*(1+q-q*r)/(1+2q). +``` + +This is feasible for `0 0. +``` + +Thus positive r is compatible with a strictly larger exponent, while retaining the old phase-cell analytic hypotheses. + +One explicit arithmetic target uses + +``` +q=0.001675462576808103522925, +r=0.000001, +zeta=0.00000001, +epsilon=(1+q-q*(r+zeta))/(1+2q), +beta=1-epsilon-r-zeta, +kappa=epsilon*q-0.00000000001. +``` + +It yields + +``` +epsilon = 0.9983301313358845139763404147924773... +beta = 0.0016688586641154860236595852075227... +kappa = 0.0016726647643531934852000135266363... +``` + +The proposed kappa exceeds the selected 0.001672660197076918 by about 4.5672763e-9. Its boundary saving is greater than 0.09595, its sparse-scan saving is greater than 0.0033387, its sparse-union saving exceeds 0.49833, and the bit saving is strictly larger than q. This target is deliberately **not** promoted: the new circuit/supplier integration and grouped sparse tape route must first be proved. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/STABLE-POSITIVE-TREE.md b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/STABLE-POSITIVE-TREE.md new file mode 100644 index 0000000000..687c668a9d --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/STABLE-POSITIVE-TREE.md @@ -0,0 +1,187 @@ +# Positive interpolation trees and two global inverse tails + +Status: exact algebra and an error bound for a compressed inverse representation. This note does not yet claim that the local tree operators admit the pure convolution factorization required for tensor fusion. + +## 1. Setup and signs + +Let `x_i=r^{q_i}`, `r=exp(2 a rho)>1`, and `q_i=floor(rho i+1/2)` for `0<=iu) x_j, +W_I(k)=d_(u-k)/M_I, 0<=k<|I|. +``` + +The equality `u-k=s-1-(k+c_I)` is the connection to the final reversed degree. + +Suppose `||y||_infinity<=1` and `||N0^-1||_infinity<=B`. Replace all leaves by their absolute values and call the resulting polynomial `R_I^+`. Completing the interval by the single outside monomial that chooses every node above I and no node below I gives + +``` +M_I * [z^k] R_I^+ <= [z^(k+c_I)] R_all^+ <= B d_(u-k). +``` + +Consequently + +``` +|[z^k] R_I| <= [z^k] R_I^+ <= B W_I(k). +``` + +This holds for every node of any contiguous binary interpolation tree, for arbitrary signed inputs. It does not require roots to remain correlated after rounding. In particular, it avoids the independently-rounded-erasure-quotient failure in ERASURE-ROUNDING-CONTROL.json. + +The merge identity is + +``` +R_(A union B)=F_B R_A + F_A R_B, +``` + +where A is the lower child and B the upper child. All fixed polynomial coefficients in this identity are positive. Each intermediate contribution, after multiplication by the chosen outside monomial, is a sub-sum of the final absolute Lagrange sum. Therefore bounded intermediate amplitude follows from the completed inverse bound, including in the presence of cancellation between input leaves. + +This is a height bound, not by itself a fast multiplication theorem. The gauges are degree dependent. Ordinary convolution of their unscaled coefficients can still require excessive precision. + +## 3. Partition bound for arbitrary selected nodes + +For any increasing nodes satisfying `x_(i+1)/x_i>=r`, let `e_k` be the kth elementary symmetric polynomial, and `M_k` the product of the k largest nodes. Comparing a selected k-subset to the k largest indices gives a partition of nonnegative index deficits. Hence + +``` +1 <= e_k/M_k <= C_r, +C_r=product_(h>=1)(1-r^-h)^-1. +``` + +For `r>=4`, `C_r<2`. This applies to every interval and to intervals with a node deleted. It controls the normalized fixed polynomial factors used by the tree. + +## 4. Two globally compatible far fields + +Write `E_k=e_k(x_0,...,x_(s-1))`, with E_0=1. Let `k=s-1-j`. + +If `i<=j-m`, then + +``` +0 <= 1-e_k(X without x_i)/E_k + = x_i e_(k-1)(X without x_i)/E_k + <= C_r x_i/x_(j+1) + <= C_r r^(-m-1). +``` + +The endpoint k=0 is exact and is read separately. If `i>=j+m`, then + +``` +e_k(X without x_i) + = E_(k+1)/x_i - e_(k+1)(X without x_i)/x_i, +``` + +and the second term relative to `E_(k+1)/x_i` is at most + +``` +C_r x_(j-1)/x_i <= C_r r^(-m-1). +``` + +The endpoint j=0 is again exact. Thus, after allowing a harmless factor `1/(1-C_r r^(-m-1))` to convert the relative approximation to a bound by the true positive entry, the two far fields are + +``` +(N0^-1 y)_j ~= (-1)^k [ + E_k/d_j * sum_(i<=j-m) w_i + +E_(k+1)/d_j * sum_(i>=j+m) w_i/x_i + + exact local strip |i-j|= (p log 2 + log(4 C_r B))/(log r) +``` + +makes the far-field approximation error at most `2^(-p-1)`. In the retained regime, `log B=O(log d)` and `log r=Theta(a)`, so `m=O(p/a+1)`. + +## 5. What must still be paid + +The construction reduces the data application problem to two globally compatible weighted running sums and a width-O(p/a) local strip. All coefficients, barycentric weights, and normalized tree factors may be precomputed: the source axis length is exp(O(p/d)), and any fixed polynomial power of it remains negligible compared with the full tensor volume. + +For a single axis, bounded positive interpolation trees are a plausible route to the local strip in `O(s p polylog p)` bit operations. To turn this into an exponent improvement, however, one must give a fixed sequence of convolution, diagonal, and permitted data-movement operations that can be fused over many axes. A merge written as a *sum* of two convolutions is not sufficient: tensoring it naively generates exponentially many branches. Neither the positive height bound nor the two-tail representation silently resolves that issue. + +## 6. A branch-free reduction of a normalized Sylvester merge + +This is an exact algebraic reduction, with a bounded-symbol condition. It reduces the remaining in-place question to one full Toeplitz map rather than a sum of two polynomial products. + +Take two children of size b. Choose an anchor zeta strictly between their node sets and rescale the variable. After swapping/scaling the child registers the merge has the form + +``` +S(B,A)=f(z) B(z)+z^b g(z^-1) A(z), +f(z)=product_(lower nodes x)(1+(x/zeta) z), +g(z^-1)=product_(upper nodes x)(1+(zeta/x) z^-1). +``` + +If zeta is the geometric mean of the largest lower node and smallest upper node, every displayed root parameter is at most `r^-1/2`. The sum of all parameters on either side is at most + +``` +eta = r^-1/2/(1-r^-1). +``` + +Thus the l1 norms of f and g are at most exp(eta), and the l1 norms of their reciprocal series are at most exp(eta/(1-r^-1/2)). All are constant and approach one as a increases. + +Let T_f be the 2b-by-2b lower triangular Toeplitz multiplication matrix for f. Put + +``` +h(z)=g(z^-1)/f(z), +K_ij=h_(i-b-j), +H_ij=h_(i-j), 0<=i,j>axis&1): + j=i|(1<4: + h=len(pending); r=(3*h*g+row_bits+k-1)//k + if r>=h or h-r<1:break + reserved=pending[:r];active=pending[r:] + assert r*k >= 3*h*g+row_bits + stages.append(dict(active=active,reserved=reserved)) + pending=reserved + stages.append(dict(active=pending,reserved=[])) + flat=[x for s in stages for x in s['active']] + assert sorted(flat)==list(range(d)) and len(set(flat))==d + return stages + +def run(): + global OPS + rng=random.Random(128731);mm=0;solve=0;rhs_entries=0 + for size in (1,2,4,8): + for _ in range(5): + A=[[F(rng.randint(-3,3),4) for _ in range(size)] for _ in range(size)] + B=[[F(rng.randint(-3,3),4) for _ in range(size)] for _ in range(size)] + before=OPS + assert mul(A,B)==classical(A,B) + assert OPS-before==7**(size.bit_length()-1) + mm+=1 + for width in (1,2,4,8): + for n in (1,3,7,10,17): + for k in (1,3,9): + A=[[F(0) for _ in range(n)] for _ in range(n)] + for i in range(n): + A[i][i]=F(1) + for j in range(max(0,i-width),i):A[i][j]=F(rng.randint(-2,2),8*width) + B=[[F(rng.randint(-4,4),8) for _ in range(k)] for _ in range(n)] + X=block_solve(A,B,width) + assert classical(A,X)==B + assert X==classical(inverse(A),B) + solve+=1;rhs_entries+=n*k + schedule_cases=0;exact_entries=0 + for d in range(1,1001): + s=reserve_schedule(d,128,1,8) + assert sum(len(t['active']) for t in s)==d + assert len(s)<=d + schedule_cases+=1 + for d in range(1,7): + s=reserve_schedule(d,8,1) + for col in range(1<>bit&1 else a) + assert v[row]==z;exact_entries+=1 + # Meaningful failure controls: the unresolved reserved coordinates matter. + s=reserve_schedule(6,8,1) + v=[ga(int(i==0)) for i in range(64)] + full=c_axes(v,range(6),6) + omitted=c_axes(v,s[0]['active'],6) + assert omitted!=full + # A wrong block dependency (drop the preceding solved block) fails. + A=[[F(1),F(0)],[F(1,4),F(1)]]; B=[[F(1)],[F(1)]] + assert B!=block_solve(A,B,1) + result=dict(status='PASS_EXACT_SCOPED_CONTROLS',strassen_cases=mm, + blocked_lower_solve_cases=solve,rhs_entries=rhs_entries, + reserve_schedules=schedule_cases,complex_tensor_matrix_entries=exact_entries, + negative_controls=['omit_reserved_axes','drop_preceding_solve_block'], + scalar_products_executed=OPS, + scope='Finite exact identities only; not a tape simulator or all-size compiler proof.') + print(json.dumps(result,indent=2)) + Path(__file__).with_name('CONTROLS.json').write_text(json.dumps(result,indent=2)+'\n') +if __name__=='__main__':run() diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_erasure_rounding.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_erasure_rounding.py new file mode 100644 index 0000000000..1f5f8e821a --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_erasure_rounding.py @@ -0,0 +1,36 @@ +#!/usr/bin/env python3 +"""Exact failure control for independent coefficient rounding before erasure division.""" +from fractions import Fraction as F +from pathlib import Path +import json + +def pmul(a,b): + c=[0]*(len(a)+len(b)-1) + for i,x in enumerate(a): + for j,y in enumerate(b):c[i+j]+=x*y + return c +s,t=29,32;H=t-s;rho=F(t,s) +q=[(2*t*i+s)//(2*s) for i in range(s)] +holes=[i for i in range(t) if i not in q] +assert holes==[5,16,27] +# exp(2*a*rho)=2^(2s); then natural source coefficient scale is 2^(-t*j*j). +base=2**(2*s);E=[1] +for h in holes:E=pmul(E,[-base**h,1]) +E0=abs(E[0]);P=1000;j=20 +# Relative 2^-P perturbation of Q_0. Exactly compute the formal quotient error. +delta=F(E0,2**P) +c=[F(0)]*(j+1) +for k in range(j+1): + rhs=delta if k==0 else F(0) + c[k]=(rhs-sum(E[h]*c[k-h] for h in range(1,min(H,k)+1)))/E[0] +error=abs(c[j])*(2**(t*j*j)) +min_error=F(2)**(t*j*j-2*s*holes[0]*j-P) +assert error>=min_error and min_error==2**6000 +assert delta/E0==F(1,2**P) +res=dict(status='PASS_ERASURE_ROUNDING_FAILURE_CONTROL',s=s,t=t,holes=holes, + relative_input_error='2^-1000',coefficient_index=j, + normalized_output_error_lower='2^6000', + exact_error_numerator_bits=error.numerator.bit_length(), + scope='Independent coefficient perturbation destroys divisibility by E. Not an impossibility result for correlated or exact-root-preserving algorithms.') +Path(__file__).with_name('ERASURE-ROUNDING-CONTROL.json').write_text(json.dumps(res,indent=2)+'\n') +print(json.dumps(res,indent=2)) diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_fixed_a_ldu.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_fixed_a_ldu.py new file mode 100644 index 0000000000..ac7f96cd00 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_fixed_a_ldu.py @@ -0,0 +1,55 @@ +#!/usr/bin/env python3 +from fractions import Fraction as F +from math import prod,ceil +from pathlib import Path +import json + +def p2(k):return F(2)**k +def mm(a,b):return [[sum(a[i][k]*b[k][j] for k in range(len(b))) for j in range(len(b))] for i in range(len(a))] +def symmetric(xs,n,complete): + p=[F(1)]+[F(0)]*n + for x in xs: + if complete: + for j in range(1,n+1):p[j]+=x*p[j-1] + else: + for j in range(n,0,-1):p[j]+=x*p[j-1] + return p[n] +def test(s,t,l,n): + ids=list(range(l,l+n));q={i:(2*t*i+s)//(2*s) for i in ids} + x={i:p2(2*s*t*q[i]) for i in ids} + e={i:p2(-t*t*i*i+(t*i-s*q[i])**2) for i in ids} + g=lambda i,j:p2(-(t*j-s*q[i])**2+(t*j-s*q[j])**2) + c={i:prod(1-x[k]/x[i] for k in ids if k=j else F(0)) + ur.append(e[j]/e[i]*symmetric([x[k] for k in ids if k<=i],j-i,True) if j>=i else F(0)) + if i>=j: + h=i-j + exponent=-(t*i-s*q[i])**2+(t*j-s*q[j])**2-t*t*h+2*t*sum(t*k-s*q[k] for k in ids if j=i: + h=j-i;z=(-1)**h*e[j]/e[i]*symmetric([x[k] for k in ids if k=j else F(0) for j in range(H)] for i in range(H)] + Ht=[[x[h]**j for h in holes] for j in range(H)] + D=[[1/peval(derivative,x[holes[i]]) if i==j else F(0) for j in range(H)] for i in range(H)] + A=[[Vi[t-1-j][h] for h in holes] for j in range(H)] + assert mm(mm(T,Ht),D)==A + # Complete a partial values vector to a degree0 for v in slacks.values()) +paid=dict(margins,unfused_gaussian=1-eps) +assert min(paid.values()) < k +assert 1-eps < selected +assert k>selected +# Require the missing map to be declared; calculations do not discharge it. +result=dict(status='PASS_OPTIMISTIC_LEDGER_AND_PAID_REJECTION', + selected_kappa=str(selected), target_kappa=str(k), + absolute_gain=str(k-selected), + proposed_parameters={name:str(v) for name,v in + dict(a=a,q=q,epsilon=eps,r=r,beta=beta).items()}, + omega_upper=str(omega_upper),omega_control='7^16 < 2^45', + optimistic_margins={name:str(v) for name,v in margins.items()}, + optimistic_slacks={name:str(v) for name,v in slacks.items()}, + fully_paid_margins={name:str(v) for name,v in paid.items()}, + fully_paid_accepts_target=False, + missing_lemma='Stable complete tensor Gaussian resampling including variable-core movement in stated cost and O(p) record width.', + scope='Arithmetic conditional target and explicit rejected existing-interface row; not a new multiplication certificate.') +Path(__file__).with_name('LEDGER.json').write_text(json.dumps(result,indent=2)+'\n') +print(json.dumps(result,indent=2)) diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_nearest_neighbor.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_nearest_neighbor.py new file mode 100644 index 0000000000..d56f21f6b7 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_nearest_neighbor.py @@ -0,0 +1,45 @@ +#!/usr/bin/env python3 +"""Exact exponent checks for the polynomial-condition nearest-neighbor lemma.""" +from fractions import Fraction as F +from pathlib import Path +import json +cases=products=0 +for t in range(6,29): + for s in range(max(5,(4*t+4)//5),t): + rho=F(t,s);theta=rho-1 + if theta>F(1,4):continue + q=[(2*t*j+s)//(2*s) for j in range(s)] + beta=[rho*j-q[j] for j in range(s)] + assert all(-F(1,2)<=v=h*rho*theta-F(1,4) + assert usum>=h*rho*theta-F(1,4) + products+=2 + cases+=1 +# With a >=4 log(16/theta), the proposed perturbation ratio is <=20 theta^4/16^6. +assert F(20,16**6)*F(1,4)**4 < F(1,2) +res=dict(status='PASS_EXACT_NEAREST_NEIGHBOR_EXPONENTS',parameter_pairs=cases, + cyclic_product_bounds=products,cycle_lengths_up_to=28, + controls=['all skip gaps checked','two full cyclic wraps checked'], + scope='Exact exponent identities and inequalities; real exponential conclusions follow from monotonicity and geometric sums.') +Path(__file__).with_name('NEAREST-NEIGHBOR-CONTROLS.json').write_text(json.dumps(res,indent=2)+'\n') +print(json.dumps(res,indent=2)) diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_positive_tree.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_positive_tree.py new file mode 100644 index 0000000000..ebce2a90cf --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_positive_tree.py @@ -0,0 +1,106 @@ +#!/usr/bin/env python3 +"""Exact controls for the positive interpolation tree and two global tails.""" +from fractions import Fraction as F +from math import prod +from pathlib import Path +import json + +def mul(a,b): + c=[F(0)]*(len(a)+len(b)-1) + for i,x in enumerate(a): + for j,y in enumerate(b): c[i+j]+=x*y + return c + +def add(a,b): + c=[F(0)]*max(len(a),len(b)) + for i,x in enumerate(a): c[i]+=x + for i,x in enumerate(b): c[i]+=x + return c + +def factor(xs): + p=[F(1)] + for x in xs: p=mul(p,[F(1),x]) + return p + +def test(s,H,r): + t=s+H + qi=[(2*t*i+s)//(2*s) for i in range(s)] + xs=[F(r)**q for q in qi] + es=factor(xs) + ws=[] + for i in range(s): + den=prod(xs[i]-xs[j] for j in range(s) if j!=i) + ws.append(F((i*7+3)%11-5,den)) + whole=[F(0)]*s + abswhole=[F(0)]*s + for i in range(s): + e=factor(xs[:i]+xs[i+1:]) + whole=add(whole,[ws[i]*v for v in e]) + abswhole=add(abswhole,[abs(ws[i])*v for v in e]) + # Arbitrary positive target coefficient weights suffice for the exact + # completion inequality; these reproduce a Gaussian-shaped gauge. + ds=[F(1,r**(j*j)) for j in range(s)] + B=max(abswhole[s-1-j]/ds[j] for j in range(s)) + checked=0 + def tree(l,u): + nonlocal checked + if u-l==1: + fi=[F(1),xs[l]]; ri=[ws[l]]; ai=[abs(ws[l])] + else: + m=(l+u)//2 + fl,rl,al=tree(l,m); fr,rr,ar=tree(m,u) + fi=mul(fl,fr) + ri=add(mul(fr,rl),mul(fl,rr)) + ai=add(mul(fr,al),mul(fl,ar)) + Mh=prod(xs[u:]) + for k in range(u-l): + target=s-u+k + assert abs(ri[k])<=ai[k] + assert Mh*ai[k]<=abswhole[target] + assert ai[k]<=B*ds[u-1-k]/Mh + checked+=1 + return fi,ri,ai + ff,rr,aa=tree(0,s) + assert ff==es and rr==whole and aa==abswhole + left=factor(xs[:s//2]) + broken=[F(0)]*s + for i in range(s//2): + wrong=factor(xs[:i]+xs[i+1:s//2]) + broken=add(broken,[ws[i]*v for v in wrong]) + for i in range(s//2,s): + right=factor(xs[s//2:i]+xs[i+1:]) + broken=add(broken,[ws[i]*v for v in mul(left,right)]) + assert broken != whole + tails=0 + for j in range(s): + k=s-1-j + for i in range(s): + e=factor(xs[:i]+xs[i+1:])[k] + if i=e + assert (app-e)*r**(m+1)<=4*app + tails+=1 + if i>j: + m=i-j + app=es[k+1]/xs[i] + assert app>=e + assert (app-e)*r**(m+1)<=4*app + tails+=1 + return checked,tails + +n=nodes=tails=0 +for s in range(3,15): + for H in range(1,min(s,5)): + for r in (4,8): + c,d=test(s,H,r) + n+=1; nodes+=c; tails+=d +out={"status":"pass", "arithmetic":"exact rational", "instances":n, + "tree_coefficient_completion_inequalities":nodes, + "far_field_relative_error_inequalities":tails, + "negative_controls":["Omitting the upper-child factor changes the root polynomial.", + "The omitted upper-child factor is detected in every instance."], + "claims_excluded":["Fast normalized convolution implementation", "Tensor fusion", "New final exponent"]} +Path(__file__).with_name('POSITIVE-TREE-CONTROLS.json').write_text(json.dumps(out,indent=2)+'\n') +print(json.dumps(out,indent=2)) diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_q_ldu.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_q_ldu.py new file mode 100644 index 0000000000..63f7d6eab0 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_q_ldu.py @@ -0,0 +1,64 @@ +#!/usr/bin/env python3 +"""Exact rational controls for Gaussian Toeplitz q-LDU and shifted exponents.""" +from fractions import Fraction as F +from pathlib import Path +import json + +def mm(a,b):return [[sum(x*y for x,y in zip(r,c)) for c in zip(*b)] for r in a] +def tr(a):return list(map(list,zip(*a))) +def ident(n):return [[F(i==j) for j in range(n)] for i in range(n)] +def powq(q,n):return q**n + +def factors(q,n): + Q=q*q;P=[F(1)] + for j in range(1,n):P.append(P[-1]*(1-Q**j)) + bc=lambda i,j:P[i]/(P[j]*P[i-j]) + L=[[q**((i-j)**2)*bc(i,j) if i>=j else F(0) for j in range(n)] for i in range(n)] + Li=[[(-q)**(i-j)*bc(i,j) if i>=j else F(0) for j in range(n)] for i in range(n)] + D=[[P[i] if i==j else F(0) for j in range(n)] for i in range(n)] + return L,Li,D + +cases=0;entries=0 +for q in (F(1,2),F(1,3),F(2,3)): + for n in range(1,11): + L,Li,D=factors(q,n) + G=[[q**((i-j)**2) for j in range(n)] for i in range(n)] + assert mm(mm(L,D),tr(L))==G + assert mm(L,Li)==ident(n) and mm(Li,L)==ident(n) + # Integer-power diagonal conjugation is an exact finite surrogate. + diagonal=[q**(i*i-3*i) for i in range(n)] + Lt=[[L[i][j]*diagonal[i]/diagonal[j] for j in range(n)] for i in range(n)] + Lit=[[Li[i][j]*diagonal[i]/diagonal[j] for j in range(n)] for i in range(n)] + assert mm(Lt,Lit)==ident(n) + cases+=1;entries+=n*n + +exponent_cases=0 +for rho in (F(1001,1000),F(17,16),F(3,2)): + theta=rho-1 + for c in (-2,0,3): + for i in range(15): + for j in range(i+1): + h=i-j;beta=theta*i-c + # D_i/D_j times q^h for the inverse L factor. + raw=theta*(i*i-j*j)-2*c*(i-j)-rho*h + condensed=(2*beta-rho)*h-theta*h*h + assert raw==condensed + exponent_cases+=1 + +# Rational validation of the perturbation bound in the worked 24x24 witness. +rbound=F(24,2**23);linv_bound=F(24) +error=linv_bound**2*rbound/(1-linv_bound*rbound) +assert linv_bound*rbound<1 and errora. These are the actual strict rate relations used by the +support-local compiler and its stopped recursion, not an assumption that +all bit operations have the complex supplier's exact endpoint. + +## Functional interface + +The reviewed outer proof consumes a globally complete dyadic tensor call +which applies normalized H0 simultaneously on the selected active bits, +acts as identity on arbitrary dirty helper/coarse/spectator coordinates at +completed-call boundaries, accepts O(p)-bit coefficient encodings, and costs +O(V g^(1-q) polylog p). The supply is used as a completed operator, with its +own scalar phases and working storage included. Outer Gaussian blocks do +not directly inspect the local donor edits, per-rank multiplicities, owner +replica count, or a particular parent-word ordering. + +The T74 source retains the same local normalized target, common-label and +mutable-source contract, whole-call hosting, exact wrappers/phases, and +restoration interface. Its new parent uses m=73 as before, with maximum +residual rank48 and fixed finite W=66304. Replacing the old finite stock W +by this fixed W changes constants and the O(log g) product-row reservation, +not any exponent in the support-local argument. The local word has480 +helpers, also unchanged in its interface. All donor reads are intended to +preserve the exact full local endpoint; our separate rational rebuild check +confirmed that algebra. The complete unmodified native/frame/phase replay has +now passed and certifies the recorded normalized implementation of those endpoints. +The source pin and hashes of the native, strict, control, and physical-invoice +receipts are bound in `NATIVE-ADMISSION-BINDING.json`. + +The larger fixed prefix allowance (2048 bits in the T74 global invoice) +also changes a constant in the linear semantic guard. The capped proof allows +a fixed supplier-dependent constant in O(g), and later O(g*a*B), with an O(p) +record constant chosen accordingly. It does not require the former numeric +prefix constant to remain512 or1024. The strict power guards B+X+r<1 and +E+r<1 remain in force and were checked independently. + +The neighborhood exposure still involves O(g log p) actual selected bits; +the T74 finite word neither requests ambient-p address permutations nor +changes the complete-field requirement. The retained bit supplier supplies +the same arbitrary-width equal-chunk interchange interface with more rate +than the chosen a. Source and sink scalings converting H0 to the raw H used +by the tensor compiler remain O(g) guard terms. There is no new finite-field +bridge or a new assumption that per-microbox coarse labels are complete. + +Thus the substitution does not require a new analytic lemma, removal of a +charged row, or a new kind of workspace. The updated finite supplier is now +verified by `work/target002_upstream/full-1661-verification/RESULT.json`, whose +status is `PASS_T74_EXACT_FILL_COMPLETE_FINITE_ADMISSION`. The binding includes +the complete source manifest and actual fresh native, strict-assembly, physical +invoice, and control receipt hashes. The two rates above are completed conditional +substitutions: their remaining conditions are exactly the inherited all-size, +hosting, precision/tape, exact-recovery, and analytic hypotheses described above; +the matrix branch additionally requires omega_C<=9/4. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/NATIVE-ADMISSION-BINDING.json b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/NATIVE-ADMISSION-BINDING.json new file mode 100644 index 0000000000..72d30de3fd --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/NATIVE-ADMISSION-BINDING.json @@ -0,0 +1,155 @@ +{ + "status": "PASS_FRESH_NATIVE_ADMISSION_BOUND_TO_CONDITIONAL_SUBSTITUTION", + "scope": "Unmodified PR1661 complete fresh finite/native/global verifier passed; the independently reviewed phase-fusion recomposition retains all inherited all-size, hosting, precision/tape, exact-recovery and analytic hypotheses. The matrix corollary additionally assumes omega_C<=9/4.", + "source_pr": 1661, + "source_head": "f852af5e178ce035cd46181a29d9330bcbcaa206", + "source_manifest_sha256": "d90d49eaa68e48c6992a07972e736ef4b9cd80274361cbbc1ec980d43f29ad7f", + "complex_lower_pinned": "8398566873921928847865107582977140808726533185752606814031551243089531888024439117235381227291914058448586599984374667388474246199941131401151316949826049729135138281487406840315861844950703424400143642674520874037535671888706933756382975087837881090275422517866488734818622618194142006954783211221019204801330544148296601796623021915319705773977790291402669246008667290619418570040011860763793419/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_lower_used": "0.00167971337478", + "native_profile": { + "1": 1559766, + "2": 337668, + "3": 278058, + "4": 84912, + "5": 54612, + "8": 5328, + "48": 22748 + }, + "full_status": "PASS_T74_EXACT_FILL_COMPLETE_FINITE_ADMISSION", + "control_counts": { + "admission": 114, + "bit": 12, + "controller": 15, + "independent_owner": 8, + "geometry": 6 + }, + "new_native_provider_checks": [ + { + "provider": "base", + "word_sha256": "0740b6f33927b9e60c9a7f35e7fcb2fd9ac6e2d3982112428b302a6966a18c73", + "native_steps": [ + { + "step": "native", + "exit_code": 0, + "seconds": 0.8915401669219136 + }, + { + "step": "ledgers", + "exit_code": 0, + "seconds": 0.6126613330561668 + }, + { + "step": "local-replay", + "exit_code": 0, + "seconds": 4.12045537494123 + }, + { + "step": "wrappers", + "exit_code": 0, + "seconds": 1.6204181250650436 + }, + { + "step": "phases", + "exit_code": 0, + "seconds": 105.53502279194072 + } + ] + }, + { + "provider": "extra", + "word_sha256": "17cc6c177c89eb264514e1efb3685ab9a621f3952a8f393a6a5eb28cf77e2884", + "native_steps": [ + { + "step": "native", + "exit_code": 0, + "seconds": 0.8948857497889549 + }, + { + "step": "ledgers", + "exit_code": 0, + "seconds": 0.6080808339174837 + }, + { + "step": "local-replay", + "exit_code": 0, + "seconds": 4.124318625079468 + }, + { + "step": "wrappers", + "exit_code": 0, + "seconds": 1.615505084162578 + }, + { + "step": "phases", + "exit_code": 0, + "seconds": 104.45134279201739 + } + ] + } + ], + "claimed_upstream_kappa": "2096120836276624134688388746584953339514362520423949513323080069393667100216231635208104119737345042388668831200716016971801652042353643495728574611972682561506611546576106026399087419654954846560528338423252093335760585442384781219905020477867156522858637805447097010230458679015075893421495530515714751141439077307948959746873853766585216530792933519877595664647309255912786892895226283571949929/1250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "recomposed_final_kappa": { + "strassen": "0.001677160151714381", + "matrix_9_4": "0.001677600129305161" + }, + "receipt_sha256": { + "target002_upstream/full-1661-verification/RESULT.json": "11c57817a4d43a489010a13af7621d37eeedc398308c036e63a2a97119443861", + "target002_upstream/full-1661-verification/STAGES.json": "c2edb01a61c03e04bf48e605422ff83c1d304e4d586268959d4ea24b743640fb", + "target002_upstream/full-1661-verification/audit-local-566-base.log": "4767093ae54ad03845870bcfd0402f7ee6e4bc4c1dd7801146b7aa2217f0f39d", + "target002_upstream/full-1661-verification/audit-local-566-extra.log": "b03c4d51b4309fd2b49fdae8f26d4bb68f84d1149f310d21237a95f995b57d19", + "target002_upstream/full-1661-verification/fine-engine-oracle.log": "ea6df7be568d6461ac54e0d56754797de0f70f2f1ecc335114791445b75795d3", + "target002_upstream/full-1661-verification/geometry-controls.log": "0a3ecf05cfa2bebb61fffd2fbb4b244c03d742069e2705d02512699bbf4b01f9", + "target002_upstream/full-1661-verification/lift-parent.log": "9578ab17094f120d54af46f9e0601714c09a2978faa0d7949823099d06d931d4", + "target002_upstream/full-1661-verification/native-new-base/local/CLIFFORD-REVIEW.json": "629abac83fc0fcf54134b3c07222b8f857991dc8bc2e80e9fc9a6daa301c2cfe", + "target002_upstream/full-1661-verification/native-new-base/local/INDEPENDENT-LOCAL-REPLAY.json": "13b391f04b89dbfd8324a9a22796e938194162ca04522a5fb778d00f20cb2b57", + "target002_upstream/full-1661-verification/native-new-base/local/LOCAL-CHECKS.json": "9628c1d94f0599fc128ef583703fe83ef1e6f73465484c207f67b62abab2b785", + "target002_upstream/full-1661-verification/native-new-base/local/SCALAR-FRAME-AUDIT.json": "c7d48f60d0e3ed2f024e29b69bc7e2920251d040148b18dfe4444f4f68062ba7", + "target002_upstream/full-1661-verification/native-new-base/local/WRAPPER-CHECKS.json": "fc7e24778302326fdacfd08dd3d5e63483cf4539cd5022a6c77f016752fac1a3", + "target002_upstream/full-1661-verification/native-new-base.log": "5ca9f310247cb601c905ff30597baa4634847395d7826e9ab926a9876ced2514", + "target002_upstream/full-1661-verification/native-new-extra/local/CLIFFORD-REVIEW.json": "1c367f0a64d4dad8d11496fe707c859512f7f2f3b2ca479c493c936a6444a023", + "target002_upstream/full-1661-verification/native-new-extra/local/INDEPENDENT-LOCAL-REPLAY.json": "8efdbce010bcc13af65069ee1c5f612d7c3e79cf8e6d7d7d162299a4434d1ec7", + "target002_upstream/full-1661-verification/native-new-extra/local/LOCAL-CHECKS.json": "bc6a2ddb1b27a3b1af02e32eba3140f67c66debcb3521c100136774854a6aa57", + "target002_upstream/full-1661-verification/native-new-extra/local/SCALAR-FRAME-AUDIT.json": "d4fc1d25c9ad00ed058aef75a7281641028f035da1d9d95a59a1c87913cd6bce", + "target002_upstream/full-1661-verification/native-new-extra/local/WRAPPER-CHECKS.json": "84a5bc26df5fb70dc12852a868962bcdfad3b85d85408edfd1f343e898a78c0e", + "target002_upstream/full-1661-verification/native-new-extra.log": "5ca9f310247cb601c905ff30597baa4634847395d7826e9ab926a9876ced2514", + "target002_upstream/full-1661-verification/parent/RESULT.json": "13037d41939ede1de9c80be7a75a051006a457ff2d871cadde2351a39bb254ee", + "target002_upstream/full-1661-verification/rebind-566.log": "c90f7d555ea88339e4999736f38e9fcf1e63b88637e05ddcb76782f0900134a3", + "target002_upstream/full-1661-verification/rebuild-words-566.log": "e9825c70278880f4a9566012d700b0d7944f84fbf02b95408896b3a07d29e849", + "target002_upstream/full-1661-verification/reconstruct-owners.log": "363a74def2d33de399e70eab63d987832b079286cb7c58f9ffa87e186ae761f5", + "target002_upstream/full-1661-verification/retained-provider-and-parent-admission.log": "a84cbfcd6ad1a9a2f8279939fcbcec5457b8b55d3dc9971e3407491a82c1c57e", + "target002_upstream/full-1661-verification/strict/ADMISSION-CONTROLS.json": "528fa1aec9db41e748774df5b9cbcd86f702c76286423fd0762cbac5510564c3", + "target002_upstream/full-1661-verification/strict/ASSEMBLY.json": "36f8c00c200cc375512ad0e881e91b42daba10c962fce37465040cb717b5cc60", + "target002_upstream/full-1661-verification/strict/BIT-CONTROLS.json": "7c27d56e68b924ac0fefc6353e9e38d2e3f593295cf1a39aade27fba39922e54", + "target002_upstream/full-1661-verification/strict/RESULT.json": "5fef4a6d07d561d9eae7d0e900e86b02fe905239a15a46a9f93826f89069a970", + "target002_upstream/full-1661-verification/strict/STAGES.json": "abbc3fa255097304f0862c3c390c3bd681485a64c5cf906b7796e6f978faf049", + "target002_upstream/full-1661-verification/strict/global/audit/ASYNC-AUDIT.json": "37b1b8d81353c99db83edbf3d9d1510906e0ae0a3301165894190d416f1c6d60", + "target002_upstream/full-1661-verification/strict/global/audit/PREFIX-AND-INVOICE.json": "321d98f8342fb61418aacee7a99a7e54ae284b32a5f142fa692ebe6825d05ea0", + "target002_upstream/full-1661-verification/strict/global/base/providers/extra/CLIFFORD-REVIEW.json": "1c367f0a64d4dad8d11496fe707c859512f7f2f3b2ca479c493c936a6444a023", + "target002_upstream/full-1661-verification/strict/global/base/providers/extra/INDEPENDENT-LOCAL-REPLAY.json": "8efdbce010bcc13af65069ee1c5f612d7c3e79cf8e6d7d7d162299a4434d1ec7", + "target002_upstream/full-1661-verification/strict/global/base/providers/extra/LOCAL-CHECKS.json": "bc6a2ddb1b27a3b1af02e32eba3140f67c66debcb3521c100136774854a6aa57", + "target002_upstream/full-1661-verification/strict/global/base/providers/extra/SCALAR-FRAME-AUDIT.json": "d4fc1d25c9ad00ed058aef75a7281641028f035da1d9d95a59a1c87913cd6bce", + "target002_upstream/full-1661-verification/strict/global/base/providers/extra/WRAPPER-CHECKS.json": "84a5bc26df5fb70dc12852a868962bcdfad3b85d85408edfd1f343e898a78c0e", + "target002_upstream/full-1661-verification/strict/global/base/providers/gauge44/CLIFFORD-REVIEW.json": "629abac83fc0fcf54134b3c07222b8f857991dc8bc2e80e9fc9a6daa301c2cfe", + "target002_upstream/full-1661-verification/strict/global/base/providers/gauge44/INDEPENDENT-LOCAL-REPLAY.json": "13b391f04b89dbfd8324a9a22796e938194162ca04522a5fb778d00f20cb2b57", + "target002_upstream/full-1661-verification/strict/global/base/providers/gauge44/LOCAL-CHECKS.json": "9628c1d94f0599fc128ef583703fe83ef1e6f73465484c207f67b62abab2b785", + "target002_upstream/full-1661-verification/strict/global/base/providers/gauge44/SCALAR-FRAME-AUDIT.json": "c7d48f60d0e3ed2f024e29b69bc7e2920251d040148b18dfe4444f4f68062ba7", + "target002_upstream/full-1661-verification/strict/global/base/providers/gauge44/WRAPPER-CHECKS.json": "fc7e24778302326fdacfd08dd3d5e63483cf4539cd5022a6c77f016752fac1a3", + "target002_upstream/full-1661-verification/strict/global/base/split-centres/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "target002_upstream/full-1661-verification/strict/global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "target002_upstream/full-1661-verification/strict/global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "target002_upstream/full-1661-verification/strict/global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "target002_upstream/full-1661-verification/strict/global/base/split-centres/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "target002_upstream/full-1661-verification/strict/global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "target002_upstream/full-1661-verification/strict/parent/complex-global/base/split-centres/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "target002_upstream/full-1661-verification/strict/parent/complex-global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "target002_upstream/full-1661-verification/strict/parent/complex-global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "target002_upstream/full-1661-verification/strict/parent/complex-global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "target002_upstream/full-1661-verification/strict/parent/complex-global/base/split-centres/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "target002_upstream/full-1661-verification/strict/parent/complex-global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "target002_upstream/full-1661-verification/strict-t74.log": "d6a6c941d4107f47f3f8ced6a4f85b48d562bb30aeb9ae7927c3a3a15331af1b", + "target002_upstream/pr1661/research/gmx-t74-p566-ep400/CLAIM.json": "70aacd45f9e6fac8675687cf50da32e0ad4e479d9a5c28f2afd1550311ae8849", + "target002_upstream/pr1661/research/gmx-t74-p566-ep400/MANIFEST.json": "d90d49eaa68e48c6992a07972e736ef4b9cd80274361cbbc1ec980d43f29ad7f", + "target002_upstream/pr1661/research/gmx-t74-p566-ep400/new/PROFILE.json": "f66dd80aff69525144eac18144c13d7d8be3d3c39028b3afa1b59a8edf53e8a3", + "target002_upstream/pr1661/research/gmx-t74-p566-ep400/new/SPEC.json": "d6b6a2140f3a61ae8cfdd8b51a1131934d63d2dd8573c1b13eb2b9528f3c3db8" + } +} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/REPRODUCE.txt b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/REPRODUCE.txt new file mode 100644 index 0000000000..42c6bb3033 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/REPRODUCE.txt @@ -0,0 +1,22 @@ +ARITHMETIC REPLAY (Python 3.11 or newer; standard library only) +From this phase_fusion_review directory: + python3 frontier_fusion/check_frontier_fusion.py + python3 frontier_fusion/independent_substitution_check.py + +These replay the rational native moment and both outer ledgers, including +negative controls. They do not rerun the entire native supplier. + +COMPLETE NATIVE REPLAY +Obtain CrocSwap/integer-mult-bounds at exact commit +f852af5e178ce035cd46181a29d9330bcbcaa206. Follow the requirements in +research/gmx-t74-p566-ep400/ and run its unmodified verify.py with a fresh +--work directory and --audit-shards 4. The retained RESULT.json and +NATIVE-ADMISSION-BINDING.json identify the completed fresh run and bind +its native, owner, phase, invoice, arithmetic and control receipts. +The full 121 MB long-precision assembly and its vendor tree are not duplicated +in this review bundle. Their hashes are retained; obtain/replay the pinned +source to reproduce those larger files. + +The two final exponents retain the inherited all-size hypotheses. The larger +value additionally assumes the supplied omega_C <= 9/4 theorem. Numerical and +finite native verification alone do not prove those external hypotheses. diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/T74-APPENDIX.tex b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/T74-APPENDIX.tex new file mode 100644 index 0000000000..78278aea07 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/T74-APPENDIX.tex @@ -0,0 +1,53 @@ +\section{Updated T74 supplier and final exponents}\label{sec:t74} + +The preceding proofs are parameterized by the effective supplier rate. We now substitute the independently replayed T74 complex supplier from \href{https://github.com/CrocSwap/integer-mult-bounds/pull/1661}{PR1661}, pinned at commit \texttt{f852af5e178ce035cd46181a29d9330bcbcaa206}. This is a new input to the same outer proof, with contributor attribution retained in the source package. The original numerical statements above remain valid special cases. + +Use the exact finite decimals +\[ + b_T=0.00167971337478,\qquad q_T=b_T-10^{-10}, + \qquad a_T=(q_T+b_T)/2. +\] +The independently retained bit rate $a_*=0.001733427039589844234749$ satisfies $q_T0 for x in assembly['outer'].values()) +checks=[] +for key,word in [('base','gauge44-word-566.json.gz'),('extra','extra-word-566.json.gz')]: + d=RUN/('native-new-'+key) + st=read(d/'STEPS.json') + assert [z['step'] for z in st]==['native','ledgers','local-replay','wrappers','phases'] + assert all(z['exit_code']==0 for z in st) + assert gzip.decompress((d/'local/FULL-WORD.json.gz').read_bytes())==gzip.decompress((SRC/'new'/word).read_bytes()) + checks.append({'provider':key,'word_sha256':sha(SRC/'new'/word),'native_steps':st}) +paths={RUN/'RESULT.json',RUN/'STAGES.json',RUN/'parent/RESULT.json',RUN/'strict/RESULT.json',RUN/'strict/STAGES.json',RUN/'strict/ASSEMBLY.json',SRC/'MANIFEST.json',SRC/'CLAIM.json',SRC/'new/SPEC.json',SRC/'new/PROFILE.json'} +for base in [RUN/'native-new-base',RUN/'native-new-extra',RUN/'strict']: + for f in base.rglob('*.json'): + if any(tag in f.name.upper() for tag in ['CONTROL','CHECK','REVIEW','AUDIT','REPLAY','INVOICE','STAGES']):paths.add(f) +for z in steps:paths.add(RUN/(z['name']+'.log')) +report={'status':'PASS_FRESH_NATIVE_ADMISSION_BOUND_TO_CONDITIONAL_SUBSTITUTION', + 'scope':'Unmodified PR1661 complete fresh finite/native/global verifier passed; the independently reviewed phase-fusion recomposition retains all inherited all-size, hosting, precision/tape, exact-recovery and analytic hypotheses. The matrix corollary additionally assumes omega_C<=9/4.', + 'source_pr':1661,'source_head':'f852af5e178ce035cd46181a29d9330bcbcaa206','source_manifest_sha256':r['manifest_sha256'], + 'complex_lower_pinned':assembly['complex_lower'],'complex_lower_used':'0.00167971337478','native_profile':assembly['complex_profile'], + 'full_status':r['status'],'control_counts':r['controls'],'new_native_provider_checks':checks, + 'claimed_upstream_kappa':r['kappa'],'recomposed_final_kappa':{'strassen':'0.001677160151714381','matrix_9_4':'0.001677600129305161'}, + 'receipt_sha256':{str(f.relative_to(W)):sha(f) for f in sorted(paths)}} +(P/'NATIVE-ADMISSION-BINDING.json').write_text(json.dumps(report,indent=2)+'\n') +print(report['status'],len(paths),'bound receipt files') diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/check_frontier_fusion.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/check_frontier_fusion.py new file mode 100644 index 0000000000..a8112e3cef --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/check_frontier_fusion.py @@ -0,0 +1,177 @@ +#!/usr/bin/env python3 +"""Recombine the pinned T74 supplier with the reviewed phase-fusion proof. + +This checks arithmetic and provenance, not the independent native replay. +The latter's completion is recorded separately; no all-size premise is waived. +""" +from fractions import Fraction as Q +from decimal import Decimal, localcontext +from pathlib import Path +from math import factorial +import hashlib, json + +HERE=Path(__file__).resolve().parent +WORK=HERE.parent +SPEC=WORK/'target002_upstream/pr1661/research/gmx-t74-p566-ep400/new/SPEC.json' +CLAIM=WORK/'target002_upstream/pr1661/research/gmx-t74-p566-ep400/CLAIM.json' +spec=json.loads(SPEC.read_text()) +certified_complex=Q(spec['expected']['complex_lower']) +bit=Q('0.001733427039589844234749') +# Keep short independently checkable decimals strictly inside both endpoints. +b=Q('0.00167971337478') +q=b-Q(1,10**10) +a=(q+b)/2 +online=Q(spec['expected']['kappa']) +old=Q('0.001673360105405778') +assert b=2:x/=2;k+=1 + lo,hi=unit_log(x) + return down(lo+k*ln2[0]),up(hi+k*ln2[1]) +def exp(x): + assert 0<=x<1 + N=12 + lo=sum((x**j/factorial(j) for j in range(N)),Q(0)) + hi=lo+x**N/factorial(N)/(1-x/(N+1)) + return down(lo),up(hi) +def moment(endpoint): + lo=hi=Q(0) + for r,n in profile.items(): + l,h=log(Q(m,r)); weight=Q(n*r,m*W) + lo+=weight*exp(endpoint*l)[0] + hi+=weight*exp(endpoint*h)[1] + return down(lo),up(hi) + +native=moment(b) +assert native[1]<1 +assert moment(Q('0.001679713374785'))[0]>1 + +def ledger(kind, *, q_=q, zeta=Q(1,10**8), slack=Q(1,10**5), + old_scan=False, full_gauge=False, full_key=False): + r=Q(1,10**6); stop=Q(1,10**9) + if kind=='strassen': + c=Q(3,32) + eps=(1+q_+q_*(c-slack-r-zeta))/(1+q_)**2 + xi=eps*(1+q_)-c+slack + else: + c=Q(5,16) + xi=(Q(3,2)+q_-(1+q_)*(r+zeta)+slack)/(2+q_) + eps=(1+q_*(1-xi-r-zeta))/(1+q_) + beta=1-xi-r-zeta + saving=eps*q_ + # Deliberate strict 1e-11 gap after decimal truncation. + kappa=Q((saving*10**18).__floor__(),10**18)-Q(1,10**11) + # kappa is derived, not silently asserted to equal an expected decimal. + tau=1-a; sigma=1-b + internal=tau+(1-stop)*max(sigma-tau,Q(0)) + leaf=sigma+stop*(1-sigma) + lam=1-(q_+a)/2 + key=beta+1-eps + margins={ + 'main_transform':saving, + 'global_coordinate_router':a, + 'fused_gaussian':1-eps+q_*beta, + 'group_bit_router':1-eps+a*beta, + 'group_scans':1-eps+beta, + 'boundary_algebraic_matrix':c+xi-eps, + 'sparse_union_movement':1-eps-beta-Q(1,2)+xi, + 'polynomial_products':eps, + 'microbox_face_corrections':1-(eps+beta+3-8+2), + } + if kind=='strassen':margins['sparse_union_full_key']=margins['sparse_union_movement']-key + if old_scan:margins['old_per_axis_scan']=1-eps + if full_key and kind!='strassen':margins['unnecessary_full_key_sort']=margins['sparse_union_movement']-key + checks={ + 'actual_bit_above_effective':bit-a, + 'complex_above_effective':b-a, + 'q_positive':q_, 'complex_endpoint':b-q_, + 'q_below_effective':a-q_, 'stop_positive':stop, + 'stop_below_one':1-stop, + 'leaf_saving_above_effective':(1-stop)*b-a, + 'q_below_internal':1-internal-q_, 'q_below_leaf':1-leaf-q_, + 'lambda_above_tau':lam-tau, 'lambda_above_sigma':lam-sigma, + 'lambda_above_internal':lam-internal, + 'lambda_prime_above_lambda':1-q_-lam, + 'lambda_prime_above_leaf':1-q_-leaf, + 'epsilon_positive':eps,'epsilon_below_one':1-eps, + 'cap_above_band':xi-Q(1,2),'cap_below_cell':eps-xi, + 'group_positive':beta,'group_below_dimension':eps-beta, + 'support_router_span':1-beta, + 'group_gauge_power_slack':1-xi-r-beta, + 'actual_logarithmic_group_guard':1-xi-beta, + 'global_gamma_power_slack':1-eps-r, + 'actual_logarithmic_gamma_guard':1-eps, + 'alpha_logarithm_absorption':r, + 'group_key_fits_record':1-key, + 'membership_arithmetic_fits_record':1-beta-2*(1-eps), + 'microbox_halo_volume':8-3-beta, + 'positive_layout_slack':slack, + 'short_record_fallback':eps-a, + 'improvement_over_online_final':kappa-online, + 'improvement_over_previous_local_final':kappa-old, + 'complex_below_one_over_32':Q(1,32)-b, + } + if kind!='strassen': + checks['sparse_union_fraction_decays']=xi-beta-Q(1,2) + checks['matrix_exponent_above_supplied_bound']=Q(19,8)-Q(9,4) + checks['matrix_exponent_below_five_halves']=Q(5,2)-Q(19,8) + if full_gauge:checks['unrecentered_group_gauge']=1-eps-r-beta + checks.update({n+'_above_kappa':v-kappa for n,v in margins.items()}) + assert margins['main_transform']==margins['fused_gaussian'] + if kind=='strassen':assert margins['boundary_algebraic_matrix']==saving+slack + else:assert margins['sparse_union_movement']==saving+slack + return {'kind':kind,'kappa':kappa,'epsilon':eps,'xi':xi,'beta':beta, + 'q':q_,'a':a,'r0':r,'zeta':zeta,'slack':slack, + 'margins':margins,'strict_checks':checks} + +def encode(x): + if isinstance(x,Q): + with localcontext() as c: + c.prec=60 + return {'rational':str(x),'decimal':str(Decimal(x.numerator)/Decimal(x.denominator))} + if isinstance(x,dict):return {str(k):encode(v) for k,v in x.items()} + if isinstance(x,(list,tuple)):return [encode(v) for v in x] + return x + +rows={};controls={} +for kind in ['strassen','matrix_9_4']: + row=ledger(kind) + assert all(v>0 for v in row['strict_checks'].values()) + assert min(row['margins'].values())==row['margins']['main_transform'] + rows[kind]=row + variants=[('endpoint_equality',{'q_':b}),('zero_group_guard',{'zeta':Q(0)}), + ('zero_layout_slack',{'slack':Q(0)}),('old_per_axis_scan',{'old_scan':True}), + ('full_cell_gauge',{'full_gauge':True})] + if kind!='strassen':variants.append(('full_key_sort',{'full_key':True})) + controls[kind]={} + for name,kwargs in variants: + bad=ledger(kind,**kwargs) + failed={n:v for n,v in bad['strict_checks'].items() if v<=0} + assert failed,(kind,name) + controls[kind][name]=failed +out={'status':'PASS_EXACT_T74_PHASE_FUSION_ARITHMETIC', + 'scope':'Conditional recomposition of pinned supplier and already-reviewed outer proofs. Full fresh native replay is a separately tracked requirement; inherited all-size assumptions remain.', + 'complex_lower_short':b,'complex_lower_pinned':certified_complex, + 'native_moment':native,'profile':profile,'m':m,'W':W, + 'online_final_kappa':online,'rows':rows,'rejecting_controls':controls, + 'source_sha256':{str(p.relative_to(WORK)):hashlib.sha256(p.read_bytes()).hexdigest() for p in [SPEC,CLAIM]}} +(HERE/'FRONTIER-FUSION-ARITHMETIC.json').write_text(json.dumps(encode(out),indent=2)+'\n') +print(out['status']) +for name,row in rows.items(): + print(name,'FINAL KAPPA',encode(row['kappa'])['decimal'], + 'positive checks',len(row['strict_checks']), + 'gain over online',encode(row['kappa']-online)['decimal']) diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/independent_substitution_check.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/independent_substitution_check.py new file mode 100644 index 0000000000..04ec764940 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/independent_substitution_check.py @@ -0,0 +1,45 @@ +"""Independent balance-equation check, not an execution of the proposed ledger.""" +from fractions import Fraction as F +from pathlib import Path +from decimal import Decimal,localcontext +import json,hashlib +D=Path(__file__).resolve().parent;W=D.parent +src=W/'target002_upstream/pr1661/research/gmx-t74-p566-ep400/new/SPEC.json' +spec=json.loads(src.read_text());pinned=F(spec['expected']['complex_lower']) +b=F('0.00167971337478');q=b-F(1,10**10);eff=(q+b)/2;actual_bit=F('0.001733427039589844234749') +r=F(1,10**6);z=F(1,10**8);s=F(1,10**5) +assert 0eff +assert 7**16<2**45 +rows={} +for name,c,expected in [('strassen',F(3,32),F('0.001677160151714381')),('matrix_9_4',F(5,16),F('0.001677600129305161'))]: + if name=='strassen': + # Solve E(1+q)+q X=1+q(1-r-z), X-E(1+q)=s-c. + E=(1+q*(1-r-z+c-s))/(1+q)**2;X=E*(1+q)+s-c + else: + # Solve E(1+q)+q X=1+q(1-r-z), 2X-E(1+q)=1/2+s-r-z. + X=(F(3,2)+q+s-(1+q)*(r+z))/(2+q);E=(1+q*(1-r-z-X))/(1+q) + B=1-r-z-X + assert E*q==1-E+q*B + assert (c+X-E==E*q+s) if name=='strassen' else (1-E-B-F(1,2)+X==E*q+s) + assert F(1,2)0 and 1-E-r>0 + assert 1-B>0 and 1-B-2*(1-E)>0 + margins={'transform':E*q,'global_router':eff,'gaussian':1-E+q*B,'group_router':1-E+eff*B,'group_scans':1-E+B,'boundary':c+X-E,'sparse_union':1-E-B-F(1,2)+X,'polynomials':E,'microfaces':4-E-B} + if name=='strassen':margins['union_key_sort']=margins['sparse_union']-(B+1-E) + else:assert X-B-F(1,2)>0 + K=F((E*q*10**18).__floor__(),10**18)-F(1,10**11) + assert K==expected and min(margins.values())==E*q and all(v>K for v in margins.values()) + with localcontext()as cc:cc.prec=55 + rows[name]={'epsilon':str(E),'cap':str(X),'beta':str(B),'kappa':str(K),'margin_above_kappa':str(E*q-K),'checked_margin_count':len(margins)} +native_path=W/'target002_upstream/full-1661-verification/RESULT.json' +native_ok=False +if native_path.exists(): + native=json.loads(native_path.read_text()) + assert native['status']=='PASS_T74_EXACT_FILL_COMPLETE_FINITE_ADMISSION' + assert F(native['kappa'])==F(spec['expected']['kappa']) + native_ok=True +report={'status':('PASS_INDEPENDENT_CONDITIONAL_SUBSTITUTION_REVIEW' if native_ok else 'PASS_INDEPENDENT_CONDITIONAL_SUBSTITUTION_REVIEW_PENDING_NATIVE'),'source_sha256':hashlib.sha256(src.read_bytes()).hexdigest(),'scope':('Independent balance derivation, margin comparisons, and functional-interface review; completed fresh finite/native admission is bound separately, with inherited all-size assumptions retained.' if native_ok else 'Independent balance derivation, margin comparisons, and functional-interface review; full fresh native admission remains pending.'),'rows':rows,'native_required_output':'target002_upstream/full-1661-verification/RESULT.json'} +(D/'INDEPENDENT-SUBSTITUTION-RECEIPT.json').write_text(json.dumps(report,indent=2)+'\n') +print(json.dumps(report,indent=2)) diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/gaussian_fixed_width_note.tex b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/gaussian_fixed_width_note.tex new file mode 100644 index 0000000000..e7a2c00d4e --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/gaussian_fixed_width_note.tex @@ -0,0 +1,212 @@ +\documentclass[11pt]{article} +\usepackage[T1]{fontenc} +\usepackage{lmodern,microtype,amsmath,amssymb,amsthm} +\usepackage[margin=1in]{geometry} +\usepackage[colorlinks=true,allcolors=blue]{hyperref} +\newtheorem{theorem}{Theorem} +\newtheorem{lemma}[theorem]{Lemma} +\newtheorem{corollary}[theorem]{Corollary} +\newcommand{\norm}[1]{\left\lVert#1\right\rVert_\infty} +\newcommand{\Z}{\mathbb Z} +\title{Fixed-Width Gaussian Resampling Is Polynomially Conditioned} +\author{Research note prepared with OpenAI Codex} +\date{October 13, 2026} +\begin{document} +\maketitle +\begin{abstract} +An exact bilateral Newton factorization proves that the Gaussian +resampling inverse has norm $O(\theta^{-2})$ at a fixed Gaussian width, +where $\theta>0$ is the oversampling gap. This removes the width-growth +requirement from the conditioning argument. The proof uses convergent +infinite triangular factors and then periodizes them; it does not assert +operator-norm convergence of finite sections. A fast implementation and +its tensor cost remain separate obligations. No improved final +integer-multiplication exponent is claimed in this note. +\end{abstract} + +Let $1\le s5/6$. +At $a=1$, concavity gives +$1-e^{-\rho\theta}\ge1-e^{-\theta}\ge(1-e^{-1})\theta>3\theta/5$, +and $e^{1/2}<2$; substitution gives the stated constant $16$. +\end{proof} + +\begin{corollary}[The width may be fixed] +For the resampling convention $a=\pi\alpha^2$, one may take the fixed +integer $\alpha=2$ in the inverse-conditioning and normalization +argument. If all $d$ gaps satisfy $\theta_i\ge d^{-C}$ for a fixed $C$, +the total logarithmic normalization loss is $O(d\log d)$. +\end{corollary} +\begin{proof} +The theorem bounds each inverse by a fixed constant times $d^{2C}$. +The separate diagonal has norm at most $e^{a/4}$, a fixed constant. +Taking powers of two large enough to normalize these factors costs +$O(\log d)$ bits per axis; logarithms add under tensor products. +\end{proof} + +\paragraph{Scope and provenance.} +This strengthens the conditioning-only result in the earlier note +\emph{A Polynomial Condition Bound for Gaussian Resampling}. The +matrix is the one in Section~7 of the +\href{https://github.com/CrocSwap/integer-mult-bounds/tree/e6f9716621f4e01fc190617934cdfaf072bd976f}{inspected repository snapshot}. +Classical Newton interpolation and symmetric-polynomial identities are +used explicitly above; no generic-rank assumption is used. Two independent +agents checked the limiting and periodization arguments. Exact rational +controls cover negative and zero origins, finite $LDU$, inverse entries, +origin shifts and simultaneous periodicity. + +This theorem does not supply the new numerical implementation at these +parameters. Stable factor application, in-place tensor composition, +coefficient generation and all tape movement must still be priced. +The repository's inspected conditional exponent remains +$\kappa=0.001672660197076918$; no larger final exponent is certified here. +\end{document} diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/make_native_capsule.py b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/make_native_capsule.py new file mode 100644 index 0000000000..45a5aeb417 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/make_native_capsule.py @@ -0,0 +1,32 @@ +"""One-time capsule creation from the independently completed source-bound run.""" +from pathlib import Path +import argparse,json,hashlib,sys +sys.set_int_max_str_digits(500000) +P=Path(__file__).resolve().parent +ap=argparse.ArgumentParser(description=__doc__) +ap.add_argument('--native-source',type=Path,required=True) +ap.add_argument('--native-work',type=Path,required=True) +ap.add_argument('--output',type=Path,required=True) +a=ap.parse_args() +source=a.native_source.resolve();run=a.native_work.resolve() +b=json.loads((P/'frontier_fusion/NATIVE-ADMISSION-BINDING.json').read_text()) +def normalized(x): + if isinstance(x,dict):return {k:normalized(v)for k,v in x.items()if k not in {'seconds','log_sha256'}} + if isinstance(x,list): + y=[normalized(v)for v in x] + return sorted(y,key=lambda v:v['name']) if y and all(isinstance(v,dict)and'name'in v and'exit_code'in v for v in y) else y + if isinstance(x,str):return x.replace(str(run),'{native-work}').replace(str(source),'{native-source}') + return x +out={'schema':'phase-fusion-native-receipt-capsule/1','scope':'Canonical semantic hashes of the completed native JSON receipts. Elapsed seconds, stage-log digests, and the two root directory prefixes are normalized; concurrent named stage records are sorted. Actual current stage-log hashes are checked separately. Log byte hashes identify the historical run but are not compared across fresh runs.','source_commit':b['source_head'],'source_manifest_sha256':b['source_manifest_sha256'],'receipts':[]} +for rel,raw in b['receipt_sha256'].items(): + if rel.startswith('target002_upstream/full-1661-verification/'): + kind='native_work';r=rel.removeprefix('target002_upstream/full-1661-verification/');f=run/r + else: + prefix='target002_upstream/pr1661/research/gmx-t74-p566-ep400/' + assert rel.startswith(prefix);kind='native_source';r=rel.removeprefix(prefix);f=source/r + blob=f.read_bytes();assert hashlib.sha256(blob).hexdigest()==raw + row={'root':kind,'path':r,'historical_sha256':raw} + if f.suffix=='.json':row['semantic_sha256']=hashlib.sha256(json.dumps(normalized(json.loads(blob)),sort_keys=True,separators=(',',':')).encode()).hexdigest() + out['receipts'].append(row) +a.output.write_text(json.dumps(out,indent=2)+'\n') +print(len(out['receipts']),'receipts',sum('semantic_sha256'in r for r in out['receipts']),'canonical JSON hashes') diff --git a/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/phase_fusion_note.tex b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/phase_fusion_note.tex new file mode 100644 index 0000000000..4351a73450 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/phase_fusion_note.tex @@ -0,0 +1,460 @@ +\documentclass[11pt]{article} +\usepackage[margin=1in]{geometry} +\usepackage{amsmath,amssymb,amsthm,booktabs,longtable,array} +\usepackage[T1]{fontenc} +\usepackage{lmodern} +\usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue]{hyperref} +\newtheorem{theorem}{Theorem} +\newtheorem{lemma}[theorem]{Lemma} +\newtheorem{proposition}[theorem]{Proposition} +\newtheorem{corollary}[theorem]{Corollary} +\newcommand{\norm}[1]{\left\lVert #1\right\rVert} +\newcommand{\diag}{\operatorname{diag}} +\newcommand{\poly}{\operatorname{poly}} +\newcommand{\plog}{\operatorname{polylog}} +\newcommand{\file}[1]{\href{#1}{\texttt{\detokenize{#1}}}} +\title{Capped phase-cell fusion in the conditional multiplication reduction} +\author{Research note prepared with OpenAI Codex assistance} +\date{13 October 2026} +\begin{document} +\maketitle + +\noindent\textbf{Review status: PASS\_CONDITIONAL\_PHASE\_FUSION\_REVIEW.} The capped local-gauge and layout changes have independent audits, followed by an integrated review of this note and its 44 exact strict slacks. The result below is conditional on the same finite suppliers and all-size computational interfaces as the retained selected result; it is not an unconditional integer-multiplication theorem and does not change the upstream selected certificate. + +\noindent\textbf{Updated final bounds.} The completely replayed T74 substitution in Section~\ref{sec:t74} gives $\kappa_T=0.001677160151714381$, or $\kappa_{T,M}=0.001677600129305161$ with the additional supplied matrix-exponent premise. Neither reaches the continuing target $0.002$. + +\section{Statement, inputs, and parameters} + +The retained selected saving is +\[ + \kappa_{\rm old}=0.001672660197076918. +\] +The retained independently replayed supplier lower bounds are +\[ + a_*=0.001733427039589844234749,\qquad + b_*=0.001675462676808103522925. +\] +Here $a_*$ is the bit saving and $b_*$ is the complex saving. They are supplied inputs, not recomputed finite constructions in this note. Put +\[ + q=b_*-10^{-10},\qquad a_{\rm eff}=(b_*+q)/2, + \qquad r_0=10^{-6},\quad \zeta=10^{-8},\quad s_0=10^{-5}, + \qquad c_0=3/32. +\] +The effective bit saving is deliberately weakened so that +$q2|t|+1$. Both nonzero parameters have controlled inverses, so zero shears cause no singular diagonal. Two- and three-$H$ identity words pad all permitted gate types to the same six-$H$ shape. Thus one original matching layer uses at most $(8m+2)$ simultaneous $H$ stages. + +For $g$ different axis circuits, Kronecker multiplication tensors the corresponding $H$ stages and multiplies the diagonal factors. There is no expansion into $2^g$ branches and no data padding. Coarse labels may select different switch and coefficient tables, while the stage schedule stays common. A tensor diagonal has coefficient $\prod_i d_i(x_i)$. In lexicographic order, cached prefix products are recomputed only on odometer carries; the total number of extra products is bounded by $L^g\sum_{k\geq1}k/L^k=O(L^g)$. Scanning the one-axis tables on a fixed number of tapes has the same amortized bound. Consequently each diagonal costs $O(V\plog p)$ rather than $O(Vg)$. + +Crucially, an $H$ stage is invoked \emph{globally across all complete coarse-label ranges}. A fixed coarse-label microbox does not contain complete high-coordinate bits to borrow. Each chosen local bit is placed in a complete $K$-bit neighborhood of its original axis, with +\[ + G=4\lceil\log_2p\rceil+6,\qquad K=128G. +\] +An individual neighborhood fits because $K+O(\log p)=o(\log s_i)$. The $gK$ selected positions can be exposed by a permutation supported on at most $2gK$ positions; the complement need not be stably compacted. Coarse labels are restored before the next diagonal is evaluated. + +The retained compact supplier's residual basis acts on its selected bits, not on the entire ambient address. Its control shuttles have width $O(hG)$ at a node with $h$ active bits. Reserve whole neighborhoods for the two front fields, one back field, and the full product row stock required by nested bit and complex calls. The completed active call is the desired kernel on active bits and identity on arbitrary dirty reserved coordinates. Thus these reserved selected bits can be deferred, rather than processed individually first. Their count is at most $h/16$ above a polylogarithmic tail. Padding adds whole rows only for the current phase and is deleted before the next one. + +The original sufficient wording $K/\log p\to\infty$ is replaced by the finite inequality actually used in its proof, $K\geq G+4\lceil\log_2p\rceil+10$. The present $K$ satisfies it. The support router implements all needed placements with support $O(h\plog p)$, and its short-record construction borrows only $\lceil\log_2p\rceil^2$ suffix bits. It does not move an entire long axis. + +Using supplier stopping exponent $10^{-9}$ gives a strict leaf saving above $a_{\rm eff}$ and $q$. The retained stopped recurrence and the geometric sum of deferred widths yield +\[ + O\bigl(Vg^{1-q}\plog p\bigr) +\] +for a complete global selected-bit call, including all exposure/restoration. The retained supplier implements $H_0=H/2$; multiplying by $2^g$ costs one shift scan and $O(g)$ guard bits. The full circuit therefore costs the same bound up to polylogarithms. The derivations and restrictions are in \file{TENSOR-COMPILER.md}, \file{SUPPLIER-SUPPORT-AUDIT.md}, and \file{SUPPORT-ROUTER.md}. + +\section{The two actual Gaussian operators} + +\subsection{Narrow compression and target-grid completion} +For one axis put $q_j=\lfloor\rho j+1/2\rfloor$ and $\beta_j=\rho j-q_j$. The retained narrow normalized Gaussian is $N=CTD$, where $C$ selects the $q_j$ target rows. Its off-diagonal row sum satisfies +\[ + \norm{N-I}_\infty\leq e^{-2a\theta}+5e^{-2a}. +\] +The two nearest directions must be bounded together; charging each by $e^{-2a\theta}$ would not give this result. With the chosen $a\geq4\log(16p)$ and $\theta\geq1/(4p)$, the row gap is at least $1/(8p)$ eventually. The globally fixed, truncated, structure-preserving rounded matrix $H$ can be chosen with $\norm{H-N}<1/(16p)$, diagonal exactly one, gap at least $1/(16p)$, row norm below two, and $\norm{H^{-1}}_\infty\leq16p$. Every local inverse uses a principal restriction of this same $H$. + +Let $E$ inject source coordinate $j$ at target coordinate $q_j$. On the full dyadic target grid define +\[ + H_{\rm aug}=EHC+(I-EC). +\] +It is permutation-similar to $H\oplus I$, so it inherits row dominance and inverse bounds. Its physical target bandwidth is at most $2w+2$, since $q$ increments by one or two. Its inverse on selected rows is $EH^{-1}C$. A diagonal normalization on selected rows, zero on holes, followed by the increasing $q$-image extraction gives exactly the retained compression approximation. + +\subsection{Broad expansion} +The broad forward matrix is distinct: +\[ + S_{kj}=\alpha^{-1}e^{-b_0(j-\lambda k)^2},\qquad + b_0=\pi/\alpha^2,\quad\lambda=1/\rho. +\] +Embed source values at the $q_j$ coordinates, zero elsewhere. Give every hole input column an identity column. The resulting square matrix $M$ agrees with $S$ on the intended zero-hole input. In selected/hole order, +\[ + M=\begin{bmatrix}\alpha^{-1}N_bD_b^{-1}&0\\ R&I\end{bmatrix}, + \quad b=\pi/(\alpha^2\rho^2),\quad + D_b=\diag(e^{b\beta_j^2}). +\] +The Gaussian row sum of $R$ is bounded. In particular $\norm{M}<3$ eventually; use $M/4$ as the completed forward map, making it contractive also on numerical errors in hole coordinates. Relative to the former $S/2$ normalization this contributes an extra $2^{-D}$ over $D$ axes. A single exact $2^D$ shift compensates it, increasing the retained scalar exponent $\Gamma$ by $D=o(p)$. + +On a phase cell $q_j=j+c$, a selected target block has entries +\[ + K_{ki}=\alpha^{-1}e^{-b_0(i-c-\lambda k)^2}. +\] +Its inverse is polynomially bounded even though an uncentered diagonal split can have a large range. The finite Gaussian LDU proof only uses gaps at least one and $|\beta|\leq1/2$. For +\[ + c_b=\prod_{m\geq1}(1-e^{-2b\rho m}) +\] +it gives +\[ + \norm{K^{-1}}_\infty + \leq\frac{\alpha e^{3b/4}c_b^{-4}} + {(1-e^{-b\rho\theta})^2}. +\] +Indeed $q'_k=k+\rho c$ has unit gaps and $\beta'_{q_j}=\beta_j$. Also +\[ + \log c_b^{-1} + =\sum_{h\geq1}\frac1{h(e^{2b\rho h}-1)} + \leq\frac{\pi^2}{12b\rho}, + \qquad c_b^{-4}\leq e^{\pi\alpha^2\rho/3}. +\] +Since $\alpha^2=O(\log p)$ and $\theta^{-1}=\poly(p)$, the bound is polynomial in $p$, uniformly over all contiguous cell subblocks. + +For a block anchor $m$, set $x=i-m$, $y=k-m$, and $\delta=(1-\lambda)m-c$, with $|\delta|\leq1/2$. The exact Toeplitz split is +\begin{align*} + K_{ki}&=D_{\rm row}(y)G(y,x)D_{\rm col}(x),\\ + G(y,x)&=e^{-b_0\lambda(x-y)^2},\\ + D_{\rm col}(x)&=e^{-b_0((1-\lambda)x^2+2\delta x)},\\ + D_{\rm row}(y)&=\alpha^{-1}e^{b_0\lambda(1-\lambda)y^2+ + 2b_0\delta\lambda y-b_0\delta^2}. +\end{align*} +The Gaussian Poisson formula bounds the symbol of $G$, with $\gamma=b_0\lambda$, between +\[ + \sqrt{\pi/\gamma}\,e^{-\pi^2/(4\gamma)} + \quad\hbox{and}\quad1+\sqrt{\pi/\gamma}. +\] +Thus every finite principal $G$ is SPD with polynomial condition number. Truncating at width $W$ and rounding symmetrically to sufficiently many $Cp$ bits preserve these bounds. The SPD shallow circuit applies. See \file{LOG-A-PHASE-SCHUR-AUDIT.md}, \file{BILATERAL-LDU.md}, and \file{FORWARD-SMALL-A-AUDIT.md} for the analytic details and exact local-identity controls. + +\section{Capping and recentering the phase interiors} + +All target holes and original physical period cuts are boundary coordinates. Selected target coordinates are consecutive inside an original phase cell, so no interior circuit is applied to a masked Toeplitz matrix. Use the maximum physical bandwidth $W$ for both directions. + +In each original $O(d)$-length cell, retain $W$ endpoints and repeatedly choose the largest dyadic interior of size at most $B$ that fits with a following $W$ separator. Once no full $B$ block remains, the dyadic-tail procedure halves the remaining length at every step until its size is $O(W)$, which is all boundary. There are $O(d/B+\log B)$ interiors and +\[ + O\bigl(W(d/B+\log B)\bigr) +\] +boundary coordinates per cell. Since $B=o(d)$, the boundary density is $O((W/B)\plog p)$. Each eliminated interior touches only its two neighboring $O(W)$ boundary groups. Schur fill therefore has half-bandwidth $O(W)$, regardless of the number of capped blocks. + +For the narrow exact cell weights +\[ + \omega_j=e^{-a(1/4-\beta_j^2)/\theta}, +\] +one step changes their logarithm by $2a\beta_j+a\theta=O(a)$. On a capped block use the exact rounded-weight ratio $\widehat\omega_j/\widehat\omega_m$ around one anchor. The common scalar cancels from the similarity, and its logarithmic range is $O(aB)$. The retained global rounding changes this by $O(1)$, because its $Cp$ precision dominates the original $O(ad)=o(p)$ range. This is symbolic recentering of the same matrix, not a new local rerounding. For the broad split, $|x|,|y|\leq B$ and $B\leq d$ give diagonal ranges +\[ + O\bigl((B+B^2/d)/\alpha^2\bigr)=O(B/\alpha^2)\subset O(aB). +\] +The number of blocks does not multiply circuit depth: they run as a direct sum on the $L$ existing coordinates. + +\section{Five factors, sparse windows, and batched boundaries} + +For either square operator write $Q=\left[\begin{smallmatrix}A&B_1\\C_1&D_1\end{smallmatrix}\right]$ in interior/boundary order, and $F=D_1-C_1A^{-1}B_1$. Exact multiplication gives +\begin{align} + Q^{-1}&=\diag(A^{-1},I)E_{-B_1}\diag(A,F^{-1}) + E_{-C_1}\diag(A^{-1},I),\\ + Q&=\diag(A,I)E_{C_1}\diag(A^{-1},F)E_{B_1}\diag(A,I). +\end{align} +The off-diagonal factors use the original banded $B_1,C_1$. The forward formula uses $F$ only as a matrix application; it does not require a forward Schur inverse or a forward LU-prefix assertion. For the narrow inverse, row diagonal dominance survives elimination. Its Schur row gap stays at least $1/\poly(p)$ and its row norm is bounded, so the retained no-pivot boundary solver applies. + +Batch independent right-hand sides in a dyadic width between $W$ and $2W$. A banded triangular solve becomes block updates +\[ + X_j=L_{jj}^{-1}(Y_j-L_{j,j-1}X_{j-1}). +\] +Precomputed diagonal inverses and two square block products implement each update. The seven-product recursion gives exponent $\omega=\log_2 7<45/16$, the latter inequality checked exactly by $7^{16}<2^{45}$. The same batching handles boundary/interior coupling products. Intermediate Strassen additions grow only polynomially in $W$. Round after a completed block update and bound its residual. Each local window has polynomial length $L$, the no-pivot factors and exact partial right-hand sides have polynomial bounds, and the completed system inverse has polynomial norm. Thus the uniform local residual is $\poly(p)2^{-P}$; there is no factor equal to the global number of windows. The total boundary cost is +\[ + O\bigl(V(d/B)W^{\omega-1}\plog p\bigr). +\] + +For a group let $J_i$ be its boundary set, and let $E_i$ also include every interior coordinate incident to $B_1$ or $C_1$. Then $|E_i|/L=O((W/B)\plog p)$ and each sparse factor fixes $E_i^c$. The union +\[ + U=\{x\in[L]^g:\exists i,\ x_i\in E_i\} +\] +has fraction $O(gW/B\plog p)$. It is closed under the sparse factors, including a possibly dense inverse on $J_i$. It is \emph{not} closed under a dense $A$ stage. Use two sparse windows, with scatter/regather around the intervening dense stage. + +For one sparse axis, $U_i=E_i\times[L]^{g-1}$ is a complete rectangle wholly present in $U$. Scan $U$, extract $U_i$, number $E_i$ in increasing order by a stream counter, transpose only this polynomial-size field, perform its boundary operation, and merge back. Only this one field is temporarily padded, and the padding is deleted before the next axis. Each sparse window costs $O(Vg^2W/B\plog p)$ per group. Across $d/g$ groups this is +\[ + O\bigl(V(dg/B)W\plog p\bigr). +\] +Every group also has a fixed number of full scans costing $O(V)$. Membership calculations use $O(g(\log s)^2\plog p)=o(p)$ bit operations per $p$-bit record. Detailed fixed-tape extraction and batching are in \file{PHASE-LAYOUT-AUDIT.md}. + +\section{Core faces, ordered embedding, and precision} + +The increasing map $j\mapsto q_j$ permits one product scan for a whole group. Enumerate the dyadic target rectangle. For target $k$, put +\[ + j=\max\{0,\lceil s(2k-1)/(2t)\rceil\}. +\] +It lies in the image exactly when $j0.000428$. The old core-face cost has exponent $\epsilon_M+\beta_M-3<-1.75$. + +The main and grouped Gaussian savings are equal, while the sparse-union saving has an exact $s_U$ surplus: +\begin{align*} + \epsilon_Mq&=1-\epsilon_M+q\beta_M,\\ + 1-\epsilon_M-\beta_M-1/2+\xi_M&=\epsilon_Mq+s_U. +\end{align*} +Their minimum equals +\[ + 0.001673360115405778453817047951720376\ldots>\kappa_M+10^{-11}. +\] +The new boundary saving is $5/16+\xi_M-\epsilon_M>0.0639$, so it is not binding. Global routing, group scans, packed products and core-face repairs have strictly larger savings. + +The optional full-key surcharge in the earlier conservative table is absent here: the actual sparse-union algorithm extracts complete rectangles $U_i$, transposes one field, and performs an ordered merge. It does not sort union records. In contrast, all sparse \emph{microhalo} radix keys remain paid in their negligible correction volume. Adding a full-key sort on the union is an explicit rejecting control; omitting it follows from the layout proof, not from the matrix exponent. The new parameter range and q-image ordering are independently checked in \file{MATRIX-LAYOUT-SIGNOFF.md}. + +The exact ledger \file{check_matrix_corollary.py} verifies 47 positive strict slacks and six rejecting controls, recorded in \file{MATRIX-COROLLARY-ARITHMETIC.json}. The gain over the upstream selected saving is $6.9990832886\times10^{-7}$. The gain over the separate Strassen result is $4.37755816907\times10^{-7}$. The strict minimum gap absorbs all remaining fixed logarithms as before. +\end{proof} + +\noindent\textbf{Corollary review status: PASS\_CONDITIONAL\_MATRIX\_PHASE\_FUSION\_REVIEW.} The additional matrix transfer, new-parameter layout and exact arithmetic passed their independent audits and integrated root review. Corollary~\ref{cor:matrix} retains its explicit additional matrix-exponent premise. The first theorem and its separate reviewed arithmetic receipt remain unchanged. + +\section{Updated T74 supplier and final exponents}\label{sec:t74} + +The preceding proofs are parameterized by the effective supplier rate. We now substitute the independently replayed T74 complex supplier from \href{https://github.com/CrocSwap/integer-mult-bounds/pull/1661}{PR1661}, pinned at commit \texttt{f852af5e178ce035cd46181a29d9330bcbcaa206}. This is a new input to the same outer proof, with contributor attribution retained in the source package. The original numerical statements above remain valid special cases. + +Use the exact finite decimals +\[ + b_T=0.00167971337478,\qquad q_T=b_T-10^{-10}, + \qquad a_T=(q_T+b_T)/2. +\] +The independently retained bit rate $a_*=0.001733427039589844234749$ satisfies $q_T0 for x in assembly['outer'].values()),'native strict inequalities failed') + words={} + for key,word in [('base','gauge44-word-566.json.gz'),('extra','extra-word-566.json.gz')]: + d=run/('native-new-'+key);st=read(d/'STEPS.json') + need([s['step'] for s in st]==['native','ledgers','local-replay','wrappers','phases'] and all(s['exit_code']==0 for s in st),'native word coverage failed: '+key) + need(gzip.decompress((d/'local/FULL-WORD.json.gz').read_bytes())==gzip.decompress((source/'new'/word).read_bytes()),'native word payload differs: '+key) + words[key]=sha(source/'new'/word) + caps=read(package/'frontier_fusion/NATIVE-ADMISSION-BINDING.json') + need(result['controls']==caps['control_counts'],'cold control coverage differs') + capsule=read(package/'NATIVE-RECEIPT-CAPSULE.json') + def native_normalized(x): + if isinstance(x,dict):return {k:native_normalized(v)for k,v in x.items()if k not in {'seconds','log_sha256'}} + if isinstance(x,list): + y=[native_normalized(v)for v in x] + return sorted(y,key=lambda v:v['name']) if y and all(isinstance(v,dict)and'name'in v and'exit_code'in v for v in y) else y + if isinstance(x,str):return x.replace(str(run),'{native-work}').replace(str(source),'{native-source}') + return x + bound={} + for z in capsule['receipts']: + root=run if z['root']=='native_work' else source + f=root/z['path'];need(f.is_file(),'missing native receipt: '+z['path']) + bound[z['root']+'/'+z['path']]=sha(f) + if 'semantic_sha256' in z: + digest=hashlib.sha256(json.dumps(native_normalized(read(f)),sort_keys=True,separators=(',',':')).encode()).hexdigest() + need(digest==z['semantic_sha256'],'native semantic receipt differs: '+z['path']) + files=[run/'RESULT.json',run/'STAGES.json',run/'strict/RESULT.json',run/'strict/ASSEMBLY.json'] + return {'status':'PASS_FRESH_NATIVE_RUN_BOUND_TO_PINNED_PHASE_FUSION','scope':'Existing complete cold native run checked against the pinned source and the independently replayed outer inputs; all-size assumptions remain.','source_commit':PIN,'source_manifest_sha256':sha(source/'MANIFEST.json'),'native_words':words,'complex_lower':assembly['complex_lower'],'profile':assembly['complex_profile'],'controls':result['controls'],'canonical_native_receipts_checked':46,'all_native_receipt_sha256':bound,'run_receipt_sha256':{str(f.relative_to(run)):sha(f) for f in files}} + +def main(): + ap=argparse.ArgumentParser();ap.add_argument('--package',type=Path,default=Path(__file__).resolve().parent);ap.add_argument('--native-source',type=Path);ap.add_argument('--native-work',type=Path);ap.add_argument('--output',type=Path);a=ap.parse_args() + need((a.native_source is None)==(a.native_work is None),'provide both --native-source and --native-work') + package=a.package.resolve() + if a.output:need(not a.output.resolve().is_relative_to(package),'--output must be outside the immutable package') + out=fast(package) + if a.native_source:out['cold_native_binding']=cold_binding(package,a.native_source,a.native_work) + if a.output:a.output.write_text(json.dumps(out,indent=2)+'\n') + print(out['status'],len(out['checks']),'exact control replays') + if 'cold_native_binding' in out:print(out['cold_native_binding']['status']) +if __name__=='__main__':main() diff --git a/research/capped-fusion-t74-k554/vendor/pr1786/FINE-PRIME-PADDING.md b/research/capped-fusion-t74-k554/vendor/pr1786/FINE-PRIME-PADDING.md new file mode 100644 index 0000000000..bf9899ee21 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1786/FINE-PRIME-PADDING.md @@ -0,0 +1,355 @@ +# Fine prime padding with separate setup and online precision + +This extends the capped phase-cell construction of PR1673 and the +fractional-shift interiors and radix-union schedule of PR1758. The finite +supplier is the unchanged signed-554 T74 supplier admitted in PR1699. +The new mechanism is a finer choice of source primes. Its smaller phase +increment changes the chirp budget, provided coefficient setup is allowed +more precision than the online records. The boundary uses the retained +explicit Strassen format; no structured-solver stability claim is needed. + +The exact ledger gives conditional +`kappa=0.001679754788150048`, rounded strictly below the derived saving. +The conclusion retains the all-size hypotheses listed in section 8 below. +Finite checks do not prove those hypotheses, the cited prime theorem or the +complete multiplication theorem. No practical cutoff is claimed. + +## 1. A source-prime interval finer than 1/d + +Retain the dyadic target box of the assembly construction. Its dimension is +`d=Theta(p^epsilon)`, `0=229 that + + |pi(x)-li(x)| <= 0.2795 x (log x)^(-3/4) + exp(-sqrt(log x/6.455)). + +[Primary source, theorem 2](https://arxiv.org/html/1401.2689v2#S2). +This theorem is a cited mathematical input, not re-proved by the verifier. + +Apply it at the two endpoints of the requested interval about x=t_i. +The logarithmic-integral difference is at least `eta_p x/log x`. The sum +of the two errors divided by this main term is bounded, for a fixed C, by + + C p^2 (log x)^(1/4) exp(-c sqrt(log x)) -> 0. + +Indeed `log x=Theta(p^(1-epsilon))` and epsilon<1 is fixed, so its positive +power dominates log p. Consequently the interval contains eventually at +least `x/(8p^2 log x)` primes. This exceeds d, since x is exponential in +`p^(1-epsilon)` and the denominator and d are polynomial in p. Both target +sizes satisfy the estimate. Their intervals are disjoint, so all d source +primes can be made distinct, odd and coprime to their dyadic targets. + +The deterministic search used by the assembly still works: scan the +intervals and test candidates by trial division. Even scanning all O(r) +candidates with O(sqrt r) divisors and polynomial bit overhead costs +`O(d r^(3/2) poly(p))`. Its logarithm is `O(log p+p/d)=o(p)`, hence setup +is `n^o(1)=o(n)`. No unknown threshold is used as a claim of practicality. +The algorithm can fall back on the retained multiplier for smaller inputs. + +Let `rho_i=t_i/s_i=1+theta_i`. The interval gives + + 1/(4p^2) < theta_i <= 1/(2p^2-1) <= 1/p^2. + +Also `S/T > (1-1/(2p^2))^d >= 1-d/(2p^2) > 1/2` eventually, since +d<=p. Thus the same capacity bound `T/2=1/(4d)`. + +## 2. Polynomial conditioning survives the smaller increment + +Keep `alpha=ceil(sqrt((4/pi) log(16p)))` and `a=pi alpha^2`. Eventually +`4 log(16p)<=a<=5 log(16p)` and alpha^2=Theta(log p). The sharp row estimate +of PR1673, LOG-A-PHASE-SCHUR-AUDIT section 1, is valid for every theta>0: + + ||N-I||_infinity <= exp(-2 a theta)+5 exp(-2a). + +For theta>=1/(4p^2), its row gap is at least `1/(8p^2)` eventually; for +example `1-exp(-2a theta)>=1/(4p^2)` while the second term is O(p^-8). +Omitting the exponentially small nonzero diagonal aliases and setting the +diagonal exactly to one preserves a polynomial gap. Exponentially accurate +band truncation and coefficient rounding preserve half of it. Every principal +narrow block has the same row gap, and its Schur complements retain that gap. + +The broad bound in FORWARD-SMALL-A-AUDIT sections 1-3 already states its +dependence on theta explicitly: + + ||K^-1|| <= O(alpha^5 rho^2 theta^-2 exp(a rho/3)). + +This is polynomial for the new theta. Since rho=1+O(p^-2), the exponential +factor is at most p^2 eventually, theta^-2<=16p^4, and alpha^5 is +polylogarithmic. The finite and bilateral LDU entry bounds are geometric +in index distance and bound both row and column sums. The same estimates +apply to the finite contiguous sections used by elimination. The augmented +forward matrix adds identity hole columns and a Gaussian coupling of bounded +row and column sums. Thus a conservative common eventual bound p^10 covers +the relevant matrices and their inverse norms, in both induced row/column +norms and spectral norm. Polynomially small perturbations preserve it with +slightly larger constants. This bound is independent of the number of cells. + +Physical-prefix elimination still consists of one contiguous prefix and +disjoint future interiors separated by at least the bandwidth. The eliminated +matrix is a direct sum of such sections. A Schur inverse is a principal block +of the corresponding full inverse; its norm is therefore polynomial too. +Schur norms follow from `D-C A^-1 B`. These are the same prefix geometries +used in the retained dense no-pivot boundary argument, with new polynomial +constants. No general stability assertion for structured generators is used. + +## 3. Setup precision must increase; online precision need not + +The old absolute weight precision cannot be retained. For the narrow weights + + w_i=exp(-a(1/4-beta_i^2)/theta), + +the negative logarithm can now be as large as `a/(4 theta)=O(p^2 log p)`. +Rounding these weights absolutely to Cp bits can produce zero. The finite +checker includes a concrete underflow witness; this is a required change. + +Let `L_p=ceil(log2 p)` and let C be a sufficiently large fixed constant. +Use setup precision + + P_setup = C p + 64 p^2 L_p. + +Eventually `a<=16 L_p`, so `a/(4 theta)<=16 p^2 L_p`. Since log 2>1/2, +rounding a weight downward with absolute error at most `2^-P_setup` gives + + |w_hat_i-w_i|/w_i + <= 2^-P_setup exp(a/(4 theta)) + < 2^(-C p). + +The weights remain positive. Increasing C by a fixed amount supplies any +additional polynomial slack needed below. Computing these polynomially many +bits, exponentials, exact anchored ratios and local inverse/factor pages takes +polynomial time in p. Schoolbook arithmetic and ordinary convergent series +already suffice; no use of the improved multiplier at a larger precision is +required for this setup bound. + +Define one globally fixed rounded reference matrix H as in the retained +audit: within each original phase cell use positive rounded weights and a +single rounded, truncated Toeplitz kernel, and across cells use rounded +Gaussian entries, with diagonal exactly one. The weights use P_setup, while +the kernel and the actual online pages need only a sufficiently large +constant times p bits. For distances at most W, weight ratios have logarithmic +range O(aW)=o(p). The truncation tail is bounded directly in the Gaussian +entries, independently of the full-cell weight range. Hence H differs from +the exact Gaussian matrix by `poly(p) 2^(-(C-o(1))p)` in row and column norm. +This preserves the polynomial conditioning in section 2. All actual Schur +and inverse tables are computed for this H, with the same perturbation budget. + +The data circuit never multiplies by the full-cell weights. Use PR1758's +exact fractional-shift identities, whose algebra holds for every theta>0. +On a capped block of length at most B, the narrow remaining chirp has +logarithmic range O(a theta B^2); the broad chirp and its leftover linear +term have range O(b0 theta B^2+b0 theta B), where b0=pi/alpha^2. Each is at +most O(a B^2/p^2). The shifted Toeplitz kernels remain accretive: their shift +gap is at least theta/2, and the explicit symbol bound of PR1758 gives +polynomial inverse norms when theta^-1=O(p^2). Its accretive shallow-circuit +theorem therefore has polylog(p) guard bits per axis, as before. + +The ideal shifted representation and H need not have identical stored +coefficients. Their difference has the bound just established: replace the +old raw `Cp` weight precision by P_setup in the comparison in PR1758 section +2. Local shifted kernels and anchored chirps are generated directly, then +rounded at online precision. Across g axes the uncompleted amplification is + + exp(O(g a B^2/p^2 + g polylog p)). + +Thus O(p)-bit records suffice whenever + + beta + 2 xi - 2 < 1, beta < 1. + +The inverse comparison also stays within the error budget. If an ideal +interior A and the rounded reference H_II differ by Delta, then +`H_II^-1-A^-1=-H_II^-1 Delta A^-1`. Both inverse norms are polynomial; +the error changes only by a polynomial factor. Telescoping through the +constant number of completed factor stages, and through g tensor axes, +uses the stated chirp/prefix guard. Exact identity of their rounded +coefficient lists is neither assumed nor needed. + +Setup arithmetic at P_setup is separate from these records. It is not placed +inside an online motif call or multiplied into the per-record data cost. +PHASE-LAYOUT-AUDIT already permits polynomial coefficient/page generation +per complete microbox and axis, amortized by the superpolynomial inner and +spectator payload. Replacing its polynomial by another fixed polynomial +preserves that argument: `L^g` and every full unused source-axis range exceed +every fixed polynomial in p. The number of pages, capped pieces, axes and +required bits is polynomial. This is an asymptotic amortization, not a claim +that P_setup or the eventual cutoff is practical. + +## 4. Normalize completed maps with powers of two + +The exact Gaussian resampling identity and the coprime source/target +permutations do not require theta to be of order 1/d. They require the +positive separation and invertibility established above. The completed +forward, inverse and diagonal factors can have larger polynomial norms +than in the old parameter family. Divide each such completed map by an +additional dyadic factor of at most `2^ceil(100 log2 p)`. The conservative +p^10 bounds above are then below one. Restore the product of these exact +normalizers at the final scalar shift, together with the retained Gaussian +normalization. This preserves the exact transform identity. + +There are O(d) factors; the added shift has O(d log p)=o(p) bits because +epsilon<1. This also bounds the extra accuracy needed before exact recovery. +At a sufficiently large fixed C, data precision is `C p+o(p)=O(p)`. +Completed groups can be treated as contractions, while their uncompleted +prefixes/suffixes use the chirp and circuit guards of section 3. None of +these changes increases the semantic online dimension exponent C1=1. +Offline arithmetic is paid through the setup amortization, not that interface. +The normalizer is scalar: combine its powers into the group coefficients or +apply one scalar per completed group, rather than introducing a full scan per +axis. A constant number of these operations per group is absorbed by the +retained group-scan row. Global restoration is one already-paid exact shift. + +## 5. A larger but still polynomial locality window + +The old literal row-gap and locality constants must not be reused. A +conservative generic locality argument suffices. For a banded reference +matrix with `||H||_2,||H^-1||_2<=p^10`, put + + Q=I-p^-20 H* H. + +Its eigenvalues lie in `[0,1-p^-40]`. With `J=ceil(p^42)`, the polynomial +inverse `p^-20 sum_(j0`. +The locality polynomial is used in the proof and coefficient setup. The +online algorithm still uses the capped factorization and compiled circuits; +it does not perform J Neumann iterations on each data record. + +An original phase cell now has length Theta(p^2). Capped dyadic carving still +has boundary density `O((W/B) polylog p)`: the additional end-cell contribution +is `O(W log B/p^2)`, dominated when B<=p^2. Clipped physical period cuts and +holes remain boundary. Scalar Schur bandwidth stays O(W), since an eliminated +interior joins only its two neighboring O(W)-size separators. Larger cores +and halos change only fixed powers in offline setup and O(log p) address +fields. Their source axes are still superpolynomial in p. + +## 6. Retained Strassen boundary, circuit and union costs + +Use the explicit Strassen circuit, with `7^16<2^45`, so choose fixed matrix +target exponent `tau=45/16` and `c=(3-tau)/2=3/32`. PR1673's dense boundary +proof and fixed-format absolute-precision argument apply to the new polynomially +conditioned pages. Block scans, permutations, rewinds and linear combinations +remain charged. Boundary density is still W/B, so its cost power remains +`epsilon-xi+(tau-1)/2` and its saving is `c+xi-epsilon`. This applies to general +rounded blocks and needs no structured inverse algorithm. + +The interiors use PR1758's shifted Toeplitz representation and accretive +shallow-circuit theorem, with the smaller theta substituted in the explicit +symbol bound and with section 3's setup precision. Circuit algebra and depth +are unchanged; the condition guard remains polylog(p) per axis because all +inverse norms and theta^-1 are polynomial. + +Retain PR1758's radix-distributed union schedule. Complete lines stay in one +flag class and axis operators commute on distinct tensor factors. Its incidence +identity is `sum_r |S_r|=sum_x |F(x)|=sum_i |U_i|<=g mu V`. Each visit already +moves an O(p)-bit record; flag extraction and O(g log L)-bit headers are absorbed +when beta<1. We use PR1758's per-visit argument, not the obsolete 2 beta<1. +Union cost power remains `epsilon+1/2-xi`. No per-axis scan of the whole union +is added, and no vanishing-union fraction is assumed. Support routing, +whole-neighborhood reservation and interchange retain their stated interfaces. + +## 7. Explicit parameters and every paid row + +Use PR1699's certified endpoint +`b_cert=335950991225108904267/200000000000000000000000`. +Set `b=b_cert-10^-64`, `q=b-10^-64`, `a_eff=(q+b)/2`, +`r0=10^-64`, `zeta=10^-66`, layout slack `s=10^-64`, and stopped-recursion +parameter `stop=10^-70`. The bit endpoint is 0.001733427039589844234749. +Choose + + epsilon=9999999/10000000, + beta=9999997/10000000, + xi=epsilon(1+q)-3/32+s. + +Thus xi=0.90792965478815... . This is an explicit interior point; it does not +assert an attained limiting rate. Since beta0`. The global router also +exceeds the main saving. Every other row has larger slack. The minimum is +`epsilon q`, strictly above the rounded headline. + +Key side conditions are + + 1-beta=3 delta>0, + 1-beta-2(1-epsilon)=delta>0, + epsilon-beta=2 delta>0, + 1-epsilon-r0>0, + 1-(2xi-2)-r0-beta=0.184140990423...>0, + 1/20, 48>43. + +The ledger regenerates the remaining stopped-supplier, endpoint, logarithm +and layout conditions. A separate implementation reconstructs the point and +all nine powers. Fourteen rejected variants include the old theta guard, +old union scan, group=dimension, epsilon=1, an unsupported Strassen exponent +and halo/core choices outside the stated locality witness. These failures +are scoped to this proof and point, not universal lower bounds. + +## 8. Scope, sources and open obligations + +Newly supplied here: the effective fine-prime interval and capacity/search +argument; the polynomial setup-precision replacement; the theta-dependent +conditioning substitution; conservative locality/core choices; scalar +normalization accounting; and the exact parameter composition. + +Retained or cited mathematical inputs are Trudgian's prime theorem; PR1673's +Gaussian identities, bilateral/finite LDU, capped factorization, dense boundary +and layout arguments; PR1758's fractional-shift identities, accretive circuit +theorem and per-visit union schedule; and the admitted finite supplier. +Arithmetic and finite simulations do not prove these general statements. + +The multiplication conclusion remains conditional on the all-size compiler, +common labels, mutable sources, whole-call hosting, semantic online precision +C1=1, fixed tapes, prime-packing implementation, arbitrary-width equal-chunk +interchange, exact recovery and analytic transfer. The changed prime interval, +setup precision and locality scales are proved above rather than silently +substituted into old numeric hypotheses. No independent human review, +proof-assistant verification, practical cutoff or physical multiplication +implementation is claimed. + +Credit Vlado Vojdanovski for PR1673; IdeaOuter, as credited by PR1758, for +fractional-shift interiors and per-visit tag accounting; Jeremy Kothe and +contributors for the package series; and LeverRank for the second schedule +simulation. PR1699's notices retain the complete supplier lineage. PR1672 +published the signed-554 kernel first. New material here was prepared by +Chafik Boukhalfa with substantial OpenAI Codex assistance, under Apache-2.0. + +Open next questions: independently review setup versus online precision, +uniform prefix conditioning and the enlarged halo; formalize the fine-prime +transfer lemma; improve the finite supplier endpoint. Every new endpoint +still requires a complete paid native word and admission. The extreme +eventual threshold is intentionally not presented as a practical algorithm. diff --git a/research/capped-fusion-t74-k554/vendor/pr1786/NOTICE.md b/research/capped-fusion-t74-k554/vendor/pr1786/NOTICE.md new file mode 100644 index 0000000000..e491b2e587 --- /dev/null +++ b/research/capped-fusion-t74-k554/vendor/pr1786/NOTICE.md @@ -0,0 +1,3 @@ +# PR1786 (chafreaky / Chafik Boukhalfa), fine source-prime padding + +`FINE-PRIME-PADDING.md` and `outer/check_fine_padding.py` (copied; only the first docstring line of the script is relabelled) are from CrocSwap/integer-mult-bounds PR1786, branch chafreaky/integer-mult-bounds `research/fine-prime-padding`, head `c52345caa318fc6b1b6e2659c57d746317a72823` (Apache-2.0, as stated in the PR). The mechanism (source primes at relative gap Theta(p^-2) from dyadic targets via Tim Trudgian's effective prime number theorem, arXiv:1401.2689v2 theorem 2; setup precision Cp + 64 p^2 ceil(log2 p); theta-dependent conditioning; polynomial halo p^48 and core p^128; dyadic normalizers; explicit Strassen boundary) is entirely theirs. This package changes only the explicit parameter point (epsilon, beta) and the surrounding stack, see `outer/FINE-PADDING-COMPOSITION.md`. diff --git a/research/capped-fusion-t74-k554/verify.py b/research/capped-fusion-t74-k554/verify.py new file mode 100644 index 0000000000..e6553b883e --- /dev/null +++ b/research/capped-fusion-t74-k554/verify.py @@ -0,0 +1,129 @@ +"""Portable finite admission. Fresh native suppliers by default; explicit bound reuse supported.""" +import argparse,gzip,hashlib,json,os,shutil,subprocess,sys,tarfile,threading,time +from pathlib import Path +P=Path(__file__).resolve().parent +ap=argparse.ArgumentParser();ap.add_argument('--work',type=Path,required=True);ap.add_argument('--base-native-from',type=Path);ap.add_argument('--extra-native-from',type=Path);ap.add_argument('--parent-receipt-cache',type=Path);ap.add_argument('--new-base-native-from',type=Path);ap.add_argument('--new-extra-native-from',type=Path);ap.add_argument('--native-cache',type=Path);ap.add_argument('--audit-shards',type=int,default=4);a=ap.parse_args();work=a.work.resolve();assert __debug__ and not work.exists() and not work.is_relative_to(P) +def rd(p): + b=p.read_bytes();return json.loads(gzip.decompress(b) if p.suffix=='.gz' else b) +def sha(p):return hashlib.sha256(p.read_bytes()).hexdigest() +pins=rd(P/'MANIFEST.json');actual={p.relative_to(P).as_posix() for p in P.rglob('*') if p.is_file() and p!=P/'MANIFEST.json'};assert actual==set(pins) +for rel,h in pins.items():assert sha(P/rel)==h,rel +work.mkdir();(work/'tmp').mkdir();env=dict(os.environ,TMPDIR=str(work/'tmp'),PYTHONDONTWRITEBYTECODE='1',PYTHONUTF8='1',PYTHONINTMAXSTRDIGITS='0',OPENBLAS_NUM_THREADS='1',OMP_NUM_THREADS='1') +for k in ('PYTHONOPTIMIZE','WITNESS_DISCOVER','WITNESS_RECORD','WITNESS_SPEC'):env.pop(k,None) +env['AUDIT_FAST_SHARDS']=str(max(1,a.audit_shards)) +stages=[];lock=threading.Lock() +def run(name,script,*args): + t=time.monotonic();log=work/(name+'.log') + with log.open('w') as f:r=subprocess.run([sys.executable,'-B',str(script),*map(str,args)],cwd=work,env=env,stdout=f,stderr=subprocess.STDOUT) + with lock:stages.append(dict(name=name,exit_code=r.returncode,seconds=time.monotonic()-t,log_sha256=sha(log)));(work/'STAGES.json').write_text(json.dumps(stages,indent=2)) + assert r.returncode==0,(name,log.read_text()[-5000:]);print('PASS',name,flush=True) +old=P/'vendor/pr1297' +# The pinned input witness must be the exact retained predecessor, not merely a similar profile. +for n in ['PLAN.json','OWNERS.json.gz','GLOBAL-TEMPLATE.json.gz','DISPATCH.json','SPEC.json']:assert rd(P/'inputs'/n)==rd(old/n),n +env['FINE_ENGINE_CACHE']=str(work/'fine-cache') +run('fine-engine-oracle',P/'code/oracle_check.py') +opts=[] +for key,path in [('base',a.base_native_from),('extra',a.extra_native_from)]: + if path:opts.extend(['--'+key+'-native-from',path.resolve()]) +PARENT_STATUS='PASS_GLOBAL_MIXED_X54_FUSIONS_NATIVE_AND_STRICT_ADMISSION' +def retained_files_ok(): + # the retained package must be byte-for-byte the one every receipt below is bound to (same check as its own verify.py) + vm=rd(old/'MANIFEST.json');have={p.relative_to(old).as_posix() for p in old.rglob('*') if p.is_file() and '__pycache__' not in p.parts and p!=old/'MANIFEST.json'} + assert have==set(vm),'retained package file set differs from its manifest' + for rel,h in vm.items():assert sha(old/rel)==h,rel +def natives_bound(path,word): + assert gzip.decompress((path/'local/FULL-WORD.json.gz').read_bytes())==gzip.decompress((old/word).read_bytes()),word + st=rd(path/'STEPS.json');assert [x['step'] for x in st]==['native','ledgers','local-replay','wrappers','phases'] and all(x['exit_code']==0 for x in st) +rc=None;receipt=None +if a.parent_receipt_cache and a.base_native_from and a.extra_native_from: + retained_files_ok();rc=a.parent_receipt_cache.resolve()/sha(old/'MANIFEST.json') + if (rc/'RECEIPT.json').is_file(): + receipt=rd(rc/'RECEIPT.json') + try: + assert receipt['schema']=='parent-receipt/1' and receipt['vendor_manifest_sha256']==sha(old/'MANIFEST.json') + assert receipt['claim_sha256']==sha(old/'CLAIM.json') and receipt['words']=={'base':sha(old/'gauge44-word.json.gz'),'extra':sha(old/'extra-word.json.gz')} + for name,h in receipt['files'].items():assert sha(rc/name)==h,name + pr=rd(rc/'RESULT.json');assert pr['status']==PARENT_STATUS and pr['kappa']==rd(old/'CLAIM.json')['kappa'] and pr['base_native_reuse'] is True and pr['extra_native_reuse'] is True + natives_bound(a.base_native_from.resolve(),'gauge44-word.json.gz');natives_bound(a.extra_native_from.resolve(),'extra-word.json.gz') + except (AssertionError,KeyError,OSError,ValueError) as exc: + print('parent receipt rejected (%r); running the full retained admission'%(exc,),flush=True);receipt=None +if receipt: + t0=time.monotonic();pl=work/'parent';pl.mkdir();lay=pl/'layout';lay.mkdir() + with tarfile.open(old/'upstream-layout.tar.gz') as t: + for m in t.getmembers():assert m.isfile() and not Path(m.name).is_absolute() and '..' not in Path(m.name).parts + t.extractall(lay,filter='data') + (lay/'globalmix51').mkdir();shutil.copytree(a.extra_native_from.resolve(),lay/'globalmix51/native-extra') + with lock:stages.append(dict(name='retained-provider-and-parent-admission',reused_receipt=str(rc.name),exit_code=0,seconds=time.monotonic()-t0));(work/'STAGES.json').write_text(json.dumps(stages,indent=2)) + print('PASS retained-provider-and-parent-admission (hash-checked receipt)',flush=True) +else: + run('retained-provider-and-parent-admission',old/'verify.py','--work',work/'parent',*opts) + pr=rd(work/'parent/RESULT.json');assert pr['status']==PARENT_STATUS and pr['kappa']==rd(old/'CLAIM.json')['kappa'] + if rc is not None and a.base_native_from and a.extra_native_from: + natives_bound(a.base_native_from.resolve(),'gauge44-word.json.gz');natives_bound(a.extra_native_from.resolve(),'extra-word.json.gz') + rc.mkdir(parents=True,exist_ok=True);shutil.copy2(work/'parent/RESULT.json',rc/'RESULT.json');shutil.copy2(work/'parent/STAGES.json',rc/'STAGES.json') + (rc/'RECEIPT.json').write_text(json.dumps(dict(schema='parent-receipt/1',vendor_manifest_sha256=sha(old/'MANIFEST.json'),claim_sha256=sha(old/'CLAIM.json'),words={'base':sha(old/'gauge44-word.json.gz'),'extra':sha(old/'extra-word.json.gz')},files={'RESULT.json':sha(rc/'RESULT.json'),'STAGES.json':sha(rc/'STAGES.json')}),indent=1)+'\n') +new_words={'base':P/'new/gauge44-word-566.json.gz','extra':P/'new/extra-word-566.json.gz'} +nat={};nat_err=[] +def new_native(key): + try: + w=new_words[key];reuse=getattr(a,'new_%s_native_from'%key);d=None;ws=sha(w) + def tree(e):return {x.relative_to(e).as_posix():sha(x) for x in sorted(e.rglob('*')) if x.is_file() and x.name!='CACHE.json'} + if reuse:d=reuse.resolve() + elif a.native_cache: + e=a.native_cache.resolve()/ws + if (e/'CACHE.json').is_file(): + cj=rd(e/'CACHE.json') + if cj.get('word_sha256')==ws and cj.get('files')==tree(e):d=e + if d is None: + d=work/('native-new-'+key);run('native-new-'+key,work/'parent/layout/joint1148-round45/source/research/k8-eight-ends/replay_native.py',w,d) + if a.native_cache: + root=a.native_cache.resolve();root.mkdir(parents=True,exist_ok=True);dst=root/ws + if not dst.exists(): + tmp=root/('.tmp-%s-%d'%(ws,os.getpid()));shutil.copytree(d,tmp);(tmp/'CACHE.json').write_text(json.dumps(dict(word_sha256=ws,files=tree(tmp)),indent=1)) + try:tmp.rename(dst) + except OSError:shutil.rmtree(tmp,ignore_errors=True) + assert gzip.decompress((d/'local/FULL-WORD.json.gz').read_bytes())==gzip.decompress(w.read_bytes()),(key,'native directory is not bound to the shipped word') + st_=rd(d/'STEPS.json');assert [x['step'] for x in st_]==['native','ledgers','local-replay','wrappers','phases'] and all(x['exit_code']==0 for x in st_) + nat[key]=d + except BaseException as exc:nat_err.append(exc) +nthreads=[threading.Thread(target=new_native,args=(k,)) for k in new_words] +for t_ in nthreads:t_.start() +def rebuild_chain(): + run('reconstruct-owners',P/'reconstruct.py','--out',work/'rebuilt-owners') + for n in ['OWNERS.json.gz','ORDER.json','DISPATCH.json','PROFILE.json']:assert rd(work/'rebuilt-owners'/n)==rd(P/n),n + run('lift-parent',P/'lift_parent.py','--owners',work/'rebuilt-owners','--out',work/'rebuilt-parent') + for n in ['GLOBAL-TEMPLATE.json.gz','PLAN.json','CONSTRUCTION.json']:assert rd(work/'rebuilt-parent'/n)==rd(P/n),n + assert rd(work/'rebuilt-parent/SPEC.json')['geometry']==rd(P/'SPEC.json')['geometry'] +chain_err=[] +def chain_thread(): + try:rebuild_chain() + except BaseException as exc:chain_err.append(exc) +chain=threading.Thread(target=chain_thread);chain.start() +for t_ in nthreads:t_.join() +if nat_err:raise nat_err[0] +SRCL=work/'parent/layout/joint1148-round45/source' +run('rebuild-words-566',P/'new/rebuild_chain.py') +for key_,w_ in new_words.items():run('audit-local-566-'+key_,SRCL/'research/gauge44-slots/independent/audit_local.py','--word',w_,'--main',SRCL,'--output',work/('AUDIT-LOCAL-566-'+key_+'.json')) +run('rebind-566',P/'new/rebind.py',P,nat['base']/'local',nat['extra']/'local',work/'data-rebound') +run('lemmag-labels',P/'code/lemmag_stage.py',work/'LEMMAG-LABELS.json',nat['base'],nat['extra'],*[p_ for p_ in (a.base_native_from,a.extra_native_from) if p_]) +STABLE=('LOCAL-CHECKS.json','CLIFFORD-RECIPES.json','RESIDUAL-ADAPTERS.json') +def bind_view(plan): + plan=json.loads(json.dumps(plan)) + for desc in plan['provider_registry'].values():desc['artifact_sha256']={n:h for n,h in desc['artifact_sha256'].items() if n in STABLE} + return plan +assert bind_view(rd(work/'data-rebound/PLAN.json'))==bind_view(rd(P/'new/PLAN.json')),'regenerated PLAN differs from new/PLAN.json beyond bind-rebound receipt hashes' +assert rd(work/'data-rebound/PROFILE.json')==rd(P/'new/PROFILE.json') +layout=work/'parent/layout';runtime=layout/'packing74';runtime.mkdir();data=runtime/'candidate';data.mkdir() +for n in ['replay.py','freeze_spec.py','audit_mixed.py','independent_core.py','geometry_controls.py','audit_fast.py']:shutil.copy2(P/n,runtime/n) +for n in ['code','construction']:shutil.copytree(P/n,runtime/n) +(runtime/'inputs').mkdir();shutil.copy2(P/'inputs/PR589-EXPECTED.json',runtime/'inputs/PR589-EXPECTED.json') +for n in ['PLAN.json','SPEC.json','PROFILE.json','OWNERS.json.gz','DISPATCH.json','CONSTRUCTION.json','GLOBAL-TEMPLATE.json.gz']:shutil.copy2((P/'new' if n in ('PLAN.json','SPEC.json','PROFILE.json') else P)/n,data/n) +shutil.copytree(nat['extra'],runtime/'native-extra') +base=nat['base'] +run('strict-t74',runtime/'replay.py','--data',data,'--work',work/'strict','--local',base/'local') +run('geometry-controls',runtime/'geometry_controls.py','--source',layout/'joint1148-round45/source/research/complex-k492-owner-repair/vendor/multicold','--strict',work/'strict','--out',work/'GEOMETRY-CONTROLS.json') +chain.join() +if chain_err:raise chain_err[0] +r=rd(work/'strict/RESULT.json');assert r['status']=='PASS_STRICT_MIXED_T74_EXACT_FILL' and r['kappa']==rd(P/'CLAIM.json')['kappa'];assert len(rd(work/'GEOMETRY-CONTROLS.json')['rejected'])==6 +result=dict(status='PASS_T74_EXACT_FILL_COMPLETE_FINITE_ADMISSION',kappa=r['kappa'],kappa_decimal=r['kappa_decimal'],manifest_sha256=sha(P/'MANIFEST.json'),native_reuse=dict(base=bool(a.base_native_from),extra=bool(a.extra_native_from)),provider_verification=pr['status'],roles=r['independent']['roles'],prefix_bits=r['independent']['prefix_bits'],charged_prefix_bits=r['independent']['charged_prefix_bits'],physical_row_coefficient=r['independent']['physical_row_coefficient'],row_limit=r['independent']['row_limit'],controls=dict(admission=114,bit=12,controller=15,independent_owner=8,geometry=6),stages=stages,scope=rd(P/'CLAIM.json')['scope']) +(work/'RESULT.json').write_text(json.dumps(result,indent=2)+'\n');print(result['status'],result['kappa_decimal'],flush=True) diff --git a/research/capped-fusion-t74-k554/verify_manifest.py b/research/capped-fusion-t74-k554/verify_manifest.py new file mode 100644 index 0000000000..8c2441d392 --- /dev/null +++ b/research/capped-fusion-t74-k554/verify_manifest.py @@ -0,0 +1,19 @@ +"""Verify the submitted package's exact file inventory and SHA256 bindings.""" +from hashlib import sha256 +import json +from pathlib import Path + +root = Path(__file__).resolve().parent +expected = json.loads((root / 'MANIFEST.json').read_text()) +actual = { + p.relative_to(root).as_posix(): sha256(p.read_bytes()).hexdigest() + for p in root.rglob('*') + if p.is_file() and '__pycache__' not in p.parts + and p != root / 'MANIFEST.json' +} +if actual != expected: + missing = sorted(expected.keys() - actual.keys()) + extra = sorted(actual.keys() - expected.keys()) + changed = sorted(k for k in expected.keys() & actual.keys() if expected[k] != actual[k]) + raise SystemExit(f'Manifest mismatch: missing={missing}, extra={extra}, changed={changed}') +print(f'PASS package manifest: {len(actual)} files') diff --git a/research/capped-fusion-t74-k554/verify_release.py b/research/capped-fusion-t74-k554/verify_release.py new file mode 100644 index 0000000000..65b4cdef75 --- /dev/null +++ b/research/capped-fusion-t74-k554/verify_release.py @@ -0,0 +1,122 @@ +"""Release proof: PR1673 capped phase-cell fusion outer on this package's T74 supplier (PR1661 stack + pivot-554 kernel). + +Runs (1) the supplier's own unchanged verify.py (native replays reused from --native-cache when present), concurrently with +(2) outer/check_ledger.py + outer/independent_check.py (the 45-inequality ledger, 5 rejecting controls, endpoint rejection and the +independent balance derivation, regenerated in a temporary copy and compared byte-for-byte with the committed LEDGER.json / +INDEPENDENT.json) and outer/replay_evidence.py (PR1673's 19 supplier-independent exact evidence replays); +then binds the supplier's strict ASSEMBLY (complex endpoint, bit endpoint, profile) to the ledger inputs. +The receipt kappa is the ledger's kappa with the radix-distributed sparse-union schedule (new in pkg4, outer/UNION-SCHEDULE.md) and structured boundary solves (new in this package, outer/STRUCTURED-BOUNDARY.md: displacement-rank generator representations of the boundary blocks, O(r W log W) per right-hand-side column, tau_eff = 2 + 1e-64 in that earlier package; not used here); the unproven omega_C <= 9/4 premise is not used. +""" +import argparse, hashlib, json, os, shutil, subprocess, sys, tempfile, time +from fractions import Fraction +from pathlib import Path + +PACKAGE = Path(__file__).resolve().parent +os.environ['PYTHONINTMAXSTRDIGITS'] = '0' # the pinned endpoints, kappas and ledger values are decimal/rational strings of thousands of digits +sys.set_int_max_str_digits(0) + + +def digest(p): + return hashlib.sha256(p.read_bytes()).hexdigest() + + +def main(): + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--work', type=Path, required=True) + ap.add_argument('--native-cache', type=Path) + ap.add_argument('--jobs', type=int, default=4) + a = ap.parse_args() + if sys.flags.optimize: + raise SystemExit('Full proof requires assertions enabled') + work = a.work.resolve() + work.mkdir(parents=True, exist_ok=False) + msha = digest(PACKAGE / 'MANIFEST.json') + t = time.monotonic() + opts = ['--audit-shards', str(max(1, a.jobs))] + (['--native-cache', str(a.native_cache.resolve())] if a.native_cache else []) + reused = {} + if a.native_cache: + for key, name in (('base', 'gauge44-word'), ('extra', 'extra-word')): + entry = a.native_cache.resolve() / digest(PACKAGE / 'vendor/pr1297' / (name + '.json.gz')) + if (entry / 'CACHE.json').is_file() and (entry / 'local/FULL-WORD.json.gz').is_file() and (entry / 'STEPS.json').is_file(): + opts += ['--%s-native-from' % key, str(entry)] + reused[key] = entry.name + if len(reused) == 2: + opts += ['--parent-receipt-cache', str(a.native_cache.resolve() / '_receipts')] + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1') + outer_log = (work / 'outer.log').open('w', encoding='utf-8') + outer_proc = subprocess.Popen([sys.executable, '-B', str(PACKAGE / 'outer/run_outer.py'), str(work / 'outer-tmp')], + stdin=subprocess.DEVNULL, stdout=outer_log, stderr=subprocess.STDOUT, env=env) + with (work / 'verify.log').open('w', encoding='utf-8') as out: + r = subprocess.run([sys.executable, '-B', str(PACKAGE / 'verify.py'), '--work', str(work / 'verify')] + opts, + stdin=subprocess.DEVNULL, stdout=out, stderr=subprocess.STDOUT) + if outer_proc.wait(): + raise SystemExit('outer checks failed: ' + (work / 'outer.log').read_text(encoding='utf-8', errors='replace')[-1500:]) + if r.returncode: + lines = (work / 'verify.log').read_text(encoding='utf-8', errors='replace').strip().splitlines() + raise SystemExit(f'verify failed rc={r.returncode}: {lines[-1] if lines else ""}') + res = json.loads((work / 'verify/RESULT.json').read_text(encoding='utf-8')) + claim = json.loads((PACKAGE / 'CLAIM.json').read_text(encoding='utf-8')) + if not res['status'].startswith('PASS_'): + raise SystemExit('package verify status ' + res['status']) + if Fraction(res['kappa_decimal']) != Fraction(claim['kappa_decimal']): + raise SystemExit(f"verified kappa {res['kappa_decimal']} != CLAIM {claim['kappa_decimal']}") + # ---- bind the supplier admission to the outer ledger inputs + asm = json.loads((work / 'verify/strict/ASSEMBLY.json').read_text(encoding='utf-8')) + spec = json.loads((PACKAGE / 'new/SPEC.json').read_text(encoding='utf-8')) + ledger = json.loads((PACKAGE / 'outer/LEDGER.json').read_text(encoding='utf-8')) + bj = json.loads((PACKAGE / 'outer/B.json').read_text(encoding='utf-8')) + if asm['status'] != 'PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY' or len(asm['outer']) != 47: + raise SystemExit('supplier strict assembly did not pass') + if Fraction(asm['complex_lower']) != Fraction(spec['expected']['complex_lower']) or not Fraction(bj['b']) < Fraction(asm['complex_lower']) < Fraction(bj['b_above_endpoint']): + raise SystemExit('ledger endpoint b is not bracketed by the admitted supplier complex endpoint') + if {int(k): v for k, v in asm['complex_profile'].items()} != {int(k): v for k, v in bj['profile'].items()} or Fraction(asm['bit_lower']) != Fraction('0.001733427039589844234749'): + raise SystemExit('ledger profile / bit endpoint differ from the admitted supplier assembly') + kappa_decimal = ledger['rows']['struct_boundary_radix_union']['kappa']['decimal'] + if Fraction(kappa_decimal) != Fraction(ledger['rows']['struct_boundary_radix_union']['kappa']['rational']) or Fraction(kappa_decimal) != Fraction(json.loads((PACKAGE / 'outer/OUTER-CLAIM.json').read_text(encoding='utf-8'))['kappa']): + raise SystemExit('ledger kappa != OUTER-CLAIM') + if Fraction(kappa_decimal) <= Fraction('0.001677160151714381'): + raise SystemExit('ledger kappa does not exceed PR1673') + if Fraction(kappa_decimal) <= Fraction('0.001677641731343354564251058287063644749065568493'): + raise SystemExit('ledger kappa does not exceed PR1699') + if Fraction(kappa_decimal) <= Fraction('0.0016783441717365385237811729563143950958709031230206606381509868512618172844657807114390339553440364'): + raise SystemExit('ledger kappa does not exceed the previous package (structured boundary, linear guard)') + if Fraction(kappa_decimal) <= Fraction('0.0016797547881500489087805478664999999999999999999999999999999998000000199999'): + raise SystemExit('ledger kappa does not exceed PR1786') + if Fraction(kappa_decimal) <= Fraction('0.0016797549561255445213356709939207025769983114385025802954603275201627999999999999999999999999979966404900867489109573286580121585'): + raise SystemExit('ledger kappa does not exceed PR1828') + if Fraction(kappa_decimal) <= Fraction('0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263049999999997996640490086748910957328658012158594'): + raise SystemExit('ledger kappa does not exceed PR1839') + if Fraction(kappa_decimal) <= Fraction('0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555649999999997996640490086748910957328658012158594'): + raise SystemExit('ledger kappa does not exceed PR1875') + if Fraction(kappa_decimal) <= Fraction('0.001679754956125544521335670993920702576998311438502580295460327520162864548260325638826305656132844632274451316908586220972070448120165412142771300636692956715734962527390622927714845418099553756337112475558813976784140553038674557881956561879800689254171219767487483694675693056982788922757319255565606685566411725238449650999339827075715283714270157705762309226038611771955655377501414652136546310799999999999999999997996640490086748910957328658012158594846'): + raise SystemExit('ledger kappa does not exceed PR1876') + if Fraction(kappa_decimal) <= Fraction('0.001679754956125544521335670993920702576998311438502580295460327520162864548260325638826305656132844632274451316908586220972070448120165412142771300636692956715734962527390622927714845418099553756337112475558813976784140553038674557881956561879800689254171219767487483694675693056982788922757319255565606685566411725238449650999339827075715283714270157705762309226038611771955655377501414652136546310881185746917580802513640545967852810801680966856133978576162943792322682482152988532923811998938861379689883167389728443314312230815059559906903773756886872476136837071871203030423643505345473735135533'): + raise SystemExit('ledger kappa does not exceed PR1897') + if Fraction(kappa_decimal) <= Fraction('0.001679745508802299051546533685199973672313473419790800679752457380932784242972585600630181672224983'): + raise SystemExit('ledger kappa does not exceed the previous package (gauge-free interiors, PR1758)') + if Fraction(kappa_decimal) <= Fraction('0.0016781238306335473083421558390362687182218966358657650331660405387910568682486186577879457360762643'): + raise SystemExit('ledger kappa does not exceed the previous package (rectangular k=5)') + if Fraction(kappa_decimal) <= Fraction('0.001677992607205282520732088774830808372222877897034109604209719298829805473412451530867883424937597'): + raise SystemExit('ledger kappa does not exceed the previous package (rectangular k=2)') + if Fraction(kappa_decimal) <= Fraction('0.0016778199023144364336310551358776001013829401215770658599799349282716974076737897457922714197448847'): + raise SystemExit('ledger kappa does not exceed the previous package (square boundary tau=2.372864)') + if Fraction(kappa_decimal) <= Fraction('0.0016776417313433545642517275958639984231708545722735432722117400060454625429077941422798526440584702'): + raise SystemExit('ledger kappa does not exceed the previous package (old union row)') + if digest(PACKAGE / 'MANIFEST.json') != msha: + raise SystemExit('Package manifest changed during verification') + proof = ("Supplier: the package's own unchanged `verify.py` (retained PR1297 provider and parent admission, owner reconstruction, " + "parent lift, strict T74 admission, geometry controls): " + f"`{res['status']}`, native reuse {reused or 'none (fresh replays)'}; its complex endpoint " + f"{asm['complex_lower'][:30]}... brackets the ledger's b = {bj['b']}. Outer (PR1673 capped phase-cell fusion): " + "regenerated exact ledger (62 strict inequalities, 17 rejecting controls incl. the old g-factor union row, the old linear and old-theta chirp guards, the old 2*beta tag test, epsilon at 1 or at the r0 slack and beta outside its window, larger endpoint rejected by the native moment), " + "independent balance derivation, the exact union-schedule simulation, the (retained, not used for kappa) structured-boundary displacement-rank check, the gauge-free identity/symbol/circuit checks, PR1786's finite prime/underflow controls and 19 exact evidence replays all pass. " + f"Conditional kappa {kappa_decimal} (union schedule outer/UNION-SCHEDULE.md; explicit Strassen boundary tau=45/16 (the structured boundary of outer/STRUCTURED-BOUNDARY.md is not used); gauge-free interiors outer/GAUGEFREE-INTERIORS.md; fine source-prime padding PR1786 at the free point epsilon=1-2e-100, outer/FINE-PADDING-COMPOSITION.md).") + (work / 'RELEASE-RECEIPT.json').write_text(json.dumps(dict( + status='PASS_RELEASE', kappa_decimal=kappa_decimal, manifest_sha256=msha, proof=proof, + seconds=round(time.monotonic() - t, 2)), indent=2) + '\n', encoding='utf-8') + print('PASS_RELEASE', kappa_decimal, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/frontier2044-epsilon-refinement/CLAIM.json b/research/frontier2044-epsilon-refinement/CLAIM.json new file mode 100644 index 0000000000..dbbcd3a8af --- /dev/null +++ b/research/frontier2044-epsilon-refinement/CLAIM.json @@ -0,0 +1,78 @@ +{ + "kappa_decimal": "0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997998318604657175114126592712139874296", + "gain_rational": "839057285213101584632027063857851/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "kappa_sha256": "19f073c443e9c9cb2bba4ab1c16a271523029a93f674315491b21b492290ba21", + "strict_checks": 62, + "rejecting_controls": { + "endpoint_equality": [ + "complex_endpoint", + "q_below_effective", + "q_below_internal", + "q_below_leaf", + "lambda_above_tau", + "lambda_above_internal", + "lambda_prime_above_lambda", + "lambda_prime_above_leaf", + "global_coordinate_router_above_kappa" + ], + "zero_layout_slack": [ + "positive_layout_slack" + ], + "old_per_axis_scan": [ + "old_per_axis_scan_above_kappa" + ], + "full_cell_gauge": [ + "unrecentered_group_gauge" + ], + "full_key_sort": [ + "unnecessary_full_key_sort_above_kappa" + ], + "old_g_factor_union_row": [ + "old_g_factor_union_row_above_kappa" + ], + "old_theta_chirp_guard": [ + "old_theta_chirp_guard" + ], + "old_linear_guard": [ + "old_linear_guard" + ], + "old_union_tag_2beta": [ + "old_union_tag_2beta" + ], + "matrix_below_strassen": [ + "strassen_integer_power_gap" + ], + "halo_too_short": [ + "halo_covers_generic_inverse_radius" + ], + "core_too_small": [ + "microbox_halo_volume", + "microbox_face_corrections_above_kappa" + ], + "group_equals_dimension": [ + "group_below_dimension", + "group_key_fits_record", + "membership_arithmetic_fits_record" + ], + "epsilon_equals_one": [ + "epsilon_below_one", + "global_gamma_power_slack", + "actual_logarithmic_gamma_guard", + "source_axis_superpolynomial", + "fused_gaussian_above_kappa" + ], + "epsilon_not_above_r0_slack": [ + "global_gamma_power_slack" + ], + "beta_below_gaussian_window": [ + "fused_gaussian_above_kappa" + ], + "beta_above_membership_window": [ + "membership_arithmetic_fits_record" + ] + }, + "epsilon_delta_ratio": "1025/1024", + "parent_head": "322949a53488d64023fedb89a6774927707e57ba", + "parent_manifest_sha256": "236cff02c0d2358174226f69d3b5702ec151af6b5841501dd4be69963b5cd8f9", + "scope": "Conditional outer arithmetic refinement only; unchanged supplier finite admission and complete parent outer evidence replays are required separately." +} diff --git a/research/frontier2044-epsilon-refinement/OVERLAP.json b/research/frontier2044-epsilon-refinement/OVERLAP.json new file mode 100644 index 0000000000..f0e2fdcbc9 --- /dev/null +++ b/research/frontier2044-epsilon-refinement/OVERLAP.json @@ -0,0 +1,45 @@ +{ + "checked_at": "2026-10-14T20:13:02Z", + "upstream_main": "0fdd7d82de03e43c9e5a1000dfbcd380d1b687d2", + "priority_revision": 4, + "parent_pr": 2044, + "parent_head": "322949a53488d64023fedb89a6774927707e57ba", + "coverage": { + "open_prs": { + "records": 381, + "complete_pagination": true, + "fetched_at": "2026-10-14T20:08:58.294703+00:00" + }, + "discussions": { + "records": 789, + "complete_pagination": true, + "fetched_at": "2026-10-14T20:10:44.724427+00:00" + } + }, + "target": "Change only delta from 2*r0 to (1025/1024)*r0 on PR2044; no precision or supplier changes.", + "closest_prior_prs": [ + 2044, + 1992, + 1928, + 1905, + 1897, + 1828 + ], + "novelty_limit": "Searches public open PR/discussion metadata and local notes, not every code diff or closed PR. No match is not proof of novelty.", + "matching_delta_ratio": false, + "final_checked_at": "2026-10-14T21:26:03.057115+00:00", + "final_coverage": { + "open_prs": { + "fetched_at": "2026-10-14T21:24:15.706881+00:00", + "complete_pagination": true, + "records": 410 + }, + "discussions": { + "fetched_at": "2026-10-14T21:26:02.931098+00:00", + "complete_pagination": true, + "records": 834 + } + }, + "final_warnings": [], + "parent_head_rechecked": "322949a53488d64023fedb89a6774927707e57ba" +} diff --git a/research/frontier2044-epsilon-refinement/PROOF.md b/research/frontier2044-epsilon-refinement/PROOF.md new file mode 100644 index 0000000000..e71f691e55 --- /dev/null +++ b/research/frontier2044-epsilon-refinement/PROOF.md @@ -0,0 +1,13 @@ +# Exact free-slack refinement + +Let r0 = 10^(-30010), q = certified complex endpoint - 2 r0, F = 10^30046, and B = 10^(-30022), exactly as in the pinned parent. For any delta > r0 in the retained admissible window, put epsilon = 1 - delta and beta = 1 - 3 delta. The explicit saving is K(delta) = floor(F epsilon q)/F - B. + +The parent uses delta_old = 2 r0. This contribution uses delta_new = (1025/1024) r0. The difference in unrounded savings is (1023/1024) q r0. Therefore + +`(1023/1024) q r0 - 1/F < K_new - K_old < (1023/1024) q r0 + 1/F`. + +The lower bound is strictly positive. The exact gain is independently recomputed and compared with CLAIM.json, rather than inferred from a displayed decimal. + +The potentially tight gamma condition becomes `1 - epsilon - r0 = r0/1024 > 0`. The Gaussian margin above the transform saving is `delta_new (1 - 2 q) > 0`; the membership margin is `1 - beta - 2(1 - epsilon) = delta_new > 0`. Beta stays inside `[1 - delta_new(1 + 1/q), 1 - 2 delta_new)`. Both epsilon = 1 and delta = r0 remain inadmissible limits. The nine cost powers are independently derived in verify.py; all 62 retained strict inequalities and 17 retained rejection controls are checked in ledger.py. + +The source-bound full gate must separately establish the unchanged supplier moment endpoints, both moment engines, adjacent-grid rejection, paid invoice, owner/controller and native phase checks. This proof does not replace those checks or establish the inherited all-size hypotheses. The point approaches the same supplier ceiling and yields an extremely small numerical refinement. diff --git a/research/frontier2044-epsilon-refinement/README.md b/research/frontier2044-epsilon-refinement/README.md new file mode 100644 index 0000000000..8b33b3e7f3 --- /dev/null +++ b/research/frontier2044-epsilon-refinement/README.md @@ -0,0 +1,23 @@ +# PR2044 free-epsilon refinement + +This conditional arithmetic contribution changes only the free outer point from delta = 2 r0 to delta = (1025/1024) r0, where epsilon = 1 - delta and r0 = 10^(-30010). Beta remains 1 - 3 delta. The inherited supplier, fine engines, endpoint precision, owners, native words and all-size assumptions are unchanged. Parent package bytes are frozen. + +The gain is strictly positive but extremely small: approximately (1023/1024) q r0. It does not improve the paid supplier ceiling. The exact kappa and gain are in CLAIM.json. The fast verifier checks all 62 retained inequalities and 17 rejecting controls, independently derives the nine cost powers, and checks both the previous point and the exact gain. It intentionally makes no standalone native-admission claim. + +From repository root, run `python3 -B research/frontier2044-epsilon-refinement/verify.py` for the arithmetic gate. The registered Python 3.12 hook runs only that fast gate. + +For complete finite admission, run the unchanged parent's `verify.py --work SUPPLIER_WORK --audit-shards 2` on Linux with the native toolchain, and its unchanged `outer/run_outer.py OUTER_WORK` on Windows, capturing its output to OUTER_LOG. Then run `python3 -B research/frontier2044-epsilon-refinement/verify.py --supplier-work SUPPLIER_WORK --outer-work OUTER_WORK --outer-log OUTER_LOG --out RESULT_FILE`. Work paths must be fresh and outside the parent package. All three steps are required. Supported native caches require source-bound honest receipts. + +**Parent reproduction detail:** PR2044 commits CRLF ledger artifacts. Its Linux `verify_release.py` attempt fails the original byte comparison even when every parsed value is identical, because Linux regenerates LF. The unchanged outer checker is therefore replayed on Windows, where it reproduces both artifacts byte for byte. The supplier admission runs separately on Linux; the final gate binds its exact manifest, endpoint, profile, controls and assembly to the unchanged outer artifacts. No parent assertion, certificate or source file is modified. This contribution does not claim a Linux `PASS_RELEASE` for the parent aggregate wrapper. + +All inherited compiler, hosting, precision/tape, recovery, analytic, prime-theorem and bit-supplier hypotheses remain conditional. This is not a full multiplication theorem verification. No independent human review is claimed. + +Credit PR2044 and Jeremy Kothe's capped-fusion package; PR1786 (Chafik Boukhalfa) and Tim Trudgian's prime theorem; PR1673 (Vlado Vojdanovski); PR1758 and the retained outer lineage; PR1625, PR1672, PR1319, PR1297 and the supplier/native lineage; PR1956 (Josie Elliston), PR1964 (Sagar Thakrar), and PR2029. Existing predecessor notices retain detailed attribution. Prepared under dataisfire with substantial OpenAI Codex assistance. Apache-2.0. + +## Open next questions + +A material gain needs a cheaper fully admitted supplier. This arithmetic refinement leaves that problem open. See TASK.json for the next experiment and the explicit stopping rule. + +## Validation limits + +The source-bound complete finite gate passes; RESULT.json binds the executed parent components. Required gen4-bank and frontier741 checks pass. The broader `make verify` stops at the **pre-existing** `split-skip-check` source pin for `scripts/audit_fused_block.py`. Both that source and its frozen pin are byte-identical to PR2044. No frozen pin was changed. VALIDATION.json records the expected/actual public source hashes and the interrupted extra unit-suite run. A whole-repository green regression or hosted-CI pass is not claimed. diff --git a/research/frontier2044-epsilon-refinement/RESULT.json b/research/frontier2044-epsilon-refinement/RESULT.json new file mode 100644 index 0000000000..8e6c2b8741 --- /dev/null +++ b/research/frontier2044-epsilon-refinement/RESULT.json @@ -0,0 +1,90 @@ +{ + "kappa_decimal": "0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999997998318604657175114126592712139874296", + "gain_rational": "839057285213101584632027063857851/5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "kappa_sha256": "19f073c443e9c9cb2bba4ab1c16a271523029a93f674315491b21b492290ba21", + "strict_checks": 62, + "rejecting_controls": { + "endpoint_equality": [ + "complex_endpoint", + "q_below_effective", + "q_below_internal", + "q_below_leaf", + "lambda_above_tau", + "lambda_above_internal", + "lambda_prime_above_lambda", + "lambda_prime_above_leaf", + "global_coordinate_router_above_kappa" + ], + "zero_layout_slack": [ + "positive_layout_slack" + ], + "old_per_axis_scan": [ + "old_per_axis_scan_above_kappa" + ], + "full_cell_gauge": [ + "unrecentered_group_gauge" + ], + "full_key_sort": [ + "unnecessary_full_key_sort_above_kappa" + ], + "old_g_factor_union_row": [ + "old_g_factor_union_row_above_kappa" + ], + "old_theta_chirp_guard": [ + "old_theta_chirp_guard" + ], + "old_linear_guard": [ + "old_linear_guard" + ], + "old_union_tag_2beta": [ + "old_union_tag_2beta" + ], + "matrix_below_strassen": [ + "strassen_integer_power_gap" + ], + "halo_too_short": [ + "halo_covers_generic_inverse_radius" + ], + "core_too_small": [ + "microbox_halo_volume", + "microbox_face_corrections_above_kappa" + ], + "group_equals_dimension": [ + "group_below_dimension", + "group_key_fits_record", + "membership_arithmetic_fits_record" + ], + "epsilon_equals_one": [ + "epsilon_below_one", + "global_gamma_power_slack", + "actual_logarithmic_gamma_guard", + "source_axis_superpolynomial", + "fused_gaussian_above_kappa" + ], + "epsilon_not_above_r0_slack": [ + "global_gamma_power_slack" + ], + "beta_below_gaussian_window": [ + "fused_gaussian_above_kappa" + ], + "beta_above_membership_window": [ + "membership_arithmetic_fits_record" + ] + }, + "epsilon_delta_ratio": "1025/1024", + "parent_head": "322949a53488d64023fedb89a6774927707e57ba", + "parent_manifest_sha256": "236cff02c0d2358174226f69d3b5702ec151af6b5841501dd4be69963b5cd8f9", + "scope": "Conditional outer arithmetic refinement only; unchanged supplier finite admission and complete parent outer evidence replays are required separately.", + "status": "PASS_SOURCE_BOUND_COMPLETE_FINITE_OUTER_REFINEMENT", + "parent_receipt_sha256": { + "RESULT.json": "91c1e8c0143f4736dcf0cf71e235f50dbfffd0f17d75f46adabe4707f5a17870", + "strict/ASSEMBLY.json": "866c0e79279ee5abca98116626d51981d22b23b2ededcd4627bd0fff32e10b3b", + "STAGES.json": "9eb1aa45a0a63e23ac4077a233b0285e463092ae14ec6ca7e5b19ccb0168bff1" + }, + "parent_outer_sha256": { + "LEDGER.json": "ee4df8e393429708d21da801b6ee5d97ceb2fec0ef1772eba63621651bf5fd5a", + "INDEPENDENT.json": "d315da034c6df31dc6c3407830088df897ebb289ce20c8d4c03e0658b6b3849e" + }, + "parent_outer_log_sha256": "fe08fa9a410c03dfe6ee4f66f74d9b0e1ce4a74cf075cd30be32890fe39beb58", + "replay_scope": "Unchanged parent supplier checker on Linux and unchanged CRLF-bound outer checker on Windows; Linux aggregate release byte comparison failed solely on CRLF/LF artifact endings. No assertions or certificates were changed." +} diff --git a/research/frontier2044-epsilon-refinement/SOURCES.json b/research/frontier2044-epsilon-refinement/SOURCES.json new file mode 100644 index 0000000000..91c32d58c0 --- /dev/null +++ b/research/frontier2044-epsilon-refinement/SOURCES.json @@ -0,0 +1,2316 @@ +{ + "schema_version": 1, + "base_commit": "322949a53488d64023fedb89a6774927707e57ba", + "files": [ + { + "path": "research/capped-fusion-t74-k554/MANIFEST.json", + "git_blob": "fdf5943d6f2eebc195e2856afe1e33831a82eeaa", + "sha256": "236cff02c0d2358174226f69d3b5702ec151af6b5841501dd4be69963b5cd8f9", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/ADMISSION-DERIVATION.patch", + "git_blob": "ab97eb8824cea8ff46bf17009aa63e8f5c5c8879", + "sha256": "7021000d75635fc5806af821640c02f9d7cbbbe1cf314dacfcc743fc6875fdd8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/audit_fast.py", + "git_blob": "252cf3c68a5868dc9ad381635749ffc253687c90", + "sha256": "26950da76589b13cd9c452fdee1b0c354806977f881299bd94073f00e4646fcd", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/audit_mixed.py", + "git_blob": "5a399454596787010c136e48e6bc904898dafc12", + "sha256": "7466461cc15cbb12135d94f2d904d4e90e78cbf4755d0293ab9bd55e3568d4b0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/CLAIM.json", + "git_blob": "8b9e1f777a9e71ea563c69316e229d25a505ac45", + "sha256": "2eabb7bfc86a5553fde2b2543b657e0d4e6b5a4b4f2bddc7947fcd7a3f57a288", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/assemble.py", + "git_blob": "fb76d9bac58aa25e55b38d5be8bf6911b0dfce5f", + "sha256": "faaf457b63c6b5226ff32f66e1c7ac210bd668a0e19f5eb43b3e7dcfef0917aa", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/assembly_controls.py", + "git_blob": "1928c311af2642b5a5fd12e6033a843d7a9cd226", + "sha256": "01276a0fea7e2d915346ccdc3a64eb63ddd315ccc0b08dfea257337d3a2be4a7", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/audit_allcold.py", + "git_blob": "0c94f0bec6045de03b16da0d2a45ff53c6b27dbe", + "sha256": "a9d36514e1354aeb42e1aea62100d5b0ddeeef2f6c8104091abd9d0c4e231355", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/bind_providers_portable.py", + "git_blob": "97e28da17ed75cd4add54394f6178dba8c9b257f", + "sha256": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/bit_supplier_controls.py", + "git_blob": "e86b8527b464277a926a788f2493e8f2e091fff1", + "sha256": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/emit_allcold.py", + "git_blob": "7627f7717f5785b0737c19ee70836180953c1970", + "sha256": "1a7e06662a1f4cfc2f7ad3bfa4a641f4ec6c429277008ae9879821160e3c3336", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/fine_cache.py", + "git_blob": "b121840b8e7eae45f0e728cdec55e1d4b39227a7", + "sha256": "89282a83ab102893a4fc1e663ad2137d891d81e843b1c9ea140d13e58b7c7dbd", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/fine_mercator.py", + "git_blob": "b305dd1482d5781b6c3bc7a8036373379b06378e", + "sha256": "868fff6d31767b215cdc51bf32b48df0a3ea9675750b7258839251a79e4505b5", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/fine_moment.py", + "git_blob": "d78ee65eb5ed0523d48363eb06867e35749e8dbf", + "sha256": "f881f6f1d8d3a8180c384a0bee3b5cccbec86f48992e11b46e2c9ef4c0c014c8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/freeze_spec.py", + "git_blob": "e4e72b5a078e599956e909c5a3e9002882807c49", + "sha256": "e9132a9d195c66123f2747a17f7ef404b4d1e3ef6263ab4c28c983a052cf10bd", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/generated_identity.py", + "git_blob": "74a9b604793f21a9f064c78874341e287ded7a68", + "sha256": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/invoice_allcold.py", + "git_blob": "fadb158181e804645b6ec96c40118d4f4c0b1897", + "sha256": "b347c6f1cbf7510e4b071dc84b2a27119b65644be7d8edbdd19c6f25a7f497d4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/lemmag_checks.py", + "git_blob": "1c1bdc4c6a1da3ba977d6405f73c3ac13eabf912", + "sha256": "b4efa597ee34ebef83b9f686eb49fc949be139c2e5e0177313f260c33d08153e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/lemmag_stage.py", + "git_blob": "819af393a65198175f2ccdf12ef29a936fda0ca6", + "sha256": "b1f60db278055eb1b5b710f36d9ccaabc9c9ddd868f0a92816bba182ae41880b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/oracle_check.py", + "git_blob": "db055a6fe6d43f9581ba9c4e089c38b9d28de82e", + "sha256": "4836046db4bec939515a5a272559f92192b56612b98f635910fd81ea754ce2e1", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/prepare_global.py", + "git_blob": "655c9470f666138918afbaff077ad2ec5663c6bd", + "sha256": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/restore_parent.py", + "git_blob": "21135f898a43e35b55e522c2d0b81a5e32033097", + "sha256": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/witness.py", + "git_blob": "eb254684bc83b71d95e3820c669e7feb2739579c", + "sha256": "08ca58abff11bdfba721dc56ab8acf06ec1b7c48a8699a0955cf35324680aca7", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/construction/leaver/PIVOT-SWAP-k8.json", + "git_blob": "7a8edeb1e404c441577427e72557e26b06c945f1", + "sha256": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/CONSTRUCTION.json", + "git_blob": "546b8e950707b744fe3252a6ef26d23debe911eb", + "sha256": "1cdadc74fef4cddeb2bae5e32fff7bc27456740150440ae8fda8822f569c2492", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/DISPATCH.json", + "git_blob": "20807cc27c82db1f8f9cd47c79713e066d6ad816", + "sha256": "6aad7f628f4c9b510a95c5b34357736303069ecf92a551659900b1ba540bc7e0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/ADMISSION-CONTROLS.json", + "git_blob": "f4869aed2f09efd7df71b5160d47b6e56cfa9865", + "sha256": "5cdefeff2516a67c4dd60e609019b3e2e38eb3d43142df2d3c7ed9a6822d5050", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/ASSEMBLY.json", + "git_blob": "6e9debfd552d18846fe55e4cbe6c59a37447b035", + "sha256": "5d9eb1ce551386024b5b6894836f81ed03a83d2e0c0bd0e02e3f6410a596bb2c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/BIT-CONTROLS.json", + "git_blob": "c3caaf80e19657218b776af3de81073b1aae8a69", + "sha256": "d74d9d2ba363c3709e9a3b33abf6d14abd6b9c68d950b35b7669d8e6edefa59e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/FULL-ADMISSION.json", + "git_blob": "6c138447c3bea8c322d78de0fa075af661f69192", + "sha256": "cda48de718d060b8ca329f1254f4f999a5a5bade5cecabb265f0a9bef1135089", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/GEOMETRY-CONTROLS.json", + "git_blob": "9f71586085849a83e5fc71c1dc9d3681b81e69e6", + "sha256": "13a50b2f2448931ca302a55e5839c082f651331f20402448fe6ff29d1eb2f481", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/INDEPENDENT.json", + "git_blob": "16bb558f2472df730076a8163454c6f70b9e9fe3", + "sha256": "78cd00f832ed3c0a4b0e0d202095f7beb6111eaeb4457849d5bb920e983098a0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/OUTER-DISCOVERY.json", + "git_blob": "882b30d5807a4f41e21791742504b75c8f8aa0e6", + "sha256": "413ef3e9eb1c3ff680cff1e600dc7160afda228e0b6b021c1a4e4a37ee486cc1", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/pr1377/CLAIM.json", + "git_blob": "d63216e85679016d15d0e07dc185c605a5070c8f", + "sha256": "cd089b08077e0151b9ed917a5c33aa7aa6b0de790bd9567442531b48729da8d3", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/pr1377/PROOF-NOTE.md", + "git_blob": "319bb2357592dc9c2d50bf7e2a6d47d74f43955a", + "sha256": "dafd8286b1c9224ed6f50bf71bc34b77918323b936ea7427a4b71c3b644b2264", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/pr1377/RELEASE.json", + "git_blob": "9afebef3ae5cc193ffe41707e98d03c692c4d9bf", + "sha256": "a4fa2ca0f79a11dcdc3227ad16a408d4d22d83b7401c894cb0e31eb2c9c5f7df", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/pr1377/RESULT.json", + "git_blob": "546b8e950707b744fe3252a6ef26d23debe911eb", + "sha256": "1cdadc74fef4cddeb2bae5e32fff7bc27456740150440ae8fda8822f569c2492", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/REGRESSION37-CONTROLS.json", + "git_blob": "5d7c9b908a9f138f5cb8870731938103ef43c0f0", + "sha256": "0196ae228d583f2bac3c42d3576a8d378fe622592e377c4c1921b5ae81351854", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/freeze_spec.py", + "git_blob": "e73c2a95c16f20c46bbb96d5e7f50c2b23040673", + "sha256": "0f5c8ad43180a633a2cbbd11f7832729039402c68f593679552c43a1693d69fa", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/geometry_controls.py", + "git_blob": "feb5fda97f207e0a237cf47e16c1b5327e766ae7", + "sha256": "7edb4732b34e5814b27650a55c938626cb50d68f06397744dd4fe451437e90e0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/GLOBAL-TEMPLATE.json.gz", + "git_blob": "5327fc2f4e8ea82ed356c94ff040d23fc73c731f", + "sha256": "1d31424c4e27e26a35a9932ca778e43f1f3577589275422cc642aa68b31112db", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/independent_core.py", + "git_blob": "31a2a644a8c435ea324bd057a9a2d4c813a76cce", + "sha256": "50e693b2ff8c10f8eb3bfced585ad1b2a807668d2e81ddaa1140cdf6e81d8cbe", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/inputs/DISPATCH.json", + "git_blob": "613e01490d24a39e551ba75915320617003c1c81", + "sha256": "b7b971df9dce435556145df307e2bb5138d87e5aa933f1fe61fcc5b5163301c4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/inputs/GLOBAL-TEMPLATE.json.gz", + "git_blob": "114808c32b1799da53524bdc25cea67efb60009e", + "sha256": "21297b20f1f2dc76eb9dd8124416068c3cb096bab9df17fa4da19bc68dfe082e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/inputs/OWNERS.json.gz", + "git_blob": "34fa5d69aaa2574af60f1e8f7d43640b03698bca", + "sha256": "3a56f578b2db5647cf6cb811bc6263c7a802ae3e31e9e672596d43185e4e5c9f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/inputs/PLAN.json", + "git_blob": "5af9dd20821ae5b79778d85cd7183873c5999732", + "sha256": "163431bf8d3bc0d9b894994b1a3cfa7947367b2243b3c0b3a97d740195a1cb08", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/inputs/PR589-EXPECTED.json", + "git_blob": "e293ddc557742637f9f679f083a1a282d87b1b13", + "sha256": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/inputs/SPEC.json", + "git_blob": "c15990ace61b32f7233c82580d720e3097a900c3", + "sha256": "2daedf579c8abf30ceed79fe739bdd7659fce4c514de3894a028933143265d98", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/lift_parent.py", + "git_blob": "ca6d69cdcdaa60238bd773af0ade71701d16d5dc", + "sha256": "25f9fdc407e2644f8b6d36ea59f1f88b8507ff08d983b7d2b7e08f5d7c936b65", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/CHAIN.json", + "git_blob": "4e45236b9bd363556704fd2f8d6d7bbef0ed91a1", + "sha256": "f18804a71bef7005e892b0b7baac818d5362fff685fe5b5aadfe8de6e442446d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/EDITS-1.json", + "git_blob": "866a0ebba23f47e79466a32ae538c660454fb1a3", + "sha256": "dffa640c04d71111d3e4bdd7f5a991450ba07049a1d434edeef84791c0cc2d05", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/EDITS.json", + "git_blob": "c3e81dceb347014bbf199c68acdbb5c99a4467ff", + "sha256": "d5f9a0444dddcccd35c0217f60dbd6863486241629a747c3bbe4140b3d55eea1", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/extra-word-566.json.gz", + "git_blob": "e86142b352466f54a3da38c96a6e1484145c3b5c", + "sha256": "cd417b904408c221d9840d08faff8af040cc4207f9804284f2f5375d21298a62", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/gauge44-word-566.json.gz", + "git_blob": "76c01583a0286cddb0f71e0cb13077e4317104f6", + "sha256": "eeb6a236ed0ea8873b8800947d0cd19c36a6fcfdf857fc42913cb45cd984f219", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/pivotcheck.py", + "git_blob": "d7773966f707b9624facddd3908873a7fcdca61e", + "sha256": "6eb1752f077df108c908974413fc71abc751356b07c6e650e75d2075f1a51391", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/PLAN.json", + "git_blob": "b16926e163960af34b777382f08585252e1f91a6", + "sha256": "7d998108ccf8021e7c920a70fc81dc18a262d275c85fd20c77498a32fc6ef41d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/PROFILE.json", + "git_blob": "d1b52a824a9d2d51a9c589b8532157f96d07ade1", + "sha256": "f4a69c864a0fb706d730aeae15ec87310b42804615337e3c17073565a4ce6afb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/rebind.py", + "git_blob": "8930398ca5c9ada7b9bf5fe9efe4a8154ba84c02", + "sha256": "f71e872107a07246233dc3755ab98b5184301b9439b63d28346b551529446db3", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/rebuild.py", + "git_blob": "e266314dd41ef819cffe964783ec93038a234f7e", + "sha256": "7391a7228d6b5afc2f88afd5d5a987565d78a100386c1f03b8696bcde2e8ef3e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/rebuild_chain.py", + "git_blob": "df79c063ee7d7256603f5ca5daa18dd0ac68d8a2", + "sha256": "3a5739f94f0fea1aa267e7d12e1c986210e483c841a8855e11020128a017510f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/SPEC.json", + "git_blob": "27074d48334dd31d453543534a19cacb75effad9", + "sha256": "822f7093effb40cb0ae4b9f228d8f6d38e1aff2808e49557c29890c37df86115", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/steps/0/extra.json.gz", + "git_blob": "ac08516e3b7aee54f05c88d90964a015fb177cd7", + "sha256": "17cc6c177c89eb264514e1efb3685ab9a621f3952a8f393a6a5eb28cf77e2884", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/steps/0/gauge44.json.gz", + "git_blob": "ecf75c274c41efdf4894e2748bc4d071a16c87a9", + "sha256": "0740b6f33927b9e60c9a7f35e7fcb2fd9ac6e2d3982112428b302a6966a18c73", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/NOTICE", + "git_blob": "b912ab3bf304ca0afae68a4064d262e9b0d1ccb4", + "sha256": "3918a42010a435782de0fe8c38fab8f7df5d48a375ecf603c2bad1b818a16d6f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/ORDER.json", + "git_blob": "7409c4df1092241729739596c7648bda504e6aad", + "sha256": "519d1d5dbb997a219fcfcad34c0b03e7838bef24199784d7e964fa10090f66e1", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/B.json", + "git_blob": "a0a869b7ca55cc844e496a6c3f7089ce0a7a9b8f", + "sha256": "0d36a77c8ca8c90ee5de6d6e1c59c5fb2489749cdc911043dd8e71c2d75e7100", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/check_fine_padding.py", + "git_blob": "f182f822fdeca9372d80fce6b56cf05814f03bb1", + "sha256": "a0ae691251cc50ba20b7f23f89fffaed802d62f9192a441131476914a5bdfae8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/check_gaugefree.py", + "git_blob": "3fbb4a1b2acc3d5120d93d2ffd7cd5007d4f7f0e", + "sha256": "5274b2838f322dc56a88570e4f9262fcd3857cd387160ad138e083ccdfbe9761", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/check_ledger.py", + "git_blob": "0af376502a7db590db5cbf811585a610c65770b5", + "sha256": "8c035dd098f61feed6985d91995970caa59eefe104ddf80b336db980703ff4f2", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/CLASSICAL-BOUNDARY.md", + "git_blob": "807113cce1c6672473643c3c9744f07e690fa81a", + "sha256": "582bad82bb63d54dfa6d76fd79ed01c993f78262b02813bf647d82aa6f6c0b3b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/FINE-PADDING-COMPOSITION.md", + "git_blob": "374dc1c07546c4552b27a62872e08bc407fe9f1a", + "sha256": "be0f697aa61e2cf481ea1eb22d6a02d173fb6345699a2731e4e2e6921e8ad54b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/GAUGEFREE-INTERIORS.md", + "git_blob": "0f9e75ee7bebf76c2ce7686a5318f17539a2b8cf", + "sha256": "a7fc34302a70f8453f877a6433ffe2776457bf37b5d8bb262afcb6b198a935fc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/INDEPENDENT.json", + "git_blob": "6be0fc7e0ce47bb1ee517fe0eb7c45974e7d67c2", + "sha256": "d315da034c6df31dc6c3407830088df897ebb289ce20c8d4c03e0658b6b3849e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/independent_check.py", + "git_blob": "c344035fbfc190b97b2bc91cfe672481ab2f4615", + "sha256": "dd09a170f6f8e2283e5824807bf1922283d70bc8159e0f3a2430b472c77751ee", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/LEDGER.json", + "git_blob": "c8ebf991f648aa270453363c53d901630eacfa61", + "sha256": "ee4df8e393429708d21da801b6ee5d97ceb2fec0ef1772eba63621651bf5fd5a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/OUTER-CLAIM.json", + "git_blob": "62e6a240c9c1c8481194705eab93fea0ba8713d0", + "sha256": "0de7f52280989883d5b8f84a71ace0c7e1284246db6eaf3fc81a758c69f8f77c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/RECT-BOUNDARY.md", + "git_blob": "c49777f8be54bf0dbcf551034701dc16c502798e", + "sha256": "17ece1cc1eb4a02df4d8433e3612231768633e6674d315acbcf880f36e30bdc7", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/replay_evidence.py", + "git_blob": "da3a159d0965bbc71fb2bc3286412a576595f6ec", + "sha256": "d3bdcfc8ce29865b3a76d64d99b5177e73fe994a2eb915f35fa233c5ab81df65", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/RETUNED-SLACKS.md", + "git_blob": "e38c1cd46c4297de9d7f3ec280888f7e67e36690", + "sha256": "1ba4fd6cb851ab397a42d80841d6b8e4399c3ef2836efa161aac4b4eee0a2307", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/run_outer.py", + "git_blob": "8a9434e5b5d877c0b26976b379180cf5d9508d7e", + "sha256": "cb46c44c70d05597bda3375517ed4f5a3f93294d30aff356c5ad5fe6d03b5aeb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/sched_review.py", + "git_blob": "e0931c2a2158c37ef6ab6e887ae5af72de4fbb91", + "sha256": "f440a57f1f46119ee8c2934c8f0d618ca1c85c73cda8cfb8453c2aa1b9fc40fb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/sched_test.py", + "git_blob": "deead8f7a9e1a195aa2c066e4126e9839c670634", + "sha256": "f96d09b5990931e3df8cea291520bf17c424215748cd9ec068214c58309a21c8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/struct_check.py", + "git_blob": "a541e93ae70acfa62998cfb833ef35d0a5900a41", + "sha256": "f13c6a166394549a25b6e727c4a43c0a34ae270c9498a9697683d63e0e5f9971", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/STRUCTURED-BOUNDARY.md", + "git_blob": "eb295d39b4f2c4cc75c23c3c470c60930c8bb1c9", + "sha256": "6e9261b85f288d0fee1177a7fbc53958e42cb9138c038d6f6fcf662724aa8095", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/UNION-SCHEDULE.md", + "git_blob": "78f9955ca811bbf6ad1ec207a24cfa118b3bbcf7", + "sha256": "e18323a6487fa455dfd9b31ba9f4af65606b7854677856378cd87c41d67cc25e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/OWNERS.json.gz", + "git_blob": "a4c2021c16036e04959d7af6f04ddde08227b170", + "sha256": "cdfdcdec09592b4fd296ec49efe38573c1a61ecb8385b538ce801ee29355695b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/PARENT-LIFT-RECEIPT.json", + "git_blob": "39d2e3beff33afa3db54001b4f85ee0c37cd87fb", + "sha256": "94cc5cb9401f5f84eccd2fcc7c6860e2f6084b4c60be6a2ab3ffc791b329149d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/PLAN.json", + "git_blob": "616ee566d005f9751af7d6001d6960b4e9efe0c8", + "sha256": "e9ca855b0ccba243868aa7bd24b42f9e59f2f554bfe10521143591073e72ea18", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/PRICE.json", + "git_blob": "c41b950145014912b2b2d176cb4972408c95e23e", + "sha256": "c5ec535fd9edbdec7b64edd5a8b862edb1a7f173d411dacb279172659573e16a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/PROFILE.json", + "git_blob": "6a814d39b77e9362f938845f52e0f9914f7b5bc8", + "sha256": "932453b2b045f73c81aa2b6f169a05ae2426c573965bbf4f5d3998b63b78a38f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/README.md", + "git_blob": "f40aef2d142a76f7b0bba5bcb16f6e845925a39b", + "sha256": "363e2ed9c252471ba6542a32958742faee5ca3d538a344d2af67e854ead9c31e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/reconstruct.py", + "git_blob": "ff8b0e721461c670a625f010e0c2a9a66f4bbb2b", + "sha256": "d1b1d841c9d76fafd747642559660c65666e93643caa1b4eb758fcdf69fd083f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/RELEASE.json", + "git_blob": "ce8f7c0becdb88c2bf1b5c17ea2d14f0f3b5ee79", + "sha256": "a28792fff3624b568ed3fe71fee9d0e8d3d03de05f7f870d933cd6097d1f3727", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/replay.py", + "git_blob": "1805c184033e2682201005ab1397a2ddcd83d3bf", + "sha256": "3ec4330ede0db3c6daa453b0366817be9435c85c8c3213a0c35c442c96c1a955", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/SOURCE-PIN-REFINEMENT.json", + "git_blob": "23d7a6f99714cb6312eecd1266d8d3d7979e9bdb", + "sha256": "8c0bad79978decd6f8aba0932c0a94c7f61c64bf9ce5a19a36f67cc1390bf74f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/SOURCE-PIN.json", + "git_blob": "e7415786b7467449e23e72b04863b3b065cc9e7c", + "sha256": "66faac1fd4e79bb6d9fc774fd8ba63522ad3309456be1c81405794b284c55c83", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/SPEC.json", + "git_blob": "5158049eeff8240d59528441d3f1fcfd8f420783", + "sha256": "da49a85190eac2b553fe982ed295b15fcde6d2dd449d976b503de25c277f2029", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/build_parent.py", + "git_blob": "bd9e28bd2dc091dcec90a09fa3e556c71579e528", + "sha256": "82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/audit_mixed.py", + "git_blob": "5a399454596787010c136e48e6bc904898dafc12", + "sha256": "7466461cc15cbb12135d94f2d904d4e90e78cbf4755d0293ab9bd55e3568d4b0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/build_word.py", + "git_blob": "537d4cee50c893c55a0fe515dedda6909b3d1603", + "sha256": "ff08af2851b4813c113ef63113566cbd79625e9310611292913d51be554b5aa9", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/CLAIM.json", + "git_blob": "0df6dccbccc2c1e5ae84b53bf1125f2fec50399b", + "sha256": "bc9e90a475333b957a8c4eae8b950988caea89e20e9b44a919e83415fb76b1b8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/COMPOSITION.json", + "git_blob": "f2fd30991f4f19cd6412db944163cc99db453079", + "sha256": "6fb74e73fd298b356402eb2fbcd625463b2fa540a6be4ef2d6335ddfa31d70f6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/construct.py", + "git_blob": "7da1ab25df4b4dd2edec478339fd96c5540cc53d", + "sha256": "71aff454291d4a35068c43dbb65c00ff511f48e91ab7cdada462833f04ac73e3", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/CONSTRUCTION.json", + "git_blob": "928b2627d3adaf1b8ccb96aa040c2bd06d625679", + "sha256": "fb5f74f59c89b93c63ec47e32e2c9264658e115d1f21eed3eceefec7dc7a0cde", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/CONTROL-SITES-base.json", + "git_blob": "f3bdcd871e0c788f9180f264a2396a5b3c83c9d3", + "sha256": "b41361f5a2f6ab3d223c146269c8027a0537f1a6e3c963f28cf1ebbe05c5d7e2", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/CONTROL-SITES-extra.json", + "git_blob": "0d988e0bf83dc7db281160d9ae29982cf0cc4cf9", + "sha256": "f1aada769389ec410b41bc9e2082826bb916b8332c915ee9e07045135c30393b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/controls.py", + "git_blob": "78a47a5ba0f7e84042c90da95a3ecba997794155", + "sha256": "935cf39ed6601eb6ac411b7b1a4adf5d4238589cad9fd5969d7dca967ace4c4b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/DEPENDENCIES.json", + "git_blob": "c11bae8621267c047ad80b0fb788dc26ab7c3c23", + "sha256": "9c9fff3ac059da4d4e2f13e655afb9e42ada1a57987f5b47b68dda4b64797966", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/DISPATCH.json", + "git_blob": "613e01490d24a39e551ba75915320617003c1c81", + "sha256": "b7b971df9dce435556145df307e2bb5138d87e5aa933f1fe61fcc5b5163301c4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/EXACT-RELATIONS.json", + "git_blob": "234495b4837bcd10fa5d42b9dc7873653cdbbd66", + "sha256": "6864f378d917d0ecfd8cd53cc26303217ebb48f47f2987bbc01cf1e2c9a28093", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/extra-word.json.gz", + "git_blob": "4d464f55a2955e5c832b5ce789d5d0e0a39fb4e1", + "sha256": "7b0e9fbda32749aabc7e156d9fe09bceb0624a178628fe69e5dfea783462f905", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/freeze_spec.py", + "git_blob": "e73c2a95c16f20c46bbb96d5e7f50c2b23040673", + "sha256": "0f5c8ad43180a633a2cbbd11f7832729039402c68f593679552c43a1693d69fa", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/gauge44-word.json.gz", + "git_blob": "eacf8c773cb50637f93a762342b3b5f0853fe29a", + "sha256": "e8e6e78ff7422275c38324499e1f33fb2ecd30de9503aef2b8f1ee80d8c4df8e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/GLOBAL-TEMPLATE.json.gz", + "git_blob": "114808c32b1799da53524bdc25cea67efb60009e", + "sha256": "21297b20f1f2dc76eb9dd8124416068c3cb096bab9df17fa4da19bc68dfe082e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/INDEPENDENT-DERIVATION.patch", + "git_blob": "bf62d3165be847b78448510def5cde8402744bd9", + "sha256": "6b3af098ec1c9e2360a366933eb7fbf0e16ebb37d43809d26b275e66fb5ee779", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/independent_core.py", + "git_blob": "956b52eb1a26ca70287026c4cba514ccb26771f5", + "sha256": "d1dcd5593a05cf647b485db38891984f829abea5f95c6cc91e37d554bf163d48", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/inputs/base.json.gz", + "git_blob": "ed6248e6b7a1dfad3e40b5b82eaab38ccced0f7e", + "sha256": "b87c706d14a7e1972514ee901002a930908073811ef38761def31c8e36351916", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/inputs/extra.json.gz", + "git_blob": "fd2456fb302744c65cf691dde47b95114054de2a", + "sha256": "ded6903e00deb9e158fa700b03ccc9b8bfaae6c8bad8ca4842f0ad9b963234ab", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/KERNEL-CONTROLS-base.json", + "git_blob": "0a11647ba02f958fdc452a3cf87240de68f06d10", + "sha256": "cbe755333f469a1f01258b65f2b273763212dba6642edabfb58f7490f326abda", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/KERNEL-CONTROLS-extra.json", + "git_blob": "66b6ba14c07dac6c88075a90b2247da2a4928f7d", + "sha256": "cf255deb866ecaefca4b6ecb72f105d6b08dc8ea907a8381d45aedc39b2022cf", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/kernel543_controls.py", + "git_blob": "43c88b86c714847bd05c1539ad862e2be0b8b952", + "sha256": "ac16d605e773197e3664643d40b36c15a7130a45e95e36bfe7b42d939644367c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/kernel_controls.py", + "git_blob": "a5ab27352db41f7cdd5f65bbc7a0a8171e3325e9", + "sha256": "436e3f3d9974da7c1968ef99fdde5ad203a61544d8195493e3150eb25869f4dc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/MANIFEST.json", + "git_blob": "476a0e78c460231283d1f3ed51f91d9130ae784d", + "sha256": "e0eefc96567fbb45e19e6de0ca295381dbe0e686c08ddc783639b065c7c791d4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/MAPPED-RECIPE.json", + "git_blob": "9703b60a7eb8c60c8ad7efa1b353307a1b31425c", + "sha256": "09aca649da97a37116262827cbd3ebe0addcd2b1a33c08e8347f3daf3394176a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/NATIVE-VALIDATION.json", + "git_blob": "f13557735ae4654f4f0e387d2840ca552f5e693c", + "sha256": "755b7087e0ae964c538e9378311e07dba2867c16b568d1bf6ae9051657f9f5cb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/NOTICE", + "git_blob": "81584fc0ffa4f815fc8d76423d3f787d252afc27", + "sha256": "b352129a07fc8693f57c77cbb0ea92230b2fa77439f86c9f35b828213f9c42db", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/original-main/research/complex-t21-owners/vendor/pr870/t16/build_parent.py", + "git_blob": "bd9e28bd2dc091dcec90a09fa3e556c71579e528", + "sha256": "82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/OWNERS.json.gz", + "git_blob": "34fa5d69aaa2574af60f1e8f7d43640b03698bca", + "sha256": "3a56f578b2db5647cf6cb811bc6263c7a802ae3e31e9e672596d43185e4e5c9f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/PLAN.json", + "git_blob": "5af9dd20821ae5b79778d85cd7183873c5999732", + "sha256": "163431bf8d3bc0d9b894994b1a3cfa7947367b2243b3c0b3a97d740195a1cb08", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/premise/inputs/CODED-CELLS-k8.json", + "git_blob": "cd23561e0be5bd060e6e0b94643e550374ecd7d8", + "sha256": "7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/premise/inputs/TRI-LEAVER-k8.json", + "git_blob": "e3bb24cc49812a90a82e8e77ee8588f3d00d81e4", + "sha256": "b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/premise/premise_check.py", + "git_blob": "98efec187df79832e4db56d8250ccb711b4062f1", + "sha256": "28a7f881a988b29b8ed3c927dd142ac3d4ee273dedab3a65bb02c01a64eb2639", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/premise/verify_1049.py", + "git_blob": "3e34e2c5a69ac01025ecd0eb2da17af488711dee", + "sha256": "a1736324c6db161733d8e11f608defd87b7f97cacd611203d22499e4c7de5545", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/PRICE.json", + "git_blob": "7bd7b9eb8ef38a6abc36d6b7d08aed0977ddcdfd", + "sha256": "e19f9f9e70e4fda2bc4a39fae93ea44555945cdaea59728864c5a44dcc5522e6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/PROFILE.json", + "git_blob": "cb96b9560ef7f08512601da484ca3b4550d5c602", + "sha256": "d9bbe0d73ba005749615915a2d884819a6b141e3402d9e7f87f4592a2d27af99", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/README.md", + "git_blob": "b1f8465c4b708bba177d3feb95517173ed713cb2", + "sha256": "102ac7f080c1799aaedd5345ffb3631845215e8ab770e2af34750c25f667686d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/RECIPE-base.json.gz", + "git_blob": "1b508ff5f703caea762fb17db0a1c709c7543cb5", + "sha256": "0f2db2c658e9732fdd1aeb7bbbb5c786d6045de8a2575b7654b9e6fddc71b03d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/RECIPE-extra.json.gz", + "git_blob": "1bc45eca06305a9410341ac050688fc0438b4ae2", + "sha256": "9e6f58570b0a8f9e8271bfbc73a339fce42f1cf28bf14d4db93f246b8f63a3c9", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/replay.py", + "git_blob": "0343c8c1abb24738b9e868264e955afc91529a52", + "sha256": "d3ea7c2e74ff6df9d14969f994eaa85f825372cee92dafb77bec4767edb242e7", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/SEARCH-RESULT.json", + "git_blob": "be31bf7e5b704562f245ed39d0a34aa9ef3475e5", + "sha256": "7cdacadcbbf83b81f9f91668fcc707f8a238c6025f35a8bdc36758619c2591c4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/search_relations.py", + "git_blob": "5959c3e39e40bf886ae93ff28a2396bffe61eb1c", + "sha256": "58f3bd092cb8592a070d7879918ff318a658a6fa02bfad7b5b8f4cb0fe16691c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/SOURCE-PIN.json", + "git_blob": "5662a1abd41e4ab0edc857fbf3de6947dfb2a346", + "sha256": "e93f303f4de383757e50d612ada5e379533d46737a32281aa6879fb4b6138e09", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/SPEC.json", + "git_blob": "c15990ace61b32f7233c82580d720e3097a900c3", + "sha256": "2daedf579c8abf30ceed79fe739bdd7659fce4c514de3894a028933143265d98", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/upstream-layout.tar.gz", + "git_blob": "d627d3786282a334243abe0cf3d7c07468be2beb", + "sha256": "a0cc229bb0fc9ab8ee5c14d5de87b3de31d1fcb793e99192c9cdc63781e794a0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/UPSTREAM-NOTICE.md", + "git_blob": "1e3b40de3258a81f0eee09ce0948bcb03dfb594b", + "sha256": "b97fb4731e84aef736c58a9c126334eb5b8d3a057a8d9d45b4ffff24af65c38b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/VALIDATION.json", + "git_blob": "66b55be3b94d302bf6957f72faef97b60a2ec7c6", + "sha256": "1008f637a22f954ee774920a8362931ca7cfed63ca146e725768c0f39803c0a5", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/audit.py", + "git_blob": "a350fcec6564d8c37a3d7b9aaf3dbf1279fd0270", + "sha256": "1118d483b6abbe7036390c0a1053bcfec2038dbac273fd1bac92a68f38e6d7da", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/build_word.py", + "git_blob": "b98987baf94a48a44eb2b1dde9e72465138b92be", + "sha256": "effb72aecfff9958fe078ee89e0d37b85d601eddb19fec4520d7ee6e936edfae", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/CLAIM.json", + "git_blob": "b67172862cdeb3d0529b5d756d71cc0613e60e5a", + "sha256": "b9db2fbfb004b505ad535e4763915275dc5908feaefef32e65863fa65de061ff", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/common.py", + "git_blob": "4af6dc3374d43e1c9cb6cace055864a817bd993b", + "sha256": "274274df31f8ef2a47b801d1f30ec226f94bce674fe15586d814ca754f6b7785", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/construct.py", + "git_blob": "00429f1e626051437736fc25121f2735d7b70c16", + "sha256": "3dd333b50f4bd1d86956a6df4a334ed746d75d0a9e03dfadbb6724b4356e0cd6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/controller.py", + "git_blob": "50387d2973c6fe679645d56e1402b8d3a46f0b61", + "sha256": "d93ed519a0f2316b87b66f44c5ea615f0768a263dbd800815b536d8b7c86b8b7", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/controls.py", + "git_blob": "a5cbce2d301ec5a321bb17859ca26c5e0cc07a84", + "sha256": "574c55a01cfc34f5b9688cdec5646160cf22b403decee36d18b11f1b07e71f21", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FLOW.json.gz", + "git_blob": "71246bb8e46d93210bef43cf92fec6069bb96d0d", + "sha256": "e8e6dfa66e083ff8f3617a8441b5b2d766c3c9d9ac62ddc37d99edc24051f79e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FOUR-RECIPE.json", + "git_blob": "1fdb9bb71c6bbef72f3a3048225f71025a40f48e", + "sha256": "384b32c5b0e9b3baa1c7232db884809596d30fc55553094245f7b739b1a43484", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FOUR-WORD.json.gz", + "git_blob": "46f164ba3927d857ebf405f86211771665233aa9", + "sha256": "7d09ee1b8b9881313e5fb1f623c0961d59b0c6352a019bc9164a6cad8c58e27f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/MIX.json", + "git_blob": "52e8bdd7754692aebdbdf3d8654dafdcf8300f9a", + "sha256": "dd86bbb792a5c9f0d7507d55bd2f8392c66716023934b03b24f48ca737204eea", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/ORDER.json", + "git_blob": "b32f07b09b2ebdad98a4a3f7ddb84186797a1bd1", + "sha256": "7757df3b54ca5e84c6dba9563b10bc6215c5e289313392b5a4b493179a245c29", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/OWNERS.json.gz", + "git_blob": "34fa5d69aaa2574af60f1e8f7d43640b03698bca", + "sha256": "3a56f578b2db5647cf6cb811bc6263c7a802ae3e31e9e672596d43185e4e5c9f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/PLAN.json.gz", + "git_blob": "09adb5668953e741ac31cba5555c2819f4633824", + "sha256": "1f1085beb84b516b9a96ceaedc6c3de1c58941fd00b6e70f0d0c686b6546ff79", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/SPEC.json", + "git_blob": "3298bd468380658a61dddca27a28f6b0001023ca", + "sha256": "82b263990afdc5efdc1dfe38ae16d7815004dff8d70f85c28fd8286c31f688bb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/DEPENDENCY-PINS.json", + "git_blob": "515f2998da6ff12dbaaab87bc148a389f3bc2239", + "sha256": "c9330aa6a4226c804060499429cb450820d7142ab17696eb47408b04b410b5bc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/ANCESTRY.json", + "git_blob": "19c1fe32ba7dd638e787cbd00ab5b2f6feb03f1d", + "sha256": "cd880b2d1c2fb8d9050458bd13f228385c417a95e4d1985607d9f4bb60b5c109", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/ENTRANCE-CONTROLS.json", + "git_blob": "3a6faf62a0002896ac6604a0a6e7235752b56ad6", + "sha256": "7b101dd97c1025667fb3615930a9d6cd2ec443169d263a3bc1191b80fc712a1f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/FLOW-CONTROLS.json", + "git_blob": "b6fe46c47cf8b788a6e52c2793971bed378019f9", + "sha256": "43fe7e94bd72607d502ed947ac1463405be18728eb0b8faabd7ba63ab1d28ab4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/INDEPENDENT-OWNERS.json", + "git_blob": "44c14d7c4ad33877b0938bb2fabecf438ca7d7b7", + "sha256": "4c295ff53f51631e1720b0dc2ea895c34861435fa92112ee52439e4569de968a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/PARENT-CHECK.json", + "git_blob": "e6f7d662729c65760b25e86ee737262d5853f5a2", + "sha256": "2b729fd666ffe4e34a355223b57f74ba460fb171b19c84f260378dd109f0b9a0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/PRICE.json", + "git_blob": "f13194611b8edc4ef66ff163088c24ae6899c9e3", + "sha256": "a1dac219b019f8d40d5b434b0e0c25b0d1f097fe5ae13eae45c76869aec4758b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RAW-demote3.json", + "git_blob": "e69db49e872b632f24cd8986c3169bf0bdf7e4e7", + "sha256": "02150d4cb1b2f4763b5c5c20ce979c740cbdfc1066e021a8aa5d407de5c4b9d3", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RAW-demote4.json", + "git_blob": "93a7961813348e5b8327c2a0a1234181a26db721", + "sha256": "7adf0070125b2c61e04d46c5f1cbf57af079eb733799bbfcc3fe9b0551d964b1", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/REPLAY-SOURCE.json", + "git_blob": "4890f180c7dd30a1527bb3cc39863c177f553a52", + "sha256": "a5a290aa8c75fffa45c9ad2e3441d5051d3adaf7934f4d0311875fb4d8f023cf", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RESULT.json", + "git_blob": "66b084900c803ecb2bc256ecbd1e942fe38e10b8", + "sha256": "62aca8286cbb021d2535d81494f7ba7a3aec20898fd7c40a895a461bbd303ac4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/STAGES.json", + "git_blob": "7a61aea81b3f87ac3ebd5a8ce9568195fe911fa2", + "sha256": "0dce559b2a8f371f369a05ae25ca5dd6a48019b5685b0097f001a23bd849429d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/WORD-RECIPE.json", + "git_blob": "2d7a2cfe11f660c0199934fa5f222d8293da7ee2", + "sha256": "b6750c8123c205b63786fb825da26a819592f71736a82009809ae1cf96173a5c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/local_controls.py", + "git_blob": "e0e5d0e8e4a0581e9bc4ea6cecc8db5b756212f4", + "sha256": "fe3d13491fa7523eedb8d24577ffe4bbd6c36a87b4a7d1178e5795d223bed4b8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/MANIFEST.json", + "git_blob": "20082f0ea3a332c93d0db5cf2eee02021cfd3312", + "sha256": "4837d070679d9e70218c7cfa2d3e70d7d742a5b74dc66d224840b1a3a4ac4a31", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/native.py", + "git_blob": "fb9f676e5d2aa62d1a14a0d1358aab6ca0d5cd59", + "sha256": "1fb596fbafdb19140f483cd34db2994c571e3b962e33b8ea9b3ddc486e37def6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/NOTICE.md", + "git_blob": "8ead68d65817600fb252a6c1e694ee5fcd337e4c", + "sha256": "c7a17a0a35dc249f8ebcc550b3791e214aa65872eab8a6458c5167dd7b948e5b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/package.py", + "git_blob": "9e911fe8116f1ec3ba16c7a0823ab928bd281f47", + "sha256": "cde0b2d66125649ee84440fc0a67f0d91f900fc838fbda069b579422289ea3be", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/prepare.py", + "git_blob": "596920d5ba5fd316d1a68f2bc3e428c319f2d62c", + "sha256": "9fe454a5f857ff73c70a5b276bc9e289422b051a4cbbbb51123a91bb2200e6d8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/price.py", + "git_blob": "0903bea57b9f7efa9e3970910f02a890b2187ea2", + "sha256": "d45042f4c1fea352349377b43def363cf75a742546a1d5c790ad30da91791803", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/PROOF.md", + "git_blob": "e23ea42ce308bafaf5e6a5fbb5a79067a412e766", + "sha256": "b2a38120ddb75e90764d0b81913d60b46cddac4d943cb731bd9c7134f1c236d1", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/README.md", + "git_blob": "03b83367a9ded618f2015b70dfab87c5005c2ec8", + "sha256": "cdcf62624912150ce4e6e05356c27299251eef4cfc130e4f209839cdabc05e08", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/SOURCE-PINS.json", + "git_blob": "dcfb60ec383e3d4a1fbbc6268afd4c32d9d1d683", + "sha256": "08eed0d6822a1c17053161929591e7ac36b9f91f8fd61190183a6d975948db85", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/JOINT-WORD.json.gz", + "git_blob": "3dab3a16bb32b27c6d957586cca04d70d091db47", + "sha256": "a0622d86259c4163e58cf0677ce575b6039a8ae4c95aa6d8b82a8163cbd42718", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-coordinated-owners-NOTICE.md", + "git_blob": "281e6404ca84bb24370e8807315d59d42e79d232", + "sha256": "442756fc1c5ecfd7b7b7694b53b1ecc70aa525004cd80f7d748ccd7270555189", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-eight-ends-NOTICE.md", + "git_blob": "a756f9da585be2ae9054038812cfcafa31e625a4", + "sha256": "820fa13161f857c221f2c4099dd2985c7ff72249dc7a0221bc00fd0c1b9760e5", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-eight-ends-t16-NOTICE.md", + "git_blob": "d0359f2e08e6a0f2a1b6df0b058231996949c3a7", + "sha256": "a9e85b59dde61fbff0b006923b441cbd1419e24fa9802426785bca667437fdc0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-three-demotions-NOTICE.md", + "git_blob": "9f759cfade4eb3645b1db7374d4ddfa3f2bc3b30", + "sha256": "a0fe85fb2207f0e6831a96deaeefb65afa379c1377a29f0b586f1db4bb4b2137", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/NOTICE.md", + "git_blob": "af0170afc225c1a6a5e7ad4ba62cf7897af6ca24", + "sha256": "afbd38d6c8a232ea566c296424a86420f204e6cfaac565c0a147340bda3d3da6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/PLAN.json.gz", + "git_blob": "c7d39df72ea24e732800923ce699ca977f16d0b9", + "sha256": "e963ed64b9970858902b9388bcf1c5f9cc704859ad021ce8bda465a4dcef8310", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/SPEC.json", + "git_blob": "9aeea5c043aafa9ce0cd5f05fe6b404de5d5454f", + "sha256": "55bdb68d5d126c6be0e0acc419bd62301a978afd514f9834ed1e08b1aa4f563e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/verify.py", + "git_blob": "4802312b5298dab29b748ab81a6e5ec5b7aa3b5b", + "sha256": "e5c952989344a65b7e63fa112dda4d464979814205644a8ec34e407a0d96be29", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/verify.py", + "git_blob": "178a101173f582f3e5d6266895007ec285000546", + "sha256": "358ad8dfd967f4fd69a0cc298eae3508ad8b57b1e419ebaa0d621e199f534345", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/x54_controls.py", + "git_blob": "e80ee4b552cde4178286520d497140aebdbfab06", + "sha256": "82f91b81be9173dca546345dbdaddfc71e6d21e626fb84a8b4d1b4ba0d673814", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ALGEBRAIC-STABILITY-INDEPENDENT.md", + "git_blob": "abdd30cc1d6df2c41b9e8fda76f27f85200bbf9b", + "sha256": "7873e7d9a99fdc9de3ee224b9925d3e277e9773d7f5f8c2d0f1c19b0e52bc87f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/BILATERAL-LDU.md", + "git_blob": "5cad6ee19f60d626beb9f6d7be78cbc22fdd08c6", + "sha256": "0d65e66d227464dda1a19f781ae0a0be671cbfd347c41e37ec954f3d629d8a77", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-GAUGE-AUDIT.md", + "git_blob": "a2d1c5ae923db7649627dbf419434e36267e57c6", + "sha256": "1030a34922709ab8d3434a4c57a4a58934ae268c237fb598cb415697da411c9f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-INTERIORS.md", + "git_blob": "62c3fa27b61a648c65c9e3f6fc4dc95d7b05bd3e", + "sha256": "983c5cab2d2398f2192a8aec07daecb655f2de136e12a37f75672a14d27172ba", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-OUTER-ARITHMETIC.json", + "git_blob": "56c871f4f313e828246f958868738997e1a3e176", + "sha256": "22caac9ec2ecf4d5743b7eb946b633911fbac55a714399556e87e2eae0457dec", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-SIGNOFF.md", + "git_blob": "fc3456387b9399c8108db75b46088f85c5c26f82", + "sha256": "70e9175ebde200f8b016236adc88c4a1c4858945e7c3e5c453a8b6a5f79a263a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/check_capped_outer.py", + "git_blob": "83223e0a2b66ef58a3f46ba2efb7d5cb1bda165b", + "sha256": "b4555c77de7a3ed4abc708a8d93363ef7c9a914be1091f80ab3ddea83f71230a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/check_matrix_corollary.py", + "git_blob": "3f543803d77360b57e47053097a10892fa6c960e", + "sha256": "30db2d8e0f40fcc5c91e25f74cdc54e46aa4a0353c725345f9bcf5744e0b617f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/BILATERAL-CONTROLS.json", + "git_blob": "ed4b620d8a688a3b1e88975f1f62ca103470dfcc", + "sha256": "eb3ba38d18bac4aceaffba39ef48dbb55bd15e6abcb68cdf66920d9d13ec00ab", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/BILATERAL-LDU.md", + "git_blob": "5cad6ee19f60d626beb9f6d7be78cbc22fdd08c6", + "sha256": "0d65e66d227464dda1a19f781ae0a0be671cbfd347c41e37ec954f3d629d8a77", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CAPPED-GAUGE-AUDIT.md", + "git_blob": "a2d1c5ae923db7649627dbf419434e36267e57c6", + "sha256": "1030a34922709ab8d3434a4c57a4a58934ae268c237fb598cb415697da411c9f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CAPPED-GAUGE-CONTROLS.json", + "git_blob": "6ea5c59eab94d7dda4f94777dce3ad1bef8ae9e2", + "sha256": "ae8f0eb121a2f4da5c3f982ee6e7f45dab7b18368cadb5d2060602b0393b7120", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_bilateral.py", + "git_blob": "b2f527e951f42c87a0ebb068f845d549934787f4", + "sha256": "8d5c79bd4f4c96de5c1fa91553b19e3a62419333b414fc84dec894a4b729d5e0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_capped_gauges.py", + "git_blob": "d6f5a14cb26c04ab3feb728430005808e56613fa", + "sha256": "121279bef47dd490bf29fc72ddbce547176cdaf1154af67dc8b96d7baa8cfc6f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_cyclic_scan.py", + "git_blob": "7f8ebba6aff2d2c1a214091068be921fb1005cf9", + "sha256": "d25156f852cb95f013e0ee74b319fc8c20d6a7a53fa851543244d5af7898ee61", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_dyadic_interiors.py", + "git_blob": "9a970cb94ebe1f33f095c1b6e01e90b2bc6577e8", + "sha256": "a39617147870719a0296eef77101c90df8fbe716841cb9ed823f36b94254c3e1", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_forward_cell.py", + "git_blob": "b91b7a6bad7a25fcfd34e8d21593d5064d3df464", + "sha256": "082a0e46c175f6e59fe1f8c168ca56bc444c71a602c9b7318c0834aae1f2de90", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_log_a_schur.py", + "git_blob": "1fae3a6aedb73fd6e1129ac7b6972ef06b8a64f5", + "sha256": "a0f1116ce27ecbff18de7089ce1f56714ed7966dfa0105b20419d408feb7ca41", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_lower.py", + "git_blob": "1260c26dd135fdf69f9ca2f3e5038c32a366ce31", + "sha256": "027c77d8ce33c3d5e3c436234668f11bafc3de8658b9c3d03d455eb0e4d71f95", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_upper_data.py", + "git_blob": "ad06229d8448809d07f0d1bdfbef5b47baa3b0e9", + "sha256": "de4f9df64cf31e94adb9a5d04b38d53d823d864f51632c49c7c80c6a46b5224d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_upper_merge.py", + "git_blob": "3dda87e1446a6a91a33c174a5942e6714689603e", + "sha256": "95c9908134905e3ebdd030375e36a942c886cfc59edde3c6a419f36da6754780", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CYCLIC-SCAN-CONTROLS.json", + "git_blob": "eddd860c96ad622a1b0240140cf868e01a0db4c7", + "sha256": "4c37249f12b4cb4df847d179df8f378fbf1f42917e9fa703b2d847146f29b95c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/DYADIC-INTERIOR-CONTROLS.json", + "git_blob": "e42eac6b9378173dc747d6e3cac50ad12053b39e", + "sha256": "afbaee9f56f6a66fd9421bba7dfa8c3610c12bd447b01d0e9d79f97d1216aa90", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/FORWARD-CELL-CONTROLS.json", + "git_blob": "c74f1448865006cc2b7445c28b9c6a5410aa515b", + "sha256": "4417a518ba3b6833f06b4f5e33d4f73ea74100b9110cf20e8d1c2070f1833fcc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/FORWARD-SMALL-A-AUDIT.md", + "git_blob": "0f7f80b3f74d469c2f72f3b9f338d32568b4eae3", + "sha256": "e37aaa30b15671a1dff00676b14572213efaaac99df202dbba5e09f57af487c0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOG-A-PHASE-SCHUR-AUDIT.md", + "git_blob": "3bcf490a8c164d44aff5b7e2ec2e0f4bf07d7a73", + "sha256": "e05d6b8596c80b6e8676569a0ff464a29fa704c3304143f58914f47cdf38b272", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOG-A-SCHUR-CONTROLS.json", + "git_blob": "301815a2c53ef601ba37edef3444dff524be2e69", + "sha256": "046191420a24d8b2c063c190af5e954c85e39357902988c4df79f5abcdf1596d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOWER-CONTROLS.json", + "git_blob": "df9fc504c1dc3fa5fa16c08b8d3d7495b1d1f5b1", + "sha256": "323cb4acae960a6fa05527df5ede9d48e274883272b8ddb5151ebcee6dd26e52", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOWER-FACTOR.md", + "git_blob": "35af6c7b992b2a15bb1cfcbf7e659eac7a44df99", + "sha256": "dbc7eff783695e0f50fec57b0f7ca4212d51428eea04fa2ae5e0a9178fa69b30", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/README.md", + "git_blob": "0aade2884001193f515ea9b2a929f5d28e48fadc", + "sha256": "8fb5321b514af9260c44e150125205fe564efd073c456214f76bbdb358279cf0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-DATA-ALGORITHM.md", + "git_blob": "f07f2c68c796baf7d74ce173734b14d96501ef08", + "sha256": "46b98b9c013dc5a94c9f17fd85acd7c1896c8e93ad2ee4a7c34f583895f1daf0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-DATA-CONTROLS.json", + "git_blob": "0d9410b6a84bf1c33d1bf9d4e4903dc4f0f7389d", + "sha256": "c9e6fd7f338f2cb78a0ed15ee944fde63549ae3d8522ab0874d184f3e252db76", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-LIFTING.md", + "git_blob": "0985ad16cd6aff039efa64b5d4ab15e6d96f2d2f", + "sha256": "69535a48416a5435ea2a5ef4ecfe70fde30c32c4043bfc56f1ae2d7f49cd34bd", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-MERGE-CONTROLS.json", + "git_blob": "7e851839f8d6939ad76a39d67d6c62e7f7d4bcbf", + "sha256": "c5729bdb36237c0691fba56d149019f78d94e996749532d907a84c35ef01319d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_embedding.py", + "git_blob": "54556ee93de27191e0a0656f3ba66061ef554a9f", + "sha256": "597cb5304498456575c99d46a7fb503e04db28d5a7f57857b102b50f703b7464", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_halo.py", + "git_blob": "ddbcbf4d34fd6999c7e8dd139fae729e9d1cf9ff", + "sha256": "0a3257cbb8f37b6cc9bb44019cb114ea2ae9b28738a416bff4bc712d1306e1b7", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_ragged.py", + "git_blob": "4665063452e490507d1107ce1c054387e73172d4", + "sha256": "54b761cfe3404d524af3a2abdf09bcea8dfb5cca6199c0c182cee310e3ca8c78", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_sparse_shear.py", + "git_blob": "86c8d091b5d61bffce149daf64cb774f591df1b4", + "sha256": "6e22c989e6bae92c4cd209c9336aad4359956cf370bdbd5f6b70609144598121", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/EMBEDDING-CONTROLS.json", + "git_blob": "01430d219b86ccd931705963ab1d80a27a87766b", + "sha256": "d0182e172f16b55ec64a5edfabb10816e416348ef2db15449f3ed4b47f3fec1f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/HALO-CONTROLS.json", + "git_blob": "426d157fabbe68ea4bd7df21dc296ba067638a9f", + "sha256": "ae370f7d7421f2f96e101a4b9d8082110507c47211220fd6ead065c2366aa828", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/HALO-THEOREM.md", + "git_blob": "60d59bb3780c6e56e51d796947998d3d99cca297", + "sha256": "cb9e1da38400b658f9209e465b4e5896fadd17dc66afa862f38bae8d8c1f2058", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/MANIFEST.json", + "git_blob": "48dbb2a6bf7709bfbebe48abae0daafb8a841712", + "sha256": "37946d7691b90d39906d93581839bdf8ae2cf899d459e5520c39e782766e9327", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/PARAMETER-CHECK.json", + "git_blob": "5844ead5c04309dcd13b351f815331597c7b07c8", + "sha256": "e38cdfc13f1959186d888383458c9030c4bd3c8c3915aea4743d55637d2f8d76", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RAGGED-CONTROLS.json", + "git_blob": "553ea1a36abfa9da438dc5ca89835d55035553e1", + "sha256": "c3688f65565486b585727374abfbe478f7544aa61381bd73cc6ffa168b4221b6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RAGGED-PERIODS.md", + "git_blob": "fdfe26d197825b5f9a6fc251e4499d8357027bf4", + "sha256": "c6e4dfe7f58dac7c5a513ffb3a9ab4801ab0717efae5c1e764e570335402ff25", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/README.md", + "git_blob": "5c9951a6de92e24db16af5634e0e063b6a9b7861", + "sha256": "575a3acfc18a0e05ffe04a8563318a2770ce32cd7bf3a5e6123ce2de39a1cd4c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RECTANGULAR-EMBEDDING.md", + "git_blob": "191867c72e8f161ac5b2feb9b673275b3aa8ce15", + "sha256": "e64447bff7e7717802ee049290faaf29e45db3e36a6f7fcec109184478f15f26", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/SPARSE-SHEAR-CONTROLS.json", + "git_blob": "7fdf29495bde5099c6d261e8260ff9b7bedb7e1d", + "sha256": "d3b9763f7ef6a3a5752c6c11a8a4d5f465646ad75b178a1c1b3363540fcc4871", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/SUPPORT-ROUTER.md", + "git_blob": "4f39fa9eaf553d1df5111de8c19bcf5bf9829c2b", + "sha256": "6ddb322e11883c1177ba6cd1a77d23a1dac827d7290b32eaf642457b1d762a54", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/CORE-SOURCES.json", + "git_blob": "59c53cc92ccbe2f341ef866cafb035f992687e40", + "sha256": "2546f47dacc47c2d63dc5bb9cc52ef86c5e02ee159c4fb6e00dfac3f8f34d89c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/core_review.md", + "git_blob": "6a5ecf4229d6d654457e55d7c157a09230705f1b", + "sha256": "13f2df4d5b240f9b89ca0ae44bba198c935532098ff4c1161631fcbd86b3e8b1", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/FINAL-REVIEW.json", + "git_blob": "121a4ebf87c6e2d49b82cf20c5a8fdcbbf073271", + "sha256": "6b98e5222aa109a35be8b4fc9ec19669daebcc06d542ecec0a9c820da7930501", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/gaussian_layout_review.md", + "git_blob": "c77b9d14172185b970f11e13af3f7b226c0e96c8", + "sha256": "ebd7188970f55b5979b1b1a13f874a31ed0ee6c82bee329e7ad0b2a38c42c430", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/layout_subreview.md", + "git_blob": "3d6bc924edba0e0eb4a60f3c6bc5b87fecc50790", + "sha256": "637e4698a9fb02978ebc4032d8939ce0db9528e89e908c94d63b9f0d2a41f64a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/union_subreview.md", + "git_blob": "04286a6198b050bd184be8afef3a85402b3aef93", + "sha256": "738b35a04d6871cd73b14b4165ae69a1feb3a103eb46e064a64a22c4c7426856", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_circuits.py", + "git_blob": "f80c141c8116b163c2bb5a028c28212077c8d5a9", + "sha256": "06d1861bfe8af543908e26557ffda7e451ff176bceb9bacfaf0f04f234b336d5", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_exact_algebra.py", + "git_blob": "4f0180c88f6ea25b85814883ef7cf2ad41e67110", + "sha256": "5ff7f25c55b370a1d0cda6c84ab9cdf2c7b0de3266d3f2e7a43280a6491074ab", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_supplier_capacity.py", + "git_blob": "65b20b8b686b53fa9bfbd6734e09128e78aeab84", + "sha256": "035ed96b39414eadec46e8de4bf3811b785862fd313deb044f42e17cf2ad3f78", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_tensor_compiler.py", + "git_blob": "5eb5c1ffd23932ba7ccaa0d7686a5b875a3b1809", + "sha256": "dc4b1f1884489215a2c2d0e8978a241e99e6c8c9f1d2fa2460c73d2c7d4ba30a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/CIRCUIT-REPLAY.json", + "git_blob": "fd24b3451dcfc24afa28719b6713d05931956011", + "sha256": "2ce5cf9ef9461e5897374ad389c26af66aeee85e8f514a9da4ed3bb2028cb1da", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/EXACT-ALGEBRA.json", + "git_blob": "7a776857072df3c9c283a3d067b83cf545ccf7e7", + "sha256": "694898bfb1afcb3b8b8ef951634ac8919decdde0904350b355d254601ae3dc12", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/MANIFEST.json", + "git_blob": "4019fbc32f22b278a2c8131edcf2534937af039c", + "sha256": "3b018dc660c6add775c12f75b9e8f5281825aeebc3888a508833ce6106c1229b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/READING-COVERAGE.json", + "git_blob": "3c49e7f78b40e7cb35f93aaced3316869d46d101", + "sha256": "756e52726b161eea27e27f1d519b05d4fb0ebf67ef9a67b33947194d5d02b709", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SHALLOW-TOEPLITZ.md", + "git_blob": "bc4349b2daea548ffa09e1f38a31f1df86b0b7be", + "sha256": "b384b93f3fb4a8c97da2e617ebc14d55cebb0a739070e7f8dbb66f63e24e9310", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SOURCES.json", + "git_blob": "0b386bbec9c76fc2a195f413593402342b3d0bf2", + "sha256": "fb3771f66771250aa9f4406ae9e7eb176f9cdef03976cbc9558440c674a4a94a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPLIER-AUDIT-SOURCES.json", + "git_blob": "eaf9076b75b55785cabe8a698126df300a498f30", + "sha256": "d0c274d6edd6193b09d28e45e7cbfe9236fb35474d35ea3af0664ba36f9e006a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPLIER-CAPACITY-CONTROLS.json", + "git_blob": "adf689ac5fc5f990b965667f4ee096f6db9909c2", + "sha256": "6922b7d7a936d53846569ad3be53fe4f3c63d6cfe794f9279fdc6a1fe411ef0c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPLIER-SUPPORT-AUDIT.md", + "git_blob": "72404c42d77d4267105e8528cecff3327dfdd38c", + "sha256": "bd5b06eca043c5c871227264f6a954473c55cd16ec85bb420ff538fb8ec1d8d6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPORT-ADVERSARIAL-AUDIT.md", + "git_blob": "80b2afa7433b3139ac926047012658ea500b4a5d", + "sha256": "b1290f8720bf075ea2ad58d6070f3e1fc95c0155f8e33b165bc13439bbb9222d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/TENSOR-COMPILER-CONTROLS.json", + "git_blob": "80cb2c8083f4a853296be0b2a1f0675e0356e6ca", + "sha256": "db8a5c0dc2be956d83bc7667177252a4968e0ffaee8352e6a5dba5ab983d7ada", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/TENSOR-COMPILER.md", + "git_blob": "19efb9cb1c5a738e57caadf2dd6f5611af1bc78a", + "sha256": "4d3b8466598a864a234b978e25976648d4e761840aad9153dd18d73d3dfe4d15", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/ALGEBRAIC-STABILITY-INDEPENDENT.md", + "git_blob": "abdd30cc1d6df2c41b9e8fda76f27f85200bbf9b", + "sha256": "7873e7d9a99fdc9de3ee224b9925d3e277e9773d7f5f8c2d0f1c19b0e52bc87f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/check_source_constructions.py", + "git_blob": "c8e362e90dc6c73758599a0b2094b11c8fad9bbb", + "sha256": "9d387098403c0355be8e93158df02bae5a435b2366bd28efdf0b127e470c8c1c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/MANIFEST.json", + "git_blob": "5a943f0fd6c14649dc1b14267a8695940f3e7cb8", + "sha256": "35d98d7579a16dae36530b4e5f4d0b8f925a069daa3f6fe1ea5276916167e0c2", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/PROOF-AND-COVERAGE.md", + "git_blob": "1a98011b1f36a90ac0b7cfa4209480d46dd993ef", + "sha256": "db7509d754bb7fc3381419e0fed2674f22a9d57d34e8420fd5afa3c688fde9aa", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/SOURCE-CONSTRUCTIONS.json", + "git_blob": "65880dc95cf6e5290e259b42da9e9c8cde5710c6", + "sha256": "114c1d8fb70592455a80c73d8a1bc6bfc9aca4e7395a420b6331d5474b4d1917", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/SOURCE-COVERAGE.json", + "git_blob": "c6275bc1cb7456fadf6d9e86a1f9806942fc0826", + "sha256": "fdc6849f97999a6cf99cdaa50591d24f78d6fb0bc580315f205452e5906b35cc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/CAPPED-INTERIORS.md", + "git_blob": "62c3fa27b61a648c65c9e3f6fc4dc95d7b05bd3e", + "sha256": "983c5cab2d2398f2192a8aec07daecb655f2de136e12a37f75672a14d27172ba", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/CAPPED-OUTER-ARITHMETIC.json", + "git_blob": "56c871f4f313e828246f958868738997e1a3e176", + "sha256": "22caac9ec2ecf4d5743b7eb946b633911fbac55a714399556e87e2eae0457dec", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_capped_outer.py", + "git_blob": "83223e0a2b66ef58a3f46ba2efb7d5cb1bda165b", + "sha256": "b4555c77de7a3ed4abc708a8d93363ef7c9a914be1091f80ab3ddea83f71230a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_matrix_corollary.py", + "git_blob": "3f543803d77360b57e47053097a10892fa6c960e", + "sha256": "30db2d8e0f40fcc5c91e25f74cdc54e46aa4a0353c725345f9bcf5744e0b617f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_outer.py", + "git_blob": "2bd3f6eb683536e41a81a9262184ecf54271eac3", + "sha256": "6a0c5f8956323615df8bc4b12996832471c0ae607d05429c9d70ad1b50568f10", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY-ARITHMETIC.json", + "git_blob": "54ad0ed498acaa61a64c4330228548e724856705", + "sha256": "c6efc4d2f6d17159cefebf5c2dd6099a6327fe0911c5dd87623cad96c7d6c56a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY-REVIEW.json", + "git_blob": "fea12fbe37096afa9fc49b1d96c86960a405fd06", + "sha256": "5cd5e97f93a9b3e439bfeffb52139d7bb1730de96ad13b59b7e1b20fdca6a3f6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY.md", + "git_blob": "f08bb57f9c33a4b9bdca9eb8f6ea3c0862cd56d5", + "sha256": "2d7fb1088e58bb86e574277733e082f135362215a69add71d9090213d32c9221", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/OUTER-ARITHMETIC.json", + "git_blob": "3ea510f01022328521f976719590afebaa1d7e7a", + "sha256": "050c61d90236c593fd0827d7edc297e05604884e4ec093659aee46a9ee336020", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/OUTER-AUDIT.md", + "git_blob": "974b8db67f4f556bddd55904f47ec145c629f1e6", + "sha256": "94799bfa2794eb867d6ba68593c3e92988ade083e74d895e8d07ae3b8d0670dc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/README.md", + "git_blob": "c9bd9bfd6f4da8bbb6526b11eab265ab1fc1b6c5", + "sha256": "17c393075292b364899cb7c451cebbc9b20834f9fac934ce3740aba360c27246", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/REVIEW-RECEIPT.json", + "git_blob": "2521d02ada6149298c563b176db404600470d468", + "sha256": "97b20e50d3722fcde3831124a107df6c15c0ffdbb9e057b7867f41aaa2481800", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/AUDIT.md", + "git_blob": "bbeeee7431720817f031360f67b2186abac5cd23", + "sha256": "54aafc7afd09fe1a5312e69fad09c87422690543ab75c6ae35f6cbcc26b3eb8a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/CAPPED-LAYOUT-CONTROLS.json", + "git_blob": "abf64123d0cdf5f481f0aeee5d5d31e7a401e6dd", + "sha256": "e6951790238b4998c632c95aa329ee2cd2527a5d74a2f28bd15249fec6d2419a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/CAPPED-SIGNOFF.md", + "git_blob": "fc3456387b9399c8108db75b46088f85c5c26f82", + "sha256": "70e9175ebde200f8b016236adc88c4a1c4858945e7c3e5c453a8b6a5f79a263a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/check_capped_layout.py", + "git_blob": "ffe617dbb1b90271cc1b2d83dd3c09b343b892bf", + "sha256": "267d93ab5114ec160f88a6e65fd34c9f0696a686c36ba2dd194d6b70fa32a6bd", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/check_q_embedding.py", + "git_blob": "1ec91746fd88c2bb1ccaef52a912d9d7f58d196f", + "sha256": "ac858a14bbaf37e0e412a7ada282cd1586632f52b8a979733e775f50130969b6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/check_union.py", + "git_blob": "0b3f0af7014dc23d8d80a82c67f2f7b24d3bd1ab", + "sha256": "74608380d72567edcd4470c8d226b15848f9d3a4e5d77d652bdd8963480ab9ce", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MANIFEST.json", + "git_blob": "1fd05118b79b891358832cd732c8250391c27c2d", + "sha256": "c98559147bb498ac78af998eed63ab6661af934fa1a0df6844176b1811753fb9", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-CONTROLS.json", + "git_blob": "aee3270196daf3dd9a2aced0a064402ffeb15189", + "sha256": "f8bd8729cb8438188e90fb9149f598b825461c97b4ed290584ca4367f812a48a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-SIGNOFF.md", + "git_blob": "d683e4d495330a2310e31b07c7dc896390334468", + "sha256": "4c8c62f723232e842dc3bbdcc4defcc8ff1aeb86ba9f694661899dc6783b13c4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/PARAMETERS.json", + "git_blob": "8c2a235f4beea23d8a1fd2994cb8941818ef9649", + "sha256": "9f72cfffa34844764ca65a6b4431cc5c779141751df746019db9d3ad8f1dee92", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/Q-EMBEDDING-CONTROLS.json", + "git_blob": "fca9f1a5566650f306d33b63693806392ffba085", + "sha256": "24ead3534482397c00c23ad3dbbd4e930e02290e00c97765353d8783c6575c7d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/README.md", + "git_blob": "6075de6368f1059422b877ce43c72d7444e9f356", + "sha256": "0ec721f76dfa943e808afd3c2cc39ee69f1a6e5f4f77ba3c7c1373ad60db25af", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/UNION-CONTROLS.json", + "git_blob": "3607228a6d861228f0051a42b10a8a937eab8340", + "sha256": "6c5262144215cc603bbc3bee93a9a6d9d2318d0177a59115fe560762998498f9", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_constructions.py", + "git_blob": "2090a45566fc0fc7af4e2b448833a9c4de578b96", + "sha256": "91387c9bd763a5c55c22a9907947bd07b6002f739aa6feedf6d3a02adea1e316", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_erasure_rounding.py", + "git_blob": "1f5f8e821a26903f3a29c9c25b9d40e667b9259a", + "sha256": "486efd4692665a548b94b79877abb76ad13157268f05c270c4e75d8f97700795", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_fixed_a_ldu.py", + "git_blob": "ac7f96cd00f405c6f4347f3906d4510a5048746b", + "sha256": "15134147317a7d789c9ea0ebd71db5ff11e59a20ef140f681d87478977734cd0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_holes.py", + "git_blob": "445102507c74d09161de6d3711c32c8f3b169961", + "sha256": "99c5dc4601ea88b553f52e235d36fba0aeb867e7fcd54130cdb3eb115a9bb0d8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_ledger.py", + "git_blob": "76dfb71e8889b74a4ef64da98c4efcfe4fab5584", + "sha256": "254342c05949e5cefe4f507a35487e0a1ffb7137a60d2b97831d5ad55d7d7ce5", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_nearest_neighbor.py", + "git_blob": "d56f21f6b7d9ab322264a90c7a11b6864bc4bd38", + "sha256": "21bf2be683cefa7a760bf1e1bdaa647f57bf47ab86b13fd7a74e8d650f492913", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_positive_tree.py", + "git_blob": "ebce2a90cf4c7de1a0d469918702e0ecf0b90872", + "sha256": "46db2ce9122ff57bb4eeaa723db1f351891e671a7eaa7bf4fb61f85dafee9e37", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_q_ldu.py", + "git_blob": "63f7d6eab05e16450bb0243a364df8aea1009de8", + "sha256": "ec2589ca9abe71d674ba9ccf81f289b1526f56f3001c48d22977accb1be3e4dc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_sylvester_factor.py", + "git_blob": "02b4b7f2b5a0470d88a9cf64c8c222584f898113", + "sha256": "60b21fda4ff451582087d30222a072eb1a214d531277e92883eaf28221aafced", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/CONTROLS.json", + "git_blob": "48249f532935937a945d14a311f23c8bb144803e", + "sha256": "12d9207e887fda73159a9e2e4776003ca6f905fc3dc45d77ced588a1c9f80cb2", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/ERASURE-ROUNDING-CONTROL.json", + "git_blob": "3e478123e7c28440a0b622eef884a790645494c1", + "sha256": "cceb2ade8ce5e18be3871f771955e38258f5eb4e39790c016aab96d8cf0488ef", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/FIXED-A-LDU-CONTROLS.json", + "git_blob": "b64f5e981c80d7ab9db5742b20ee49cf2feeff4a", + "sha256": "d6bda457fff01e04b6565d84c7bdbac870569a2ba7ef18a1fc8db11b738faf38", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/FIXED-A-PERIODIC-NORM-AUDIT.md", + "git_blob": "ad029e08f181c274466a0588346ebf6803981bd5", + "sha256": "21027a569588922c491b2c5b4f31e01ddb784f1f20cdf48b7d482d0e85b66bdb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/HOLES-AND-Q-LDU.md", + "git_blob": "59d9128d75c57b790e6e602da8b2ab9c2cf7fa57", + "sha256": "c6a032ed495325806ddf491c5c85bc822a7fdd613aff906a7be553960d0f85a3", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/HOLES-CONTROLS.json", + "git_blob": "19ae8f80e344134491b4e970dfe9a294767ea00d", + "sha256": "3f7e98ce524d5fb2ba2f911a350081340215e806ae945abf15a2fa07988ca2f8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/LEDGER.json", + "git_blob": "0762eec5d6417bf737fef60c106a99e51a564123", + "sha256": "87eab0eb334ddc16e50cedbcab56320d2ff056c3dc87d7a5191171bb5a4c206e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/NEAREST-NEIGHBOR-CONTROLS.json", + "git_blob": "d39a91f4cf721ea281a3c517901218efbce12994", + "sha256": "b85eca6098847e7b2f77b49a6c8c35e33cf790bc5dd01b95e1334daef9af47f4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/NEAREST-NEIGHBOR-NORM.md", + "git_blob": "ba090b860b24374449801588d77ee19d6da76c5b", + "sha256": "7955383d50fc59b5c4c4d839c7e4d630add6208a3a233d7372a80309085ac6b2", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/PARTIAL-FUSION.md", + "git_blob": "876f44a23e582da1fd661a9fd129a65570bfda24", + "sha256": "811a3a0c88a90708add5b12fb0a05c25623f0af155010d5dcacd56021c55cba5", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/POSITIVE-TREE-CONTROLS.json", + "git_blob": "904475da43fc1dea9adab31589c94564e4b67c47", + "sha256": "7b31811402ddda4668fe8375f6c90a6047511d50836dbb7cfc7ffcf24fe19a11", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/Q-LDU-CONTROLS.json", + "git_blob": "ca49d46b5b92a85a8b389967ac239ec13eadc067", + "sha256": "370a07aa1a56c656ec1f44d7651dfbe999ad0c19dede9036257cc2f29dc39452", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/README.md", + "git_blob": "7d0b3a41bf0ed48385ddcefc6203651e8959d674", + "sha256": "4d65ea3c8b6a0d5faef819a58c8b8277681d11bed54686e9a7f78de29736e68e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/REFINED-PHASE-FUSION.md", + "git_blob": "51920b3b76860b82cd9b1a6b9a0735bbd614d9c1", + "sha256": "b4367eac012624f803b3d2e3a72339e050a0071bbec37e6d33b2cf322bd70bc5", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/STABLE-POSITIVE-TREE.md", + "git_blob": "687c668a9d8a4ff2edc748cd1471eb2c2288b976", + "sha256": "ec2f8a1c4273b81217545d2710bcffdd09b5c9ba9349e887b5f7bf6f5bddfdc7", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/SYLVESTER-CONTROLS.json", + "git_blob": "5d6e50b77b063b7ed2cbff3fc08076b0da1c4c64", + "sha256": "198af9f58c2950f17d8b1861ba4566bb2f6a0108a889a56db328fe67f8faa1a2", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/TASK.md", + "git_blob": "db58ed7cfb30d3a17a4bf12f9a4e757da0ef3236", + "sha256": "5eef77fb23f26f5bfb5dc8e376ed25e769924f2b6420ebfc8671e3b2a2f1f611", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/FINAL-PACKAGE-REVIEW.json", + "git_blob": "66a4af697e89b0bd5ed6fdcbab12d811a05ae26f", + "sha256": "3457385de52d8e86853d96026a70aef2e8dece516db9eea020d8774e01d076a8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/FORWARD-SMALL-A-AUDIT.md", + "git_blob": "0f7f80b3f74d469c2f72f3b9f338d32568b4eae3", + "sha256": "e37aaa30b15671a1dff00676b14572213efaaac99df202dbba5e09f57af487c0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/bind_native_admission.py", + "git_blob": "af1dad224757d0c5304d65c40642b136536393cb", + "sha256": "166541ca2b7f3066f4c2421e5a9f1886d58e1fdd7677904976261ab2c82b32cb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/check_frontier_fusion.py", + "git_blob": "a8112e3cefdaa5f3c3b49b3afda07555a70176f6", + "sha256": "02f7f9ebf29487331171954c7ceb37ff5315e2f28a9d56096ebbf9fb865c70ab", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/FRONTIER-FUSION-ARITHMETIC.json", + "git_blob": "b168dc71c9880ec3301baaf6f13d0a8654fcff94", + "sha256": "82656563e7c8725f95c4aea7e273805a3d3faf34c495a330f1c91a036765414a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/INDEPENDENT-SUBSTITUTION-RECEIPT.json", + "git_blob": "1f274e375a1b395cfaead42d095354529abd2c5f", + "sha256": "49a8450289f1c1730c7d11d7c1506ad4af26fe9a1f76341f808a3025123e9519", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/INDEPENDENT-SUBSTITUTION-REVIEW.md", + "git_blob": "a95179a0251e5917d5fc5d252bfd751006c4f551", + "sha256": "b48d3e14083829db81336b639a6cfc698ac0dccc76fa2606d11b4be7a968ddeb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/independent_substitution_check.py", + "git_blob": "04ec7649403a8ac3e2bfedb7c53542a73d064fd1", + "sha256": "579bbde41e90792818c2726b38dcab26cf5a2695d3348731e814175146b0a737", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/NATIVE-ADMISSION-BINDING.json", + "git_blob": "72d30de3fd9fd80d732245c718e32c19ba250a4f", + "sha256": "ec4e89e0513958c1d553736cd06eedbc5f2aca61b40f92aeade3eb882bf588bc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/REPRODUCE.txt", + "git_blob": "42c6bb30337dfe3608ed71341a34b858c925f184", + "sha256": "76808b685f1623813658f5b596a4b8191a07e7c0810550f6fada7fb4a4992913", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/T74-APPENDIX.tex", + "git_blob": "78278aea07ac8855447893f08438b656e119e18b", + "sha256": "d053a6b69de2ff4005ee52eb3b673de606326aa0f0e290354675f9f08f915b99", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/gaussian_fixed_width_note.tex", + "git_blob": "e7a2c00d4e3804da5242ececb00e070f4a7be8f6", + "sha256": "6f3edb7b238f2b6af4f3e2d98dee90fe6f4ba063a5ccd120422e45c941712aab", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/HALO-THEOREM.md", + "git_blob": "60d59bb3780c6e56e51d796947998d3d99cca297", + "sha256": "cb9e1da38400b658f9209e465b4e5896fadd17dc66afa862f38bae8d8c1f2058", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/INDEPENDENT-FINAL-REVIEW.json", + "git_blob": "121a4ebf87c6e2d49b82cf20c5a8fdcbbf073271", + "sha256": "6b98e5222aa109a35be8b4fc9ec19669daebcc06d542ecec0a9c820da7930501", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/LOG-A-PHASE-SCHUR-AUDIT.md", + "git_blob": "3bcf490a8c164d44aff5b7e2ec2e0f4bf07d7a73", + "sha256": "e05d6b8596c80b6e8676569a0ff464a29fa704c3304143f58914f47cdf38b272", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/make_native_capsule.py", + "git_blob": "45a5aeb41716f71ba6d7f0ba3b1159daa7b91a04", + "sha256": "8f342ca212b8d601a11f704042c577c1b088e0079bda04b3065467c2f3c36ea0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MANIFEST-UPDATE.json", + "git_blob": "423d53d1eb1a01a7aa49d16d498f422f8a2b6dc5", + "sha256": "32c58bcab8e19ef895660331c13d31b5fae7d0c95f7cda4147870f29d8299f6d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MANIFEST.json", + "git_blob": "02f55a73512b0acd92e8c6713f55806f578b6eb1", + "sha256": "9af581d640e9c69d513256cf69babb0717287642134cfc807cedcd79966c1706", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY-ARITHMETIC.json", + "git_blob": "54ad0ed498acaa61a64c4330228548e724856705", + "sha256": "c6efc4d2f6d17159cefebf5c2dd6099a6327fe0911c5dd87623cad96c7d6c56a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY-REVIEW.json", + "git_blob": "fea12fbe37096afa9fc49b1d96c86960a405fd06", + "sha256": "5cd5e97f93a9b3e439bfeffb52139d7bb1730de96ad13b59b7e1b20fdca6a3f6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY.md", + "git_blob": "f08bb57f9c33a4b9bdca9eb8f6ea3c0862cd56d5", + "sha256": "2d7fb1088e58bb86e574277733e082f135362215a69add71d9090213d32c9221", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-LAYOUT-CONTROLS.json", + "git_blob": "aee3270196daf3dd9a2aced0a064402ffeb15189", + "sha256": "f8bd8729cb8438188e90fb9149f598b825461c97b4ed290584ca4367f812a48a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-LAYOUT-SIGNOFF.md", + "git_blob": "d683e4d495330a2310e31b07c7dc896390334468", + "sha256": "4c8c62f723232e842dc3bbdcc4defcc8ff1aeb86ba9f694661899dc6783b13c4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-SOURCE-CONSTRUCTIONS.json", + "git_blob": "65880dc95cf6e5290e259b42da9e9c8cde5710c6", + "sha256": "114c1d8fb70592455a80c73d8a1bc6bfc9aca4e7395a420b6331d5474b4d1917", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-SOURCE-COVERAGE.json", + "git_blob": "c6275bc1cb7456fadf6d9e86a1f9806942fc0826", + "sha256": "fdc6849f97999a6cf99cdaa50591d24f78d6fb0bc580315f205452e5906b35cc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-TRANSFER-MANIFEST.json", + "git_blob": "5a943f0fd6c14649dc1b14267a8695940f3e7cb8", + "sha256": "35d98d7579a16dae36530b4e5f4d0b8f925a069daa3f6fe1ea5276916167e0c2", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/NATIVE-RECEIPT-CAPSULE.json", + "git_blob": "1a92c59d2bb9b2093d76c1205d3c805afa351d07", + "sha256": "a04d6bba3d15c11a219536b66a23012797484ae106ec1952ecd7b76f077ddb01", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/OUTER-ARITHMETIC.json", + "git_blob": "3ea510f01022328521f976719590afebaa1d7e7a", + "sha256": "050c61d90236c593fd0827d7edc297e05604884e4ec093659aee46a9ee336020", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/OUTER-AUDIT.md", + "git_blob": "974b8db67f4f556bddd55904f47ec145c629f1e6", + "sha256": "94799bfa2794eb867d6ba68593c3e92988ade083e74d895e8d07ae3b8d0670dc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PACKAGE-MANIFEST.json", + "git_blob": "c3977299d4e6e9ffefe29175307aff6a716786b7", + "sha256": "298f1eaf79b5d5d57cb96fb3abb422174b78c31c14491a878f6176431d731d04", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PHASE-LAYOUT-AUDIT.md", + "git_blob": "bbeeee7431720817f031360f67b2186abac5cd23", + "sha256": "54aafc7afd09fe1a5312e69fad09c87422690543ab75c6ae35f6cbcc26b3eb8a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/phase_fusion_note.tex", + "git_blob": "4351a73450dadd043aa7aca33fb6cf0dd01d6df3", + "sha256": "b5957f38c98a68f2584a42cedf91d753180dab438129fdf749b441074f00d4e1", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PROOF-AND-COVERAGE.md", + "git_blob": "1a98011b1f36a90ac0b7cfa4209480d46dd993ef", + "sha256": "db7509d754bb7fc3381419e0fed2674f22a9d57d34e8420fd5afa3c688fde9aa", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PUBLICATION-CHECKS.json", + "git_blob": "befac935521198bfb3a7629014e417fcd93263ee", + "sha256": "6e2fb68e6768c3aa4224aacb4900263586fc8114815a51df40f3f9fdf6124217", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PUBLICATION-SOURCES.json", + "git_blob": "3f760bee8af56d71b3d0ab741a6c9f5431f8a4b6", + "sha256": "6082583794168b1c2320187214b86c93a5a6e76fbbddfcb3bdbb8c5bd34c0586", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/README.md", + "git_blob": "f7f3348ee367ac0fe2a92cc48ca599869b49e306", + "sha256": "91af88b8fc53a22e1e968908f0e449cdfe2154c83f0dddb8a504e661c0c6965c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/REVIEW-RECEIPT.json", + "git_blob": "2521d02ada6149298c563b176db404600470d468", + "sha256": "97b20e50d3722fcde3831124a107df6c15c0ffdbb9e057b7867f41aaa2481800", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ROOT-EXACT-REPLAY.json", + "git_blob": "4f80ff6ecc683405d0d4ca680263cfcb5dc8567c", + "sha256": "d36114abe9d7a83c327f49f5ea153c6dcada4a7421f5e74a9a5ceb392cecb994", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ROOT-MATRIX-EXACT-REPLAY.json", + "git_blob": "bd509b837762e520991e1573d5458fd537453376", + "sha256": "d6bd4fcb8a528655181b4aa3fd1bad7e6647a4ca5aa76ee7f2cdd800b698b225", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SHALLOW-TOEPLITZ.md", + "git_blob": "bc4349b2daea548ffa09e1f38a31f1df86b0b7be", + "sha256": "b384b93f3fb4a8c97da2e617ebc14d55cebb0a739070e7f8dbb66f63e24e9310", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SOURCES.json", + "git_blob": "a5d007aae193a5f8e7b683c041b2e7428a18ac75", + "sha256": "14ce6fdc7c83e18ccf4fee19ff51062726c960ca44462a45af60dd686167d456", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SUPPLIER-SUPPORT-AUDIT.md", + "git_blob": "72404c42d77d4267105e8528cecff3327dfdd38c", + "sha256": "bd5b06eca043c5c871227264f6a954473c55cd16ec85bb420ff538fb8ec1d8d6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SUPPORT-ADVERSARIAL-AUDIT.md", + "git_blob": "80b2afa7433b3139ac926047012658ea500b4a5d", + "sha256": "b1290f8720bf075ea2ad58d6070f3e1fc95c0155f8e33b165bc13439bbb9222d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SUPPORT-ROUTER.md", + "git_blob": "4f39fa9eaf553d1df5111de8c19bcf5bf9829c2b", + "sha256": "6ddb322e11883c1177ba6cd1a77d23a1dac827d7290b32eaf642457b1d762a54", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/full-1661-verification/RESULT.json", + "git_blob": "82475e2c121bf1dabffb0e9f5bdfc07284228ae4", + "sha256": "11c57817a4d43a489010a13af7621d37eeedc398308c036e63a2a97119443861", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/full-1661-verification/STAGES.json", + "git_blob": "80e3d98967f1f885ebff81c4ac465beb1ac94968", + "sha256": "c2edb01a61c03e04bf48e605422ff83c1d304e4d586268959d4ea24b743640fb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/CLAIM.json", + "git_blob": "b711aa978a37ebe9fe029d3539d2f8a61a7e2cda", + "sha256": "70aacd45f9e6fac8675687cf50da32e0ad4e479d9a5c28f2afd1550311ae8849", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/inputs/PR589-EXPECTED.json", + "git_blob": "e293ddc557742637f9f679f083a1a282d87b1b13", + "sha256": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/MANIFEST.json", + "git_blob": "a8eacfa082fe1cbb9e17c4c2eaf89ac53885ddae", + "sha256": "d90d49eaa68e48c6992a07972e736ef4b9cd80274361cbbc1ec980d43f29ad7f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/new/SPEC.json", + "git_blob": "86a3069ee51968bb0e5e95da161d58e4056c86a5", + "sha256": "d6b6a2140f3a61ae8cfdd8b51a1131934d63d2dd8573c1b13eb2b9528f3c3db8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/NOTICE", + "git_blob": "b912ab3bf304ca0afae68a4064d262e9b0d1ccb4", + "sha256": "3918a42010a435782de0fe8c38fab8f7df5d48a375ecf603c2bad1b818a16d6f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/TASK.json", + "git_blob": "8fc25b910b36cff54f3b369a83554fb9aabd5b04", + "sha256": "47b82ef23e20991010fae838ad4da9bdac3f947a8fea916a028fd6260f95f5f8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/TENSOR-COMPILER.md", + "git_blob": "19efb9cb1c5a738e57caadf2dd6f5611af1bc78a", + "sha256": "4d3b8466598a864a234b978e25976648d4e761840aad9153dd18d73d3dfe4d15", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/VERIFIER-NEGATIVE-CONTROLS.json", + "git_blob": "c288e50942c6fe5f67467e238a4f1fdf5e52eaf3", + "sha256": "eeb887cdc0c76426c75ddbfc3d4af7ccbbe19d17962c6ad7a1549dafe8dabb5a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/VERIFY.json", + "git_blob": "964863373c631a35a7554569b3ff105063491c7e", + "sha256": "cb50aa523a0863a457181ca815e69a1b3b4d91ed1006a79263f4a8f18457c669", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/verify.py", + "git_blob": "60bb3218f6d1c1b6e9d13205fb9ff9e06246ad92", + "sha256": "93ef0f46e132485da6194587199b8f039e25b1b9f099f93bbdaeac5c0d66de7f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1786/FINE-PRIME-PADDING.md", + "git_blob": "bf9899ee21be4058e4aac0b64bfa67d01ee8ddd3", + "sha256": "47d1b1b4df28aadda3cd6bdeb1fbc47290595e9208cd09c1a1f338520d33fdce", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1786/NOTICE.md", + "git_blob": "e491b2e587810734a22ab7ee188892313d00a07a", + "sha256": "dcc1adb2461aa93ca62b6a912dbd8b215599e6af8053dfbacb7423b544dd659a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/verify.py", + "git_blob": "e6553b883ef5569472d73f66ecbf22841930c39c", + "sha256": "d5e7eebcd195f7b6d9e0300c5f452c5ae0e38c5b1bc5df536d8c273488da070f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/verify_manifest.py", + "git_blob": "8c2441d39202409ffe1c2cb42f197946f7bfa7c0", + "sha256": "723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/verify_release.py", + "git_blob": "65b4cdef75eb3f713e58b7081f25b630492e22f3", + "sha256": "bd8e9373edfe1062e7d6e8c2dc962fd4b5a4d05272f283ed85be3401a8d9463c", + "usage": "input" + }, + { + "path": "docs/research/agent-task-catalog.json", + "git_blob": "06c96f5579bb67ed1b86d334e78fbed7da6945f1", + "sha256": "6686ad58f1fbdbc87134a78901b60fd53a20d3984355e91defbbebc9e9fa8075", + "usage": "provenance" + } + ] +} diff --git a/research/frontier2044-epsilon-refinement/TASK.json b/research/frontier2044-epsilon-refinement/TASK.json new file mode 100644 index 0000000000..532f1a9721 --- /dev/null +++ b/research/frontier2044-epsilon-refinement/TASK.json @@ -0,0 +1,64 @@ +{ + "schema_version": 1, + "task_id": "uniform-transfer-audit", + "original_card": { + "id": "uniform-transfer-audit", + "question": "Can one exact all-size/compiler, precision, hosting or restoration implication be proved or falsified?", + "starting_points": [ + "certificates/selected-result.json", + "docs/audit.md" + ], + "methods": [ + "Prove one missing implication with explicit quantified hypotheses.", + "Find an exact counterexample at the claimed interface boundary." + ], + "acceptance_gate": "Identify the proposition and what would change downstream; do not equate a finite replay with a universal proof.", + "first_step": { + "command": [ + "python3", + "-B", + "scripts/research_baseline.py" + ], + "expected": "PASS_RESEARCH_BASELINE_BINDINGS_ONLY", + "inspect": "Read the selected review scope and choose one exact all-size or precision implication.", + "scope": "Positive control / source-bound orientation only; this is not a new construction or full cold replay." + }, + "first_experiment": "Write its quantified inputs and conclusion; find a missing hypothesis or construct a minimal exact adversarial instance.", + "bottleneck_link": "Finite supplier improvements are useful only under the retained transfer obligations.", + "allowed_variations": [ + "Choose one tape, precision, hosting or restoration lemma." + ], + "scope_change_triggers": [ + "Replacing a quantified obligation with another finite smoke test." + ], + "overlap_terms": [ + "uniform transfer", + "all-size", + "precision" + ] + }, + "base_commit": "322949a53488d64023fedb89a6774927707e57ba", + "scope_status": "changed", + "scope_change_reason": "Explicit donor request to build on the latest best reported result and prioritize a fast independently checked positive refinement; this is an arithmetic parameter improvement, not closure of an all-size interface.", + "actual_scope": "Tighten only the free epsilon point in pinned PR2044, preserving its supplier and 30000-digit precision; require source-bound complete parent replay before publication.", + "bottleneck_link": "Improves the explicit outer exponent toward the fixed supplier endpoint; the gain is extremely small and does not advance the structural supplier ceiling.", + "stop_rule": "Reject if any strict inequality, rejection control, independent derivation, parent source pin, or full finite release admission fails.", + "evidence": "RESULT.json: source-bound full finite admission plus exact 62-inequality/17-control outer refinement. VALIDATION.json records the unrelated pre-existing broad regression pin failure.", + "author": "dataisfire", + "ai_assistance": "Substantial OpenAI Codex assistance in research, implementation, verification and package preparation.", + "outcome": "completed", + "open_questions": [ + { + "question": "Can the paid supplier endpoint increase materially?", + "why_it_matters": "Free slack tightening only approaches the same supplier ceiling.", + "first_step": "Test one new priced multi-gate or changed-frame supplier mechanism against current scoped obstructions.", + "blocked_by": "A complete compatible native and paid-cost construction is needed." + }, + { + "question": "Can source-bound memoization avoid repeated identical coarse rejection calculations in full admission?", + "why_it_matters": "The unchanged high-precision coarse rejection is repeated by independent control stages; fine acceptance and outer witness computations already have source-bound caches.", + "first_step": "Measure the unchanged exact coarse moment call and prove any memo key binds its complete input tuple and engine source; require identical outputs and preserved rejection controls.", + "blocked_by": "No cache or checker change is part of this contribution; the original full replay remains required." + } + ] +} diff --git a/research/frontier2044-epsilon-refinement/VALIDATION.json b/research/frontier2044-epsilon-refinement/VALIDATION.json new file mode 100644 index 0000000000..25a31af6a7 --- /dev/null +++ b/research/frontier2044-epsilon-refinement/VALIDATION.json @@ -0,0 +1,52 @@ +{ + "status": "PASS_CONTRIBUTION_FINITE_ADMISSION_WITH_DISCLOSED_BASELINE_REGRESSION_FAILURE", + "full_gate": "PASS_SOURCE_BOUND_COMPLETE_FINITE_OUTER_REFINEMENT", + "parent_head": "322949a53488d64023fedb89a6774927707e57ba", + "parent_manifest_sha256": "236cff02c0d2358174226f69d3b5702ec151af6b5841501dd4be69963b5cd8f9", + "claim_sha256": "e18198322b541c3f69d0c116f422072d521d99e1aa2e31850184b1c732964514", + "kappa_sha256": "19f073c443e9c9cb2bba4ab1c16a271523029a93f674315491b21b492290ba21", + "arithmetic": { + "strict_checks": 62, + "rejecting_controls": 17, + "independent_cost_powers": 9, + "exact_positive_gain": true + }, + "supplier": { + "status": "PASS_T74_EXACT_FILL_COMPLETE_FINITE_ADMISSION", + "fresh_changed_base_and_extra_native_replays": true, + "retained_predecessor_native": "Source-bound reuse from earlier personal cold replay; unchanged witness bytes and successful native/ledger/local/wrapper/phase steps validated.", + "native_and_conservative_outer_inequalities": 47, + "both_moment_engines_and_adjacent_grid_rejection": true, + "controls": { + "admission": 114, + "bit": 12, + "controller": 15, + "independent_owner": 8, + "geometry": 6 + } + }, + "parent_outer": { + "status": "PASS_OUTER", + "exact_evidence_replays": 19, + "committed_artifact_bytes_reproduced": true, + "aggregate_linux_limit": "Frozen parent CRLF artifacts differ bytewise from Linux LF regeneration. Unchanged outer checker passes on Windows; unchanged supplier checker passes on Linux. No parent assertion or certificate was changed." + }, + "registered_replay": "PASS under CPython 3.12.3; fast arithmetic gate only", + "assertion_disabled_control": "Rejected; assertion guards preserved", + "regression": { + "gen4_bank_verify": "PASS", + "frontier741_verify": "PASS", + "make_verify": { + "status": "FAIL_PREEXISTING_HISTORICAL_SOURCE_PIN", + "command": "make verify", + "stopped_target": "split-skip-check", + "file": "scripts/audit_fused_block.py", + "expected_sha256": "2afb83ca8e5f193ca8a4c242becf267ad1d9dc2578ba238b820e98d5185f6288", + "actual_sha256": "6fe64f886309d9154e33a3d67a16e8714cebc424a7a248b3080f8cab7d94179b", + "unchanged_from_parent_head": "322949a53488d64023fedb89a6774927707e57ba", + "scope": "Both source and frozen SOURCE.json are byte-identical to the untouched PR2044 parent. No pin, assertion or certificate was edited to obtain a pass. Required gen4-bank and frontier741 checks passed before this failure." + }, + "extra_unit_suite": "Interrupted after inherited Git environment interfered with fixture setup in the fresh isolated repository; repository settings restored. No full unit-suite pass claimed." + }, + "privacy": "All new files scanned against private paths, actual private username/hostname and credential patterns. No private raw logs, timing/hardware data or machine identifiers included. Public dataisfire author and noreply email only." +} diff --git a/research/frontier2044-epsilon-refinement/VERIFY.json b/research/frontier2044-epsilon-refinement/VERIFY.json new file mode 100644 index 0000000000..290fcf9c70 --- /dev/null +++ b/research/frontier2044-epsilon-refinement/VERIFY.json @@ -0,0 +1,403 @@ +{ + "schema_version": 1, + "status": "ready", + "python": "3.12", + "requirements": [], + "commands": [ + { + "argv": [ + "{python}", + "-B", + "{package}/verify.py" + ], + "timeout_seconds": 600, + "checks": "Exact 62 outer inequalities, 17 rejection controls, independent nine-cost balance, exact positive gain and complete immutable parent manifest. This fast hook does not run native admission." + } + ], + "inputs": [ + "research/capped-fusion-t74-k554/MANIFEST.json", + "research/capped-fusion-t74-k554/ADMISSION-DERIVATION.patch", + "research/capped-fusion-t74-k554/audit_fast.py", + "research/capped-fusion-t74-k554/audit_mixed.py", + "research/capped-fusion-t74-k554/CLAIM.json", + "research/capped-fusion-t74-k554/code/assemble.py", + "research/capped-fusion-t74-k554/code/assembly_controls.py", + "research/capped-fusion-t74-k554/code/audit_allcold.py", + "research/capped-fusion-t74-k554/code/bind_providers_portable.py", + "research/capped-fusion-t74-k554/code/bit_supplier_controls.py", + "research/capped-fusion-t74-k554/code/emit_allcold.py", + "research/capped-fusion-t74-k554/code/fine_cache.py", + "research/capped-fusion-t74-k554/code/fine_mercator.py", + "research/capped-fusion-t74-k554/code/fine_moment.py", + "research/capped-fusion-t74-k554/code/freeze_spec.py", + "research/capped-fusion-t74-k554/code/generated_identity.py", + "research/capped-fusion-t74-k554/code/invoice_allcold.py", + "research/capped-fusion-t74-k554/code/lemmag_checks.py", + "research/capped-fusion-t74-k554/code/lemmag_stage.py", + "research/capped-fusion-t74-k554/code/oracle_check.py", + "research/capped-fusion-t74-k554/code/prepare_global.py", + "research/capped-fusion-t74-k554/code/restore_parent.py", + "research/capped-fusion-t74-k554/code/witness.py", + "research/capped-fusion-t74-k554/construction/leaver/PIVOT-SWAP-k8.json", + "research/capped-fusion-t74-k554/CONSTRUCTION.json", + "research/capped-fusion-t74-k554/DISPATCH.json", + "research/capped-fusion-t74-k554/evidence/ADMISSION-CONTROLS.json", + "research/capped-fusion-t74-k554/evidence/ASSEMBLY.json", + "research/capped-fusion-t74-k554/evidence/BIT-CONTROLS.json", + "research/capped-fusion-t74-k554/evidence/FULL-ADMISSION.json", + "research/capped-fusion-t74-k554/evidence/GEOMETRY-CONTROLS.json", + "research/capped-fusion-t74-k554/evidence/INDEPENDENT.json", + "research/capped-fusion-t74-k554/evidence/OUTER-DISCOVERY.json", + "research/capped-fusion-t74-k554/evidence/pr1377/CLAIM.json", + "research/capped-fusion-t74-k554/evidence/pr1377/PROOF-NOTE.md", + "research/capped-fusion-t74-k554/evidence/pr1377/RELEASE.json", + "research/capped-fusion-t74-k554/evidence/pr1377/RESULT.json", + "research/capped-fusion-t74-k554/evidence/REGRESSION37-CONTROLS.json", + "research/capped-fusion-t74-k554/freeze_spec.py", + "research/capped-fusion-t74-k554/geometry_controls.py", + "research/capped-fusion-t74-k554/GLOBAL-TEMPLATE.json.gz", + "research/capped-fusion-t74-k554/independent_core.py", + "research/capped-fusion-t74-k554/inputs/DISPATCH.json", + "research/capped-fusion-t74-k554/inputs/GLOBAL-TEMPLATE.json.gz", + "research/capped-fusion-t74-k554/inputs/OWNERS.json.gz", + "research/capped-fusion-t74-k554/inputs/PLAN.json", + "research/capped-fusion-t74-k554/inputs/PR589-EXPECTED.json", + "research/capped-fusion-t74-k554/inputs/SPEC.json", + "research/capped-fusion-t74-k554/lift_parent.py", + "research/capped-fusion-t74-k554/new/CHAIN.json", + "research/capped-fusion-t74-k554/new/EDITS-1.json", + "research/capped-fusion-t74-k554/new/EDITS.json", + "research/capped-fusion-t74-k554/new/extra-word-566.json.gz", + "research/capped-fusion-t74-k554/new/gauge44-word-566.json.gz", + "research/capped-fusion-t74-k554/new/pivotcheck.py", + "research/capped-fusion-t74-k554/new/PLAN.json", + "research/capped-fusion-t74-k554/new/PROFILE.json", + "research/capped-fusion-t74-k554/new/rebind.py", + "research/capped-fusion-t74-k554/new/rebuild.py", + "research/capped-fusion-t74-k554/new/rebuild_chain.py", + "research/capped-fusion-t74-k554/new/SPEC.json", + "research/capped-fusion-t74-k554/new/steps/0/extra.json.gz", + "research/capped-fusion-t74-k554/new/steps/0/gauge44.json.gz", + "research/capped-fusion-t74-k554/NOTICE", + "research/capped-fusion-t74-k554/ORDER.json", + "research/capped-fusion-t74-k554/outer/B.json", + "research/capped-fusion-t74-k554/outer/check_fine_padding.py", + "research/capped-fusion-t74-k554/outer/check_gaugefree.py", + "research/capped-fusion-t74-k554/outer/check_ledger.py", + "research/capped-fusion-t74-k554/outer/CLASSICAL-BOUNDARY.md", + "research/capped-fusion-t74-k554/outer/FINE-PADDING-COMPOSITION.md", + "research/capped-fusion-t74-k554/outer/GAUGEFREE-INTERIORS.md", + "research/capped-fusion-t74-k554/outer/INDEPENDENT.json", + "research/capped-fusion-t74-k554/outer/independent_check.py", + "research/capped-fusion-t74-k554/outer/LEDGER.json", + "research/capped-fusion-t74-k554/outer/OUTER-CLAIM.json", + "research/capped-fusion-t74-k554/outer/RECT-BOUNDARY.md", + "research/capped-fusion-t74-k554/outer/replay_evidence.py", + "research/capped-fusion-t74-k554/outer/RETUNED-SLACKS.md", + "research/capped-fusion-t74-k554/outer/run_outer.py", + "research/capped-fusion-t74-k554/outer/sched_review.py", + "research/capped-fusion-t74-k554/outer/sched_test.py", + "research/capped-fusion-t74-k554/outer/struct_check.py", + "research/capped-fusion-t74-k554/outer/STRUCTURED-BOUNDARY.md", + "research/capped-fusion-t74-k554/outer/UNION-SCHEDULE.md", + "research/capped-fusion-t74-k554/OWNERS.json.gz", + "research/capped-fusion-t74-k554/PARENT-LIFT-RECEIPT.json", + "research/capped-fusion-t74-k554/PLAN.json", + "research/capped-fusion-t74-k554/PRICE.json", + "research/capped-fusion-t74-k554/PROFILE.json", + "research/capped-fusion-t74-k554/README.md", + "research/capped-fusion-t74-k554/reconstruct.py", + "research/capped-fusion-t74-k554/RELEASE.json", + "research/capped-fusion-t74-k554/replay.py", + "research/capped-fusion-t74-k554/SOURCE-PIN-REFINEMENT.json", + "research/capped-fusion-t74-k554/SOURCE-PIN.json", + "research/capped-fusion-t74-k554/SPEC.json", + "research/capped-fusion-t74-k554/vendor/build_parent.py", + "research/capped-fusion-t74-k554/vendor/pr1297/audit_mixed.py", + "research/capped-fusion-t74-k554/vendor/pr1297/build_word.py", + "research/capped-fusion-t74-k554/vendor/pr1297/CLAIM.json", + "research/capped-fusion-t74-k554/vendor/pr1297/COMPOSITION.json", + "research/capped-fusion-t74-k554/vendor/pr1297/construct.py", + "research/capped-fusion-t74-k554/vendor/pr1297/CONSTRUCTION.json", + "research/capped-fusion-t74-k554/vendor/pr1297/CONTROL-SITES-base.json", + "research/capped-fusion-t74-k554/vendor/pr1297/CONTROL-SITES-extra.json", + "research/capped-fusion-t74-k554/vendor/pr1297/controls.py", + "research/capped-fusion-t74-k554/vendor/pr1297/DEPENDENCIES.json", + "research/capped-fusion-t74-k554/vendor/pr1297/DISPATCH.json", + "research/capped-fusion-t74-k554/vendor/pr1297/EXACT-RELATIONS.json", + "research/capped-fusion-t74-k554/vendor/pr1297/extra-word.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/freeze_spec.py", + "research/capped-fusion-t74-k554/vendor/pr1297/gauge44-word.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/GLOBAL-TEMPLATE.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/INDEPENDENT-DERIVATION.patch", + "research/capped-fusion-t74-k554/vendor/pr1297/independent_core.py", + "research/capped-fusion-t74-k554/vendor/pr1297/inputs/base.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/inputs/extra.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/KERNEL-CONTROLS-base.json", + "research/capped-fusion-t74-k554/vendor/pr1297/KERNEL-CONTROLS-extra.json", + "research/capped-fusion-t74-k554/vendor/pr1297/kernel543_controls.py", + "research/capped-fusion-t74-k554/vendor/pr1297/kernel_controls.py", + "research/capped-fusion-t74-k554/vendor/pr1297/MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1297/MAPPED-RECIPE.json", + "research/capped-fusion-t74-k554/vendor/pr1297/NATIVE-VALIDATION.json", + "research/capped-fusion-t74-k554/vendor/pr1297/NOTICE", + "research/capped-fusion-t74-k554/vendor/pr1297/original-main/research/complex-t21-owners/vendor/pr870/t16/build_parent.py", + "research/capped-fusion-t74-k554/vendor/pr1297/OWNERS.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/PLAN.json", + "research/capped-fusion-t74-k554/vendor/pr1297/premise/inputs/CODED-CELLS-k8.json", + "research/capped-fusion-t74-k554/vendor/pr1297/premise/inputs/TRI-LEAVER-k8.json", + "research/capped-fusion-t74-k554/vendor/pr1297/premise/premise_check.py", + "research/capped-fusion-t74-k554/vendor/pr1297/premise/verify_1049.py", + "research/capped-fusion-t74-k554/vendor/pr1297/PRICE.json", + "research/capped-fusion-t74-k554/vendor/pr1297/PROFILE.json", + "research/capped-fusion-t74-k554/vendor/pr1297/README.md", + "research/capped-fusion-t74-k554/vendor/pr1297/RECIPE-base.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/RECIPE-extra.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/replay.py", + "research/capped-fusion-t74-k554/vendor/pr1297/SEARCH-RESULT.json", + "research/capped-fusion-t74-k554/vendor/pr1297/search_relations.py", + "research/capped-fusion-t74-k554/vendor/pr1297/SOURCE-PIN.json", + "research/capped-fusion-t74-k554/vendor/pr1297/SPEC.json", + "research/capped-fusion-t74-k554/vendor/pr1297/upstream-layout.tar.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/UPSTREAM-NOTICE.md", + "research/capped-fusion-t74-k554/vendor/pr1297/VALIDATION.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/audit.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/build_word.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/CLAIM.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/common.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/construct.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/controller.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/controls.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FLOW.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FOUR-RECIPE.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FOUR-WORD.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/MIX.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/ORDER.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/OWNERS.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/PLAN.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/SPEC.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/DEPENDENCY-PINS.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/ANCESTRY.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/ENTRANCE-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/FLOW-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/INDEPENDENT-OWNERS.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/PARENT-CHECK.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/PRICE.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RAW-demote3.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RAW-demote4.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/REPLAY-SOURCE.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RESULT.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/STAGES.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/WORD-RECIPE.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/local_controls.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/native.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/NOTICE.md", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/package.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/prepare.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/price.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/PROOF.md", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/README.md", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/SOURCE-PINS.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/JOINT-WORD.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-coordinated-owners-NOTICE.md", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-eight-ends-NOTICE.md", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-eight-ends-t16-NOTICE.md", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-three-demotions-NOTICE.md", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/NOTICE.md", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/PLAN.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/SPEC.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/verify.py", + "research/capped-fusion-t74-k554/vendor/pr1297/verify.py", + "research/capped-fusion-t74-k554/vendor/pr1297/x54_controls.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ALGEBRAIC-STABILITY-INDEPENDENT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/BILATERAL-LDU.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-GAUGE-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-INTERIORS.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-OUTER-ARITHMETIC.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-SIGNOFF.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/check_capped_outer.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/check_matrix_corollary.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/BILATERAL-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/BILATERAL-LDU.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CAPPED-GAUGE-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CAPPED-GAUGE-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_bilateral.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_capped_gauges.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_cyclic_scan.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_dyadic_interiors.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_forward_cell.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_log_a_schur.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_lower.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_upper_data.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_upper_merge.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CYCLIC-SCAN-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/DYADIC-INTERIOR-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/FORWARD-CELL-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/FORWARD-SMALL-A-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOG-A-PHASE-SCHUR-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOG-A-SCHUR-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOWER-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOWER-FACTOR.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/README.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-DATA-ALGORITHM.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-DATA-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-LIFTING.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-MERGE-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_embedding.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_halo.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_ragged.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_sparse_shear.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/EMBEDDING-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/HALO-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/HALO-THEOREM.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/PARAMETER-CHECK.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RAGGED-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RAGGED-PERIODS.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/README.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RECTANGULAR-EMBEDDING.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/SPARSE-SHEAR-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/SUPPORT-ROUTER.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/CORE-SOURCES.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/core_review.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/FINAL-REVIEW.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/gaussian_layout_review.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/layout_subreview.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/union_subreview.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_circuits.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_exact_algebra.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_supplier_capacity.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_tensor_compiler.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/CIRCUIT-REPLAY.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/EXACT-ALGEBRA.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/READING-COVERAGE.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SHALLOW-TOEPLITZ.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SOURCES.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPLIER-AUDIT-SOURCES.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPLIER-CAPACITY-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPLIER-SUPPORT-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPORT-ADVERSARIAL-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/TENSOR-COMPILER-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/TENSOR-COMPILER.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/ALGEBRAIC-STABILITY-INDEPENDENT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/check_source_constructions.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/PROOF-AND-COVERAGE.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/SOURCE-CONSTRUCTIONS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/SOURCE-COVERAGE.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/CAPPED-INTERIORS.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/CAPPED-OUTER-ARITHMETIC.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_capped_outer.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_matrix_corollary.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_outer.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY-ARITHMETIC.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY-REVIEW.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/OUTER-ARITHMETIC.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/OUTER-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/README.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/REVIEW-RECEIPT.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/CAPPED-LAYOUT-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/CAPPED-SIGNOFF.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/check_capped_layout.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/check_q_embedding.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/check_union.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-SIGNOFF.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/PARAMETERS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/Q-EMBEDDING-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/README.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/UNION-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_constructions.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_erasure_rounding.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_fixed_a_ldu.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_holes.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_ledger.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_nearest_neighbor.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_positive_tree.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_q_ldu.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_sylvester_factor.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/ERASURE-ROUNDING-CONTROL.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/FIXED-A-LDU-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/FIXED-A-PERIODIC-NORM-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/HOLES-AND-Q-LDU.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/HOLES-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/LEDGER.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/NEAREST-NEIGHBOR-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/NEAREST-NEIGHBOR-NORM.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/PARTIAL-FUSION.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/POSITIVE-TREE-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/Q-LDU-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/README.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/REFINED-PHASE-FUSION.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/STABLE-POSITIVE-TREE.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/SYLVESTER-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/TASK.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/FINAL-PACKAGE-REVIEW.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/FORWARD-SMALL-A-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/bind_native_admission.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/check_frontier_fusion.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/FRONTIER-FUSION-ARITHMETIC.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/INDEPENDENT-SUBSTITUTION-RECEIPT.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/INDEPENDENT-SUBSTITUTION-REVIEW.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/independent_substitution_check.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/NATIVE-ADMISSION-BINDING.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/REPRODUCE.txt", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/T74-APPENDIX.tex", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/gaussian_fixed_width_note.tex", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/HALO-THEOREM.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/INDEPENDENT-FINAL-REVIEW.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/LOG-A-PHASE-SCHUR-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/make_native_capsule.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MANIFEST-UPDATE.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY-ARITHMETIC.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY-REVIEW.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-LAYOUT-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-LAYOUT-SIGNOFF.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-SOURCE-CONSTRUCTIONS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-SOURCE-COVERAGE.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-TRANSFER-MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/NATIVE-RECEIPT-CAPSULE.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/OUTER-ARITHMETIC.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/OUTER-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PACKAGE-MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PHASE-LAYOUT-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/phase_fusion_note.tex", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PROOF-AND-COVERAGE.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PUBLICATION-CHECKS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PUBLICATION-SOURCES.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/README.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/REVIEW-RECEIPT.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ROOT-EXACT-REPLAY.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ROOT-MATRIX-EXACT-REPLAY.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SHALLOW-TOEPLITZ.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SOURCES.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SUPPLIER-SUPPORT-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SUPPORT-ADVERSARIAL-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SUPPORT-ROUTER.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/full-1661-verification/RESULT.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/full-1661-verification/STAGES.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/CLAIM.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/inputs/PR589-EXPECTED.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/new/SPEC.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/NOTICE", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/TASK.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/TENSOR-COMPILER.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/VERIFIER-NEGATIVE-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/VERIFY.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/verify.py", + "research/capped-fusion-t74-k554/vendor/pr1786/FINE-PRIME-PADDING.md", + "research/capped-fusion-t74-k554/vendor/pr1786/NOTICE.md", + "research/capped-fusion-t74-k554/verify.py", + "research/capped-fusion-t74-k554/verify_manifest.py", + "research/capped-fusion-t74-k554/verify_release.py" + ] +} diff --git a/research/frontier2044-epsilon-refinement/ledger.py b/research/frontier2044-epsilon-refinement/ledger.py new file mode 100644 index 0000000000..11aa5db902 --- /dev/null +++ b/research/frontier2044-epsilon-refinement/ledger.py @@ -0,0 +1,134 @@ +"""Exact free-epsilon refinement of PR2044; no supplier or theorem change. + +The ledger formulas below are retained from PR2044 / Jeremy Kothe's package, +PR1786 (Chafik Boukhalfa), PR1673 (Vlado Vojdanovski), and PR1758 lineage. +Only DELTA_E changes. Parent native/moment admission is a separate required gate. +Prepared under dataisfire with substantial OpenAI Codex assistance. Apache-2.0. +""" +from fractions import Fraction as Q +from pathlib import Path +import json,sys +sys.set_int_max_str_digits(0) +if not __debug__: raise RuntimeError('Assertions must be enabled') +HERE=Path(__file__).resolve().parent +PARENT=HERE.parent/'capped-fusion-t74-k554' +spec=json.loads((PARENT/'new/SPEC.json').read_text()) +BJ=json.loads((PARENT/'outer/B.json').read_text()) +DIG=spec['outer_refinement']['endpoint_digits'] +R0=Q(1,10**(DIG+10)); ZETA=Q(1,10**(DIG+12)); SLACK=R0; GAP=R0; STOP=Q(1,10**(DIG+16)) +FLOOR=10**(DIG+46); BACKOFF=Q(1,10**(DIG+22)); B_GAP=R0 +DELTA_E=Q(1025,1024)*R0 +EPS=1-DELTA_E; BETA=1-3*DELTA_E +THETA_POWER=Q(2); HALO_POWER=48; CORE_POWER=128; STRASSEN_TAU=Q(45,16) +certified_complex=Q(spec['expected']['complex_lower']) +bit=Q('0.001733427039589844234749') +b=certified_complex-B_GAP +assert b==Q(BJ['b']) +q=b-GAP; a=(q+b)/2 +online=Q(spec['expected']['kappa']); old=Q('0.001673360105405778') +assert 00 for x in row['strict_checks'].values()) + assert min(row['margins'].values())==row['margins']['main_transform'] + # Independent balance and cost equations, without the ledger function. + delta=F(1025,1024*10**(L.DIG+10));e=1-delta;beta=1-3*delta + q=F(rd(parent/'outer/B.json')['b'])-F(1,10**(L.DIG+10)) + c=F(3,32);s=F(1,10**(L.DIG+10));xi=e+e*q+s-c + k=F((e*q*10**(L.DIG+46)).__floor__(),10**(L.DIG+46))-F(1,10**(L.DIG+22)) + assert k==row['kappa'] and delta>L.R0 and 00 + assert 1-e-L.R0==L.R0/F(1024)>0 + assert F(1,2)L.ZETA>0 + assert 1-beta-2*(1-e)==delta>0 and 7**16<2**45 + costs={'transform':1-e*q,'global_router':1-L.a,'gaussian':e-q*beta,'group_router':e-L.a*beta,'group_scans':e-beta,'boundary':e-xi+(F(45,16)-1)/2,'sparse_union':e+F(1,2)-xi,'polynomials':1-e,'microfaces':e+beta+48-128+2} + assert max(costs.values())==costs['transform'] and all(v<1-k for v in costs.values()) + prior=F(rd(parent/'outer/OUTER-CLAIM.json')['kappa']) + prior_derived=F(((1-2*L.R0)*q*L.FLOOR).__floor__(),L.FLOOR)-L.BACKOFF + assert prior==prior_derived and k>prior + gain=k-prior; ideal=F(1023,1024)*q*L.R0 + assert abs(gain-ideal)0) + return {'kappa_decimal':decimal(k),'gain_rational':str(gain),'kappa_sha256':hashlib.sha256(decimal(k).encode()).hexdigest(),'strict_checks':62,'rejecting_controls':controls,'epsilon_delta_ratio':'1025/1024','parent_head':'322949a53488d64023fedb89a6774927707e57ba','parent_manifest_sha256':sha(parent/'MANIFEST.json'),'scope':'Conditional outer arithmetic refinement only; unchanged supplier finite admission and complete parent outer evidence replays are required separately.'} +def main(): + ap=argparse.ArgumentParser();ap.add_argument('--write-claim',action='store_true');ap.add_argument('--supplier-work',type=Path);ap.add_argument('--outer-work',type=Path);ap.add_argument('--outer-log',type=Path);ap.add_argument('--out',type=Path);args=ap.parse_args() + result=check() + if args.write_claim:(P/'CLAIM.json').write_text(json.dumps(result,indent=2)+'\n',encoding='utf-8',newline='\n');return + assert rd(P/'CLAIM.json')==result,'candidate claim drift' + result['status']='PASS_EXACT_OUTER_REFINEMENT_ONLY' + if any((args.supplier_work,args.outer_work,args.outer_log)): + assert all((args.supplier_work,args.outer_work,args.outer_log)), 'All full-admission inputs are required' + w=args.supplier_work; supplier=rd(w/'RESULT.json');assembly=rd(w/'strict/ASSEMBLY.json') + assert supplier['status']=='PASS_T74_EXACT_FILL_COMPLETE_FINITE_ADMISSION' and supplier['manifest_sha256']==result['parent_manifest_sha256'] + assert all(s['exit_code']==0 for s in supplier['stages']) + assert supplier['controls']=={'admission':114,'bit':12,'controller':15,'independent_owner':8,'geometry':6} + assert assembly['status']=='PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY' and len(assembly['outer'])==47 and len(assembly['conservative_outer'])==47 + assert F(assembly['complex_lower'])==L.certified_complex and F(assembly['bit_lower'])==L.bit + assert {int(k):v for k,v in assembly['complex_profile'].items()}==L.profile + for rows in (assembly['moments'],assembly['conservative_moments']): + for r in rows: + for engine in ('mercator','base_two'): + lo,hi=map(F,r[engine]);assert lo<=hi + # Parent receipts store M(endpoint)-1, so acceptance/rejection is relative to zero. + assert hi<0 if r['accept'] else lo>0 + for key,side,endpoint in (('moments','complex',L.certified_complex),('conservative_moments','conservative_complex',F(L.spec['expected']['conservative_complex_lower']))): + rows=[r for r in assembly[key] if r['side']==side] + assert any(r['accept'] and F(r['endpoint'])==endpoint for r in rows) + assert any(not r['accept'] and F(r['endpoint'])==endpoint+F(1,10**L.DIG) for r in rows) + for name in ('LEDGER.json','INDEPENDENT.json'): + assert (args.outer_work/'outer'/name).read_bytes()==(L.PARENT/'outer'/name).read_bytes(),name + rawlog=args.outer_log.read_bytes();outerlog=rawlog.decode('utf-16' if rawlog.startswith((b'\xff\xfe',b'\xfe\xff')) else 'utf-8') + assert outerlog.strip().splitlines()[-1]=='PASS_OUTER' + assert 'PASS_EXACT_REPLAY 19' in outerlog + assert rd(args.outer_work/'fine-padding.json')['status']=='PASS_FINE_PADDING_FINITE_CONTROLS' + result['status']='PASS_SOURCE_BOUND_COMPLETE_FINITE_OUTER_REFINEMENT' + result['parent_receipt_sha256']={n:sha(w/n) for n in ('RESULT.json','strict/ASSEMBLY.json','STAGES.json')} + result['parent_outer_sha256']={n:sha(args.outer_work/'outer'/n) for n in ('LEDGER.json','INDEPENDENT.json')} + result['parent_outer_log_sha256']=sha(args.outer_log) + result['replay_scope']='Unchanged parent supplier checker on Linux and unchanged CRLF-bound outer checker on Windows; Linux aggregate release byte comparison failed solely on CRLF/LF artifact endings. No assertions or certificates were changed.' + if args.out:args.out.write_text(json.dumps(result,indent=2)+'\n',encoding='utf-8',newline='\n') + print(result['status'],'strict_checks=62 controls=17 positive_gain=True') +if __name__=='__main__':main() diff --git a/research/kappa-fixed-grid-ceiling/CLAIM.json b/research/kappa-fixed-grid-ceiling/CLAIM.json new file mode 100644 index 0000000000..430b2fbb31 --- /dev/null +++ b/research/kappa-fixed-grid-ceiling/CLAIM.json @@ -0,0 +1,81 @@ +{ + "kappa_decimal": "0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999999999999999998999999999999999999999999", + "gain_rational": "2001681395341824885873407287860125703/10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "kappa_sha256": "a5c2474cf39852b066700fec867b3946b391b64b0cd27dcf9c407cc50aef9267", + "strict_checks": 63, + "rejecting_controls": { + "endpoint_equality": [ + "complex_endpoint", + "q_below_effective", + "q_below_internal", + "q_below_leaf", + "lambda_above_tau", + "lambda_above_internal", + "lambda_prime_above_lambda", + "lambda_prime_above_leaf" + ], + "zero_layout_slack": [ + "positive_layout_slack" + ], + "old_per_axis_scan": [ + "old_per_axis_scan_above_kappa" + ], + "full_cell_gauge": [ + "unrecentered_group_gauge" + ], + "full_key_sort": [ + "unnecessary_full_key_sort_above_kappa" + ], + "old_g_factor_union_row": [ + "old_g_factor_union_row_above_kappa" + ], + "old_theta_chirp_guard": [ + "old_theta_chirp_guard" + ], + "old_linear_guard": [ + "old_linear_guard" + ], + "old_union_tag_2beta": [ + "old_union_tag_2beta" + ], + "matrix_below_strassen": [ + "strassen_integer_power_gap" + ], + "halo_too_short": [ + "halo_covers_generic_inverse_radius" + ], + "core_too_small": [ + "microbox_halo_volume", + "microbox_face_corrections_above_kappa" + ], + "group_equals_dimension": [ + "group_below_dimension", + "group_key_fits_record", + "membership_arithmetic_fits_record" + ], + "epsilon_equals_one": [ + "epsilon_below_one", + "global_gamma_power_slack", + "actual_logarithmic_gamma_guard", + "source_axis_superpolynomial", + "gaussian_above_main" + ], + "epsilon_not_above_r0_slack": [ + "global_gamma_power_slack" + ], + "beta_below_gaussian_window": [ + "gaussian_above_main" + ], + "beta_above_membership_window": [ + "membership_arithmetic_fits_record" + ] + }, + "epsilon_delta_ratio": "1025/1024", + "r0_exponent_offset": 80, + "fixed_grid_maximum_attained": true, + "grid_digits": 30046, + "backoff_digits": 30022, + "parent_head": "322949a53488d64023fedb89a6774927707e57ba", + "parent_manifest_sha256": "236cff02c0d2358174226f69d3b5702ec151af6b5841501dd4be69963b5cd8f9", + "scope": "Conditional fixed-grid maximum within the declared free-gap family only; unchanged supplier finite admission and complete parent outer evidence replays are required separately." +} diff --git a/research/kappa-fixed-grid-ceiling/OVERLAP.json b/research/kappa-fixed-grid-ceiling/OVERLAP.json new file mode 100644 index 0000000000..53caa5c7b4 --- /dev/null +++ b/research/kappa-fixed-grid-ceiling/OVERLAP.json @@ -0,0 +1,22 @@ +{ + "checked_at": "2026-10-14T22:16:09.325735+00:00", + "coverage": { + "open_prs": { + "fetched_at": "2026-10-14T22:14:20.536917+00:00", + "complete_pagination": true, + "records": 426 + }, + "discussions": { + "fetched_at": "2026-10-14T22:16:09.213275+00:00", + "complete_pagination": true, + "records": 859 + } + }, + "warnings": [], + "upstream_main": "0fdd7d82de03e43c9e5a1000dfbcd380d1b687d2", + "priority_revision": 4, + "predecessor": 2161, + "predecessor_head": "f7b63bf857f08eeb8f6cf3e8529f9ef6a10291b6", + "scope": "Uniform free-gap descent attaining the same fixed floor-grid/backoff upper bound; no new paid supplier.", + "limit": "Complete public metadata coverage is not a novelty certificate; nearby sources and the exact predecessor were inspected." +} diff --git a/research/kappa-fixed-grid-ceiling/PROOF.md b/research/kappa-fixed-grid-ceiling/PROOF.md new file mode 100644 index 0000000000..45855ce1d7 --- /dev/null +++ b/research/kappa-fixed-grid-ceiling/PROOF.md @@ -0,0 +1,15 @@ +# Maximum on the declared fixed kappa grid + +Let C be the unchanged certified complex supplier endpoint, F=10^30046 the unchanged floor denominator, and B=10^(-30022) the unchanged positive backoff. Every point in this free-gap family uses 00. This condition was previously implicit in the checked beta window. It matters for rejection controls when the kappa floor/backoff is coarser than the new free gaps: a beta outside the main-binding window might still exceed the lower rounded kappa, but is not in the declared main-binding family. The original 17 mutation vectors are retained; no original inequality or parent assertion is removed. + +The independent nine-cost derivation verifies the new point, compares the exact prior PR2161 point, and proves the positive gain without using displayed decimals. The gamma spare power remains r0/1024>0. All eventual cutoffs remain asymptotic; no practical cutoff is claimed. + +The supplier, native words, owner map, invoice, primitive endpoint and fine engines are unchanged. Their original complete finite admission is source-bound reuse of the previous personal replay. PROVIDER-POINT.json additionally records fresh evaluations of both original fine engines at b. The inherited all-size/compiler, realization, hosting, precision/tape, recovery, analytic, prime-theorem and bit hypotheses remain conditional. diff --git a/research/kappa-fixed-grid-ceiling/PROVIDER-POINT.json b/research/kappa-fixed-grid-ceiling/PROVIDER-POINT.json new file mode 100644 index 0000000000..3180807335 --- /dev/null +++ b/research/kappa-fixed-grid-ceiling/PROVIDER-POINT.json @@ -0,0 +1,30 @@ +{ + "status": "PASS_FRESH_FINE_ENGINES_AT_INTERIOR_POINT", + "b": "167975495612554452133567099392070257699831143850258029546032752016286454826032563882630565613284463227445131690858622097207044812016541214277130063669295671573496252739062292771484541809955375633711247555881397678414055303867455788195656187980068925417121976748748369467569305698278892275731925556560668556641172523844965099933982707571528371427015770576230922603861177195565537750141465213654631088118574691758080251364054596785281080168096685613397857616294379232268248215298853292381199893886139972347826651223933374102565069347361144687000252703847838534338747512849399563015628187158685779242686357166546612903002964170062058737461007939730654718536222328463089454651194246205536230336601126874415585187378422737557543023845426665683864694477245505985398375000103601513435129166677035091980620483066887245419417038769869148147912015542917785344369152591951795892124004590679772698452011453476335355234699386282214405446821229284764297348574465032047230441299244288174711245002496393554879753524319689487907532758079455570701194854338707369183921993995863402184232152184615069940250028322312664852086581874096051036873916138506659723016189250462678346789322570278241899336856273594540500603089408008870977408029716252806287447251073366746597404714020129979993774418917608964094131278449163871342511730671494415498727830621123980071961124852393069570269035276089365194115770222250305057306261092731112655739015642430926792156914329116264972074836909753537632260646945571271828650550949444860120575988804902948042721599822849715745351816442502968051154223623254128908622923896096926167733484983793988297460358734030993797835468575092883968818861163126952060533972947968136894318174145182669008679121570755370129163344035285909429469108571157777613190796516146580065256589546559110073181736630290955844132832995334917603357903993468372392878994699354979348323212620852285676283820206524960019792827095630484311801693843462388312995339566519138552720830741849295221565445247363132757361071077160302831327206281642349226223230894414019096686218229016460699054677048159901435541234392717134364383286650134634326747021056376486732356045397728360978278860470322820619092139111646053071559341148447324693819715732096101459693125154104379128795754874535133815783785668603805873975709336905331919677991638529417993759060727279308183919658988643484186929542032856165871736444877493131677512052012589842648208749423135438633672190412589782962153930011558524460935229917572161365384754235186719728602672982677157867903605158896232866793398892684171307950305349413289098968212940361844220420220198827919586925159597120512627924316020791377378329612350810851826001576133204787304711412072976215311592594238158331403517752666932502364246409095207168959584957587376925394226257848210217594145856279208528150060920070658837983941473583722720169861500872983628882229180069491705027281603350379718769131762019428172897173265794542669169788729097911675854506104510808204467914792075218832585447853000802143883960578812022343119030497117561202093652321260351425875554783512101961354394728525514472939301009080356769464361197118831365417915520805171210879391758837833018218606475642683046065989300404646756707966623775556320352359382124555872017068784839794746910583416355165460737267645083328702903866454671884101189046594903656795371031271690566955688234934351938450109630320418807910604407174808781964280624178801371415534410076768964099015970548351310940876271339850410066228834518819432580799321320351993728709982077827439936273167394983039082444119678424950946358135600693951375976503950785930661013935193220090372262978813024718185494223259739739599767821563487941048309342681043773647127618453469979586722591948725020015951859591320462436065761410134182724530311027829373196604230720606845018767343235566188631784572328133577977316882207128626300111414568227375925849494676782331657370179170572702351551303738228748878219081200136721929439731415625066004825192430144067637784919944591373110232296552000777836086048268427949502251318735630537372015363802980671094516462092468693143968105576339561735179312464683630999094447794071458141819641810187192055366695466897122042535301830413317365501248814136568498566179740168475110675363352829507316679344173975882353825122389826374539110763892475607232005748428336353774239764837171266019911725502005076798361125039714273956703279081478335879169804714025531596917646233074443311214329360044757779245223205638120834386061353352982837049487499828535415915253192112555047038320797808617248132669185204481383182081498542834446098972495314234933755658179628534991669402307835886751460864933408175840350140680252675418355731037500896916021233096162287667994423170219554727266827338126893111820612180202756917009621926577383651735081106277195335506753083627079512973027912538991064637807750891946512198589952271006786157316962108545940379329313408841730691610639726107361375007680582533016891074690731995738363708772832104613634649316643015758338942883341837728303017282400913924457445522584805153527122245352244131733695628089282483980082132537027774853993964884739238127910149078004663425259877312168256431686936607267656171879126257312162576351214327967478727650826486421814225774577963686652529498486832640711757076628008877228470249184769402115886379332018212728569251536251529770378665959064390426713977109761386167956734736332018660199754940493313195302038620842976346554332105455387176785306314306152717453580943947937472948898401810066721517844436386783006388178659967317678437174705383930337804185412543307857953432798962486259375010340669942805609023747384542656518481397811870039385401317591890593674094504167747331090343965943307528381316885963896760843770793002266799815968254325638424874507664729961347805606074236952033001663308092282782496693341841950753395040109922333828193300613444584818977782636609925415127211038841851596102718934275638718666519530235617530851050896106714227299635047104446641613962202115975933993112710162496325212882145191963729588799884045941533093348053027250068974358177275820222144788737739705366451379165853600337609374625753664140948740394728035028363496322450371014418660649144797817670289548071051735566478251040549369983818020022830818305956943586382946234358774470905574445256190887949550822544315397357902808519411161018750957039182569601375452811970047502163121875157604544669196922084318754976807235427919298295138945967282510902165922114113765426953466110643964689866843583284669385250592594909025988691329384860094022102919125843005514857139541926695942045155455906273721377290403477252451351538381826661076046869653031861227967810973690755294823219904723970540937024093529048553589669940920502608132046631164257891693002515189013760097690090030776412315534327360431270484146493050807176348052222391016548608949476235520936872924841559362276752979740775783043735547389972066873239766444908318745507132868044286472855423334289938007882757576077273432411736245670651622265984575343944807742290237217390396877198519890290313903797300762685424385339476123332032558108476987706881757707594716333667138060351507880642031238429414871117578355435424677374844748815547675739312201297939111474830043799927344262675975078135858534482807366376586109157276302513646748576546949288389865341726822352151814433575448622621975395441984155312953242940262970212974379497878371149114549118027356372893605547179157826532026862499706455597873938222326943300406860101914907455543457918878057567961359960574527478879389657436292746176705004645549554330144816876185950553731786318468812978758705067275158208938934051259947136887245344232664177184554637705828270189505346760903158542870664842483763101462043456951180942058327250484956177114187820220150661799740591548847263570192075012567120713399920796369313634470329917074438131880242388150294543004451537028231724800171335347305907558494824199229098943415180062483031722456927704888295534616038199684562875385300390173598130486693010258983252699594666025737712929037399963086501634868516334245692803903490120748785051468445122794247053810067410457236743098663053415462424830259125744996676275085928478496222794516840423060986165613912012733573411585426577556641913998853430828659592390935492752547643872378443917248064014579160560774555376510104166404861984571812177375465693650750195078617427592837452936310973028084522708383682593018934273202710732821884631724314819288477493694875196438479460569386200805101785200984266203242210476545210662599215456980777419660606670744594490461504108978559149035301813723207597183741210636316240689032412154232836134200231030848905283966481449997060514862882711358908937082912804841711133281630597296582210450284529899743623174546454533802355864550368639286695873832728786219725303684830545780324250801069394854248659393727965084669877306313595224733499399250573606372456411597322536133963025090199844623600204879115052844454701474345283263949221839587303321355664746711373429508205788304082888679800643162458870848196905093072566884714253996394004068024720444480625108796823335612565934333763990799652735036186481904210044515628791821540552393872080053647129297387612431237456180138826304054270287450965847655184210004286951751257737009596158806182347283244994410837769612738407328336021609087131265602180206081683466933189638154822246595821142203000140059117578191660840385808359846079873335246467496075619371803223356755502872080453056546381709041180953536755530999186019076001589349158325972222087380428916036800996426784624414013906488554858764137672424825364777846907895205646039732945509468179248844546188668326218371084295813896246084315815322864673419004268430720664587057596127911263297072944106198383626696965109088092277543335913858278674637129016262095506643577302185311972590921929992011191984672813138176509359910701809003410447037028395682516567123827729742414436183843024786645681413695565319601502748385368500579285099598187472456332422345977618981118803165863921307846451115227138483178992784092392557404520042702555481043109978342689046124920277276114888527690531618974506313824753361309107087691218877221147615822122124991079642673515811280389458890418232150205324077979993141774259855668073792017303772813282577418889300834027597981292290713535412306805500015723943916011621111151412552619589835437049857303525782119359729271245603077614007902555109115618403436967969417130800419724091372906667120340376394171826508443045167954877405998287704915820373783176688369300190686718245993235182171672573806534400341997389383655709429558804898903036803249762062114687289020003594041841938515063660639651777162432847901200105688374598756891575870761892802403250487714983173228957301976023485634745912407022939706833818309809689873332373362524974748485821717021814889472292431375588958862702396742719832654040493365089889186586252164427405105160698184834980222730087303467774368842607725881507100350857244055805220410974612656641591621335932757315892896379577120861418218870098531464193056108750532323902273654856689502967508701921863242797203364575004377880534256061887131803240554832997070326782801700277305144063790254871107311223734792721768955126608612424270997942854649949424559433594917073753340688474079275580830698981132164489383480566113780307927856350844646158466623610771123530171420976904463183617855073249731355487034322812134965135844965360732562179924726676029293805427925505859749295898264657955351953725122574604778974483402599898013354995657782793572493773987542354097618392239787198071255332247866508231893041936723400812988786748920688672722800732638748359167913044536359646438003213407199205313287790796403885068338430649406997422681894086072715659709829010214285019194883326247119973505536300556455893077308260332245959304987748588713613864914827296636786319658462287504822317382098685772159587947197657198607949175148383122754125682164743716985741305501884154091403619526493438797137943592538174629418215419889325581118389638572693956164571193725119979541511253471351365274211403845035730677541422925076820446813291601527917597026594565421866235910284124242930484615103190097586136769093537907627227531719389693556177164057854801064590284112021126747127171511469716275681786353233874647911611961793857113981598812240591145929083092180538765984032091027415508076423609811571516248779161604806363731057746398102961393530851208156007094781275885784416586931249416843329491259743614813685476439018121696881645237655207961986710532209528791290359383541498707202870255121638483321562438101307583004836997123145231801191379142971187223079589483731959624642639658984349384139432053158823578298027182120885487707641178674138325141747599838174437757076720861622362373517674532054597126420144274284553404419870294303881976657332665523027435069674282490220669936034779943385875376380046765184406728628982463414987385141199293895913988754645292446983199779163604435484745664868881015548175400640327309016577842733526880441969488798115049614997257117547258482186308191528106681190536188701510338263387678014454865209266401488802091984383155138899328337580172530400452064913029828810431744598538532912922433086894260411884901039920308813845203635273128692083810461199359398467597698229010036393232473492126779256032163076620512732643286131265803836425983502096264527972640695748957652508117811838944532463515485485594333209697590361316274675790838559095321480209786596868961249527289365257087462786296413017579720144245639912038968483960530233359977698745931575748368962243105412043874444153336243393881976878708684352537430163325292241087932450402328766670236909362559427839991544250853561143674367731464360276942474989111231875245425192041980809233209141339685761001843810654757556692781744549505071243444453504760527126590179206088314052280998813080501332007817151661244989351682251191533805103253784617454390269550334357467104104424000386644587786789995264850017737589385059056156809153118313519763421556364112218988088498624350951060417925656272450585000703943983542325877304645246835980544317639141494464278854808070907625567407382540046195500997307065677271246911190097508447971052833530996023091648983761381475509203644393837279988229528893785507400019857678206858897160727869087419224460060662765241674992701569886117241491149482657663639988912669940860949710890694305729207618777127218998398286156625015493253404974882343844206671683820800467093551717221060821423412081649272882039934908166889929080677940842695430684599496359583985185782357191208233540232256069490334229326156156713038449694200971598282040613328723376275999983550696484852856564758533285858206184484503633023853970490846958258057972142165133452550848656387872499606293182642216064363613966676415904169072387939809782962407428787308681678642084572450516553161328870712274246217787330194719811960773620585257553489365712217192944683016821548982698427463676539903535093662698594804682364410703681477231522004662093990951178801198016075508385878479618097859608321609774337582585421394750196653502566270717495908782696378656423932407410004709394063738173932877085347561768552912866516217380123594380162421091115695768955936540328275854328158293079994952926756519867256569013173170136471621825015002049330690798277938005853496772316590977234731197632203403062867570916052303043086983129093373498073532614484512200377468681381689605983979058015910408832898901684496244244428452414873427504938719272636409026605274597072923495567600095819363609342570096343490764684259222978344871841784599837940586194181962009969396992248961289250505152650076315690203518910516650054423651158131697533612739996934625254967252087358945143926783361687467556951529177612005366590516770859219138669269546593272601192142165395815137087980098754743728742773054337393888254394080351250777368643127261498358947952084903742915488249710463835347895713969772098661613383166879091525559465426361806721188923577475212626640131105771522144667092441934261811458555045758139931239413967235013057023815377564678649641644879340160562987145594550776535307239993050938904029288771075891315671342922006786714471218284840801562358537071049414538358885143738555534190457370713470760093452405029718081385702650428546902273080351612687348219988867436927367152589054704787890767693296337952304574914950115180769607691659362037199603010174518375716648674100435822289564243976948546305397637593324109626079710583097482746638969887859618548078359862502370684132742208112058199275227804569422424478284709143476217592683378283514646665430929451520604033225606063316579070604555973624819810402542701261322367587236279936764207838401742763160216254606878572046183634349571856502607631282113203649068375314426318973865891077658840459860107351263374334569787998505948302166300471309357905845239709951889817084853859473635053827059140479231908198418832330330409657994982944065923844894819562674999388722122597666823234919815056226857297346742348588920846993364598182190340570231529996213864665818845537856099162243145949004421075094397031565794421364803974720178348187866483805508433742205693938440523672449118932441800285293555184906056892182415660958137475995928322864416564230138386200723132521134562576621356532506129623132208482148622102720333948571248475037703365995870098646542919981025979501321554489503903866231644984488638144309266462675732652183492564593775736906531438615091161716214321953110238175111778548334892816872862819219354235979646426977118886109512043938578421169839936193953619127160350773997023042273274464402220010863087204700820278585880424427707428301359590652815836805407196358819917956209383128669955195061728981229765015351836700608414607417191604186183771838368343590206411732588952355094719167985451282444601321042920106935388746198644714508196031391016278003988180936791449399922243770981383228641558565848153403917032469360237328208567841567318089826368766470930621977097790272362453703779303703055551844355388631869333273892518091170947838419071358063582750952473963984095689287102150819736214542932531495656687032521807847861708873843886412663973770178552612303284559979106722193335492612946473000318141289184338850192940303353665503611387172965855571395835773729159180445338362927849996148647581100783636968347121713677818669436244772592488092711987605315707663305211557840721350815867571786501920300968092128742022683116676741894603415527730945718998729816574213738879994644980186241876305837632659584726233520709812725023386988030781263676037728261316330427205280455283833115010202540480627366142817198064253606622729387758379941762282201248067339454939390739685634359701113620115218719646007836560575171982779740442409761592190342386338227491910109225391028694230382485555015713180668278621300914870348116925514997078070893348466430694171017125683788532768698539813601369584692163052203189404176118462038207479759606808280093475552454755588750563643234080032058220598796995839655626110732823275199099609111064006897338321030096650280968650445407719731642233820940285139872411611876474029282235250796904715680513767125408344305858743108219876890001003003061323077290293071091844845942409872561018402835286678508304158211884339583920779466049807936738576802450185093587747299980742225364827135999717823078636973316174260786538881888767108988691766512789816713440264591842202072990935122450546800187446081716249068684290982133908315710093174232738577704469236024772506175105934447778829520693471349528090823880993227046892349630038557121236791478083399796282818184423214743542033377031932200782597851661719598044768452026500573332731779523557868463433222598115530628808100549901511375218358884120059740550900536454058700530058032657395429906138508722523400717207690169774312443800172584147057519236621478039844811386803810069203498849731865848292413600339611428712286763416121474759644365779543407397209632526604240628588445862698791799657863185490830730146605119581495720353627329658527429272639782959304990909170132481669035988889425347504337152195917009736767217048336753366732773681867542818921860204725473248224720130468887117457378528585762018824182010052658227610408970455118070013226192535810060560645490902893376513797204402680102590058923622046868630893390057526520935967531527684557660053344068166287887842137300564967423548641379881532701448897333541303834273406920785959003446767231170871459039914277294128428162261701803935314881483939019694507611801622256110405254992390855980745248476143843693193828818622455623392267901795396185257672989713013411664652013049613208378151315816057970658117100057700077280281899234695306948100679089448678278514275766630614383403089922377171439475451029597476433981129165238391416851944407560399935610271921338900406183020615926276290213725361960897295382753168199690855761069134102667795837382227368280472846900164394676424024102118685904841737522137671571427535868802027423858145746870854714285546493940221002185241749237049420759878548525939550162258169125879500021268341786264315005517690994098668242608519191873774284481661021381270344395593961543914326909858177307658474678676096447489991443798157711167826777442401411563338411464940110734290869634785788955935011439374639830169513416976880266366437153844908482902770649667030631503687237030641409987755813893004742375740434630367008348801597048673363395925086213021186701987604035751242075724640686604258406770168633660773241965302094770096879228831697812446297110772523156586454122360244821678719178914449180003413268163934722721670735283337830711659121715782842950783342324405073062498786357237978244322823122414850435119713349178242359077524397695614393747566482192008268066572890128765877375728559749005298085809976273515597682770250064738085252276097982203870921685059960056048418207280453177774332353459765960121992490231518487195083654782572409145741968771629226867273741311985031941986833087493327665898082407385504930547870920421293885821513667143823485329669255233048437762760472104191198761765194874439126834117815880911337213466718701934130980676483105695718118354057931794622613370840112524385389216995849947995785401588148521771259042811021353568267702851398625652010773642285960145423922942276937488660293365217813588399708411809624513900077575319996726407673933230515652123270825362525201108974312078050645089913333906792610914743263856700849158356792655125842238189281783778938468302686807431609423396973651172749939493859912561250742034296334226029708797081057407241262392906379805458673074626371385460817442413752291457755939431569739350968907198688158096293526237210548653578126614423350081242177945652686127390189882237873706382818521787809620531237928777231767439149333970966616909441977562421569919583530139759631302600619379832794874709173469174349142732695255586804517378712263537393172488747137943058945544541565926711026128737305612614543355544760825554848408912331772054054779760080119090605217634510457827391191191399319518789407738093929758414312409241310208307120294856236191730841336955936736161248728527337462212118524767077351352842301910169621204396322686740093104065171320504735098546139351709188801776376465442253269595832744768504021418969535190243992419592902263082634504945902802760258563757556809351804131655650744187265180711937082595080468678731867898224898541918892074189261189587507444156962041527516127409777901450853725280840266270186052496066968182032550450373717771390501046689808960821374368645566251256978160164751545096362728584161603345058627905720306914562905644065369609435897617664928173083267618449918702479446599202806023357927936920522420089139716942025492272922121898540775589569413623494929976838526215643088234740318785577376040053580393873180672532521649295470036174456097297262268482118111191998071149194409821173158122142182527710347305484886995491457913661413395760370497741132546989834222856137074599544633297680270608840847740208101822730302891416530141558004413174454981808622792224913831307833528553561349483418925005649620568812151513889139984574948593501273915084078134713753394956946688691550920234726954214176039180750541249957149202974934490232704951392646308260302217915111902953871608873874350804717587398864941201671877668232651458147402424954513708803070289349269564827265917564584750788000190874140083196334859413165566082187211690687628032627975799948826815025804726825812721966079893253262871061027772753010249826750633420703964715673930474823981022481174097105331265523813551419006301119931759865181625631231118011365977645498097891341554161390153566763684167724431528139716763145063629667877631146172445841375627828239256385586783312528621952977045930741455326897023080830055888502819034665699808158662278956352596017497907408234530587101709286275119103020294372022552580762724958919780513966857171093469865250336415917048167783986802618840239556468805379123434231866829331610024508098675548793661713748878138899100066111109137009712832876859054383071389152346083940206658745306803331607871287290615722422917775811533446863289745483189819425152104597570249068947912259274323607316656055128227882046363358974436549016603014348353172984778694618257235968412464399794496037256443997337382451340827983613381523329190221317378874576415804322574040056750174362219815742622075812794986021035066935360084948536948131422606691758481947909248119914926303650238958573303491980411143396513676259790924184411291145684098238397180778881496302097959597723841221073472941243759073735926092634631510170767540731841084592452013190960684291207474058358188732120803813034251935145128840831268457718674654476095500163269739438281419554976593971975240309478761771343585254833914196037559619860590215558275085687123242632615961335350099756510873184724059182215061065179097384180587074609213256056527109000938089370009874470461038338364207155730279907779860109777337766795727312858777981243377578544329635871904255433455975317522190628504237798930026906035565228679698202132497294230456758958625593777350400109032979489660338724797710529380435075170294633018749527763678660002736445943021862619076337454635805711965958794505443812289937526706017400334301362589901828858923885515523902231176039774403243123009893508081723697568739904212950605937755882588536276047289398640230151675094822122156427888362770669702977538435894466632324109094622694172279266608024256279402347063892808627820923824802153463199751715973992085336713281145022471773051072511194332250445541292600111816098770856803026706344438742749717434155746269028980557716768397375608974119444026243138489023785070569943790047256757231357088668381593495686026938874693804646383099357345508916801408229185563901905810819599624299182434230733109117949669141763207402209234840101447214997735285753765053896004898235980669813975733267385284146078882817902567917262468053490476935411419432227869300009705444258862669125847356406581012210189487832445643266659488164303602512907138731232536029574233424371590654391436370722709230588212799123018547910593251250903969974337046483613839959445220828449640490179301013932446000941592834167796684628645188640432878511792965926453436661941522759535336041604637369137518505210620101066749046869608745627116792344090879337296498354636582688523306128199906316057835224476582528136327741500175973997319081533818157315601399405762403724267436916918478350060593982085489790060994058687871410797382649764093768602381764814335875366885302039575140829823064161467827014575239759063023850730957097089509187408626512576388636469912780739659691365014441014132073640466235665541234396521221511614073888963690607826784758407284614135764712566615514981187683890530472842985754789867274321617440173140642574832428595849959999520495847273632093189090204557901213706205603121826023070031438074179257928152261252033453129267007654332129164771861779711733773989110627197240348621357816013277624918542598727787765131633767074553404598758619089973349529246063288395527743005563231649831994754724521205712706410387231642354433083203918683585200181150969499207670020321438543495954146094456778394796683189934741216944885186210959254627048904953893397180177860530479284703115960870201755499335799225295260393380826783650273384963004855904804341053660090360126338016402609798062965866236065738241174133602361364142433801662051418352174931145290243271134470009571713790314015759694825663580312603836700394013655366482088677591655405842160321753739391268018321223467909978887082895793236395739993565535199980400152197034076967354946785778215556031010171946515198665177086377293920476520571247622630818322145335376258821483979247767550647768087462581760270693928506223891422472563741486254338900887742321668569581296216677910425701679234967774358542438264260047363145879092435273849706253608975225122752031267210212030165750244288892533329250555482193789366668114807824363808154851948918970107791385446329663102338183187146190964974154159670218692663694876804382424668427462601691582303406181392644721759478236270173801029608338452895977943171722614807376205075060881849712335353784389983308946032878666337858114352641058167223902378618399722438878736154290487890153700418376811706746292600842025860926689162780529460208308434990966803599297473693221005536801690488180917857526580091432838494613626603516463786313042614328424030170855459150112203725872501213685752954016403454553922258957485102219221069914444708761865959372618741294376046986222533730810260523878140411432275519988303552134000060268797903423624784832280360082648262267992355349903612598426393106515165656606372429661312047162311881619115563521689808626097895700505532681598338318005493993509070033386597915990719936680282395113523426948154061000119468507464904116105301295850803702384300367448895320333318407851499411061436959156583793876209790175768956908957353699853107326919988981110306540033527587482090173095033563226869755565515558274473880417435990331164496381586210195738560824657913319449754542907490668086155798962461782533517098369010238996699462208433062415436572490993276007346036922369074897692849959166893968677489745308150235551098241751205294601950550823886921824648478757127511508351515548302661808222705242897213590339309730579809060895298296712693312520448399999999999999999999999999999999999999999999999999999999999999999999999999999999/100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q": "83987747806277226066783549696035128849915571925129014773016376008143227413016281941315282806642231613722565845429311048603522406008270607138565031834647835786748126369531146385742270904977687816855623777940698839207027651933727894097828093990034462708560988374374184733784652849139446137865962778280334278320586261922482549966991353785764185713507885288115461301930588597782768875070732606827315544059287345879040125682027298392640540084048342806698928808147189616134124107649426646190599946943069986173913325611966687051282534673680572343500126351923919267169373756424699781507814093579342889621343178583273306451501482085031029368730503969865327359268111164231544727325597123102768115168300563437207792593689211368778771511922713332841932347238622752992699187500051800756717564583338517545990310241533443622709708519384934574073956007771458892672184576295975897946062002295339886349226005726738167677617349693141107202723410614642382148674287232516023615220649622144087355622501248196777439876762159844743953766379039727785350597427169353684591960996997931701092116076092307534970125014161156332426043290937048025518436958069253329861508094625231339173394661285139120949668428136797270250301544704004435488704014858126403143723625536683373298702357010064989996887209458804482047065639224581935671255865335747207749363915310561990035980562426196534785134517638044682597057885111125152528653130546365556327869507821215463396078457164558132486037418454876768816130323472785635914325275474722430060287994402451474021360799911424857872675908221251484025577111811627064454311461948048463083866742491896994148730179367015496898917734287546441984409430581563476030266986473984068447159087072591334504339560785377685064581672017642954714734554285578888806595398258073290032628294773279555036590868315145477922066416497667458801678951996734186196439497349677489674161606310426142838141910103262480009896413547815242155900846921731194156497669783259569276360415370924647610782722623681566378680535538580151415663603140821174613111615447207009548343109114508230349527338524079950717770617196358567182191643325067317163373510528188243366178022698864180489139430235161410309546069555823026535779670574223662346909857866048050729846562577052189564397877437267566907891892834301902936987854668452665959838995819264708996879530363639654091959829494321742093464771016428082935868222438746565838756026006294921324104374711567719316836095206294891481076965005779262230467614958786080682692377117593359864301336491338578933951802579448116433396699446342085653975152674706644549484106470180922110210110099413959793462579798560256313962158010395688689164806175405425913000788066602393652355706036488107655796297119079165701758876333466251182123204547603584479792478793688462697113128924105108797072928139604264075030460035329418991970736791861360084930750436491814441114590034745852513640801675189859384565881009714086448586632897271334584894364548955837927253052255404102233957396037609416292723926500401071941980289406011171559515248558780601046826160630175712937777391756050980677197364262757236469650504540178384732180598559415682708957760402585605439695879418916509109303237821341523032994650202323378353983311887778160176179691062277936008534392419897373455291708177582730368633822541664351451933227335942050594523297451828397685515635845283477844117467175969225054815160209403955302203587404390982140312089400685707767205038384482049507985274175655470438135669925205033114417259409716290399660660175996864354991038913719968136583697491519541222059839212475473179067800346975687988251975392965330506967596610045186131489406512359092747111629869869799883910781743970524154671340521886823563809226734989793361295974362510007975929795660231218032880705067091362265155513914686598302115360303422509383671617783094315892286164066788988658441103564313150055707284113687962924747338391165828685089585286351175775651869114374439109540600068360964719865707812533002412596215072033818892459972295686555116148276000388918043024134213974751125659367815268686007681901490335547258231046234346571984052788169780867589656232341815499547223897035729070909820905093596027683347733448561021267650915206658682750624407068284249283089870084237555337681676414753658339672086987941176912561194913187269555381946237803616002874214168176887119882418585633009955862751002538399180562519857136978351639540739167939584902357012765798458823116537221655607164680022378889622611602819060417193030676676491418524743749914267707957626596056277523519160398904308624066334592602240691591040749271417223049486247657117466877829089814267495834701153917943375730432466704087920175070340126337709177865518750448458010616548081143833997211585109777363633413669063446555910306090101378458504810963288691825867540553138597667753376541813539756486513956269495532318903875445973256099294976135503393078658481054272970189664656704420865345805319863053680687503840291266508445537345365997869181854386416052306817324658321507879169471441670918864151508641200456962228722761292402576763561122676122065866847814044641241990041066268513887426996982442369619063955074539002331712629938656084128215843468303633828085939563128656081288175607163983739363825413243210907112887288981843326264749243416320355878538314004438614235124592384701057943189666009106364284625768125764885189332979532195213356988554880693083978367368166009330099877470246656597651019310421488173277166052727693588392653157153076358726790471973968736474449200905033360758922218193391503194089329983658839218587352691965168902092706271653928976716399481243129687505170334971402804511873692271328259240698905935019692700658795945296837047252083873665545171982971653764190658442981948380421885396501133399907984127162819212437253832364980673902803037118476016500831654046141391248346670920975376697520054961166914096650306722292409488891318304962707563605519420925798051359467137819359333259765117808765425525448053357113649817523552223320806981101057987966996556355081248162606441072595981864794399942022970766546674026513625034487179088637910111072394368869852683225689582926800168804687312876832070474370197364017514181748161225185507209330324572398908835144774035525867783239125520274684991909010011415409152978471793191473117179387235452787222628095443974775411272157698678951404259705580509375478519591284800687726405985023751081560937578802272334598461042159377488403617713959649147569472983641255451082961057056882713476733055321982344933421791642334692625296297454512994345664692430047011051459562921502757428569770963347971022577727953136860688645201738626225675769190913330538023434826515930613983905486845377647411609952361985270468512046764524276794834970460251304066023315582128945846501257594506880048845045015388206157767163680215635242073246525403588174026111195508274304474738117760468436462420779681138376489870387891521867773694986033436619883222454159372753566434022143236427711667144969003941378788038636716205868122835325811132992287671972403871145118608695198438599259945145156951898650381342712192669738061666016279054238493853440878853797358166833569030175753940321015619214707435558789177717712338687422374407773837869656100648969555737415021899963672131337987539067929267241403683188293054578638151256823374288273474644194932670863411176075907216787724311310987697720992077656476621470131485106487189748939185574557274559013678186446802773589578913266013431249853227798936969111163471650203430050957453727771728959439028783980679980287263739439694828718146373088352502322774777165072408438092975276865893159234406489379352533637579104469467025629973568443622672116332088592277318852914135094752673380451579271435332421241881550731021728475590471029163625242478088557093910110075330899870295774423631785096037506283560356699960398184656817235164958537219065940121194075147271502225768514115862400085667673652953779247412099614549471707590031241515861228463852444147767308019099842281437692650195086799065243346505129491626349797333012868856464518699981543250817434258167122846401951745060374392525734222561397123526905033705228618371549331526707731212415129562872498338137542964239248111397258420211530493082806956006366786705792713288778320956999426715414329796195467746376273821936189221958624032007289580280387277688255052083202430992285906088687732846825375097539308713796418726468155486514042261354191841296509467136601355366410942315862157409644238746847437598219239730284693100402550892600492133101621105238272605331299607728490388709830303335372297245230752054489279574517650906861603798591870605318158120344516206077116418067100115515424452641983240724998530257431441355679454468541456402420855566640815298648291105225142264949871811587273227266901177932275184319643347936916364393109862651842415272890162125400534697427124329696863982542334938653156797612366749699625286803186228205798661268066981512545099922311800102439557526422227350737172641631974610919793651660677832373355686714754102894152041444339900321581229435424098452546536283442357126998197002034012360222240312554398411667806282967166881995399826367518093240952105022257814395910770276196936040026823564648693806215618728090069413152027135143725482923827592105002143475875628868504798079403091173641622497205418884806369203664168010804543565632801090103040841733466594819077411123297910571101500070029558789095830420192904179923039936667623233748037809685901611678377751436040226528273190854520590476768377765499593009538000794674579162986111043690214458018400498213392312207006953244277429382068836212412682388923453947602823019866472754734089624422273094334163109185542147906948123042157907661432336709502134215360332293528798063955631648536472053099191813348482554544046138771667956929139337318564508131047753321788651092655986295460964996005595992336406569088254679955350904501705223518514197841258283561913864871207218091921512393322840706847782659800751374192684250289642549799093736228166211172988809490559401582931960653923225557613569241589496392046196278702260021351277740521554989171344523062460138638057444263845265809487253156912376680654553543845609438610573807911061062495539821336757905640194729445209116075102662038989996570887129927834036896008651886406641288709444650417013798990646145356767706153402750007861971958005810555575706276309794917718524928651762891059679864635622801538807003951277554557809201718483984708565400209862045686453333560170188197085913254221522583977438702999143852457910186891588344184650095343359122996617591085836286903267200170998694691827854714779402449451518401624881031057343644510001797020920969257531830319825888581216423950600052844187299378445787935380946401201625243857491586614478650988011742817372956203511469853416909154904844936666186681262487374242910858510907444736146215687794479431351198371359916327020246682544944593293126082213702552580349092417490111365043651733887184421303862940753550175428622027902610205487306328320795810667966378657946448189788560430709109435049265732096528054375266161951136827428344751483754350960931621398601682287502188940267128030943565901620277416498535163391400850138652572031895127435553655611867396360884477563304306212135498971427324974712279716797458536876670344237039637790415349490566082244691740283056890153963928175422323079233311805385561765085710488452231591808927536624865677743517161406067482567922482680366281089962363338014646902713962752929874647949132328977675976862561287302389487241701299949006677497828891396786246886993771177048809196119893599035627666123933254115946520968361700406494393374460344336361400366319374179583956522268179823219001606703599602656643895398201942534169215324703498711340947043036357829854914505107142509597441663123559986752768150278227946538654130166122979652493874294356806932457413648318393159829231143752411158691049342886079793973598828599303974587574191561377062841082371858492870652750942077045701809763246719398568971796269087314709107709944662790559194819286346978082285596862559989770755626735675682637105701922517865338770711462538410223406645800763958798513297282710933117955142062121465242307551595048793068384546768953813613765859694846778088582028927400532295142056010563373563585755734858137840893176616937323955805980896928556990799406120295572964541546090269382992016045513707754038211804905785758124389580802403181865528873199051480696765425604078003547390637942892208293465624708421664745629871807406842738219509060848440822618827603980993355266104764395645179691770749353601435127560819241660781219050653791502418498561572615900595689571485593611539794741865979812321319829492174692069716026579411789149013591060442743853820589337069162570873799919087218878538360430811181186758837266027298563210072137142276702209935147151940988328666332761513717534837141245110334968017389971692937688190023382592203364314491231707493692570599646947956994377322646223491599889581802217742372832434440507774087700320163654508288921366763440220984744399057524807498628558773629241093154095764053340595268094350755169131693839007227432604633200744401045992191577569449664168790086265200226032456514914405215872299269266456461216543447130205942450519960154406922601817636564346041905230599679699233798849114505018196616236746063389628016081538310256366321643065632901918212991751048132263986320347874478826254058905919472266231757742742797166604848795180658137337895419279547660740104893298434480624763644682628543731393148206508789860072122819956019484241980265116679988849372965787874184481121552706021937222076668121696940988439354342176268715081662646120543966225201164383335118454681279713919995772125426780571837183865732180138471237494555615937622712596020990404616604570669842880500921905327378778346390872274752535621722226752380263563295089603044157026140499406540250666003908575830622494675841125595766902551626892308727195134775167178733552052212000193322293893394997632425008868794692529528078404576559156759881710778182056109494044249312175475530208962828136225292500351971991771162938652322623417990272158819570747232139427404035453812783703691270023097750498653532838635623455595048754223985526416765498011545824491880690737754601822196918639994114764446892753700009928839103429448580363934543709612230030331382620837496350784943058620745574741328831819994456334970430474855445347152864603809388563609499199143078312507746626702487441171922103335841910400233546775858610530410711706040824636441019967454083444964540338970421347715342299748179791992592891178595604116770116128034745167114663078078356519224847100485799141020306664361688137999991775348242426428282379266642929103092242251816511926985245423479129028986071082566726275424328193936249803146591321108032181806983338207952084536193969904891481203714393654340839321042286225258276580664435356137123108893665097359905980386810292628776744682856108596472341508410774491349213731838269951767546831349297402341182205351840738615761002331046995475589400599008037754192939239809048929804160804887168791292710697375098326751283135358747954391348189328211966203705002354697031869086966438542673780884276456433258108690061797190081210545557847884477968270164137927164079146539997476463378259933628284506586585068235810912507501024665345399138969002926748386158295488617365598816101701531433785458026151521543491564546686749036766307242256100188734340690844802991989529007955204416449450842248122122214226207436713752469359636318204513302637298536461747783800047909681804671285048171745382342129611489172435920892299918970293097090981004984698496124480644625252576325038157845101759455258325027211825579065848766806369998467312627483626043679472571963391680843733778475764588806002683295258385429609569334634773296636300596071082697907568543990049377371864371386527168696944127197040175625388684321563630749179473976042451871457744124855231917673947856984886049330806691583439545762779732713180903360594461788737606313320065552885761072333546220967130905729277522879069965619706983617506528511907688782339324820822439670080281493572797275388267653619996525469452014644385537945657835671461003393357235609142420400781179268535524707269179442571869277767095228685356735380046726202514859040692851325214273451136540175806343674109994433718463683576294527352393945383846648168976152287457475057590384803845829681018599801505087259187858324337050217911144782121988474273152698818796662054813039855291548741373319484943929809274039179931251185342066371104056029099637613902284711212239142354571738108796341689141757323332715464725760302016612803031658289535302277986812409905201271350630661183793618139968382103919200871381580108127303439286023091817174785928251303815641056601824534187657213159486932945538829420229930053675631687167284893999252974151083150235654678952922619854975944908542426929736817526913529570239615954099209416165165204828997491472032961922447409781337499694361061298833411617459907528113428648673371174294460423496682299091095170285115764998106932332909422768928049581121572974502210537547198515782897210682401987360089174093933241902754216871102846969220261836224559466220900142646777592453028446091207830479068737997964161432208282115069193100361566260567281288310678266253064811566104241074311051360166974285624237518851682997935049323271459990512989750660777244751951933115822492244319072154633231337866326091746282296887868453265719307545580858107160976555119087555889274167446408436431409609677117989823213488559443054756021969289210584919968096976809563580175386998511521136637232201110005431543602350410139292940212213853714150679795326407918402703598179409958978104691564334977597530864490614882507675918350304207303708595802093091885919184171795103205866294476177547359583992725641222300660521460053467694373099322357254098015695508139001994090468395724699961121885490691614320779282924076701958516234680118664104283920783659044913184383235465310988548895136181226851889651851527775922177694315934666636946259045585473919209535679031791375476236981992047844643551075409868107271466265747828343516260903923930854436921943206331986885089276306151642279989553361096667746306473236500159070644592169425096470151676832751805693586482927785697917886864579590222669181463924998074323790550391818484173560856838909334718122386296244046355993802657853831652605778920360675407933785893250960150484046064371011341558338370947301707763865472859499364908287106869439997322490093120938152918816329792363116760354906362511693494015390631838018864130658165213602640227641916557505101270240313683071408599032126803311364693879189970881141100624033669727469695369842817179850556810057609359823003918280287585991389870221204880796095171193169113745955054612695514347115191242777507856590334139310650457435174058462757498539035446674233215347085508562841894266384349269906800684792346081526101594702088059231019103739879803404140046737776227377794375281821617040016029110299398497919827813055366411637599549804555532003448669160515048325140484325222703859865821116910470142569936205805938237014641117625398452357840256883562704172152929371554109938445000501501530661538645146535545922422971204936280509201417643339254152079105942169791960389733024903968369288401225092546793873649990371112682413567999858911539318486658087130393269440944383554494345883256394908356720132295921101036495467561225273400093723040858124534342145491066954157855046587116369288852234618012386253087552967223889414760346735674764045411940496613523446174815019278560618395739041699898141409092211607371771016688515966100391298925830859799022384226013250286666365889761778934231716611299057765314404050274950755687609179442060029870275450268227029350265029016328697714953069254361261700358603845084887156221900086292073528759618310739019922405693401905034601749424865932924146206800169805714356143381708060737379822182889771703698604816263302120314294222931349395899828931592745415365073302559790747860176813664829263714636319891479652495454585066240834517994444712673752168576097958504868383608524168376683366386840933771409460930102362736624112360065234443558728689264292881009412091005026329113805204485227559035006613096267905030280322745451446688256898602201340051295029461811023434315446695028763260467983765763842278830026672034083143943921068650282483711774320689940766350724448666770651917136703460392979501723383615585435729519957138647064214081130850901967657440741969509847253805900811128055202627496195427990372624238071921846596914409311227811696133950897698092628836494856506705832326006524806604189075657908028985329058550028850038640140949617347653474050339544724339139257137883315307191701544961188585719737725514798738216990564582619195708425972203780199967805135960669450203091510307963138145106862680980448647691376584099845427880534567051333897918691113684140236423450082197338212012051059342952420868761068835785713767934401013711929072873435427357142773246970110501092620874618524710379939274262969775081129084562939750010634170893132157502758845497049334121304259595936887142240830510690635172197796980771957163454929088653829237339338048223744995721899078855583913388721200705781669205732470055367145434817392894477967505719687319915084756708488440133183218576922454241451385324833515315751843618515320704993877906946502371187870217315183504174400798524336681697962543106510593350993802017875621037862320343302129203385084316830386620982651047385048439614415848906223148555386261578293227061180122410839359589457224590001706634081967361360835367641668915355829560857891421475391671162202536531249393178618989122161411561207425217559856674589121179538762198847807196873783241096004134033286445064382938687864279874502649042904988136757798841385125032369042626138048991101935460842529980028024209103640226588887166176729882980060996245115759243597541827391286204572870984385814613433636870655992515970993416543746663832949041203692752465273935460210646942910756833571911742664834627616524218881380236052095599380882597437219563417058907940455668606733359350967065490338241552847859059177028965897311306685420056262192694608497924973997892700794074260885629521405510676784133851425699312826005386821142980072711961471138468744330146682608906794199854205904812256950038787659998363203836966615257826061635412681262600554487156039025322544956666953396305457371631928350424579178396327562921119094640891889469234151343403715804711698486825586374969746929956280625371017148167113014854398540528703620631196453189902729336537313185692730408721206876145728877969715784869675484453599344079048146763118605274326789063307211675040621088972826343063695094941118936853191409260893904810265618964388615883719574666985483308454720988781210784959791765069879815651300309689916397437354586734587174571366347627793402258689356131768696586244373568971529472772270782963355513064368652806307271677772380412777424204456165886027027389880040059545302608817255228913695595595699659759394703869046964879207156204620655104153560147428118095865420668477968368080624364263668731106059262383538675676421150955084810602198161343370046552032585660252367549273069675854594400888188232721126634797916372384252010709484767595121996209796451131541317252472951401380129281878778404675902065827825372093632590355968541297540234339365933949112449270959446037094630594793753722078481020763758063704888950725426862640420133135093026248033484091016275225186858885695250523344904480410687184322783125628489080082375772548181364292080801672529313952860153457281452822032684804717948808832464086541633809224959351239723299601403011678963968460261210044569858471012746136461060949270387794784706811747464988419263107821544117370159392788688020026790196936590336266260824647735018087228048648631134241059055595999035574597204910586579061071091263855173652742443497745728956830706697880185248870566273494917111428068537299772316648840135304420423870104050911365151445708265070779002206587227490904311396112456915653916764276780674741709462502824810284406075756944569992287474296750636957542039067356876697478473344345775460117363477107088019590375270624978574601487467245116352475696323154130151108957555951476935804436937175402358793699432470600835938834116325729073701212477256854401535144674634782413632958782292375394000095437070041598167429706582783041093605845343814016313987899974413407512902363412906360983039946626631435530513886376505124913375316710351982357836965237411990511240587048552665632761906775709503150559965879932590812815615559005682988822749048945670777080695076783381842083862215764069858381572531814833938815573086222920687813914119628192793391656264310976488522965370727663448511540415027944251409517332849904079331139478176298008748953704117265293550854643137559551510147186011276290381362479459890256983428585546734932625168207958524083891993401309420119778234402689561717115933414665805012254049337774396830856874439069449550033055554568504856416438429527191535694576173041970103329372653401665803935643645307861211458887905766723431644872741594909712576052298785124534473956129637161803658328027564113941023181679487218274508301507174176586492389347309128617984206232199897248018628221998668691225670413991806690761664595110658689437288207902161287020028375087181109907871311037906397493010517533467680042474268474065711303345879240973954624059957463151825119479286651745990205571698256838129895462092205645572842049119198590389440748151048979798861920610536736470621879536867963046317315755085383770365920542296226006595480342145603737029179094366060401906517125967572564420415634228859337327238047750081634869719140709777488296985987620154739380885671792627416957098018779809930295107779137542843561621316307980667675049878255436592362029591107530532589548692090293537304606628028263554500469044685004937235230519169182103577865139953889930054888668883397863656429388990621688789272164817935952127716727987658761095314252118899465013453017782614339849101066248647115228379479312796888675200054516489744830169362398855264690217537585147316509374763881839330001368222971510931309538168727317902855982979397252721906144968763353008700167150681294950914429461942757761951115588019887201621561504946754040861848784369952106475302968877941294268138023644699320115075837547411061078213944181385334851488769217947233316162054547311347086139633304012128139701173531946404313910461912401076731599875857986996042668356640572511235886525536255597166125222770646300055908049385428401513353172219371374858717077873134514490278858384198687804487059722013121569244511892535284971895023628378615678544334190796747843013469437346902323191549678672754458400704114592781950952905409799812149591217115366554558974834570881603701104617420050723607498867642876882526948002449117990334906987866633692642073039441408951283958631234026745238467705709716113934650004852722129431334562923678203290506105094743916222821633329744082151801256453569365616268014787116712185795327195718185361354615294106399561509273955296625625451984987168523241806919979722610414224820245089650506966223000470796417083898342314322594320216439255896482963226718330970761379767668020802318684568759252605310050533374523434804372813558396172045439668648249177318291344261653064099953158028917612238291264068163870750087986998659540766909078657800699702881201862133718458459239175030296991042744895030497029343935705398691324882046884301190882407167937683442651019787570414911532080733913507287619879531511925365478548544754593704313256288194318234956390369829845682507220507066036820233117832770617198260610755807036944481845303913392379203642307067882356283307757490593841945265236421492877394933637160808720086570321287416214297924979999760247923636816046594545102278950606853102801560913011535015719037089628964076130626016726564633503827166064582385930889855866886994555313598620174310678908006638812459271299363893882565816883537276702299379309544986674764623031644197763871502781615824915997377362260602856353205193615821177216541601959341792600090575484749603835010160719271747977073047228389197398341594967370608472442593105479627313524452476946698590088930265239642351557980435100877749667899612647630196690413391825136692481502427952402170526830045180063169008201304899031482933118032869120587066801180682071216900831025709176087465572645121635567235004785856895157007879847412831790156301918350197006827683241044338795827702921080160876869695634009160611733954989443541447896618197869996782767599990200076098517038483677473392889107778015505085973257599332588543188646960238260285623811315409161072667688129410741989623883775323884043731290880135346964253111945711236281870743127169450443871160834284790648108338955212850839617483887179271219132130023681572939546217636924853126804487612561376015633605106015082875122144446266664625277741096894683334057403912181904077425974459485053895692723164831551169091593573095482487077079835109346331847438402191212334213731300845791151703090696322360879739118135086900514804169226447988971585861307403688102537530440924856167676892194991654473016439333168929057176320529083611951189309199861219439368077145243945076850209188405853373146300421012930463344581390264730104154217495483401799648736846610502768400845244090458928763290045716419247306813301758231893156521307164212015085427729575056101862936250606842876477008201727276961129478742551109610534957222354380932979686309370647188023493111266865405130261939070205716137759994151776067000030134398951711812392416140180041324131133996177674951806299213196553257582828303186214830656023581155940809557781760844904313048947850252766340799169159002746996754535016693298957995359968340141197556761713474077030500059734253732452058052650647925401851192150183724447660166659203925749705530718479578291896938104895087884478454478676849926553663459994490555153270016763793741045086547516781613434877782757779137236940208717995165582248190793105097869280412328956659724877271453745334043077899481230891266758549184505119498349731104216531207718286245496638003673018461184537448846424979583446984338744872654075117775549120875602647300975275411943460912324239378563755754175757774151330904111352621448606795169654865289904530447649148356346656260224199999999999999999999999999999999999999999999999999999999999999999999999999999999/50000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "certified_endpoint": "419938739031386130333917748480175644249577859625645073865081880040716137065081409706576414033211158068612829227146555243017612030041353035692825159173239178933740631847655731928711354524888439084278118889703494196035138259668639470489140469950172313542804941871870923668923264245697230689329813891401671391602931309612412749834956768928820928567539426440577306509652942988913844375353663034136577720296436729395200628410136491963202700420241714033494644040735948080670620538247133230952999734715349930869566628059833435256412673368402861717500631759619596335846868782123498907539070467896714448106715892916366532257507410425155146843652519849326636796340555821157723636627985615513840575841502817186038962968446056843893857559613566664209661736193113764963495937500259003783587822916692587729951551207667218113548542596924672870369780038857294463360922881479879489730310011476699431746130028633690838388086748465705536013617053073211910743371436162580118076103248110720436778112506240983887199383810799223719768831895198638926752987135846768422959804984989658505460580380461537674850625070805781662130216454685240127592184790346266649307540473126156695866973306425695604748342140683986351251507723520022177443520074290632015718618127683416866493511785050324949984436047294022410235328196122909678356279326678736038746819576552809950179902812130982673925672588190223412985289425555625762643265652731827781639347539106077316980392285822790662430187092274383844080651617363928179571626377373612150301439972012257370106803999557124289363379541106257420127885559058135322271557309740242315419333712459484970743650896835077484494588671437732209922047152907817380151334932369920342235795435362956672521697803926888425322908360088214773573672771427894444032976991290366450163141473866397775182954341575727389610332082488337294008394759983670930982197486748387448370808031552130714190709550516312400049482067739076210779504234608655970782488348916297846381802076854623238053913613118407831893402677692900757078318015704105873065558077236035047741715545572541151747636692620399753588853085981792835910958216625336585816867552640941216830890113494320902445697151175807051547730347779115132678898352871118311734549289330240253649232812885260947821989387186337834539459464171509514684939273342263329799194979096323544984397651818198270459799147471608710467323855082140414679341112193732829193780130031474606620521873557838596584180476031474457405384825028896311152338074793930403413461885587966799321506682456692894669759012897240582166983497231710428269875763373533222747420532350904610551050550497069798967312898992801281569810790051978443445824030877027129565003940333011968261778530182440538278981485595395828508794381667331255910616022738017922398962393968442313485565644620525543985364640698021320375152300176647094959853683959306800424653752182459072205572950173729262568204008375949296922829405048570432242933164486356672924471822744779189636265261277020511169786980188047081463619632502005359709901447030055857797576242793903005234130803150878564688886958780254903385986821313786182348252522700891923660902992797078413544788802012928027198479397094582545546516189106707615164973251011616891769916559438890800880898455311389680042671962099486867276458540887913651843169112708321757259666136679710252972616487259141988427578179226417389220587335879846125274075801047019776511017937021954910701560447003428538836025191922410247539926370878277352190678349626025165572086297048581451998303300879984321774955194568599840682918487457597706110299196062377365895339001734878439941259876964826652534837983050225930657447032561795463735558149349348999419553908719852620773356702609434117819046133674948966806479871812550039879648978301156090164403525335456811325777569573432991510576801517112546918358088915471579461430820333944943292205517821565750278536420568439814623736691955829143425447926431755878878259345571872195547703000341804823599328539062665012062981075360169094462299861478432775580741380001944590215120671069873755628296839076343430038409507451677736291155231171732859920263940848904337948281161709077497736119485178645354549104525467980138416738667242805106338254576033293413753122035341421246415449350421187776688408382073768291698360434939705884562805974565936347776909731189018080014371070840884435599412092928165049779313755012691995902812599285684891758197703695839697924511785063828992294115582686108278035823400111894448113058014095302085965153383382457092623718749571338539788132980281387617595801994521543120331672963011203457955203746357086115247431238285587334389145449071337479173505769589716878652162333520439600875351700631688545889327593752242290053082740405719169986057925548886818167068345317232779551530450506892292524054816443459129337702765692988338766882709067698782432569781347477661594519377229866280496474880677516965393292405271364850948323283522104326729026599315268403437519201456332542227686726829989345909271932080261534086623291607539395847357208354594320757543206002284811143613806462012883817805613380610329334239070223206209950205331342569437134984912211848095319775372695011658563149693280420641079217341518169140429697815643280406440878035819918696819127066216054535564436444909216631323746217081601779392691570022193071175622961923505289715948330045531821423128840628824425946664897660976066784942774403465419891836840830046650499387351233282988255096552107440866385830263638467941963265785765381793633952359869843682372246004525166803794611090966957515970446649918294196092936763459825844510463531358269644883581997406215648437525851674857014022559368461356641296203494529675098463503293979726484185236260419368327725859914858268820953292214909741902109426982505666999539920635814096062186269161824903369514015185592380082504158270230706956241733354604876883487600274805834570483251533611462047444456591524813537818027597104628990256797335689096796666298825589043827127627240266785568249087617761116604034905505289939834982781775406240813032205362979909323971999710114853832733370132568125172435895443189550555361971844349263416128447914634000844023436564384160352371850986820087570908740806125927536046651622861994544175723870177629338916195627601373424959545050057077045764892358965957365585896936177263936113140477219873877056360788493394757021298527902546877392597956424003438632029925118755407804687894011361672992305210796887442018088569798245737847364918206277255414805285284413567383665276609911724667108958211673463126481487272564971728323462150235055257297814607513787142848854816739855112888639765684303443226008693131128378845954566652690117174132579653069919527434226888237058049761809926352342560233822621383974174852301256520330116577910644729232506287972534400244225225076941030788835818401078176210366232627017940870130555977541371522373690588802342182312103898405691882449351939457609338868474930167183099416112270796863767832170110716182138558335724845019706893940193183581029340614176629055664961438359862019355725593043475992192996299725725784759493251906713560963348690308330081395271192469267204394268986790834167845150878769701605078096073537177793945888588561693437111872038869189348280503244847778687075109499818360656689937695339646336207018415941465272893190756284116871441367373220974663354317055880379536083938621556554938488604960388282383107350657425532435948744695927872786372795068390932234013867947894566330067156249266138994684845555817358251017150254787268638858644797195143919903399901436318697198474143590731865441762511613873885825362042190464876384329465796172032446896762668187895522347335128149867842218113360581660442961386594264570675473763366902257896357176662106209407753655108642377952355145818126212390442785469550550376654499351478872118158925480187531417801783499801990923284086175824792686095329700605970375736357511128842570579312000428338368264768896237060498072747358537950156207579306142319262220738836540095499211407188463250975433995326216732525647458131748986665064344282322593499907716254087171290835614232009758725301871962628671112806985617634525168526143091857746657633538656062075647814362491690687714821196240556986292101057652465414034780031833933528963566443891604784997133577071648980977338731881369109680946109793120160036447901401936388441275260416012154961429530443438664234126875487696543568982093632340777432570211306770959206482547335683006776832054711579310787048221193734237187991096198651423465502012754463002460665508105526191363026656498038642451943549151516676861486226153760272446397872588254534308018992959353026590790601722581030385582090335500577577122263209916203624992651287157206778397272342707282012104277833204076493241455526125711324749359057936366136334505889661375921598216739684581821965549313259212076364450810627002673487135621648484319912711674693265783988061833748498126434015931141028993306340334907562725499611559000512197787632111136753685863208159873054598968258303389161866778433573770514470760207221699501607906147177120492262732681417211785634990985010170061801111201562771992058339031414835834409976999131837590466204760525111289071979553851380984680200134117823243469031078093640450347065760135675718627414619137960525010717379378144342523990397015455868208112486027094424031846018320840054022717828164005450515204208667332974095387055616489552855507500350147793945479152100964520899615199683338116168740189048429508058391888757180201132641365954272602952383841888827497965047690003973372895814930555218451072290092002491066961561035034766221387146910344181062063411944617269738014115099332363773670448122111365471670815545927710739534740615210789538307161683547510671076801661467643990319778158242682360265495959066742412772720230693858339784645696686592822540655238766608943255463279931477304824980027979961682032845441273399776754522508526117592570989206291417809569324356036090459607561966614203534238913299003756870963421251448212748995468681140831055864944047452797007914659803269616127788067846207947481960230981393511300106756388702607774945856722615312300693190287221319226329047436265784561883403272767719228047193052869039555305312477699106683789528200973647226045580375513310194949982854435649639170184480043259432033206443547223252085068994953230726783838530767013750039309859790029052777878531381548974588592624643258814455298399323178114007694035019756387772789046008592419923542827001049310228432266667800850940985429566271107612919887193514995719262289550934457941720923250476716795614983087955429181434516336000854993473459139273573897012247257592008124405155286718222550008985104604846287659151599129442906082119753000264220936496892228939676904732006008126219287457933072393254940058714086864781017557349267084545774524224683330933406312436871214554292554537223680731078438972397156755991856799581635101233412724722966465630411068512762901745462087450556825218258669435922106519314703767750877143110139513051027436531641603979053339831893289732240948942802153545547175246328660482640271876330809755684137141723757418771754804658106993008411437510944701335640154717829508101387082492675816957004250693262860159475637177768278059336981804422387816521531060677494857136624873561398583987292684383351721185198188952076747452830411223458701415284450769819640877111615396166559026927808825428552442261157959044637683124328388717585807030337412839612413401831405449811816690073234513569813764649373239745661644888379884312806436511947436208506499745033387489144456983931234434968855885244045980599467995178138330619666270579732604841808502032471966872301721681807001831596870897919782611340899116095008033517998013283219476991009712670846076623517493556704735215181789149274572525535712547987208315617799933763840751391139732693270650830614898262469371471784034662287068241591965799146155718762055793455246714430398969867994142996519872937870957806885314205411859292464353263754710385228509048816233596992844858981345436573545538549723313952795974096431734890411427984312799948853778133678378413185528509612589326693853557312692051117033229003819793992566486413554665589775710310607326211537757975243965341922733844769068068829298474233890442910144637002661475710280052816867817928778674290689204465883084686619779029904484642784953997030601477864822707730451346914960080227568538770191059024528928790621947904012015909327644365995257403483827128020390017736953189714461041467328123542108323728149359037034213691097545304242204113094138019904966776330523821978225898458853746768007175637804096208303906095253268957512092492807863079502978447857427968057698973709329899061606599147460873460348580132897058945745067955302213719269102946685345812854368999595436094392691802154055905933794186330136492816050360685711383511049675735759704941643331663807568587674185706225551674840086949858464688440950116912961016821572456158537468462852998234739784971886613231117457999447909011088711864162172202538870438501600818272541444606833817201104923721995287624037493142793868146205465770478820266702976340471753775845658469195036137163023166003722005229960957887847248320843950431326001130162282574572026079361496346332282306082717235651029712252599800772034613009088182821730209526152998398496168994245572525090983081183730316948140080407691551281831608215328164509591064958755240661319931601739372394131270294529597361331158788713713985833024243975903290686689477096397738303700524466492172403123818223413142718656965741032543949300360614099780097421209901325583399944246864828939370922405607763530109686110383340608484704942196771710881343575408313230602719831126005821916675592273406398569599978860627133902859185919328660900692356187472778079688113562980104952023083022853349214402504609526636893891731954361373762678108611133761901317816475448015220785130702497032701253330019542879153112473379205627978834512758134461543635975673875835893667760261060000966611469466974988162125044343973462647640392022882795783799408553890910280547470221246560877377651044814140681126462501759859958855814693261613117089951360794097853736160697137020177269063918518456350115488752493267664193178117277975243771119927632083827490057729122459403453688773009110984593199970573822234463768500049644195517147242901819672718548061150151656913104187481753924715293103727873706644159099972281674852152374277226735764323019046942818047495995715391562538733133512437205859610516679209552001167733879293052652053558530204123182205099837270417224822701694852106738576711498740898959962964455892978020583850580640173725835573315390391782596124235502428995705101533321808440689999958876741212132141411896333214645515461211259082559634926227117395645144930355412833631377121640969681249015732956605540160909034916691039760422680969849524457406018571968271704196605211431126291382903322176780685615544468325486799529901934051463143883723414280542982361707542053872456746068659191349758837734156746487011705911026759203693078805011655234977377947002995040188770964696199045244649020804024435843956463553486875491633756415676793739771956740946641059831018525011773485159345434832192713368904421382282166290543450308985950406052727789239422389841350820689635820395732699987382316891299668141422532932925341179054562537505123326726995694845014633741930791477443086827994080508507657168927290130757607717457822733433745183831536211280500943671703454224014959947645039776022082247254211240610611071131037183568762346798181591022566513186492682308738919000239548409023356425240858726911710648057445862179604461499594851465485454905024923492480622403223126262881625190789225508797276291625136059127895329243834031849992336563137418130218397362859816958404218668892378822944030013416476291927148047846673173866483181502980355413489537842719950246886859321856932635843484720635985200878126943421607818153745897369880212259357288720624276159588369739284924430246654033457917197728813898663565904516802972308943688031566600327764428805361667731104835654528646387614395349828098534918087532642559538443911696624104112198350401407467863986376941338268099982627347260073221927689728289178357305016966786178045712102003905896342677623536345897212859346388835476143426783676900233631012574295203464256626071367255682700879031718370549972168592318417881472636761969726919233240844880761437287375287951924019229148405092999007525436295939291621685251089555723910609942371365763494093983310274065199276457743706866597424719649046370195899656255926710331855520280145498188069511423556061195711772858690543981708445708786616663577323628801510083064015158291447676511389934062049526006356753153305918968090699841910519596004356907900540636517196430115459085873929641256519078205283009122670938286065797434664727694147101149650268378158435836424469996264870755415751178273394764613099274879724542712134648684087634567647851198079770496047080825826024144987457360164809612237048906687498471805306494167058087299537640567143243366855871472302117483411495455475851425578824990534661664547113844640247905607864872511052687735992578914486053412009936800445870469666209513771084355514234846101309181122797331104500713233887962265142230456039152395343689989820807161041410575345965501807831302836406441553391331265324057830521205371555256800834871428121187594258414989675246616357299952564948753303886223759759665579112461221595360773166156689331630458731411484439342266328596537727904290535804882775595437779446370837232042182157048048385589949116067442797215273780109846446052924599840484884047817900876934992557605683186161005550027157718011752050696464701061069268570753398976632039592013517990897049794890523457821674887987654322453074412538379591751521036518542979010465459429595920858975516029331472380887736797919963628206111503302607300267338471865496611786270490078477540695009970452341978623499805609427453458071603896414620383509792581173400593320521419603918295224565921916177326554942744475680906134259448259257638879610888471579673333184731295227927369596047678395158956877381184909960239223217755377049340536357331328739141717581304519619654272184609716031659934425446381530758211399947766805483338731532366182500795353222960847125482350758384163759028467932414638928489589434322897951113345907319624990371618952751959092420867804284194546673590611931481220231779969013289269158263028894601803377039668929466254800752420230321855056707791691854736508538819327364297496824541435534347199986612450465604690764594081648961815583801774531812558467470076953159190094320653290826068013201138209582787525506351201568415357042995160634016556823469395949854405705503120168348637348476849214085899252784050288046799115019591401437929956949351106024403980475855965845568729775273063477571735575956213887539282951670696553252287175870292313787492695177233371166076735427542814209471331921746349534003423961730407630507973510440296155095518699399017020700233688881136888971876409108085200080145551496992489599139065276832058187997749022777660017243345802575241625702421626113519299329105584552350712849681029029691185073205588126992261789201284417813520860764646857770549692225002507507653307693225732677729612114856024681402546007088216696270760395529710848959801948665124519841846442006125462733969368249951855563412067839999294557696592433290435651966347204721917772471729416281974541783600661479605505182477337806126367000468615204290622671710727455334770789275232935581846444261173090061931265437764836119447073801733678373820227059702483067617230874075096392803091978695208499490707045461058036858855083442579830501956494629154298995111921130066251433331829448808894671158583056495288826572020251374753778438045897210300149351377251341135146751325145081643488574765346271806308501793019225424435781109500431460367643798091553695099612028467009525173008747124329664620731034000849028571780716908540303686899110914448858518493024081316510601571471114656746979499144657963727076825366512798953739300884068324146318573181599457398262477272925331204172589972223563368760842880489792524341918042620841883416831934204668857047304650511813683120561800326172217793643446321464405047060455025131645569026022426137795175033065481339525151401613727257233441284493011006700256475147309055117171577233475143816302339918828819211394150133360170415719719605343251412418558871603449703831753622243333853259585683517301964897508616918077927178647599785693235321070405654254509838287203709847549236269029504055640276013137480977139951863121190359609232984572046556139058480669754488490463144182474282533529161630032624033020945378289540144926645292750144250193200704748086738267370251697723621695696285689416576535958507724805942928598688627573993691084952822913095978542129861018900999839025679803347251015457551539815690725534313404902243238456882920499227139402672835256669489593455568420701182117250410986691060060255296714762104343805344178928568839672005068559645364367177136785713866234850552505463104373092623551899696371314848875405645422814698750053170854465660787513794227485246670606521297979684435711204152553453175860988984903859785817274645443269146186696690241118724978609495394277919566943606003528908346028662350276835727174086964472389837528598436599575423783542442200665916092884612271207256926624167576578759218092576603524969389534732511855939351086575917520872003992621683408489812715532552966754969010089378105189311601716510646016925421584151933104913255236925242198072079244531115742776931307891466135305900612054196797947286122950008533170409836806804176838208344576779147804289457107376958355811012682656246965893094945610807057806037126087799283372945605897693810994239035984368916205480020670166432225321914693439321399372513245214524940683788994206925625161845213130690244955509677304212649900140121045518201132944435830883649414900304981225578796217987709136956431022864354921929073067168184353279962579854967082718733319164745206018463762326369677301053234714553784167859558713324173138082621094406901180260477996904412987186097817085294539702278343033666796754835327451691207764239295295885144829486556533427100281310963473042489624869989463503970371304428147607027553383920669257128496564130026934105714900363559807355692343721650733413044533970999271029524061284750193938299991816019184833076289130308177063406313002772435780195126612724783334766981527286858159641752122895891981637814605595473204459447346170756717018579023558492434127931874848734649781403126855085740835565074271992702643518103155982265949513646682686565928463652043606034380728644389848578924348377422267996720395240733815593026371633945316536058375203105444864131715318475474705594684265957046304469524051328094821943079418597873334927416542273604943906053924798958825349399078256501548449581987186772933672935872856831738138967011293446780658843482931221867844857647363861353914816777565321843264031536358388861902063887121022280829430135136949400200297726513044086276144568477977978498298796973519345234824396035781023103275520767800737140590479327103342389841840403121821318343655530296311917693378382105754775424053010990806716850232760162928301261837746365348379272972004440941163605633173989581861921260053547423837975609981048982255657706586262364757006900646409393892023379510329139126860468162951779842706487701171696829669745562246354797230185473152973968768610392405103818790318524444753627134313202100665675465131240167420455081376125934294428476252616724522402053435921613915628142445400411878862740906821460404008362646569764300767286407264110163424023589744044162320432708169046124796756198616498007015058394819842301306050222849292355063730682305304746351938973923534058737324942096315539107720586850796963943440100133950984682951681331304123238675090436140243243155671205295277979995177872986024552932895305355456319275868263712217488728644784153533489400926244352831367474585557140342686498861583244200676522102119350520254556825757228541325353895011032936137454521556980562284578269583821383903373708547312514124051422030378784722849961437371483753184787710195336784383487392366721728877300586817385535440097951876353124892873007437336225581762378481615770650755544787779757384679022184685877011793968497162353004179694170581628645368506062386284272007675723373173912068164793911461876970000477185350207990837148532913915205468029226719070081569939499872067037564511817064531804915199733133157177652569431882525624566876583551759911789184826187059952556202935242763328163809533878547515752799829399662954064078077795028414944113745244728353885403475383916909210419311078820349291907862659074169694077865431114603439069570598140963966958281321554882442614826853638317242557702075139721257047586664249520396655697390881490043744768520586326467754273215687797757550735930056381451906812397299451284917142927733674663125841039792620419459967006547100598891172013447808585579667073329025061270246688871984154284372195347247750165277772842524282082192147635957678472880865209850516646863267008329019678218226539306057294439528833617158224363707974548562880261493925622672369780648185809018291640137820569705115908397436091372541507535870882932461946736545643089921031160999486240093141109993343456128352069959033453808322975553293447186441039510806435100141875435905549539356555189531987465052587667338400212371342370328556516729396204869773120299787315759125597396433258729951027858491284190649477310461028227864210245595992951947203740755244898994309603052683682353109397684339815231586578775426918851829602711481130032977401710728018685145895471830302009532585629837862822102078171144296686636190238750408174348595703548887441484929938100773696904428358963137084785490093899049651475538895687714217808106581539903338375249391277182961810147955537652662947743460451467686523033140141317772502345223425024686176152595845910517889325699769449650274443344416989318282146944953108443946360824089679760638583639938293805476571260594497325067265088913071699245505331243235576141897396563984443376000272582448724150846811994276323451087687925736582546873819409196650006841114857554656547690843636589514279914896986263609530724843816765043500835753406474754572147309713788809755577940099436008107807524733770204309243921849760532376514844389706471340690118223496600575379187737055305391069720906926674257443846089736166580810272736556735430698166520060640698505867659732021569552309562005383657999379289934980213341783202862556179432627681277985830626113853231500279540246927142007566765861096856874293585389365672572451394291920993439022435298610065607846222559462676424859475118141893078392721670953983739215067347186734511615957748393363772292003520572963909754764527048999060747956085576832772794874172854408018505523087100253618037494338214384412634740012245589951674534939333168463210365197207044756419793156170133726192338528548580569673250024263610647156672814618391016452530525473719581114108166648720410759006282267846828081340073935583560928976635978590926806773076470531997807546369776483128127259924935842616209034599898613052071124101225448252534831115002353982085419491711571612971601082196279482414816133591654853806898838340104011593422843796263026550252666872617174021864067791980860227198343241245886591456721308265320499765790144588061191456320340819353750439934993297703834545393289003498514406009310668592292296195875151484955213724475152485146719678526993456624410234421505954412035839688417213255098937852074557660403669567536438099397657559626827392742723772968521566281440971591174781951849149228412536102535330184101165589163853085991303053779035184722409226519566961896018211535339411781416538787452969209726326182107464386974668185804043600432851606437081071489624899998801239618184080232972725511394753034265514007804565057675078595185448144820380653130083632823167519135830322911929654449279334434972776567993100871553394540033194062296356496819469412829084417686383511496896547724933373823115158220988819357513908079124579986886811303014281766025968079105886082708009796708963000452877423748019175050803596358739885365236141945986991707974836853042362212965527398136567622262384733492950444651326198211757789902175504388748339498063238150983452066959125683462407512139762010852634150225900315845041006524495157414665590164345602935334005903410356084504155128545880437327863225608177836175023929284475785039399237064158950781509591750985034138416205221693979138514605400804384348478170045803058669774947217707239483090989349983913837999951000380492585192418387366964445538890077525429866287996662942715943234801191301428119056577045805363338440647053709948119418876619420218656454400676734821265559728556181409353715635847252219355804171423953240541694776064254198087419435896356095660650118407864697731088184624265634022438062806880078168025530075414375610722231333323126388705484473416670287019560909520387129872297425269478463615824157755845457967865477412435385399175546731659237192010956061671068656504228955758515453481611804398695590675434502574020846132239944857929306537018440512687652204624280838384460974958272365082196665844645285881602645418059755946545999306097196840385726219725384251045942029266865731502105064652316722906951323650520771087477417008998243684233052513842004226220452294643816450228582096236534066508791159465782606535821060075427138647875280509314681253034214382385041008636384805647393712755548052674786111771904664898431546853235940117465556334327025651309695351028580688799970758880335000150671994758559061962080700900206620655669980888374759031496065982766287914141515931074153280117905779704047788908804224521565244739251263831703995845795013734983772675083466494789976799841700705987783808567370385152500298671268662260290263253239627009255960750918622238300833296019628748527653592397891459484690524475439422392272393384249632768317299972452775766350083818968705225432737583908067174388913788895686184701043589975827911240953965525489346402061644783298624386357268726670215389497406154456333792745922525597491748655521082656038591431227483190018365092305922687244232124897917234921693724363270375588877745604378013236504876377059717304561621196892818778770878788870756654520556763107243033975848274326449522652238245741781733281301121/250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "mercator_margin": [ + "-3467267923019525862711770626553170397664130847863281464911832221/117432131679805039933609081112608705553136601061915885010397825070756502158152501780956157656074369041592635328021472484880426453775271738774269833694580772572302635530265131369760794734103875650891619570213523866744338655653589007316157362295413433283349536516085245301166166180630353163283068049559647037855831806176039633431261029880904263160828401132998894817392913289841882194609783452442642630355677208932412428896635865277761067146724860430821540787703778533999929269764455968538495531325205964545913881224383510729799803132430227379469320131323232669761934468259334993998451440839260258403733170444745252694921797331350159414406209163659522037693941239235356774057846496675890758826194281283957106655303405736042853716286069547202673462567403764800699309599971990911387744352986447169888212677412182510731526245313635725057205874542651701793333487459253886967203047430521159375468367088846982372578442166672316282485148102140775179377942213621380320056560229404458049400173891533181474672084192105379220617066251753185083424598872869137339957748482301199376612283483529618193641683706901370585790270707054570451413712558040886576670826065578677921951449733699415719688983784565945288019056675403007792803138408405737203943386577569775608077802227214011840052375405121547026202488011329301970692190813693880072866635391627865927041308852023170516556373492571288809822467349732482169424394887439806420681223003469276363616703480249787588244265825464275234611775589517805012813049430692982480526454380043883209609051014204710546238914823027246303862258164712610871968894389146618629287086147642854849829566902688713745016506824350204931072158574258141920331690825390225116700678188075798555818625920403884730405107857619747674320246058465424191829639346632986177139443213805844592595821294308631949912474395413767767330539184581347574986662818236804631108329236908064442244327433082772503529087422737072719134011008037204014317278769415082299741456167893116447030713636812262607715121954661573008335009358878705271048314032967635339814011605985117820139555718461078386093009349774705867324337511746177689029139819011398187993248647107143587633421015724220595998489607998412402940663414830201344800933347495508622594918109317615411186799730913732444667222450295400016837282364537685251137452117590124785725441422767854639075914494010525361867998369752757902135958157664728964185789015609332210504116144454560588109394495943834120988008558349324978585022871793398913270267605008550345154224977879636404798607304940688866812284865552872116680550628333431743637799336435377601952447428501217361046206492027397921851495767504432874520297413990547052160544470529001382060582929814935598562370302548777162635942641558420906333565432862877435764201732659085681349760568821963825638886486694430780082426606047059467842577307218004868846745999646439304181441519492498122532920139376136227721443384085980727992070845721649692955479497611971146505341794395232062884564766150472199674887161276440953101400213415361137332107729561354533552929027098919890517433380943672307150734431819899765743564252146762266009136782281625314333484572935848754333175786784500080169235159220846606825944164392538111188529923844717309718795970213111443450093339040109120159715785902471875331230997057010255821618015613724444720312777699995143134364318899890752632842442818960382285845373323430132633596723495766324755605618099852066494678467698278711212761394450927687186621589129499334502444109059807629493576105354949121042435363977051302103250539715560297546322416384269524914088463903045305319454768293476446074486731550607797255491982525672612059525582149473396648424238126057077264622214417108355529297322346752281353648145566885830561780653634576142810854780918411425303171749803242746852730028741887293469689526509618241333091135709553034038858344179118544161031531504903525332979130748918510008517524322703196683732668996483625235265065719525373112908941978393562294825710566398803898180718765244218676826615213701199025053398701297862595326733811348154747478680781535238256069328039470653857544705627987658719613928996894992679551941601932518016928076174688470245841117285037355459063164743333461571476229607471856451015339720305529683585679806632999450457201100922568150420134134906516563071562944897988816591802593233227341215290448405290682582243335343220999609126194546790392613148282493359732664869304539132382370986157816937089569719652717396404719680967142628310628378162664659373032503515208859837174963708202135640603126669345748741538276657346044216360659148987813187304452945838692561400011215059686007991825611840295768293409657533564325138003741866774375311722018127723145052933947789584810344740105131176724144113620497897142789513702888569676160161155574685501975790344778171487894989175416935233250385138246489989223509810572768143721819689005788582503667482082064053846846792489280695463032261770780225991888582370425045597217694332274376806612274247878940057283854797487699136382298251192548285618614090066563710517865371676089529792875376334346742359657335533682704449280997580286370025751371595012924507670712032254654348417242683014485245245816568170164791586746188378238849989210336880730591386194116445324433640411963554935471031755597365064407521033828439783994642261511005988858649819775685024728975744376570618357377023328356184441340297170601034457101927810804755860116516882396639444354913416652334968805523115518010634519344520189493243207839129866450438552828730832298617298837061080236278600452755646336039980910739954079254390198950323356068768074521810382044256304629085794828256913544565158336514438489761841022417306182609412368047069287723873511386908464850852542060017222475426148475249001020436154100172946002011343250652438265480676172464840583980399181029759084445812829697212784668337171708352468995053638776057175723357419244211218078713429476814910034209275103324219716644628855088613137279111315131910293701006313415552171862280786116230241691559865985691820201250154747323929425925179469523356863444150892933963484816322572807080723767636189737041782858761579617194921137521185741005927812166032622501487652348401049509017652450096545315872305712968543779132710519120704486795998008500646436695025550372574626530442275752785746747722677564327247243294637036097867516237002547060503728221495048993577925056961283153443109977831182334455444425820990926116754876669293734965434870086679428947128726034600328304896467861198692921132972495539005797878821253061706738164882334197696352872880634209112291644726202340157940398723830607666841460997186075396885139486538648050647643810271782120711746053799825729484229310432800938793603033043620412977189888256581202991078870390055517243384576848352969663723730247761241348409485774156455776516767092949107569503261154065788553040379586276795397400911715559230306271720913098267828127858707059470016199426586302419530100157702442801823023027520854704069888643488228958839078171568892577940446110469224251478112328670591278314587800800319988939664854810814413870133371650775276617221940753924852091896206092783863725309420037005285637951590485431095750026650760800226684258374600880887521283976107293505473067412268667242047245282396124728080358743233587122281483272438237359706445551750302474993776642968923413121693997164312943909038721653874710172925643519890030755613102594425721230151247867935957382683136649629892844060411537883976788190173833447281438241186892424901019545395288364192742265501698072899678289823791659566108015873740367724932151485686834510783370894853843195860848619275013517688903550116687780480009232534867705101312392193459187830722328419983941981064449402419279144263793269374614252365958017520388654162598555786627388522382548469586371365483666894514836595696777714635637081860500348057001051868644856293020543635511602604731319556430576476493158644856166260143612356984375483607442904354170240799551083213401904229412751260838288305470175897449883195113944871709844706333220429580568318751015121782533443340968564626632512810113286809323654987558601028380957583172955059896929009983983997117440102752498393336241332447240284087651455763802982282575991724548411694491662195333678379619315656302892906978521307055154639910778753777883131211782455639994483390643186473447016694256444459682106878853606242373844184762632997698596823558219399633561222356835926904100429463495762072724775554425252274758461029543666789303558128566562508742796080351926102026779120631850970461355576963861932661793342934845322202891308700766916680186161303260906156747450884039327522001582025826100242413838012910192570439003988889185790058569159189744491348570583813954296342567209710012501248662839954595061781826127776530611626474516231679391008989435188790902048858048684462706293856432440963468147667564462748296146806355143162385415700803447223686912661150237353904888491066881926619919295151037840116886700154255268545759589413344936089094742935729658773062319289220173297277635289370618351185279840648258472161125388335751065063517322393163941049174757224171380179120553854369323766260195393286617252248104869170162143616048889337431104116595218898596818827625809126248670654334447436309756068254670759560666098456536340545235435802402648107811042838064193431993262717206815249655276254999932939192386378972615717839957478978200114348150902769833270546943864126163737716354413656292242399280702649530368667750828464573771148891499120654348690445519032059551200426388056411053931812098036661158635215919649965476745550186920260531342848367492909333148886249310544799527848477025602534980508622482701652266301863350804321546270091304073271120867012325378398168523231891664753114174726225502837170173393625440695955822738629391756130249688041419182910495955401494674233496576680441061117131660671606781220740256464683297787148833730413082980880993389350314401482973992038478693409133989690903788768737977953970645264415759166344681310297338962620093066874361245908241988063882219990372190275450989704889236639827453470853971956030919234351081921864826729658876851061459213119373664661654905445569339939433776992604370811003314527443537017240278970869595939657223851075666436588890319483320601523379699256289491050011477889829288448920904671475667075282165031685332994184178535109370003213904176834424566889730115888341976460392596261851509671802009858014801299884846941142865381014985004208547194390918710342217734304846014110838309068554006215375989357691654528555181111419623651069510883043907411828382529245481523787524032239815878634530997091140764604874104185151602037264209228713689906425782807174151822394847274396541690173550467357421022672141870641325330211313729322297105942531602835244497104418073158943973992405085815092480184038619160839111164006576868661750497554817773705457048497093772410214281537044585995796725947011168653005377103432733487083552038090387304978161061382266650619865738054537923892729479862394142815396508387710391004274059168593758627080673085177665382662065203452380619539313040420589433315329442987444781139602565191722359643755106018427994231432069542424727842724092666680744900394307076367218774141934054553388623077107106619720176985670371926576402355027225263887746054368990679275600923170643652115430813403676097956287086471384644209340227617318195554716565452661393223639973387219562275930111496118848985723375695867634911373018598499747239651151052120193765631990094413478457033335773958667345200063567546727775074408919803559862191312935504329585637555930025651940104734728219060953976088733008586714684537090722346820431749882529401170548582655296444809009559092427926332209721375938918592859460569035663896711123313746227971182577316525445320476489499683576146994698403396809361381252108022790844146615895635711332487730542941113556199164413744667773822287037358034625583856348121811167378270341761912018000744105833658191939630416326044097502392942422686065847704736671845637640229805106790968088599844453810556485931981504444703028262187145414768784681729088144607766161937051141285121822778865020972928515109196217976426365204331059559183470395221185782347577404033593593806940303848859420497579652369618970522034707966363258230838176953052431105086257108116158348059817703655760402905772884577820896526951951872452701808799895515956674635906824091848313680027140020530225838679988385768253713795170761195772759744688758055289563797576486906951469372605931449182309748391688456297139416902925360454024430588981506969320704612396478234017884742681524449340025513427448953800855230490122739066466990708434570367094813196842338232715254693696615671287212321538939765120273737502149353608950868299941857707530904949204318812033507503819121257760440788277265441412699214310721132867354152272255405946705419415354644632555911185645592871503516964264594517120697990924221618816761832424692590515438110507760628125498494397501534665017699113175772522621355672709538659026327995829571803290083147406404349614070121897610092017280467280340212985068138958202179126082551144887351618582961107306354368787197803974323441862180668817468918218092475547606912214941212007833902443828246044373502387326132662216772246815527110619101252719821061961744080671705617514553843513245815071177679123685020195106367602942927600011455931353315075763366120601157746974951922258793436467399651626723029782689179765416410272898539604389796788381936922606909472027223398579312782459935277376373486125833237152799958269531951489469397755118536281387798435602767161371718765587563022856713253609368202840175553075017479482423101364999458050633963251554206527881799120476026755706345559587070006001772167013768740349961027126719399943892151144680243159326286919890019174440962827546643217458435427100446414039683315041861365380527746972830053230391235292149083047091256008598663991032839885869432493293343633039617176725384546033224432720144302772250559651466286143647165891179195173493056733688364769407519911385614272577060851989649081067537271822057421623866192130768545273022717861258129458916348742427151503870834710828443440827117112785056286795526093261970061330174687012208953869297105129806127417633601503984851839680390662447015460302172182529110654863162696500200834680787452191751303282531690705816843807555891152720570133230026610018668150452203832133188129149464853746694837752514159736720338518466561143952898979638050343575755392143036430082613446262872686893791463365320594945062212192736823050664043051032093065439524829876177515661192982223490948309078054286906680578331890623646198520932817147823923568280427533669702792972148098414900791494252814444551903954658464063597617001954703141802085683314755987632326318031034276658305546545946606609535574058084269428853868577021526743451854461124053961835713574238425190775008891334506943323275879636492630745992818413640807416904216124279022879941673447274670508249863711846358994913310327186685689752011124401045280934962663422346487547939466033585758383189339017640675943027951779386766127457703789455238859339257370790866583265823053702492715862125103134274174520655943314261079310439500526523156059374637042772260200191700609657831120390328302613468698610217537399971292174010493312525130550280240717231120079709426312847970729298459159040745208127349944637506834934260570738068095382650156805553212398762222369868032642998047260123712661040801626929822738093789653429450745318802645523811194458705647710216704925754668790509855198773718455616759971612949698633604694517235929926680649228200011381237979840539277979591624802603957823857863249061963469944311906061112352480847201299897303450918370470284337771500774162184120126092025929765247600548650387228238186118956602471744118109138348561742555357074886921888316030285062310672036228850278922402902573540499449438295975296285954230778157123964378312097798596973987925596298833399497681352895085033500426468273868507556034859911454493305134367796389274125417176199383425114068625250584456620838608941449302597724597583979566676523738742605088390314301746287139687166822615444147545685017419320081920970145027670185450269521659595526187797932246570272443284663251572297075635785984730994386769282313371450369706787437678974063768585916896861678853249534326321995992948939114916853301391008713766209874850416885690567023300609794693135620687456867402206592869455787562912725769327270147914853163928517859483528644917554368861562686202997858878054035107235310932608721768493544572213477517595701058669934115757865754375864189358443351424881552316804986111007211732862051196451930361206416001852957207635805402747565775113575281549895631781083019068985518555183795601181147286996782152870669424146564031477480203297092661334650402825750739745730547719994089167485525591012245440074316924417004887806256602920299188851078307252793484744892430825735700989785530648375314567768325558881774311151942336560428933684405240730929408143672392173122358426101835763245570273412976927185714702198244628150520702285080011523131219493101977864006970295641904784117487093541918299260915048369136677123857175737557240261751042738005467433327582116213375326871366296277864422942561451761954128151157383658992202095915485736339867768218296381935969585116061913114358772508033830776260856046065128815999925710997216401144720620591574574733645470404051936225019877834436106980104391227687006522090508380988608780004932041925242810077208389918848658200152013651392703495058756474839392364772470124504008463423954324206265165003993211452582861103645192286217061242041213807433330847837469570264832798842760110549543285370315801943594529791036767070112278705260983722244295791857205952613002144961623639179257322893903535830485341723534860375520421797929811117495212848570199140231199342314204563912102975516549720410004147677844323816371957584898440380255898855526845183564578779693848282399668376002034118579836920265214965862778144553902651394051839905354916301582491982733231827057892009724293219128074924481431162359001054675681071723205496956542222585979587526815162171549156562564859134293852704058856529190422865695110846256537681136235174753953648474135853003312788159008038927131678467274876655182493610332822146576443193494016745344552163088793746620605819694452979591948314214206470081565802568426055331222785531790637596883132581077020126125110004950900350943123064773157797571173344347694612407444962576529072530030603792937112529215610784363767851741003634271649905950949977470574289634150526830057293665573657487394752263063676903260025813331895648391099971576482983577774540487183656946875275799592152149750270095171514836804124919278515378898656787540841949872383770713666208022326246601444116578694449834613799735322035303624536907530233144802591677544959976149943717423067763512322204806512487153725291431436062013500625056155252783171982322045044096309123848949662016756922206791241061477071420147248781108542774526610158921770533598130682882316326392745733520904759269528353287490418129690171174579401385100439718492094356001780144055393738641785438177564346037438306730124706333070945471468708935872866294639338295141645043931968924163053975462951797101905086840621277103865414881858105426024785721527330632874455970003459339030588396698844742692985550722505046681143878667450354575799411529350634865822868581647988201505827562450812960553283519480467203457427752641324699038578721757723328682909967883023961604231635254268780267484165149055904326694270549082788689034989610996805865669552075710737215437272703429574099488219833175159995909987727998459450599711190245495073836828554897515888082697770584018128430990752775227957551765998488005807528998516184784110100963844792659174491022097203492047163983342836318866801684947582325610019861142965914902804355375709460829554160112673883742119864824051037365666653690455084956401773448432028325967632849876299061049887526269779776305057678771641467822886785602879630109391044079054230129859784064031186742666128881137978275350583970607052315816244494305219121027829772738799191628340700567809800340984948916637677681222910529351332797567677245722282752682074296921391122808471803463236917098473559640031342131423817599554328300289245143070209315283113314312639996096925588055393448171697516505007655313318506483422215245162110462439255124848144154263084952504765211425931617778090980718327420440558001732625620875350048321479592442191108741652940632402726866518675413681749074040093037570234424057132430776725134275915607873266131383954358392139635539523495077801985785157390413526862009928206049112481809067319985592523301211385602140158905178176772008035089476659866830764874784920796159474977908073748772593179271171291178895532535973433247093155635566124771852503311790519705695207712675838218651920831096414250930176568989345232199709681948862813696315733413225473381858584762909012772859649837744133593158504595936308139475506892643498880370041306633622432725409621903308677984448909295754151146715790474543148472826740113376753252418453130828119631590021794384238252817079974135881977827488567598624838122501212858180444783918353207817458099068996114876258265622835712667810587003834615193039572814665693968160772613675990174110417623719513037318292650125112617663682515945878937597291678579239733356767168329260660725678983592648898573801943355929229361653983969303140769905576349872033470325168135399754868900100485411327012530576793348765866254424497792111085285679665509399588224385694531724732588340846922447650389545902535893007298406953290191182550893575157047664905604269459884548113214304673887458362497707673887619424725802612583026126885413826911573806272772837171548272515467397098543671848606121321702689483895650768858888573616824138655425768606748485609813791665076095565941622898202704994085849814105544823472043395043825235148107218577033736858257572748822357822745890790139238976908271268697979744479836313013222301954384721377107779335657733338662599664792496571839233914329034077520236112581094156619079356260818793706052518561236602667815648965534037009348227826211567517974549122693095443602716093834251279659040343651036664799724443528171171287336472567248469638730518784061677474470588159572640026413882398070527710915642158785165781449378788084785318527610121090192160084574714560886017778330485353650764457758152372035795709666721112964292233858730573335861617930995530696013421347829567565868104503393298219024735033079895655149240708989362937739971339381361227623550616091867218582383991743971652041836932070480155227125529797221635081748205268202501729585332016905628199372630650807389934827889184561488150825622464256669656668715159569522133288936493121714060224305754945543301464659795327383023935512389328672795256180054115245750973677755680030013320089183892932943917999490009171770143566530564975069217313310595222649508147791613208981032964547046885799924232059008927206511033642983517755239335966771993410920751202087272036510497606474098988416975700090782548622010615587283894775763059799004675027758182545521658944676420426648165425717644549015949140532782540769210825900196787846434598099692232829381423204626873000394779912486656990946791956820728014976310455627359735740039905145666167021768088037900562876865231567656255630425006329955638994247632071625932753459272503955833121136288033853406292854300935949735150210166209582439132615236312222910624546223339379856874087698983137931603346451247606250426675072770207534561562333362568606555124997288381855249364785926825978696289289374837720023969293853325762807438025446271430832510283647641867587081095768990578278483215854152151142749627007972404021696778589647580901090035154408395424047849676510614171137094773430343935558623527528785205722687498249471712176349766996044189058648040813125990979615406804100773486341597272928247174925521979752261696584691099479152346598650642571793649251116600730245029126721774653471115709497811795259255276447221273286864146789045926575358899183226849437749579006731743506132997016212386544782094889986423143108570323660213554016991281930999280915728501416448750666626827887206860313235126526983519100437021377428953620025372647681140831528114898663108901756578359603884629706763428295763085418307877994312939381574637442793193899675586545334308384503871584839361139535185774197652368652157466302945082060413930701047650048245223774144180272648128724602834595201682586926340019178311559715445845306230205817665782334449036039053998536082006340880779360518858304238244616519161073745211536258382714155046059040452037653931313690844543384987640059738953999157902607525181826194482888903588534572228137713767326857473512117275774273637207603258517631546528628362121168625045211555976284875356603369964642311199144577931990354789508518994832279367366274318154816938338943785990950113511548811127258631421442163161121805749043370709929198479749746940699641365301592317850006392101132221248310051050213596095172854540355538037552377060222251436297490691974879322785552182102788014777013645839823614853397324440061239416847827409571995106202760755462006699028986648996223511589641342612361413850408456765307737182186209432716578032035030099069794560938719323579739172644053885053316186486607491865034149095711948709193260829986400290019118772614072924228074416286491998059993354925411456097096961395296769546225028737458825536641914603278306005731280199271397228570551106425615931531408172970501785253876512223580631881858455755337949993104766999301369483907369061295115268880673670665165797203229509620437609684068762588867284495573540847008772338457302771013344483350178814875269242532388266626601330842761632102654909537042728393937519960352178074072221170412901492343134985535835727408145753414911292689604139382167936904934027145164264455782204424603482106698513625377939295746272772443812089597370480685205930797514894163224076735844982154612314766335452143252237123054206866920237909972340894268944052938949663875250980191584838680998604653077841300868641273622467129555519934842459144721325273098531557136250839873704275418626520958547550003601481437717750755813114510057803909319361024340109860736827670444918062642194527481867975290207549395660107991137580869576830558946752209213322319308650183033176400091248791698536980741110561426882038083277305658451881502152496632065903486455238021442591400523765156968763365371406908975062636268197145856438243980615958574299241892507176161464876310225010700966627905234329253298706842455053903326385770349623125414264487613938422905435880221436951291979255272485417885144652207952428283415046038194989140447315507250843725968029402507270861968232465207817965012911736480584086664267505790488816487127702193997796852715092522258746548550520941309120341926191958003035493017002917881938086586461647457210640524161876374558112085184637612763667849848778606492728210176650467536543562715727854649405720361791140250397584458578451136389274105442962039928098953476077092546386166138121087803106742860954371323734056240248474505929260180132919658933370195761835718933062688425573264565937785509502832645388591414532823220642744946759817345547147296542408958858237076236824685305798166191545727480570228450058840279153118404610133219596229106059221928343591238413824666672411176179096176999627958726044021637477418770623022440678329499826840568793120118777566067360717466374806620105510009133569679381179717167153177293187689831670614423094029062234147140131945069707022616287348368623590239127686884618397676087834159197243852644335052035311181170570454054104335202123750384310853148302869037512005169287897073346941029093301293388604438196058681565572205460804048706306904038921625090260377686715232036835628521455855190718600743022247984430101029211471430160315103695477397887008438347977920155784496771144788187422022647773651439416227612639269123367379982433361496659340908300050667427095927233596616312178754440832392153158739392616979318774993479430541307195814401138973926732852770232159538751523237825423498951118240598231276044117803317653926280735254617495908755290412624545524956678214551082372324441446242579036718960759317870177991094798132657262413341114759200714100020985551222063424323709463868931361989464809459140550344178452719702130927224954724252310701195589210636841270212560779285458339414660054141849433227808066894034232331653169774527238022951918498278139831770610699612858521372024666235003221963978938862500760362769368108622460983402475982558917134991198662968223993240510221752220160462339700981554075503504986034133394455976534652012679179191455779835551212768735157587255317369490100399683885095078602692367030271513010380870707346702016351084399559439023612234617394592843664920580721788618278310443701935157331349801158461637620391160376042308698718246547021589894396726712488585964900014805296699391314956765084806571464894193172637938703604603036184930851792889035760328417484114131708531693720512357495164027634787826492352237851735182875809906843968365164282083862735109091720545564248203690574805224283669104173513498808552311366034149834323517132288191746160703364504873771189196629819600365289488117954188436437995868080354116024586498614912503278517193767000885814605109993159760780988846426352761610971092592825439500230454764859396451295403546357657495639072179635876683637985787476282759243246195457155500326417207480418975192029104617555540601031886821775260537292263273085924434399908880927455480609362389759154911948672861091604743063853873820293192608177182877413492801421168193840573432191751642117417826948887827352931309679163693199889908913990176886417597016655792920469965774290732987406961111285152529219998017830320100354400368441423436091830280513646193248835394650765277098376645080937233636333424684471253334550474746160942063489003784929303377125604058533629087862034157601229897799905462550200919738729631559330683852587230407711583370380531766361666682505869533938281661365000974812492838298890524342057639697747157912482706385935047312205651979861880276152042401386916885226658176542861831178584107939309843391137664755806524518354034712323686261223607894448740980321362130976031179490393629327998520641992655436583749062582233489835422850338028495701597470326784", + "-13869071692078103450847082506212681590656523391453125859647312385/469728526719220159734436324450434822212546404247663540041591300283026008632610007123824630624297476166370541312085889939521705815101086955097079334778323090289210542121060525479043178936415502603566478280854095466977354622614356029264629449181653733133398146064340981204664664722521412653132272198238588151423327224704158533725044119523617052643313604531995579269571653159367528778439133809770570521422708835729649715586543461111044268586899441723286163150815114135999717079057823874153982125300823858183655524897534042919199212529720909517877280525292930679047737873037339975993805763357041033614932681778981010779687189325400637657624836654638088150775764956941427096231385986703563035304777125135828426621213622944171414865144278188810693850269615059202797238399887963645550977411945788679552850709648730042926104981254542900228823498170606807173333949837015547868812189722084637501873468355387929490313768666689265129940592408563100717511768854485521280226240917617832197600695566132725898688336768421516882468265007012740333698395491476549359830993929204797506449133934118472774566734827605482343161082828218281805654850232163546306683304262314711687805798934797662878755935138263781152076226701612031171212553633622948815773546310279102432311208908856047360209501620486188104809952045317207882768763254775520291466541566511463708165235408092682066225493970285155239289869398929928677697579549759225682724892013877105454466813920999150352977063301857100938447102358071220051252197722771929922105817520175532838436204056818842184955659292108985215449032658850443487875577556586474517148344590571419399318267610754854980066027297400819724288634297032567681326763301560900466802712752303194223274503681615538921620431430478990697280984233861696767318557386531944708557772855223378370383285177234527799649897581655071069322156738325390299946651272947218524433316947632257768977309732331090014116349690948290876536044032148816057269115077660329198965824671572465788122854547249050430860487818646292033340037435514821084193256131870541359256046423940471280558222873844313544372037399098823469297350046984710756116559276045592751972994588428574350533684062896882383993958431993649611762653659320805379203733389982034490379672437270461644747198923654929778668889801181600067349129458150741004549808470360499142901765691071418556303657976042101447471993479011031608543832630658915856743156062437328842016464577818242352437577983775336483952034233397299914340091487173595653081070420034201380616899911518545619194429219762755467249139462211488466722202513333726974551197345741510407809789714004869444184825968109591687405983070017731498081189655962188208642177882116005528242331719259742394249481210195108650543770566233683625334261731451509743056806930636342725399042275287855302555545946777723120329706424188237871370309228872019475386983998585757216725766077969992490131680557504544910885773536343922911968283382886598771821917990447884586021367177580928251538259064601888798699548645105763812405600853661444549328430918245418134211716108395679562069733523774689228602937727279599062974257008587049064036547129126501257333938291743395017332703147138000320676940636883386427303776657570152444754119695378869238875183880852445773800373356160436480638863143609887501324923988228041023286472062454897778881251110799980572537457275599563010531369771275841529143381493293720530534386893983065299022422472399408265978713870793114844851045577803710748746486356517997338009776436239230517974304421419796484169741455908205208413002158862241190185289665537078099656353855612181221277819073173905784297946926202431189021967930102690448238102328597893586593696952504228309058488857668433422117189289387009125414592582267543322247122614538304571243419123673645701212686999212970987410920114967549173878758106038472965332364542838212136155433376716474176644126126019614101331916522995674040034070097290812786734930675985934500941060262878101492451635767913574249179302842265595215592722875060976874707306460854804796100213594805191450381306935245392618989914723126140953024277312157882615430178822511950634878455715987579970718207766407730072067712304698753880983364469140149421836252658973333846285904918429887425804061358881222118734342719226531997801828804403690272601680536539626066252286251779591955266367210372932909364861161793621162730328973341372883998436504778187161570452593129973438930659477218156529529483944631267748358278878610869585618878723868570513242513512650658637492130014060835439348699854832808542562412506677382994966153106629384176865442636595951252749217811783354770245600044860238744031967302447361183073173638630134257300552014967467097501246888072510892580211735791158339241378960420524706896576454481991588571158054811554278704640644622298742007903161379112685951579956701667740933001540552985959956894039242291072574887278756023154330014669928328256215387387169957122781852129047083120903967554329481700182388870777329097507226449096991515760229135419189950796545529193004770193142474456360266254842071461486704358119171501505337386969438629342134730817797123990321145480103005486380051698030682848129018617393668970732057940980983266272680659166346984753512955399956841347522922365544776465781297734561647854219741884127022389460257630084135313759135978569046044023955434599279102740098915902977506282473429508093313424737765361188682404137828407711243219023440466067529586557777419653666609339875222092462072042538077378080757972972831356519465801754211314923329194469195348244320945114401811022585344159923642959816317017560795801293424275072298087241528177025218516343179313027654178260633346057753959047364089669224730437649472188277150895494045547633859403410168240068889901704593900996004081744616400691784008045373002609753061922704689859362335921596724119036337783251318788851138673348686833409875980214555104228702893429676976844872314853717907259640136837100413296878866578515420354452549116445260527641174804025253662208687449123144464920966766239463942767280805000618989295717703700717878093427453776603571735853939265290291228322895070544758948167131435046318468779684550084742964023711248664130490005950609393604198036070609800386181263489222851874175116530842076482817947183992034002585746780102201490298506121769103011142986990890710257308988973178548144391470064948010188242014912885980195974311700227845132613772439911324729337821777703283963704467019506677174939861739480346717715788514904138401313219585871444794771684531889982156023191515285012246826952659529336790785411491522536836449166578904809360631761594895322430667365843988744301587540557946154592202590575241087128482846984215199302917936917241731203755174412132174481651908759553026324811964315481560222068973538307393411878654894920991044965393637943096625823106067068371796430278013044616263154212161518345107181589603646862236921225086883652393071312511434828237880064797706345209678120400630809771207292092110083418816279554573952915835356312686275570311761784441876897005912449314682365113258351203201279955758659419243257655480533486603101106468887763015699408367584824371135454901237680148021142551806361941724383000106603043200906737033498403523550085135904429174021892269649074668968188981129584498912321434972934348489125933089752949438825782207001209899975106571875693652486775988657251775636154886615498840691702574079560123022452410377702884920604991471743829530732546598519571376241646151535907152760695333789125752964747569699604078181581153456770969062006792291598713159295166638264432063494961470899728605942747338043133483579415372783443394477100054070755614200466751121920036930139470820405249568773836751322889313679935767924257797609677116577055173077498457009463832070081554616650394223146509554089530193878345485461934667578059346382787110858542548327442001392228004207474579425172082174542046410418925278225722305905972634579424665040574449427937501934429771617416680963198204332853607616917651005043353153221880703589799532780455779486839378825332881718322273275004060487130133773363874258506530051240453147237294619950234404113523830332691820239587716039935935988469760411009993573344965329788961136350605823055211929130303966898193646777966648781334713518477262625211571627914085228220618559643115015111532524847129822559977933562572745893788066777025777838728427515414424969495376739050531990794387294232877598534244889427343707616401717853983048290899102217701009099033844118174667157214232514266250034971184321407704408107116482527403881845422307855447730647173371739381288811565234803067666720744645213043624626989803536157310088006328103304400969655352051640770281756015955556743160234276636758977965394282335255817185370268838840050004994651359818380247127304511106122446505898064926717564035957740755163608195432194737850825175425729763853872590670257850993184587225420572649541662803213788894747650644600949415619553964267527706479677180604151360467546800617021074183038357653379744356378971742918635092249277156880693189110541157482473404741119362593033888644501553343004260254069289572655764196699028896685520716482215417477295065040781573146469008992419476680648574464195557349724416466380875594387275310503236504994682617337789745239024273018683038242664393826145362180941743209610592431244171352256773727973050868827260998621105019999731756769545515890462871359829915912800457392603611079333082187775456504654950865417654625168969597122810598121474671003313858295084595565996482617394761782076128238204801705552225644215727248392146644634540863678599861906982200747681042125371393469971637332595544997242179198111393908102410139922034489930806609065207453403217286185080365216293084483468049301513592674092927566659012456698904902011348680693574501762783823290954517567024520998752165676731641983821605978696933986306721764244468526642686427124882961025858733191148595334921652331923523973557401257605931895968153914773636535958763615155074951911815882581057663036665378725241189355850480372267497444983632967952255528879961488761101803958819556946559309813883415887824123676937404327687459306918635507404245836852477494658646619621782277359757735107970417483244013258109774148068961115883478383758628895404302665746355561277933282406093518797025157964200045911559317153795683618685902668301128660126741331976736714140437480012855616707337698267558920463553367905841570385047406038687208039432059205199539387764571461524059940016834188777563674841368870937219384056443353236274216024861503957430766618114220724445678494604278043532175629647313530116981926095150096128959263514538123988364563058419496416740606408149056836914854759625703131228696607289579389097586166760694201869429684090688567482565301320845254917289188423770126411340977988417672292635775895969620343260369920736154476643356444656026307474647001990219271094821828193988375089640857126148178343983186903788044674612021508413730933948334208152361549219912644245529066602479462952218151695570917919449576571261586033550841564017096236674375034508322692340710661530648260813809522478157252161682357733261317771949779124558410260766889438575020424073711976925728278169698911370896370666722979601577228305468875096567736218213554492308428426478880707942681487706305609420108901055550984217475962717102403692682574608461723253614704391825148345885538576837360910469272782218866261810645572894559893548878249103720445984475395942893502783470539645492074393998988958604604208480775062527960377653913828133343095834669380800254270186911100297635679214239448765251742017318342550223720102607760418938912876243815904354932034346858738148362889387281726999530117604682194330621185779236038236369711705328838885503755674371437842276142655586844493254984911884730309266101781281905957998734304587978793613587237445525008432091163376586463582542845329950922171764454224796657654978671095289148149432138502335425392487244669513081367047648072002976423334632767758521665304176390009571769690744263390818946687382550560919220427163872354399377815242225943727926017778812113048748581659075138726916352578431064647748204565140487291115460083891714060436784871905705460817324238236733881580884743129390309616134374375227761215395437681990318609478475882088138831865453032923352707812209724420345028432464633392239270814623041611623091538311283586107807807489810807235199582063826698543627296367393254720108560082120903354719953543073014855180683044783091038978755032221158255190305947627805877490423725796729238993566753825188557667611701441816097722355926027877282818449585912936071538970726097797360102053709795815203420921960490956265867962833738281468379252787369352930861018774786462685148849286155759060481094950008597414435803473199767430830123619796817275248134030015276485031041763153109061765650796857242884531469416609089021623786821677661418578530223644742582371486014067857058378068482791963696886475267047329698770362061752442031042512501993977590006138660070796452703090090485422690838154636105311983318287213160332589625617398456280487590440368069121869121360851940272555832808716504330204579549406474331844429225417475148791215897293767448722675269875672872369902190427648859764848031335609775312984177494009549304530648867088987262108442476405010879284247846976322686822470058215374052983260284710716494740080780425470411771710400045823725413260303053464482404630987899807689035173745869598606506892119130756719061665641091594158417559187153527747690427637888108893594317251129839741109505493944503332948611199833078127805957877591020474145125551193742411068645486875062350252091426853014437472811360702212300069917929692405459997832202535853006216826111527196481904107022825382238348280024007088668055074961399844108506877599775568604578720972637305147679560076697763851310186572869833741708401785656158733260167445461522110987891320212921564941168596332188365024034394655964131359543477729973173374532158468706901538184132897730880577211089002238605865144574588663564716780693972226934753459077630079645542457090308243407958596324270149087288229686495464768523074181092090871445032517835665394969708606015483338843313773763308468451140225147182104373047880245320698748048835815477188420519224509670534406015939407358721562649788061841208688730116442619452650786000803338723149808767005213130126762823267375230223564610882280532920106440074672601808815328532752516597859414986779351010056638946881354073866244575811595918552201374303021568572145720330453785051490747575165853461282379780248848770947292202656172204128372261758099319504710062644771928893963793236312217147626722313327562494584794083731268591295694273121710134678811171888592393659603165977011257778207615818633856254390468007818812567208342733259023950529305272124137106633222186183786426438142296232337077715415474308086106973807417844496215847342854296953700763100035565338027773293103518545970522983971273654563229667616864497116091519766693789098682032999454847385435979653241308746742759008044497604181123739850653689385950191757864134343033532757356070562703772111807117547064509830815157820955437357029483163466333063292214809970863448500412537096698082623773257044317241758002106092624237498548171089040800766802438631324481561313210453874794440870149599885168696041973250100522201120962868924480318837705251391882917193836636162980832509399778550027339737042282952272381530600627222212849595048889479472130571992189040494850644163206507719290952375158613717802981275210582095244777834822590840866819703018675162039420795094873822467039886451798794534418778068943719706722596912800045524951919362157111918366499210415831295431452996247853879777247624244449409923388805199589213803673481881137351086003096648736480504368103719060990402194601548912952744475826409886976472436553394246970221428299547687553264121140249242688144915401115689611610294161997797753183901185143816923112628495857513248391194387895951702385195333597990725411580340134001705873095474030224139439645817973220537471185557096501668704797533700456274501002337826483354435765797210390898390335918266706094954970420353561257206985148558748667290461776590182740069677280327683880580110680741801078086638382104751191728986281089773138653006289188302543143938923977547077129253485801478827149750715896255074343667587446715412998137305287983971795756459667413205564034855064839499401667542762268093202439178772542482749827469608826371477823150251650903077309080591659412655714071437934114579670217475446250744811991435512216140428941243730434887073974178288853910070382804234679736463031463017503456757433773405699526209267219944444028846931448204785807721444825664007411828830543221610990263100454301126199582527124332076275942074220735182404724589147987128611482677696586256125909920813188370645338601611303002958982922190879976356669942102364048981760297267697668019551225026411681196755404313229011173938979569723302942803959142122593501258271073302235527097244607769346241715734737620962923717632574689568692489433704407343052982281093651907708742858808792978512602082809140320046092524877972407911456027881182567619136469948374167673197043660193476546708495428702950228961047004170952021869733310328464853501307485465185111457691770245807047816512604629534635968808383661942945359471072873185527743878340464247652457435090032135323105043424184260515263999702843988865604578882482366298298934581881616207744900079511337744427920417564910748026088362033523954435120019728167700971240308833559675394632800608054605570813980235025899357569459089880498016033853695817296825060660015972845810331444414580769144868244968164855229733323391349878281059331195371040442198173141481263207774378119164147068280449114821043934888977183167428823810452008579846494556717029291575614143321941366894139441502081687191719244469980851394280796560924797369256818255648411902066198881640016590711377295265487830339593761521023595422107380734258315118775393129598673504008136474319347681060859863451112578215610605576207359621419665206329967930932927308231568038897172876512299697925724649436004218702724286892821987826168890343918350107260648686196626250259436537175410816235426116761691462780443385026150724544940699015814593896543412013251152636032155708526713869099506620729974441331288586305772773976066981378208652355174986482423278777811918367793256856825880326263210273704221324891142127162550387532530324308080504500440019803601403772492259092631190284693377390778449629779850306116290120122415171748450116862443137455071406964014537086599623803799909882297158536602107320229174662294629949579009052254707613040103253327582593564399886305931934311098161948734627787501103198368608599001080380686059347216499677114061515594627150163367799489535082854664832089304986405776466314777799338455198941288141214498147630120932579210366710179839904599774869692271054049288819226049948614901165725744248054002500224621011132687929288180176385236495395798648067027688827164964245908285680588995124434171098106440635687082134392522731529265305570982934083619037078113413149961672518760684698317605540401758873968377424007120576221574954567141752710257384149753226920498825332283781885874835743491465178557353180566580175727875696652215901851807188407620347362485108415461659527432421704099142886109322531497823880013837356122353586795378970771942202890020186724575514669801418303197646117402539463291474326591952806023310249803251842213134077921868813829711010565298796154314887030893314731639871532095846416926541017075121069936660596223617306777082196331154756139958443987223462678208302842948861749090813718296397952879332700639983639950911993837802398844760981980295347314219590063552330791082336072513723963011100911830207063993952023230115994064739136440403855379170636697964088388813968188655933371345275467206739790329302440079444571863659611217421502837843318216640450695534968479459296204149462666614761820339825607093793728113303870531399505196244199550105079119105220230715086565871291547142411518520437564176316216920519439136256124746970664515524551913101402335882428209263264977977220876484111319090955196766513362802271239201363939795666550710724891642117405331190270708982889131010728297187685564491233887213852947668393894238560125368525695270398217313201156980572280837261132453257250559984387702352221573792686790066020030621253274025933688860980648441849757020499392576617052339810019060845703726471112363922873309681762232006930502483501400193285918369768764434966611762529610907466074701654726996296160372150280937696228529723106900537103662431493064525535817433568558542158093980311207943140629561654107448039712824196449927236269279942370093204845542408560635620712707088032140357906639467323059499139683184637899911632294995090372717084685164715582130143893732988372622542264499087410013247162078822780830850703352874607683324385657003720706275957380928798838727795451254785262933652901893527434339051636051091438599350976534372634018383745232557902027570573995521480165226534489730901638487613234711937795637183016604586863161898172593891306960453507013009673812523312478526360087177536953011268319896543527911309954270394499352490004851432721779135673412831269832396275984459505033062491342850671242348015338460772158291258662775872643090454703960696441670494878052149273170600500450470654730063783515750389166714316958933427068673317042642902715934370595594295207773423716917446615935877212563079622305399488133881300672541599019475600401941645308050122307173395063465017697991168444341142718662037598352897542778126898930353363387689790601558183610143572029193627813160764730203574300628190659622417077839538192452857218695549833449990830695550477698903210450332104507541655307646295225091091348686193090061869588394174687394424485286810757935582603075435554294467296554621703074426993942439255166660304382263766491592810819976343399256422179293888173580175300940592428874308134947433030290995289431290983563160556955907633085074791918977919345252052889207817538885508431117342630933354650398659169986287356935657316136310080944450324376626476317425043275174824210074244946410671262595862136148037392911304846270071898196490772381774410864375337005118636161374604146659198897774112684685149345890268993878554922075136246709897882352638290560105655529592282110843662568635140663125797515152339141274110440484360768640338298858243544071113321941414603057831032609488143182838666884451857168935434922293343446471723982122784053685391318270263472418013573192876098940132319582620596962835957451750959885357525444910494202464367468874329535966975886608167347728281920620908502119188886540326992821072810006918341328067622512797490522603229559739311556738245952603302489857026678626674860638278088533155745972486856240897223019782173205858639181309532095742049557314691181024720216460983003894711022720120053280356735571731775671997960036687080574266122259900276869253242380890598032591166452835924131858188187543199696928236035708826044134571934071020957343867087973643683004808349088146041990425896395953667902800363130194488042462349135579103052239196018700111032730182086635778705681706592661702870578196063796562131130163076843303600787151385738392398768931317525692818507492001579119649946627963787167827282912059905241822509438942960159620582664668087072352151602251507460926270625022521700025319822555976990528286503731013837090015823332484545152135413625171417203743798940600840664838329756530460945248891642498184893357519427496350795932551726413385804990425001706700291080830138246249333450274426220499989153527420997459143707303914785157157499350880095877175413303051229752101785085723330041134590567470348324383075962313113932863416608604570998508031889616086787114358590323604360140617633581696191398706042456684548379093721375742234494110115140822890749992997886848705399067984176756234592163252503963918461627216403093945366389091712988699702087919009046786338764397916609386394602570287174597004466402920980116506887098613884462837991247181037021105788885093147456587156183706301435596732907397750998316026926974024531988064849546179128379559945692572434281294640854216067965127723997123662914005665795002666507311548827441252940506107934076401748085509715814480101490590724563326112459594652435607026313438415538518827053713183052341673231511977251757526298549771172775598702346181337233538015486339357444558140743096790609474608629865211780328241655722804190600192980895096576721090592514898411338380806730347705360076713246238861783381224920823270663129337796144156215994144328025363523117442075433216952978466076644294980846145033530856620184236161808150615725254763378173539950560238955815996631610430100727304777931555614354138288912550855069307429894048469103097094548830413034070526186114513448484674500180846223905139501426413479858569244796578311727961419158034075979329117469465097272619267753355775143963800454046195244509034525685768652644487222996173482839716793918998987762798565461206369271400025568404528884993240204200854384380691418161422152150209508240889005745189962767899517291142208728411152059108054583359294459413589297760244957667391309638287980424811043021848026796115946595984894046358565370449445655401633827061230948728744837730866312128140120396279178243754877294318956690576215540213264745946429967460136596382847794836773043319945601160076475090456291696912297665145967992239973419701645824388387845581187078184900114949835302146567658413113224022925120797085588914282204425702463726125632691882007141015506048894322527527433823021351799972419067997205477935629476245180461075522694682660663188812918038481750438736275050355469137982294163388035089353829211084053377933400715259501076970129553066506405323371046528410619638148170913575750079841408712296288884681651605969372539942143342909632583013659645170758416557528671747619736108580657057823128817698413928426794054501511757182985091089775248358389481922740823723190059576652896306943379928618449259065341808573008948492216827467680951639889363577075776211755798655501003920766339354723994418612311365203474565094489868518222079739369836578885301092394126228545003359494817101674506083834190200014405925750871003023252458040231215637277444097360439442947310681779672250568778109927471901160830197582640431964550323478307322235787008836853289277234600732132705600364995166794147922964442245707528152333109222633807526008609986528263613945820952085770365602095060627875053461485627635900250545072788583425752975922463834297196967570028704645859505240900042803866511620937317013194827369820215613305543081398492501657057950455753691621743520885747805167917021089941671540578608831809713133660184152779956561789262029003374903872117610029083447872929860831271860051646945922336346657070023161955265948510808775991187410860370089034986194202083765236481367704767832012141972068011671527752346345846589828842562096647505498232448340738550451054671399395114425970912840706601870146174250862911418597622881447164561001590337834313804545557096421771848159712395813904308370185544664552484351212426971443817485294936224960993898023717040720531678635733480783047342875732250753702293058263751142038011330581554365658131292882570979787039269382188589186169635835432948304947298741223192664766182909922280913800235361116612473618440532878384916424236887713374364953655298666689644704716384707998511834904176086549909675082492089762713317999307362275172480475110264269442869865499226480422040036534278717524718868668612709172750759326682457692376116248936588560527780278828090465149393474494360956510747538473590704351336636788975410577340208141244724682281816216417340808495001537243412593211476150048020677151588293387764116373205173554417752784234726262288821843216194825227616155686500361041510746860928147342514085823420762874402972088991937720404116845885720641260414781909591548033753391911680623137987084579152749688090591094605757664910450557076493469519929733445986637363633200202669708383708934386465248715017763329568612634957570467917275099973917722165228783257604555895706931411080928638155006092951301693995804472962392925104176471213270615705122941018469983635021161650498182099826712858204329489297765784970316146875843037271480711964379192530629049653364459036802856400083942204888253697294837855475725447957859237836562201376713810878808523708899818897009242804782356842547365080850243117141833357658640216567397732911232267576136929326612679098108952091807673993112559327082442798451434085488098664940012887855915755450003041451077472434489843933609903930235668539964794651872895972962040887008880641849358803926216302014019944136533577823906138608050716716765823119342204851074940630349021269477960401598735540380314410769468121086052041523482829386808065404337598237756094448938469578371374659682322887154473113241774807740629325399204633846550481564641504169234794872986188086359577586906849954343859600059221186797565259827060339226285859576772690551754814418412144739723407171556143041313669936456526834126774882049429980656110539151305969408951406940731503239627375873460657128335450940436366882182256992814762299220897134676416694053995234209245464136599337294068529152766984642813458019495084756786519278401461157952471816753745751983472321416464098345994459650013114068775068003543258420439972639043123955385705411046443884370371301758000921819059437585805181614185430629982556288718543506734551943149905131036972984781828622001305668829921675900768116418470222162404127547287101042149169053092343697737599635523709821922437449559036619647794691444366418972255415495281172770432708731509653971205684672775362293728767006568469671307795551309411725238716654772799559635655960707545670388066623171681879863097162931949627844445140610116879992071321280401417601473765693744367321122054584772995341578603061108393506580323748934545333698737885013338201898984643768253956015139717213508502416234134516351448136630404919591199621850200803678954918526237322735410348921630846333481522127065446666730023478135753126645460003899249971353195562097368230558790988631649930825543740189248822607919447521104608169605547667540906632706171447324714336431757239373564550659023226098073416138849294745044894431577794963921285448523904124717961574517311994082567970621746334996250328933959341691401352113982806389881307136" + ], + "base_two_margin": [ + "-999371937670682258267688042002283178793156145751631230398905067452527137728090003/33847507486367551765540032674419183452285177612486853234255239925957285396780499395418742823877558738362999640426139593560889291941216321535063432854603384037280088180490677126488436758765099133850651496127505144378318784799775704904024235568738229762987766613901584647654333934029294914323117996095754719617845119424421289620431480597697585953316616591207326681420449020085763093942772489762918650813460229085226922636139288299279039676099929602653947154255723569145202394180507140639906821666368181632065055289386162660210309399246983135427589575971505081558322858321107333823467758430576341230602168993282026807293880857478138852427920043413814289552378366851694399118757344141704592446388886118530046915545894901250275012112796145187017134232432624940940669779020241208865565328971944546698740926486085102381883460289996025418574573557970531038843277447406583476063970159818192770546256539878647923594835120075349628800612231631140507557638866313703219648622860230952130698829107271330647908735098785183405280182071100907073010082267337379041795072778787614950135192165393893998198456955924765385128061750596668280928826088514888159062269150965263731356564607242832786294140329898376274705380843370672281110810892526581971462409646782224444701195512393675928704470020202330749117721402964130120168011298771082157827535344765251382904691556740380524682230884436404077333083527126967687117461845351531506518339809533744840642397131535173082999342749359609891820425097733300235160164372661034356012192124589009786138599905089511749263573215258215068875743819300682885516071744267781888177269636231524883216938602685625071254058939562251082070053605840405133903821508251004805700030886611349548139598939937282853773401406947023076782045674355075741849468544666685076008415182807624839076909948223065182640785489455825097037930135047317538278268169557011248757555668258525773077824404101836546794680907658021426607244942909345314779900880901201802767560609656659145670068176860839080237841062680409147858247052350958964759247729021070360026673788220670696083367579743837086021964453931954782090926549180313069423313147526727716773076317996078921027835198066777149673361684805125294097966416627311684948563973790464039578076987638738225291523976630390423045485784454132275493684678480879557849458234708138725352654322470386726752147661585201009289963589486449567633966173046799648495703500269687283716647558194762892679309220273963685337643198806041659397854944029507635249545578232170990901282351137988704060871848837288092784010512762889235648582732522159111543819253885570827565386135727882600878310842538095556806473875736277400986462182390730521365121237902630156869352874890561847928270528660448891300253527101687379033579259720595777309973761382214763381189322424528960400706849773842163963576020386933228266026304006622378050395592707820172036779951612847048393174529236551162100849948947015963554854287075055768516828820332329854597341729321057339036263828688837666043480108088474580094673072747225420008237682298453103122898800669657248247119055051034784537624565441937665294825531342567684583666561522101063415952123439580252497775700939105944750857452905258965675278372935913365008814444271892023336626265006236597696726329098797168213222301593541008379740456942048591701699042905301489512704332598024259034142218113943455141961754733868569592637707294364944839940115329547034106674801157776068768264699893690364539403161797035587034632484645481920630277024357498527584591746206048866359057727099417319252742722903973885061637304169578060227280789438804986926273298161248554426112250098725084379884755369989148873806509673147663198484335649723162795418523394754347797312498290119352301175755308586877018212447030035890951363855712139191381699226480636497838816806791143165367992803972855642521204015454687638902397907408011312496473045590925299434049958435928388374637222505395536186113941031604117622634799003887982256457844007404684836953935065140950939590484624563592152096684791231155126329516126734945433948594127106176746115360761567745843982440696167765744102154673512633844902624244441782747355613563737110193661289839446679420850434149015080788232990883563340451498576363389585042588167722452585415299085640021988382502947559806429341260902642733632876144943207264087409426300085423026679775098981577320327224085315750973237605731192513794397746852212072600736516927035100133723008264001734748281497292732314230965578232367458916034249477071844228919950453909058679066378705217550825617002093169241610392634459179903450681034716917685786346877017872445551207699853910090692943581686929391996302562576664396543560905572852710536908460396910625484349135866184759701980305515986737548359098700316614940585375437347305938872638964229327659370549521653728844603533109868105976895711031381913060508269184278884717616588866422358021425184144911686405865199119586142394386612206158524551922312516615372678128857408038280077930516943796284525562953144389303971276891823970759213222959178580111994193585777490947405355534076051417507007345383039232436133816184321308696858010309162472733382360450777016692843548250729474726724077422795020655689226770122200079791848405474412838922637126900948249405374531878622239523736515340603723886326244502020534217261192930117449618048456919242170468263978656840792854872432767003057848957978126465192215474488789592988924138298088878619856027987616684841371422038746088578252119148647060107101233587634046148952197268552928404073810706296198505237086608458166421288724126574760423234960181293450537764262980543429689343215134545462420852348337881224674570545177736293028201671932806059636082308204726913587670295002092915549149455754089400117643326295027035744386127663159354938470377414560983582918915393661032190228724615776255944349669428850130369144967901001797404888378874264882536654468503040503853650819124015173437788463714909792211567485736192403933982949714714644904250385940507182003070329106765827916070968144713452872133621305826312862145453129218271292508225480367071585358574016965047823211274069661027107750685231303612715265790053108677572947811780117245414579933683073316331251831020392188772060272684933301881889830647503300697890163917044965485838348781827307751882047064512098947603185578320922995532142101613535577697435617596575784821470658081674423380542419094648923871052268891206307168305220511643715087463601643211572190843535103388474668256159764159846824456251171722813621950029098641972403676991047441829074357309254454045105336598302419877995029766671578174813843620032001989546569912885324566472999631573994418145355880238114662794789961132224437513850803088532391586503310813838117908220428001842362094779222041241575560264360502875417618043257336884697416402152223107223881044233265784219381204535490308275517126750098023452277666923985302989307385004816042011513978657406746794994596563464123827666090078418350565540307656043203811502052781597515788888369669483701475182404431997176283049989157541781799103501450892453984827232936583696203713274863601669626421996625164226634644661034244190900205621598360634432996446856803216765615630240741686873666631488953818224923498778331818302052559352106946737574339007021355918923505588140115701269165565603149848677133868173131537323178267480471772795330549903366737534148698111823070091395673279889608958004066743925465602718088927556128450538151582140218738335788909782184561949805426351711721181057530675744299528706074755736449705406771234345432123333355997774170508195637330685096320293587959243912858607749041511694045131217559300918958759637670026169878352628257107709555574709245578006157585399850709918735500919421434386732640898035417202023766683486543811826524220465152257274435974939352123343846634470089353952197638152116486031421371901621108727555128829650528629847532631437873895853178124869417043767449808695369159512816132197892903405290089463100073661510250405968346553954618671078503102047276505802399872660625343229157814990508075869445315390147081929810502742603014098116369766896625171824962172978055061043739653860681278388435563579021816006301244609057654821465288248218195385207537741351991293618857830181649966936074027336829933687097386010026770368695419459912634125381264766924527018631283639280279357039744653258739467668621320050478381671496380637565659369780931270975239393345901753363991970959356404751518502458681683927803229729458418908471970291488647782550294720002012648819817546713497947750706272357885885904094775602448509094847738640944615972395596682168526452089489273783643057665408680911625612402848756963381762386559623793482140435020173983379773449725067299370617010132120116059146749494411447021922290683577574702623472412362051514353022727114179411036432743324539572987962744114418967412548887278234077702990421073275128629313983563700346476894047711513308122119993134804034632993135861962548825260626594853732831668986299183732395474479561461278244383633806214522677405150167976311925486758382632660994426551990894928976086637499325392752113346538546312722629938915125376722503628634531043507204360720452167279836706927394553032116902578879401404266065068319106964258348688954032694153285816970497223860207434113875521447333816691534091093345955823692610548821662916461576911968345312248298895573499910486035208436478411132301310785210576783436606938845881661441191671877773056229550675919353210521331722283954129030113374203035481788277812405085287451157219137286326229095614295248160981370751328978011464771675504604736049318719755838064107684017857622187314930185902612873277938130617049301283246162145119852425715700105157621106537238648781513497630674072019278343814738942788470846631027954622383019425933891805290362558096530925153043365539803825992124672046258378215225207325991987757849282668172267593509379180377050921374253829038135895705524195312129679208459776120769890908103129366930345922322959161465521091955612002710830003877312387704853822398435415285779023221392540270738447788367810528000863749705234906483668203122356573319186533312448976117413021933505120261823432657134565032311734016117236404818859698153994481251320229988078952532717474372626538292423534113681645264603584099161650875648231318560624732570814916128370360584433361726719238731151991651708720194126499918272563245823690374699012120305993462504577645382762792444503100273263330495716073567055087101181849508399005375365625434725801540802554568385047950237420158565502235060995038008403311265180345375587343883240419114052765899266278113294002015101009242615929061771445041746246829648341118570077486802123008945556966985193593491558335058190921070743843846342191829905390792146744475548979974262214436157350305779420693587619809912145370828118521474790361695342089255401362550131375428586766943145321603515938391219804073641163751884911016024859486456283179966269356369784265429331731367005808312929122184466492975619258987555486475961917194927550354016129623585794117279101267390355410763255334503293062493035099579685438722404629164239348430254448352382104277279173706162060439836653804960669549212103565943726145616571543321263583880480176938710795572400674565742633852922587450060601247438010754941675977626328578573951779308560800365540257184067804713472176814288699508963735329654858894336926985883714637557792284388301140047011025456490420035418890046224821032907019705914485123064312460261268912445813872061123985553876343028874552811688485314133770795324154046416922716183182512212210464515435520413191358306420194310383250790665110597406926501894444715985611904504869667521621206879960738092388687862739590127247883779307082216406801205172062751046212167058072186305204071321638843170843520890665393294397599976166867595976235028092964583646696877627789550489439373125615415344710878765433645516772462404995821868624809079259234720208850391393468891477317704679448946929671375711984702397740301991965601347231233157481983202161180748549646837528389179112498492633160248925740709542394804459398475485003183847133991086883043711323361539155496233046913862834515610403444868779669839046565452877951827324091066490843271758641661980315094793891589510741959865386961723690207606795577553246567245782055650972461297845097476308641519064780470355639132997463447390253832367153878369907340138942249893025760653946413287291435690110178050092694484762805620512695225006238006007110587515545808865984013486858679290833065464863308673716227297344910088312667857735293084877478156719394075258761079769774522304642448652461789673816372801580321400830457837917076456165241311241667114600215658303484981859787623049509847504981817715213340929500260516907472714147920105352665278625096538777235758309811730218365955370312893202616628466961383334154508012706399555449130916969448928019629542885637766531499579779040382129101939404530951751935399293771695412291078464621967356371431805696655080588251494272528751810391612771679128968587228751627533589474944627767698574802695333566774050295454914364073610254824841622702838995693713320823348491556828432264748730705178394850596618483707465214938184578575698671478517728026516298033497314778114157238869332521388914286426032341166273605347119211084809818104661590665928298457913190475797911239689618921776933710129747814665266023239650626064868592458499214292085448912819225347255481941364684912861790815406288428213280201668643168745115757313964237382295005947055344859882466386108014482345814480373063233358665286428379874021438979642171605012765010882615006548390672849192037206503426119515384040059612359849030740966560540282533087703302606282170402438224826932406861208384255524583229279823358825332683756433766045256290049748322792001397283655079597649242958957231402733670827712167091391272745843303189467948598016205116336512756160334448366556088163204625322745700731448038378801536114806570473496016347903352379421109885284662655793687377279794723816206995064204700566241398892027343453270288132961134975246889736147814178993626281288039277021363872234239711003814332689405579165351556604966880648395486091740400609159852555627313920397103907386622132284219437063399064955590529151202160786082675964143129381225935542643512816201860184864511503796593320779699264697345372300988449908941356079319101810033170466583627976688668703882325778196403298226747928559896026347557411471282159277469927736377323258855472396022820952492478267545091882683833338942370939393918483329999626121023877341937291377196531736314809701681786685904683117253589736829385012517408941336647607067997787163034078027989722173837475268210202550936897838025261734617287390571894325210984886884658456696114961568627118211140595896731102766516630096218923245715698287439433718250349259515752043787556977603026803936325917697018784876395507800631250754217137501658697388568543032091040353773933053598286004943726651252272879202765482699509048352833501629446184918821370106178086877101744212714416591307193455017797511150911104518271831765415873242122317564526614832538131855539867427048042859730828360830752316048080515336716898702812309706170086751858883498793234235985486375521061275067976221853670374997071328593977928991658395957612533186702772402154266750855772201067287302699885286908730427426741995262600313304344345833778926189589153011091012934931469325604761182852796513783763928547044026081314316120093211169390645235540907832775403393683288279944341687656279923538202876073035150892669698997903191463752113998724390773985526786355069029041659100046635775273916947606712509080979982386518935471270106090106349255395877593632619869010561834814234482294647204029144041770786393393395888475607280256869870667763757772908065937142531474391797295296183521616834159688366122049477143352363669891725792938359095166133435227862369819122362467130827633310463864258914791836437839482864065884853865982218325721758067786255310867676381009761793316571577315153024029649389081634190808316433831016263717533267650117559593894527802224028606623750666577721205090763651210655234111566532108294511013478534302068083143886463132019942707086370543787456108553158830401685620749176922049856235999970157471391214959923127642946964865349771506696195704181313115863608311948752501835963160586576782125315526295102521952341187544887091870623993934298606207717111102919637634300089607509432786116621218136709770807672217157560465741087688045455604323206676765165962928750254731809814506667054880797995885931094982938618576180614954730769676956396146623267664593579196408002675937957313630609427549610037560860111327271122261054353652367350065091669868299397631824560470941172841602624584748244797588958796983456651485986881997837182745543152870293551494685580895351996875851003425215698778442187233000134736987197406952945818905966004316137599009818255150597812056575595391447298639432259757858940817345881178938363629747616611696351642807748194003356390799144152822789567762812737290867242855644398443258547522325483801709456102732298433865068741092890759661163170717819549646136231702946531589668990411107427141751015989628781881784266726033393959476820226136686704652555965108470372388072847198658176121307572893033844623510525738211157019160484556516780379670568291085932090629638254962570945145155249444894884255104890306633668805578433912798851741137334251132043850228824224156451294364603906968126963780958249329537995387296382289223512704121126446821067721810067596938417726145846559503014908201894596945651928179074553994472778696268861249606031966476908747629041300691547905792420058365903586797779211807183427780412314239389437322332745915665433059964078256835044545901023953762670594581558755599513918665601504769195199578994404949975081321155494696072360414457191882862603578584172611769207213491508131357951707031442441947718525259675428592858720614497956817233854830513711156315117847012189283569361438615756107284633865108011325223974791740480414015296250474061159228627887797503840350287294735774539674969487876642472911080748915100598138230999317461549418091967611689496301639333997447300364917199486596500311551757551545750495560867565261630283087050960374650651907542339082091399663328739455716095459181788777251594390946666449556341304202702357026462863253520122232536079270914426602664502597838417762520539715095197377814730744202935681873395286804596789003971024001425900270733818042185632871664631913659235165064673418790476417206761951282978725363449630705578374992805056883322245236198297126552789755976005642950783600238677497195211337043081010388046490071992455897154130879504503573880442443872755703798962115012528310102808848546984804146511148058848045314279345101631385011063548929692597718769035735505536865673344094709636921540030341840961418813225764346127891848117860289950880826443594939422732505957164068602134602533861654434082023628730980996428118271844271438830382265621289430398911781038939056720803236168993212707552830097739345733472477102848806844289799547106983081842866805461364097394511848611119518897896551636389988435913834117175632552007234875982562853269586322287421835186429439704776383194961262026616214391279969038427188032973618075708155494562029532175438022649089220309423577728648538601011308553337031628932079007549254849934471439163013961368056546498795733715352939215344408279274211796377440506326963688179726568211128658233826788627825317800234375042554507973205249192360039245877089401676481041414692714800629199765305955341594091288536250407636307792178778289605130675040367147482843843727947574098203734996656246477897320977827686805454918800100352094419630608006596702820841677380551774158528179748694043516808588442260226645949735304783597365735104997032030553899036877836549460904335976363953928827260362791411697781327066717146576832416256495086838398406504325021391544249520487081075655292597185107616110502118603860512257149390818462939747299061279551271889409975836769813207614874820064445879419827537661871909000549934205511632891346382452580994416408470341738455192942838627543033244401777683743013777768148859574208488999758091235106605891771719700338817497497507917385424569222361513339132106374893666082044998314070606775699297501865202095491493946049586090805528737310441465266701585382291646169741244936396574196368806404043279687052409639912941298642729331722772213421537100663587048271645670864878424260492507850160139944207261636948147248201400394247275443166277546228472928814232260228782649535527807468286858435106168512967112574213093888131213391464135900854598011924132359846334505983631324808199079937346763988914718552622838116181525702317215510973261028296427877932054057682680702078441403918553732214826787732258241067249410663273077846632588115045913425661833451449828687789126462557972116205454567640043510409515677082688210032929580381259625780039511314064053706254329939024887856390600697028479461062892309050143961463786340471513367774398415218451712211602010349526620007905148381503062752852190186460263096735397519322642557778205743796345572038938620219041855046367653192723379507092211613647653424470240809030675905436924835851728920745805643253988606024883001990005290290679297320526660783212401394920592813755401539471832727770284675664373857442856867545976611945892917884410106537869161790605020334317704373504645213648213352144587365492087056900947865320789145417003908402749354621835706700201462400648428538893761085631617681214905897643839069112743411347354479360836222024839595751675127927521026303580648496158033526353065136927746480083231164931082492288963910136701718540551135098227584659312866872437640791113329876149884625355741295786860016187924733774753673256776221469354902641932407249284963377378304957740771721784945589436965155636674203776815610281542324570562617481382834302942344645113018845996739109108369445249174228698480914122710807042154302063368651625463843758915387303306377591903273688293306345294391070261229965096945663693580373327557516761566490252550416060871599418455706760744647275152074053315185178267557783427790488088961773655958424683387389251303055319867331386708079076873189971227330937140854519229747068258621012246586668640879225149339597757053096253057381304202028017056412144519392218440520438768307106041057816837731439945198710695088910095895442032122650859836073395679534869241725092388110776153715882618076872909435713258618092343948415628559654833327122647665804493754229073043513622837604028629733680922605327293730880646847224547781829258112607824437319773467940378393646364864308528066519367479189195569674832119550325867407536554562790707768019853875954689525166634133740206395902130053276532860575115903836679587371695124715369715722774140458068619677536432868262577465242812015944000750065246112075476319732295007632923383815491297536838757573120127166492205472370005718377467780329805865363173914290145125416264559265426714845096747738967556663875272354737589622260133134626153615012617595339964020115795907362214556462933922568851878655799181404670789953980382924325087223046312321104641891840104786787158019298126176940398968814009333343756875943879977674494005332334535969299097063774812335545963484238700184047334769680988503140550534544219324800936219919390428273699739640278730406604440632904088385939888703513533202501148487091062160866263566115758336984588155679532444752189022417543972392581015444812339259301586927516376424778183767707026819070095468505075304099722896907573712697459625015416036731915898696007202802805390752324410315557128046717668206685246891344877293803175401068698801618676837411209346723141319282649148601974038085026195041308426209231765528642037045427157585779877526569968887104069628894486293810604926598112276051504411034284507785953525784170365490500269511583112532274128377372181722265829952715878383862669369679221784646099378664143778527206271309337991282785315551741379991815424671089945283447549348915984331592761463115671903006821541159682838520557452919081885681672214176672098522245463371213727745470626778405028285332583465885942936261485319491093166613424573987834063749169272049881808617638847650643969768011503872037593819226362165321183591477177920996890521503077570413358609904643273610272390809161009506044289165679028344121619208162457695402079072903337544930480558256265832193020381106468400869893736038499251550823701418001277654929485064992697209418555873220604546683196642828354602518573186780511644012965028638595748464502700043000294345594474669425257457739218962100482548899315249471616984832377624160289760879185210089936667487924078463214040312725604117658553652402759591359464931246847886383523202195310963317433322763979729375961735072302775368298471698619479081095350923695200784251723945101450375202280760713262724488948879236051555943911837615559611401378740258556155466759260675938280722595176708705326204111397773461090702062183676221152074526646875913238774764507690125718238478877064510515739570312926189038957234580380739885270247646021680815497042790202476583011616865464380819064442119697291756281661707605031880962546052915879584127775569027448151335906344296401542218788532196397455600243374452984217703300595614931944147151409761553393479481578326421964493294155581273419907118400124610609335127979988189281007258343009970886003310664042843935300119044178097841040057135778428859915379004449718911613493885868274935719032450295154697373818477740637404968292516263620379090795476231373847832751575291169604568971750330023702385868559169617370942102439737639839204479699825015653542507352036838301720533115046620860561748459205311812537142729352319088566885672401333854380014918320567837592925701521921153605968266794198252156687974889077472425842393558928631948919328528106085403403328148268139768672181557955340800204512966804541191107974405988989751882476254415944095479763832169631973231483841221265161656380298976510068604570700576469303597228522067175656331430457302102500407039474298465118027167772132818333618473973633586149717174731498361874884933728902651872415332865331073909502679374189381840777913086934301569179289836355422694903470200330690656866923994912122085527886742342909964304018153131009747992623524071395207057341789719451785349989375979135267930616332355770558050059330693137099130299404561447826509475058300105935392823374369602115280739602090930660337662196371984036685548702955698719955496365381668610466190836706685428169389705249813877817015294074067443696730986533107382237660709458712156130440092694088252333202757517669621290596574911332973423127741602368057793047708960199750172597937680480762325882211445472983666847558074991561898971403864589176276225801793852176603778651840110089323780567251490058396242885057934585884973725150107180593719831248544708650652164043981892497163162482890030521051397353717472630494010372226370154326606361582073883259520542341452317741397710227443431945924510762531935330318228290848008014669766787504474769124237628137340340499287232752994637928905734226062200095850755233306565576734646743078421932079246404672583951755605565829876443740294287914956483077302589783760058877083177461590031683093204262429590893724089772018495229624210384740812236290488039693121510451493526157839530012392392228421091840701065267496212634238872308177723885870371585275944876027793310659987255760066394318610408847161566474642707307813428103460672558749978756381452619117493792955283579603284610405346662207101830809665698121044501647013230427641824655257782216035031115170460114495760443233142857483267794647706534655897871285952791196068389490405450984592421937958203623274848378440589473817762256342341950869770494355349511463583249273959604550573421941770413869326058394029062845282226220301500847854632542608550653348583212350553444881131237885984867066232638092422043863655768646230459890687953219644665943013752750872709037177118882414545124807830280063057548971699210352143907780307573738336908527893053824912277419250820068067631035130162886437099391209616639045218035453515926311826267013490321921388410528938182672542984660525137242539971492542867139354361039303404850097881213130164289640319758396635833480688598567778705908799585238513386039308918561353558297200671540030655478876754863370897868462484497276114412893453332223394472333081114482830780239854793811785480231645683018982533091423515033219045829427635455632413677102950067586346408440109827218542154645211179811457458652823223233189596532800617953419360654193956453746277927192474276828520405147870813203482848619026651433311198244647812876696562269342302603057712067437436662136452831482774971719001343796998410481320043206253732365084798937877472004466440660045542096703674721562299509497883782912980041690874673182587905728929238555693473903937761673221911288357112668508669082097600704524822748528930972705390777650283650392242041532265814484026565138488855063824924268014096211636957965798806098702049739277637993575646948381628068608980438538659705527158647090324195992092108651302867571224679513008774410031603182303361721754332677431345243571835242522796686386339591901555515745996232488489908159468283604399091709316367592150432598102208077806200125980485886573391051483289539888366086178646819968074610790203761717082911054331181328397186348564235980532723658708766377565320359705377672866120579868801651837781648973201045664314529049828050600159244238542419110422283721292678664497675597429603936840028606490808075084081503853017259532978901686928910483491665889839166144320591582003111328603778355093389168837894127952937292122012966255844904960469621122533263997160451078182562864447239081903160182915961721379033621249015434081011731243723498300909513869130680937464647679586912464725687087509953431108930451123612597831419814967139040308197205160524535069677498239127676436334182520688314940867241685257930471734841208189067089019412626092938924184942561768575463750730457532550654046063511843513201990611683883296220195757807468385123635441279382803419473058730699777699783100816762206745115119753061810554024967557937966128584185750333921937185985710889207592971829279738108431807285666677564432009369144287508358540421679458692602053123621220572206243198169756608078289683925508061741683539272926662037771892430059954017019115277523651000048650551296", + "-1998743875341364516535376084004566357586312291503262460797810134905054275456164523/67695014972735103531080065348838366904570355224973706468510479851914570793560998790837485647755117476725999280852279187121778583882432643070126865709206768074560176360981354252976873517530198267701302992255010288756637569599551409808048471137476459525975533227803169295308667868058589828646235992191509439235690238848842579240862961195395171906633233182414653362840898040171526187885544979525837301626920458170453845272278576598558079352199859205307894308511447138290404788361014281279813643332736363264130110578772325320420618798493966270855179151943010163116645716642214667646935516861152682461204337986564053614587761714956277704855840086827628579104756733703388798237514688283409184892777772237060093831091789802500550024225592290374034268464865249881881339558040482417731130657943889093397481852972170204763766920579992050837149147115941062077686554894813166952127940319636385541092513079757295847189670240150699257601224463262281015115277732627406439297245720461904261397658214542661295817470197570366810560364142201814146020164534674758083590145557575229900270384330787787996396913911849530770256123501193336561857652177029776318124538301930527462713129214485665572588280659796752549410761686741344562221621785053163942924819293564448889402391024787351857408940040404661498235442805928260240336022597542164315655070689530502765809383113480761049364461768872808154666167054253935374234923690703063013036679619067489681284794263070346165998685498719219783640850195466600470320328745322068712024384249178019572277199810179023498527146430516430137751487638601365771032143488535563776354539272463049766433877205371250142508117879124502164140107211680810267807643016502009611400061773222699096279197879874565707546802813894046153564091348710151483698937089333370152016830365615249678153819896446130365281570978911650194075860270094635076556536339114022497515111336517051546155648808203673093589361815316042853214489885818690629559801761802403605535121219313318291340136353721678160475682125360818295716494104701917929518495458042140720053347576441341392166735159487674172043928907863909564181853098360626138846626295053455433546152635992157842055670396133554299346723369610250588195932833254623369897127947580928079156153975277476450583047953260780846090971568908264550987369356961759115698916469416277450705308644940773453504295323170402018579927178972899135267932346093599296991407000539374567433295116389525785358618440547927370675286397612083318795709888059015270499091156464341981802564702275977408121743697674576185568021025525778471297165465044318223087638507771141655130772271455765201756621685076191113612947751472554801972924364781461042730242475805260313738705749781123695856541057320897782600507054203374758067158519441191554619947522764429526762378644849057920801413699547684327927152040773866456532052608013244756100791185415640344073559903225694096786349058473102324201699897894031927109708574150111537033657640664659709194683458642114678072527657377675332086960216176949160189346145494450840016475364596906206245797601339314496494238110102069569075249130883875330589651062685135369167333123044202126831904246879160504995551401878211889501714905810517931350556745871826730017628888543784046673252530012473195393452658197594336426444603187082016759480913884097183403398085810602979025408665196048518068284436227886910283923509467737139185275414588729889679880230659094068213349602315552137536529399787380729078806323594071174069264969290963841260554048714997055169183492412097732718115454198834638505485445807947770123274608339156120454561578877609973852546596322497108852224500197450168759769510739978297747613019346295326396968671299446325590837046789508695594624996580238704602351510617173754036424894060071781902727711424278382763398452961272995677633613582286330735985607945711285042408030909375277804795814816022624992946091181850598868099916871856776749274445010791072372227882063208235245269598007775964512915688014809369673907870130281901879180969249127184304193369582462310252659032253469890867897188254212353492230721523135491687964881392335531488204309347025267689805248488883565494711227127474220387322579678893358841700868298030161576465981767126680902997152726779170085176335444905170830598171280043976765005895119612858682521805285467265752289886414528174818852600170846053359550197963154640654448170631501946475211462385027588795493704424145201473033854070200267446016528003469496562994585464628461931156464734917832068498954143688457839900907818117358132757410435101651234004186338483220785268918359806901362069433835371572693754035744891102415399707820181385887163373858783992605125153328793087121811145705421073816920793821250968698271732369519403960611031973475096718197400633229881170750874694611877745277928458655318741099043307457689207066219736211953791422062763826121016538368557769435233177732844716042850368289823372811730398239172284788773224412317049103844625033230745356257714816076560155861033887592569051125906288778607942553783647941518426445918357160223988387171554981894810711068152102835014014690766078464872267632368642617393716020618324945466764720901554033385687096501458949453448154845590041311378453540244400159583696810948825677845274253801896498810749063757244479047473030681207447772652489004041068434522385860234899236096913838484340936527957313681585709744865534006115697915956252930384430948977579185977848276596177757239712055975233369682742844077492177156504238297294120214202467175268092297904394537105856808147621412592397010474173216916332842577448253149520846469920362586901075528525961086859378686430269090924841704696675762449349141090355472586056403343865612119272164616409453827175340590004185831098298911508178800235286652590054071488772255326318709876940754829121967165837830787322064380457449231552511888699338857700260738289935802003594809776757748529765073308937006081007707301638248030346875576927429819584423134971472384807867965899429429289808500771881014364006140658213531655832141936289426905744267242611652625724290906258436542585016450960734143170717148033930095646422548139322054215501370462607225430531580106217355145895623560234490829159867366146632662503662040784377544120545369866603763779661295006601395780327834089930971676697563654615503764094129024197895206371156641845991064284203227071155394871235193151569642941316163348846761084838189297847742104537782412614336610441023287430174927203286423144381687070206776949336512319528319693648912502343445627243900058197283944807353982094883658148714618508908090210673196604839755990059533343156349627687240064003979093139825770649132945999263147988836290711760476229325589579922264448875027701606177064783173006621627676235816440856003684724189558444082483151120528721005750835236086514673769394832804304446214447762088466531568438762409070980616551034253500196046904555333847970605978614770009632084023027957314813493589989193126928247655332180156836701131080615312086407623004105563195031577776739338967402950364808863994352566099978315083563598207002901784907969654465873167392407426549727203339252843993250328453269289322068488381800411243196721268865992893713606433531231260481483373747333262977907636449846997556663636604105118704213893475148678014042711837847011176280231402538331131206299697354267736346263074646356534960943545590661099806733475068297396223646140182791346559779217916008133487850931205436177855112256901076303164280437476671577819564369123899610852703423442362115061351488599057412149511472899410813542468690864246666711995548341016391274661370192640587175918487825717215498083023388090262435118601837917519275340052339756705256514215419111149418491156012315170799701419837471001838842868773465281796070834404047533366973087623653048440930304514548871949878704246687693268940178707904395276304232972062842743803242217455110257659301057259695065262875747791706356249738834087534899617390738319025632264395785806810580178926200147323020500811936693107909237342157006204094553011604799745321250686458315629981016151738890630780294163859621005485206028196232739533793250343649924345956110122087479307721362556776871127158043632012602489218115309642930576496436390770415075482703982587237715660363299933872148054673659867374194772020053540737390838919825268250762529533849054037262567278560558714079489306517478935337242640100956763342992761275131318739561862541950478786691803506727983941918712809503037004917363367855606459458916837816943940582977295565100589440004025297639635093426995895501412544715771771808189551204897018189695477281889231944791193364337052904178978547567286115330817361823251224805697513926763524773119247586964280870040347966759546899450134598741234020264240232118293498988822894043844581367155149405246944824724103028706045454228358822072865486649079145975925488228837934825097774556468155405980842146550257258627967127400692953788095423026616244239986269608069265986271723925097650521253189707465663337972598367464790948959122922556488767267612429045354810300335952623850973516765265321988853103981789857952173274998650785504226693077092625445259877830250753445007257269062087014408721440904334559673413854789106064233805157758802808532130136638213928516697377908065388306571633940994447720414868227751042894667633383068182186691911647385221097643325832923153823936690624496597791146999820972070416872956822264602621570421153566873213877691763322882383343755546112459101351838706421042663444567908258060226748406070963576555624810170574902314438274572652458191228590496321962741502657956022929543351009209472098637439511676128215368035715244374629860371805225746555876261234098602566492324290239704851431400210315242213074477297563026995261348144038556687629477885576941693262055909244766038851867783610580725116193061850306086731079607651984249344092516756430450414651983975515698565336344535187018758360754101842748507658076271791411048390624259358416919552241539781816206258733860691844645918322931042183911224005421660007754624775409707644796870830571558046442785080541476895576735621056001727499410469812967336406244713146638373066624897952234826043867010240523646865314269130064623468032234472809637719396307988962502640459976157905065434948745253076584847068227363290529207168198323301751296462637121249465141629832256740721168866723453438477462303983303417440388252999836545126491647380749398024240611986925009155290765525584889006200546526660991432147134110174202363699016798010750731250869451603081605109136770095900474840317131004470121990076016806622530360690751174687766480838228105531798532556226588004030202018485231858123542890083492493659296682237140154973604246017891113933970387186983116670116381842141487687692684383659810781584293488951097959948524428872314700611558841387175239619824290741656237042949580723390684178510802725100262750857173533886290643207031876782439608147282327503769822032049718972912566359932538712739568530858663462734011616625858244368932985951238517975110972951923834389855100708032259247171588234558202534780710821526510669006586124986070199159370877444809258328478696860508896704764208554558347412324120879673307609921339098424207131887452291233143086642527167760960353877421591144801349131485267705845174900121202494876021509883351955252657157147903558617121600731080514368135609426944353628577399017927470659309717788673853971767429275115584568776602280094022050912980840070837780092449642065814039411828970246128624920522537824891627744122247971107752686057749105623376970628267541590648308092833845432366365024424420929030871040826382716612840388620766501581330221194813853003788889431971223809009739335043242413759921476184777375725479180254495767558614164432813602410344125502092424334116144372610408142643277686341687041781330786588795199952333735191952470056185929167293393755255579100978878746251230830689421757530867291033544924809991643737249618158518469440417700782786937782954635409358897893859342751423969404795480603983931202694462466314963966404322361497099293675056778358224996985266320497851481419084789608918796950970006367694267982173766087422646723078310992466093827725669031220806889737559339678093130905755903654648182132981686543517283323960630189587783179021483919730773923447380415213591155106493134491564111301944922595690194952617283038129560940711278265994926894780507664734307756739814680277884499786051521307892826574582871380220356100185388969525611241025390450012476012014221175031091617731968026973717358581666130929726617347432454594689820176625335715470586169754956313438788150517522159539549044609284897304923579347632745603160642801660915675834152912330482622483334229200431316606969963719575246099019695009963635430426681859000521033814945428295840210705330557250193077554471516619623460436731910740625786405233256933922766668309016025412799110898261833938897856039259085771275533062999159558080764258203878809061903503870798587543390824582156929243934712742863611393310161176502988545057503620783225543358257937174457503255067178949889255535397149605390667133548100590909828728147220509649683245405677991387426641646696983113656864529497461410356789701193236967414930429876369157151397342957035456053032596066994629556228314477738665042777828572852064682332547210694238422169619636209323181331856596915826380951595822479379237843553867420259495629330532046479301252129737184916998428584170897825638450694510963882729369825723581630812576856426560403337286337490231514627928474764590011894110689719764932772216028964691628960746126466717330572856759748042877959284343210025530021765230013096781345698384074413006852239030768080119224719698061481933121080565066175406605212564340804876449653864813722416768511049166458559646717650665367512867532090512580099496645584002794567310159195298485917914462805467341655424334182782545491686606378935897196032410232673025512320668896733112176326409250645491401462896076757603072229613140946992032695806704758842219770569325311587374754559589447632413990128409401132482797784054686906540576265922269950493779472295628357987252562576078554042727744468479422007628665378811158330703113209933761296790972183480801218319705111254627840794207814773244264568438874126798129911181058302404321572165351928286258762451871085287025632403720369729023007593186641559398529394690744601976899817882712158638203620066340933167255953377337407764651556392806596453495857119792052695114822942564318554939855472754646517710944792045641904984956535090183765367666677884741878787836966659999252242047754683874582754393063472629619403363573371809366234507179473658770025034817882673295214135995574326068156055979444347674950536420405101873795676050523469234574781143788650421969773769316913392229923137254236422281191793462205533033260192437846491431396574878867436500698519031504087575113955206053607872651835394037569752791015601262501508434275003317394777137086064182080707547866107196572009887453302504545758405530965399018096705667003258892369837642740212356173754203488425428833182614386910035595022301822209036543663530831746484244635129053229665076263711079734854096085719461656721661504632096161030673433797405624619412340173503717766997586468471970972751042122550135952443707340749994142657187955857983316791915225066373405544804308533501711544402134574605399770573817460854853483990525200626608688691667557852379178306022182025869862938651209522365705593027567527857094088052162628632240186422338781290471081815665550806787366576559888683375312559847076405752146070301785339397995806382927504227997448781547971053572710138058083318200093271550547833895213425018161959964773037870942540212180212698510791755187265239738021123669628468964589294408058288083541572786786791776951214560513739741335527515545816131874285062948783594590592367043233668319376732244098954286704727339783451585876718190332266870455724739638244724934261655266620927728517829583672875678965728131769707731964436651443516135572510621735352762019523586633143154630306048059298778163268381616632867662032527435066535300235119187789055604448057213247501333155442410181527302421310468223133064216589022026957068604136166287772926264039885414172741087574912217106317660803371241498353844099712471999940314942782429919846255285893929730699543013392391408362626231727216623897505003671926321173153564250631052590205043904682375089774183741247987868597212415434222205839275268600179215018865572233242436273419541615344434315120931482175376090911208646413353530331925857500509463619629013334109761595991771862189965877237152361229909461539353912792293246535329187158392816005351875914627261218855099220075121720222654542244522108707304734700130183339736598795263649120941882345683205249169496489595177917593966913302971973763995674365491086305740587102989371161790703993751702006850431397556884374466000269473974394813905891637811932008632275198019636510301195624113151190782894597278864519515717881634691762357876727259495233223392703285615496388006712781598288305645579135525625474581734485711288796886517095044650967603418912205464596867730137482185781519322326341435639099292272463405893063179337980822214854283502031979257563763568533452066787918953640452273373409305111930216940744776145694397316352242615145786067689247021051476422314038320969113033560759341136582171864181259276509925141890290310498889789768510209780613267337611156867825597703482274668502264087700457648448312902588729207813936253927561916498659075990774592764578447025408242252893642135443620135193876835452291693119006029816403789193891303856358149107988945557392537722499212063932953817495258082601383095811584840116731807173595558423614366855560824628478778874644665491831330866119928156513670089091802047907525341189163117511199027837331203009538390399157988809899950162642310989392144720828914383765725207157168345223538414426983016262715903414062884883895437050519350857185717441228995913634467709661027422312630235694024378567138722877231512214569267730216022650447949583480960828030592500948122318457255775595007680700574589471549079349938975753284945822161497830201196276461998634923098836183935223378992603278667994894600729834398973193000623103515103091500991121735130523260566174101920749301303815084678164182799326657478911432190918363577554503188781893332899112682608405404714052925726507040244465072158541828853205329005195676835525041079430190394755629461488405871363746790573609193578007942048002851800541467636084371265743329263827318470330129346837580952834413523902565957450726899261411156749985610113766644490472396594253105579511952011285901567200477354994390422674086162020776092980143984911794308261759009007147760884887745511407597924230025056620205617697093969608293022296117696090628558690203262770022127097859385195437538071471011073731346688189419273843080060683681922837626451528692255783696235720579901761652887189878845465011914328137204269205067723308868164047257461961992856236543688542877660764531242578860797823562077878113441606472337986425415105660195478691466944954205697613688579599094213966163685733610922728194789023697222239037795793103272779976871827668234351265104014469751965125706539172644574843670372858879409552766389922524053232428782559938076854376065947236151416310989124059064350876045298178440618847155457297077202022617106674063257864158015098509699868942878326027922736113092997591467430705878430688816558548423592754881012653927376359453136422257316467653577255650635600468750085109015946410498384720078491754178803352962082829385429601258399530611910683188182577072500815272615584357556579210261350080734294965687687455895148196407469993312492955794641955655373610909837600200704188839261216013193405641683354761103548317056359497388087033617176884520453291899470609567194731470209994064061107798073755673098921808671952727907857654520725582823395562654133434293153664832512990173676796813008650042783088499040974162151310585194370215232221004237207721024514298781636925879494598122559102543778819951673539626415229749640128891758839655075323743818001099868411023265782692764905161988832816940683476910385885677255086066488803555367486027555536297719148416977999516182470213211783543439400677634994995015834770849138444723026678264212749787332164089996628141213551398595003730404190982987892099172181611057474620882930533403170764583292339482489872793148392737612808086559374104819279825882597285458663445544426843074201327174096543291341729756848520985015700320279888414523273896294496402800788494550886332555092456945857628464520457565299071055614936573716870212337025934225148426187776262426782928271801709196023848264719692669011967262649616398159874693527977829437105245676232363051404634431021946522056592855755864108115365361404156882807837107464429653575464516482134498821326546155693265176230091826851323666902899657375578252925115944232410909135280087020819031354165376420065859160762519251560079022628128107412508659878049775712781201394056958922125784618100287922927572680943026735548796830436903424423204020699053240015810296763006125505704380372920526193470795038645285115556411487592691144077877240438083710092735306385446759014184423227295306848940481618061351810873849671703457841491611286507977212049766003980010580581358594641053321566424802789841185627510803078943665455540569351328747714885713735091953223891785835768820213075738323581210040668635408747009290427296426704289174730984174113801895730641578290834007816805498709243671413400402924801296857077787522171263235362429811795287678138225486822694708958721672444049679191503350255855042052607161296992316067052706130273855492960166462329862164984577927820273403437081102270196455169318625733744875281582226659752299769250711482591573720032375849467549507346513552442938709805283864814498569926754756609915481543443569891178873930311273348407553631220563084649141125234962765668605884689290226037691993478218216738890498348457396961828245421614084308604126737303250927687517830774606612755183806547376586612690588782140522459930193891327387160746655115033523132980505100832121743198836911413521489294550304148106630370356535115566855580976177923547311916849366774778502606110639734662773416158153746379942454661874281709038459494136517242024493173337281758450298679195514106192506114762608404056034112824289038784436881040877536614212082115633675462879890397421390177820191790884064245301719672146791359069738483450184776221552307431765236153745818871426517236184687896831257119309666654245295331608987508458146087027245675208057259467361845210654587461761293694449095563658516225215648874639546935880756787292729728617056133038734958378391139349664239100651734815073109125581415536039707751909379050333268267480412791804260106553065721150231807673359174743390249430739431445548280916137239355072865736525154930485624031888001500130492224150952639464590015265846767630982595073677515146240254332984410944740011436754935560659611730726347828580290250832529118530853429690193495477935113327750544709475179244520266269252307230025235190679928040231591814724429112925867845137703757311598362809341579907960765848650174446092624642209283783680209573574316038596252353880797937628018666687513751887759955348988010664669071938598194127549624671091926968477400368094669539361977006281101069088438649601872439838780856547399479280557460813208881265808176771879777407027066405002296974182124321732527132231516673969176311359064889504378044835087944785162030889624678518603173855032752849556367535414053638140190937010150608199445793815147425394919250030832073463831797392014405605610781504648820631114256093435336413370493782689754587606350802137397603237353674822418693446282638565298297203948076170052390082616852418463531057284074090854315171559755053139937774208139257788972587621209853196224552103008822068569015571907051568340730981000539023166225064548256754744363444531659905431756767725338739358443569292198757328287557054412542618675982565570631103482759983630849342179890566895098697831968663185522926231343806013643082319365677041114905838163771363344428353344197044490926742427455490941253556810056570665166931771885872522970638982186333226849147975668127498338544099763617235277695301287939536023007744075187638452724330642367182954355841993781043006155140826717219809286547220544781618322019012088578331358056688243238416324915390804158145806675089860961116512531664386040762212936801739787472076998503101647402836002555309858970129985394418837111746441209093366393285656709205037146373561023288025930057277191496929005400086000588691188949338850514915478437924200965097798630498943233969664755248320579521758370420179873334975848156926428080625451208235317107304805519182718929862493695772767046404390621926634866645527959458751923470144605550736596943397238958162190701847390401568503447890202900750404561521426525448977897758472103111887823675231119222802757480517112310933518521351876561445190353417410652408222795546922181404124367352442304149053293751826477549529015380251436476957754129021031479140625852378077914469160761479770540495292043361630994085580404953166023233730928761638128884239394583512563323415210063761925092105831759168255551138054896302671812688592803084437577064392794911200486748905968435406601191229863888294302819523106786958963156652843928986588311162546839814236800249221218670255959976378562014516686019941772006621328085687870600238088356195682080114271556857719830758008899437823226987771736549871438064900590309394747636955481274809936585032527240758181590952462747695665503150582339209137943500660047404771737118339234741884204879475279678408959399650031307085014704073676603441066230093241721123496918410623625074285458704638177133771344802667708760029836641135675185851403043842307211936533588396504313375949778154944851684787117857263897838657056212170806806656296536279537344363115910681600409025933609082382215948811977979503764952508831888190959527664339263946462967682442530323312760597953020137209141401152938607194457044134351312662860914604205000814078948596930236054335544265636667236947947267172299434349462996723749769867457805303744830665730662147819005358748378763681555826173868603138358579672710845389806940400661381313733847989824244171055773484685819928608036306262019495985247048142790414114683579438903570699978751958270535861232664711541116100118661386274198260598809122895653018950116600211870785646748739204230561479204181861320675324392743968073371097405911397439910992730763337220932381673413370856338779410499627755634030588148134887393461973066214764475321418917424312260880185388176504666405515035339242581193149822665946846255483204736115586095417920399500345195875360961524651764422890945967333695116149983123797942807729178352552451603587704353207557303680220178647561134502980116792485770115869171769947450300214361187439662497089417301304328087963784994326324965780061042102794707434945260988020744452740308653212723164147766519041084682904635482795420454886863891849021525063870660636456581696016029339533575008949538248475256274680680998574465505989275857811468452124400191701510466613131153469293486156843864158492809345167903511211131659752887480588575829912966154605179567520117754166354923180063366186408524859181787448179544036990459248420769481624472580976079386243020902987052315679060024784784456842183681402130534992425268477744616355447771740743170551889752055586621319974511520132788637220817694323132949285414615626856206921345117499957512762905238234987585910567159206569220810693324414203661619331396242089003294026460855283649310515564432070062230340920228991520886466285714966535589295413069311795742571905582392136778980810901969184843875916407246549696756881178947635524512684683901739540988710699022927166498547919209101146843883540827738652116788058125690564452440603001695709265085217101306697166424701106889762262475771969734132465276184844087727311537292460919781375906439289331886027505501745418074354237764829090249615660560126115097943398420704287815560615147476673817055786107649824554838501640136135262070260325772874198782419233278090436070907031852623652534026980643842776821057876365345085969321050274485079942985085734278708722078606809700195762426260328579280639516793271666961377197135557411817599170477026772078617837122707116594401343080061310957753509726741795736924968994552228825786906664446788944666162228965661560479709587623570960463291366037965066182847030066438091658855270911264827354205900135172692816880219654437084309290422359622914917305646446466379193065601235906838721308387912907492555854384948553657040810295741626406965697238053302866622396489295625753393124538684605206115424134874873324272905662965549943438002687593996820962640086412507464730169597875754944008932881320091084193407349443124599018995767565825960083381749346365175811457858477111386947807875523346443822576714225337017338164195201409049645497057861945410781555300567300784484083064531628968053130276977710127649848536028192423273915931597612197404099478555275987151293896763256137217960877077319411054317294180648391984184217302605735142449359026017548820063206364606723443508665354862690487143670485045593372772679183803111031491992464976979816318936567208798183418632735184300865196204416155612400251960971773146782102966579079776732172357293639936149221580407523434165822108662362656794372697128471961065447317417532755130640719410755345732241159737603303675563297946402091328629058099656101200318488477084838220844567442585357328995351194859207873680057212981616150168163007706034519065957803373857820966983331779678332288641183164006222657207556710186778337675788255905874584244025932511689809920939242245066527994320902156365125728894478163806320365831923442758067242498030868162023462487446996601819027738261361874929295359173824929451374175019906862217860902247225195662839629934278080616394410321049070139354996478255352872668365041376629881734483370515860943469682416378134178038825252185877848369885123537150927501460915065101308092127023687026403981223367766592440391515614936770247270882558765606838946117461399555399566201633524413490230239506123621108049935115875932257168371500667843874371971421778415185943658559476216863614571333355128864018738288575016717080843358917385204106247242441144412486396339513216156579367851016123483367078545853324075543784860119908034038230555047302000097301102592" + ], + "source_sha256": { + "fine_mercator.py": "868fff6d31767b215cdc51bf32b48df0a3ea9675750b7258839251a79e4505b5", + "fine_moment.py": "f881f6f1d8d3a8180c384a0bee3b5cccbec86f48992e11b46e2c9ef4c0c014c8" + }, + "profile": { + "1": 1560432, + "2": 336336, + "3": 278724, + "4": 84912, + "5": 54612, + "8": 5328, + "48": 22748 + }, + "m": 73, + "W": 66304, + "scope": "Actual unchanged fine engines at the new interior supplier point. Primitive endpoint/word/profile unchanged; complete supplier admission is source-bound reuse of the prior personal full replay. No new endpoint certification or theorem claim." +} diff --git a/research/kappa-fixed-grid-ceiling/README.md b/research/kappa-fixed-grid-ceiling/README.md new file mode 100644 index 0000000000..2571c31b7c --- /dev/null +++ b/research/kappa-fixed-grid-ceiling/README.md @@ -0,0 +1,15 @@ +# Fixed-grid kappa ceiling over PR2161 + +This is a further conditional arithmetic improvement over PR2161. It reduces only free positive proof gaps to r0=10^(-30080), retaining the supplier endpoint C, the kappa floor denominator F=10^30046 and the backoff B=10^(-30022). The exact new kappa is **C-1/F-B**, the maximum admissible point in this declared fixed-grid family. The gain is about 2.00168139534e-30010, so this is still numerically tiny and is not a material paid-supplier improvement. + +PROOF.md derives the strict-grid bound and its attainment. The verifier checks all 62 original inequalities, an explicit main-binding invariant, the 17 original mutation vectors, independent cost equations and the exact gain over the frozen PR2161 claim. Parent sources, native words, owners and invoices are unchanged. + +The fast registered hook runs `verify.py`. Run the fresh provider-point check first; complete finite binding also requires the same personally replayed supplier and parent outer work as PR2161: run `verify.py --supplier-work SUPPLIER_WORK --outer-work OUTER_WORK --outer-log OUTER_LOG --out RESULT_FILE`. Fresh high-precision checks at the new interior point use `check_provider_point.py --out PROVIDER_RESULT`; optional gmpy2 acceleration is supported by the unchanged engines. Public evidence contains no private paths, machine identifiers or raw local logs. + +The parent aggregate Linux CRLF/LF reproduction limitation and the pre-existing broad split-skip source-pin failure remain disclosed in PR2161. No whole-repository green, hosted-CI pass, new supplier endpoint, formal theorem or independent human review is claimed. All inherited hypotheses remain conditional. + +Credit PR2161, PR2044 and Jeremy Kothe's package; PR1786 (Chafik Boukhalfa / Tim Trudgian), PR1673 (Vlado Vojdanovski), PR1758, and the retained T74 supplier, native and precision-repair lineage. Source notices preserve detailed attribution. Prepared under dataisfire with substantial OpenAI Codex assistance. Apache-2.0. + +## Open next questions + +A material gain needs a cheaper complete paid construction. Fixed-inventory T74 packing already has only rank-48 idle blocks. The screened early-query route fails once one additional rank-seven carrier is charged, even with favorable idle-volume credit; this is a scoped negative, not a universal obstruction. Further decimal tuning of this fixed grid/backoff family cannot improve its attained cap. diff --git a/research/kappa-fixed-grid-ceiling/RESULT.json b/research/kappa-fixed-grid-ceiling/RESULT.json new file mode 100644 index 0000000000..fce55068b9 --- /dev/null +++ b/research/kappa-fixed-grid-ceiling/RESULT.json @@ -0,0 +1,95 @@ +{ + "kappa_decimal": "0.0016797549561255445213356709939207025769983114385025802954603275201628645482603256388263056561328446322744513169085862209720704481201654121427713006366929567157349625273906229277148454180995537563371124755588139767841405530386745578819565618798006892541712197674874836946756930569827889227573192555656066855664117252384496509993398270757152837142701577057623092260386117719556553775014146521365463108811857469175808025136405459678528108016809668561339785761629437923226824821529885329238119989388613997234782665122393337410256506934736114468700025270384783853433874751284939956301562818715868577924268635716654661290300296417006205873746100793973065471853622232846308945465119424620553623033660112687441558518737842273755754302384542666568386469447724550598539837500010360151343512916667703509198062048306688724541941703876986914814791201554291778534436915259195179589212400459067977269845201145347633535523469938628221440544682122928476429734857446503204723044129924428817471124500249639355487975352431968948790753275807945557070119485433870736918392199399586340218423215218461506994025002832231266485208658187409605103687391613850665972301618925046267834678932257027824189933685627359454050060308940800887097740802971625280628744725107336674659740471402012997999377441891760896409413127844916387134251173067149441549872783062112398007196112485239306957026903527608936519411577022225030505730626109273111265573901564243092679215691432911626497207483690975353763226064694557127182865055094944486012057598880490294804272159982284971574535181644250296805115422362325412890862292389609692616773348498379398829746035873403099379783546857509288396881886116312695206053397294796813689431817414518266900867912157075537012916334403528590942946910857115777761319079651614658006525658954655911007318173663029095584413283299533491760335790399346837239287899469935497934832321262085228567628382020652496001979282709563048431180169384346238831299533956651913855272083074184929522156544524736313275736107107716030283132720628164234922622323089441401909668621822901646069905467704815990143554123439271713436438328665013463432674702105637648673235604539772836097827886047032282061909213911164605307155934114844732469381971573209610145969312515410437912879575487453513381578378566860380587397570933690533191967799163852941799375906072727930818391965898864348418692954203285616587173644487749313167751205201258984264820874942313543863367219041258978296215393001155852446093522991757216136538475423518671972860267298267715786790360515889623286679339889268417130795030534941328909896821294036184422042022019882791958692515959712051262792431602079137737832961235081085182600157613320478730471141207297621531159259423815833140351775266693250236424640909520716895958495758737692539422625784821021759414585627920852815006092007065883798394147358372272016986150087298362888222918006949170502728160335037971876913176201942817289717326579454266916978872909791167585450610451080820446791479207521883258544785300080214388396057881202234311903049711756120209365232126035142587555478351210196135439472852551447293930100908035676946436119711883136541791552080517121087939175883783301821860647564268304606598930040464675670796662377555632035235938212455587201706878483979474691058341635516546073726764508332870290386645467188410118904659490365679537103127169056695568823493435193845010963032041880791060440717480878196428062417880137141553441007676896409901597054835131094087627133985041006622883451881943258079932132035199372870998207782743993627316739498303908244411967842495094635813560069395137597650395078593066101393519322009037226297881302471818549422325973973959976782156348794104830934268104377364712761845346997958672259194872502001595185959132046243606576141013418272453031102782937319660423072060684501876734323556618863178457232813357797731688220712862630011141456822737592584949467678233165737017917057270235155130373822874887821908120013672192943973141562506600482519243014406763778491994459137311023229655200077783608604826842794950225131873563053737201536380298067109451646209246869314396810557633956173517931246468363099909444779407145814181964181018719205536669546689712204253530183041331736550124881413656849856617974016847511067536335282950731667934417397588235382512238982637453911076389247560723200574842833635377423976483717126601991172550200507679836112503971427395670327908147833587916980471402553159691764623307444331121432936004475777924522320563812083438606135335298283704948749982853541591525319211255504703832079780861724813266918520448138318208149854283444609897249531423493375565817962853499166940230783588675146086493340817584035014068025267541835573103750089691602123309616228766799442317021955472726682733812689311182061218020275691700962192657738365173508110627719533550675308362707951297302791253899106463780775089194651219858995227100678615731696210854594037932931340884173069161063972610736137500768058253301689107469073199573836370877283210461363464931664301575833894288334183772830301728240091392445744552258480515352712224535224413173369562808928248398008213253702777485399396488473923812791014907800466342525987731216825643168693660726765617187912625731216257635121432796747872765082648642181422577457796368665252949848683264071175707662800887722847024918476940211588637933201821272856925153625152977037866595906439042671397710976138616795673473633201866019975494049331319530203862084297634655433210545538717678530631430615271745358094394793747294889840181006672151784443638678300638817865996731767843717470538393033780418541254330785795343279896248625937501034066994280560902374738454265651848139781187003938540131759189059367409450416774733109034396594330752838131688596389676084377079300226679981596825432563842487450766472996134780560607423695203300166330809228278249669334184195075339504010992233382819330061344458481897778263660992541512721103884185159610271893427563871866651953023561753085105089610671422729963504710444664161396220211597593399311271016249632521288214519196372958879988404594153309334805302725006897435817727582022214478873773970536645137916585360033760937462575366414094874039472803502836349632245037101441866064914479781767028954807105173556647825104054936998381802002283081830595694358638294623435877447090557444525619088794955082254431539735790280851941116101875095703918256960137545281197004750216312187515760454466919692208431875497680723542791929829513894596728251090216592211411376542695346611064396468986684358328466938525059259490902598869132938486009402210291912584300551485713954192669594204515545590627372137729040347725245135153838182666107604686965303186122796781097369075529482321990472397054093702409352904855358966994092050260813204663116425789169300251518901376009769009003077641231553432736043127048414649305080717634805222239101654860894947623552093687292484155936227675297974077578304373554738997206687323976644490831874550713286804428647285542333428993800788275757607727343241173624567065162226598457534394480774229023721739039687719851989029031390379730076268542438533947612333203255810847698770688175770759471633366713806035150788064203123842941487111757835543542467737484474881554767573931220129793911147483004379992734426267597507813585853448280736637658610915727630251364674857654694928838986534172682235215181443357544862262197539544198415531295324294026297021297437949787837114911454911802735637289360554717915782653202686249970645559787393822232694330040686010191490745554345791887805756796135996057452747887938965743629274617670500464554955433014481687618595055373178631846881297875870506727515820893893405125994713688724534423266417718455463770582827018950534676090315854287066484248376310146204345695118094205832725048495617711418782022015066179974059154884726357019207501256712071339992079636931363447032991707443813188024238815029454300445153702823172480017133534730590755849482419922909894341518006248303172245692770488829553461603819968456287538530039017359813048669301025898325269959466602573771292903739996308650163486851633424569280390349012074878505146844512279424705381006741045723674309866305341546242483025912574499667627508592847849622279451684042306098616561391201273357341158542657755664191399885343082865959239093549275254764387237844391724806401457916056077455537651010416640486198457181217737546569365075019507861742759283745293631097302808452270838368259301893427320271073282188463172431481928847749369487519643847946056938620080510178520098426620324221047654521066259921545698077741966060667074459449046150410897855914903530181372320759718374121063631624068903241215423283613420023103084890528396648144999706051486288271135890893708291280484171113328163059729658221045028452989974362317454645453380235586455036863928669587383272878621972530368483054578032425080106939485424865939372796508466987730631359522473349939925057360637245641159732253613396302509019984462360020487911505284445470147434528326394922183958730332135566474671137342950820578830408288867980064316245887084819690509307256688471425399639400406802472044448062510879682333561256593433376399079965273503618648190421004451562879182154055239387208005364712929738761243123745618013882630405427028745096584765518421000428695175125773700959615880618234728324499441083776961273840732833602160908713126560218020608168346693318963815482224659582114220300014005911757819166084038580835984607987333524646749607561937180322335675550287208045305654638170904118095353675553099918601907600158934915832597222208738042891603680099642678462441401390648855485876413767242482536477784690789520564603973294550946817924884454618866832621837108429581389624608431581532286467341900426843072066458705759612791126329707294410619838362669696510908809227754333591385827867463712901626209550664357730218531197259092192999201119198467281313817650935991070180900341044703702839568251656712382772974241443618384302478664568141369556531960150274838536850057928509959818747245633242234597761898111880316586392130784645111522713848317899278409239255740452004270255548104310997834268904612492027727611488852769053161897450631382475336130910708769121887722114761582212212499107964267351581128038945889041823215020532407797999314177425985566807379201730377281328257741888930083402759798129229071353541230680550001572394391601162111115141255261958983543704985730352578211935972927124560307761400790255510911561840343696796941713080041972409137290666712034037639417182650844304516795487740599828770491582037378317668836930019068671824599323518217167257380653440034199738938365570942955880489890303680324976206211468728902000359404184193851506366063965177716243284790120010568837459875689157587076189280240325048771498317322895730197602348563474591240702293970683381830980968987333237336252497474848582171702181488947229243137558895886270239674271983265404049336508988918658625216442740510516069818483498022273008730346777436884260772588150710035085724405580522041097461265664159162133593275731589289637957712086141821887009853146419305610875053232390227365485668950296750870192186324279720336457500437788053425606188713180324055483299707032678280170027730514406379025487110731122373479272176895512660861242427099794285464994942455943359491707375334068847407927558083069898113216448938348056611378030792785635084464615846662361077112353017142097690446318361785507324973135548703432281213496513584496536073256217992472667602929380542792550585974929589826465795535195372512257460477897448340259989801335499565778279357249377398754235409761839223978719807125533224786650823189304193672340081298878674892068867272280073263874835916791304453635964643800321340719920531328779079640388506833843064940699742268189408607271565970982901021428501919488332624711997350553630055645589307730826033224595930498774858871361386491482729663678631965846228750482231738209868577215958794719765719860794917514838312275412568216474371698574130550188415409140361952649343879713794359253817462941821541988932558111838963857269395616457119372511997954151125347135136527421140384503573067754142292507682044681329160152791759702659456542186623591028412424293048461510319009758613676909353790762722753171938969355617716405785480106459028411202112674712717151146971627568178635323387464791161196179385711398159881224059114592908309218053876598403209102741550807642360981157151624877916160480636373105774639810296139353085120815600709478127588578441658693124941684332949125974361481368547643901812169688164523765520796198671053220952879129035938354149870720287025512163848332156243810130758300483699712314523180119137914297118722307958948373195962464263965898434938413943205315882357829802718212088548770764117867413832514174759983817443775707672086162236237351767453205459712642014427428455340441987029430388197665733266552302743506967428249022066993603477994338587537638004676518440672862898246341498738514119929389591398875464529244698319977916360443548474566486888101554817540064032730901657784273352688044196948879811504961499725711754725848218630819152810668119053618870151033826338767801445486520926640148880209198438315513889932833758017253040045206491302982881043174459853853291292243308689426041188490103992030881384520363527312869208381046119935939846759769822901003639323247349212677925603216307662051273264328613126580383642598350209626452797264069574895765250811781183894453246351548548559433320969759036131627467579083855909532148020978659686896124952728936525708746278629641301757972014424563991203896848396053023335997769874593157574836896224310541204387444415333624339388197687870868435253743016332529224108793245040232876667023690936255942783999154425085356114367436773146436027694247498911123187524542519204198080923320914133968576100184381065475755669278174454950507124344445350476052712659017920608831405228099881308050133200781715166124498935168225119153380510325378461745439026955033435746710410442400038664458778678999526485001773758938505905615680915311831351976342155636411221898808849862435095106041792565627245058500070394398354232587730464524683598054431763914149446427885480807090762556740738254004619550099730706567727124691119009750844797105283353099602309164898376138147550920364439383727998822952889378550740001985767820685889716072786908741922446006066276524167499270156988611724149114948265766363998891266994086094971089069430572920761877712721899839828615662501549325340497488234384420667168382080046709355171722106082142341208164927288203993490816688992908067794084269543068459949635958398518578235719120823354023225606949033422932615615671303844969420097159828204061332872337627599998355069648485285656475853328585820618448450363302385397049084695825805797214216513345255084865638787249960629318264221606436361396667641590416907238793980978296240742878730868167864208457245051655316132887071227424621778733019471981196077362058525755348936571221719294468301682154898269842746367653990353509366269859480468236441070368147723152200466209399095117880119801607550838587847961809785960832160977433758258542139475019665350256627071749590878269637865642393240741000470939406373817393287708534756176855291286651621738012359438016242109111569576895593654032827585432815829307999495292675651986725656901317317013647162182501500204933069079827793800585349677231659097723473119763220340306286757091605230304308698312909337349807353261448451220037746868138168960598397905801591040883289890168449624424442845241487342750493871927263640902660527459707292349556760009581936360934257009634349076468425922297834487184178459983794058619418196200996939699224896128925050515265007631569020351891051665005442365115813169753361273999693462525496725208735894514392678336168746755695152917761200536659051677085921913866926954659327260119214216539581513708798009875474372874277305433739388825439408035125077736864312726149835894795208490374291548824971046383534789571396977209866161338316687909152555946542636180672118892357747521262664013110577152214466709244193426181145855504575813993123941396723501305702381537756467864964164487934016056298714559455077653530723999305093890402928877107589131567134292200678671447121828484080156235853707104941453835888514373855553419045737071347076009345240502971808138570265042854690227308035161268734821998886743692736715258905470478789076769329633795230457491495011518076960769165936203719960301017451837571664867410043582228956424397694854630539763759332410962607971058309748274663896988785961854807835986250237068413274220811205819927522780456942242447828470914347621759268337828351464666543092945152060403322560606331657907060455597362481981040254270126132236758723627993676420783840174276316021625460687857204618363434957185650260763128211320364906837531442631897386589107765884045986010735126337433456978799850594830216630047130935790584523970995188981708485385947363505382705914047923190819841883233033040965799498294406592384489481956267499938872212259766682323491981505622685729734674234858892084699336459818219034057023152999621386466581884553785609916224314594900442107509439703156579442136480397472017834818786648380550843374220569393844052367244911893244180028529355518490605689218241566095813747599592832286441656423013838620072313252113456257662135653250612962313220848214862210272033394857124847503770336599587009864654291998102597950132155448950390386623164498448863814430926646267573265218349256459377573690653143861509116171621432195311023817511177854833489281687286281921935423597964642697711888610951204393857842116983993619395361912716035077399702304227327446440222001086308720470082027858588042442770742830135959065281583680540719635881991795620938312866995519506172898122976501535183670060841460741719160418618377183836834359020641173258895235509471916798545128244460132104292010693538874619864471450819603139101627800398818093679144939992224377098138322864155856584815340391703246936023732820856784156731808982636876647093062197709779027236245370377930370305555184435538863186933327389251809117094783841907135806358275095247396398409568928710215081973621454293253149565668703252180784786170887384388641266397377017855261230328455997910672219333549261294647300031814128918433885019294030335366550361138717296585557139583577372915918044533836292784999614864758110078363696834712171367781866943624477259248809271198760531570766330521155784072135081586757178650192030096809212874202268311667674189460341552773094571899872981657421373887999464498018624187630583763265958472623352070981272502338698803078126367603772826131633042720528045528383311501020254048062736614281719806425360662272938775837994176228220124806733945493939073968563435970111362011521871964600783656057517198277974044240976159219034238633822749191010922539102869423038248555501571318066827862130091487034811692551499707807089334846643069417101712568378853276869853981360136958469216305220318940417611846203820747975960680828009347555245475558875056364323408003205822059879699583965562611073282327519909960911106400689733832103009665028096865044540771973164223382094028513987241161187647402928223525079690471568051376712540834430585874310821987689000100300306132307729029307109184484594240987256101840283528667850830415821188433958392077946604980793673857680245018509358774729998074222536482713599971782307863697331617426078653888188876710898869176651278981671344026459184220207299093512245054680018744608171624906868429098213390831571009317423273857770446923602477250617510593444777882952069347134952809082388099322704689234963003855712123679147808339979628281818442321474354203337703193220078259785166171959804476845202650057333273177952355786846343322259811553062880810054990151137521835888412005974055090053645405870053005803265739542990613850872252340071720769016977431244380017258414705751923662147803984481138680381006920349884973186584829241360033961142871228676341612147475964436577954340739720963252660424062858844586269879179965786318549083073014660511958149572035362732965852742927263978295930499090917013248166903598888942534750433715219591700973676721704833675336673277368186754281892186020472547324822472013046888711745737852858576201882418201005265822761040897045511807001322619253581006056064549090289337651379720440268010259005892362204686863089339005752652093596753152768455766005334406816628788784213730056496742354864137988153270144889733354130383427340692078595900344676723117087145903991427729412842816226170180393531488148393901969450761180162225611040525499239085598074524847614384369319382881862245562339226790179539618525767298971301341166465201304961320837815131581605797065811710005770007728028189923469530694810067908944867827851427576663061438340308992237717143947545102959747643398112916523839141685194440756039993561027192133890040618302061592627629021372536196089729538275316819969085576106913410266779583738222736828047284690016439467642402410211868590484173752213767157142753586880202742385814574687085471428554649394022100218524174923704942075987854852593955016225816912587950002126834178626431500551769099409866824260851919187377428448166102138127034439559396154391432690985817730765847467867609644748999144379815771116782677744240141156333841146494011073429086963478578895593501143937463983016951341697688026636643715384490848290277064966703063150368723703064140998775581389300474237574043463036700834880159704867336339592508621302118670198760403575124207572464068660425840677016863366077324196530209477009687922883169781244629711077252315658645412236024482167871917891444918000341326816393472272167073528333783071165912171578284295078334232440507306249878635723797824432282312241485043511971334917824235907752439769561439374756648219200826806657289012876587737572855974900529808580997627351559768277025006473808525227609798220387092168505996005604841820728045317777433235345976596012199249023151848719508365478257240914574196877162922686727374131198503194198683308749332766589808240738550493054787092042129388582151366714382348532966925523304843776276047210419119876176519487443912683411781588091133721346671870193413098067648310569571811835405793179462261337084011252438538921699584994799578540158814852177125904281102135356826770285139862565201077364228596014542392294227693748866029336521781358839970841180962451390007757531999672640767393323051565212327082536252520110897431207805064508991333390679261091474326385670084915835679265512584223818928178377893846830268680743160942339697365117274993949385991256125074203429633422602970879708105740724126239290637980545867307462637138546081744241375229145775593943156973935096890719868815809629352623721054865357812661442335008124217794565268612739018988223787370638281852178780962053123792877723176743914933397096661690944197756242156991958353013975963130260061937983279487470917346917434914273269525558680451737871226353739317248874713794305894554454156592671102612873730561261454335554476082555484840891233177205405477976008011909060521763451045782739119119139931951878940773809392975841431240924131020830712029485623619173084133695593673616124872852733746221211852476707735135284230191016962120439632268674009310406517132050473509854613935170918880177637646544225326959583274476850402141896953519024399241959290226308263450494590280276025856375755680935180413165565074418726518071193708259508046867873186789822489854191889207418926118958750744415696204152751612740977790145085372528084026627018605249606696818203255045037371777139050104668980896082137436864556625125697816016475154509636272858416160334505862790572030691456290564406536960943589761766492817308326761844991870247944659920280602335792793692052242008913971694202549227292212189854077558956941362349492997683852621564308823474031878557737604005358039387318067253252164929547003617445609729726226848211811119199807114919440982117315812214218252771034730548488699549145791366141339576037049774113254698983422285613707459954463329768027060884084774020810182273030289141653014155800441317445498180862279222491383130783352855356134948341892500564962056881215151388913998457494859350127391508407813471375339495694668869155092023472695421417603918075054124995714920297493449023270495139264630826030221791511190295387160887387435080471758739886494120167187766823265145814740242495451370880307028934926956482726591756458475078800019087414008319633485941316556608218721169068762803262797579994882681502580472682581272196607989325326287106102777275301024982675063342070396471567393047482398102248117409710533126552381355141900630111993175986518162563123111801136597764549809789134155416139015356676368416772443152813971676314506362966787763114617244584137562782823925638558678331252862195297704593074145532689702308083005588850281903466569980815866227895635259601749790740823453058710170928627511910302029437202255258076272495891978051396685717109346986525033641591704816778398680261884023955646880537912343423186682933161002450809867554879366171374887813889910006611110913700971283287685905438307138915234608394020665874530680333160787128729061572242291777581153344686328974548318981942515210459757024906894791225927432360731665605512822788204636335897443654901660301434835317298477869461825723596841246439979449603725644399733738245134082798361338152332919022131737887457641580432257404005675017436221981574262207581279498602103506693536008494853694813142260669175848194790924811991492630365023895857330349198041114339651367625979092418441129114568409823839718077888149630209795959772384122107347294124375907373592609263463151017076754073184108459245201319096068429120747405835818873212080381303425193514512884083126845771867465447609550016326973943828141955497659397197524030947876177134358525483391419603755961986059021555827508568712324263261596133535009975651087318472405918221506106517909738418058707460921325605652710900093808937000987447046103833836420715573027990777986010977733776679572731285877798124337757854432963587190425543345597531752219062850423779893002690603556522867969820213249729423045675895862559377735040010903297948966033872479771052938043507517029463301874952776367866000273644594302186261907633745463580571196595879450544381228993752670601740033430136258990182885892388551552390223117603977440324312300989350808172369756873990421295060593775588258853627604728939864023015167509482212215642788836277066970297753843589446663232410909462269417227926660802425627940234706389280862782092382480215346319975171597399208533671328114502247177305107251119433225044554129260011181609877085680302670634443874274971743415574626902898055771676839737560897411944402624313848902378507056994379004725675723135708866838159349568602693887469380464638309935734550891680140822918556390190581081959962429918243423073310911794966914176320740220923484010144721499773528575376505389600489823598066981397573326738528414607888281790256791726246805349047693541141943222786930000970544425886266912584735640658101221018948783244564326665948816430360251290713873123253602957423342437159065439143637072270923058821279912301854791059325125090396997433704648361383995944522082844964049017930101393244600094159283416779668462864518864043287851179296592645343666194152275953533604160463736913751850521062010106674904686960874562711679234409087933729649835463658268852330612819990631605783522447658252813632774150017597399731908153381815731560139940576240372426743691691847835006059398208548979006099405868787141079738264976409376860238176481433587536688530203957514082982306416146782701457523975906302385073095709708950918740862651257638863646991278073965969136501444101413207364046623566554123439652122151161407388896369060782678475840728461413576471256661551498118768389053047284298575478986727432161744017314064257483242859584995999952049584727363209318909020455790121370620560312182602307003143807417925792815226125203345312926700765433212916477186177971173377398911062719724034862135781601327762491854259872778776513163376707455340459875861908997334952924606328839552774300556323164983199475472452120571270641038723164235443308320391868358520018115096949920767002032143854349595414609445677839479668318993474121694488518621095925462704890495389339718017786053047928470311596087020175549933579922529526039338082678365027338496300485590480434105366009036012633801640260979806296586623606573824117413360236136414243380166205141835217493114529024327113447000957171379031401575969482566358031260383670039401365536648208867759165540584216032175373939126801832122346790997888708289579323639573999356553519998040015219703407696735494678577821555603101017194651519866517708637729392047652057124762263081832214533537625882148397924776755064776808746258176027069392850622389142247256374148625433890088774232166856958129621667791042570167923496777435854243826426004736314587909243527384970625360897522512275203126721021203016575024428889253332925055548219378936666811480782436380815485194891897010779138544632966310233818318714619096497415415967021869266369487680438242466842746260169158230340618139264472175947823627017380102960833845289597794317172261480737620507506088184971233535378438998330894603287866633785811435264105816722390237861839972243887873615429048789015370041837681170674629260084202586092668916278052946020830843499096680359929747369322100553680169048818091785752658009143283849461362660351646378631304261432842403017085545915011220372587250121368575295401640345455392225895748510221922106991444470876186595937261874129437604698622253373081026052387814041143227551998830355213400006026879790342362478483228036008264826226799235534990361259842639310651516565660637242966131204716231188161911556352168980862609789570050553268159833831800549399350907003338659791599071993668028239511352342694815406100011946850746490411610530129585080370238430036744889532033331840785149941106143695915658379387620979017576895690895735369985310732691998898111030654003352758748209017309503356322686975556551555827447388041743599033116449638158621019573856082465791331944975454290749066808615579896246178253351709836901023899669946220843306241543657249099327600734603692236907489769284995916689396867748974530815023555109824175120529460195055082388692182464847875712751150835151554830266180822270524289721359033930973057980906089529829671269331252044839999999999999999999998999999999999999999999999", + "gain_rational": "2001681395341824885873407287860125703/10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "kappa_sha256": "a5c2474cf39852b066700fec867b3946b391b64b0cd27dcf9c407cc50aef9267", + "strict_checks": 63, + "rejecting_controls": { + "endpoint_equality": [ + "complex_endpoint", + "q_below_effective", + "q_below_internal", + "q_below_leaf", + "lambda_above_tau", + "lambda_above_internal", + "lambda_prime_above_lambda", + "lambda_prime_above_leaf" + ], + "zero_layout_slack": [ + "positive_layout_slack" + ], + "old_per_axis_scan": [ + "old_per_axis_scan_above_kappa" + ], + "full_cell_gauge": [ + "unrecentered_group_gauge" + ], + "full_key_sort": [ + "unnecessary_full_key_sort_above_kappa" + ], + "old_g_factor_union_row": [ + "old_g_factor_union_row_above_kappa" + ], + "old_theta_chirp_guard": [ + "old_theta_chirp_guard" + ], + "old_linear_guard": [ + "old_linear_guard" + ], + "old_union_tag_2beta": [ + "old_union_tag_2beta" + ], + "matrix_below_strassen": [ + "strassen_integer_power_gap" + ], + "halo_too_short": [ + "halo_covers_generic_inverse_radius" + ], + "core_too_small": [ + "microbox_halo_volume", + "microbox_face_corrections_above_kappa" + ], + "group_equals_dimension": [ + "group_below_dimension", + "group_key_fits_record", + "membership_arithmetic_fits_record" + ], + "epsilon_equals_one": [ + "epsilon_below_one", + "global_gamma_power_slack", + "actual_logarithmic_gamma_guard", + "source_axis_superpolynomial", + "gaussian_above_main" + ], + "epsilon_not_above_r0_slack": [ + "global_gamma_power_slack" + ], + "beta_below_gaussian_window": [ + "gaussian_above_main" + ], + "beta_above_membership_window": [ + "membership_arithmetic_fits_record" + ] + }, + "epsilon_delta_ratio": "1025/1024", + "r0_exponent_offset": 80, + "fixed_grid_maximum_attained": true, + "grid_digits": 30046, + "backoff_digits": 30022, + "parent_head": "322949a53488d64023fedb89a6774927707e57ba", + "parent_manifest_sha256": "236cff02c0d2358174226f69d3b5702ec151af6b5841501dd4be69963b5cd8f9", + "scope": "Conditional fixed-grid maximum within the declared free-gap family only; unchanged supplier finite admission and complete parent outer evidence replays are required separately.", + "status": "PASS_SOURCE_BOUND_COMPLETE_FINITE_OUTER_REFINEMENT", + "fresh_provider_point_sha256": "37afb47ea250b2b4f3bb4c503ecff5f58df0d86534c4763890f10361f1a4a814", + "fresh_provider_point_status": "PASS_FRESH_FINE_ENGINES_AT_INTERIOR_POINT", + "parent_receipt_sha256": { + "RESULT.json": "91c1e8c0143f4736dcf0cf71e235f50dbfffd0f17d75f46adabe4707f5a17870", + "strict/ASSEMBLY.json": "866c0e79279ee5abca98116626d51981d22b23b2ededcd4627bd0fff32e10b3b", + "STAGES.json": "9eb1aa45a0a63e23ac4077a233b0285e463092ae14ec6ca7e5b19ccb0168bff1" + }, + "parent_outer_sha256": { + "LEDGER.json": "ee4df8e393429708d21da801b6ee5d97ceb2fec0ef1772eba63621651bf5fd5a", + "INDEPENDENT.json": "d315da034c6df31dc6c3407830088df897ebb289ce20c8d4c03e0658b6b3849e" + }, + "parent_outer_log_sha256": "fe08fa9a410c03dfe6ee4f66f74d9b0e1ce4a74cf075cd30be32890fe39beb58", + "replay_scope": "Unchanged parent supplier checker on Linux and unchanged CRLF-bound outer checker on Windows; Linux aggregate release byte comparison failed solely on CRLF/LF artifact endings. No assertions or certificates were changed." +} diff --git a/research/kappa-fixed-grid-ceiling/SOURCES.json b/research/kappa-fixed-grid-ceiling/SOURCES.json new file mode 100644 index 0000000000..67787b61e6 --- /dev/null +++ b/research/kappa-fixed-grid-ceiling/SOURCES.json @@ -0,0 +1,2382 @@ +{ + "schema_version": 1, + "base_commit": "f7b63bf857f08eeb8f6cf3e8529f9ef6a10291b6", + "files": [ + { + "path": "docs/research/agent-task-catalog.json", + "git_blob": "06c96f5579bb67ed1b86d334e78fbed7da6945f1", + "sha256": "6686ad58f1fbdbc87134a78901b60fd53a20d3984355e91defbbebc9e9fa8075", + "usage": "provenance" + }, + { + "path": "research/capped-fusion-t74-k554/ADMISSION-DERIVATION.patch", + "git_blob": "ab97eb8824cea8ff46bf17009aa63e8f5c5c8879", + "sha256": "7021000d75635fc5806af821640c02f9d7cbbbe1cf314dacfcc743fc6875fdd8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/CLAIM.json", + "git_blob": "8b9e1f777a9e71ea563c69316e229d25a505ac45", + "sha256": "2eabb7bfc86a5553fde2b2543b657e0d4e6b5a4b4f2bddc7947fcd7a3f57a288", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/CONSTRUCTION.json", + "git_blob": "546b8e950707b744fe3252a6ef26d23debe911eb", + "sha256": "1cdadc74fef4cddeb2bae5e32fff7bc27456740150440ae8fda8822f569c2492", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/DISPATCH.json", + "git_blob": "20807cc27c82db1f8f9cd47c79713e066d6ad816", + "sha256": "6aad7f628f4c9b510a95c5b34357736303069ecf92a551659900b1ba540bc7e0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/GLOBAL-TEMPLATE.json.gz", + "git_blob": "5327fc2f4e8ea82ed356c94ff040d23fc73c731f", + "sha256": "1d31424c4e27e26a35a9932ca778e43f1f3577589275422cc642aa68b31112db", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/MANIFEST.json", + "git_blob": "fdf5943d6f2eebc195e2856afe1e33831a82eeaa", + "sha256": "236cff02c0d2358174226f69d3b5702ec151af6b5841501dd4be69963b5cd8f9", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/NOTICE", + "git_blob": "b912ab3bf304ca0afae68a4064d262e9b0d1ccb4", + "sha256": "3918a42010a435782de0fe8c38fab8f7df5d48a375ecf603c2bad1b818a16d6f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/ORDER.json", + "git_blob": "7409c4df1092241729739596c7648bda504e6aad", + "sha256": "519d1d5dbb997a219fcfcad34c0b03e7838bef24199784d7e964fa10090f66e1", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/OWNERS.json.gz", + "git_blob": "a4c2021c16036e04959d7af6f04ddde08227b170", + "sha256": "cdfdcdec09592b4fd296ec49efe38573c1a61ecb8385b538ce801ee29355695b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/PARENT-LIFT-RECEIPT.json", + "git_blob": "39d2e3beff33afa3db54001b4f85ee0c37cd87fb", + "sha256": "94cc5cb9401f5f84eccd2fcc7c6860e2f6084b4c60be6a2ab3ffc791b329149d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/PLAN.json", + "git_blob": "616ee566d005f9751af7d6001d6960b4e9efe0c8", + "sha256": "e9ca855b0ccba243868aa7bd24b42f9e59f2f554bfe10521143591073e72ea18", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/PRICE.json", + "git_blob": "c41b950145014912b2b2d176cb4972408c95e23e", + "sha256": "c5ec535fd9edbdec7b64edd5a8b862edb1a7f173d411dacb279172659573e16a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/PROFILE.json", + "git_blob": "6a814d39b77e9362f938845f52e0f9914f7b5bc8", + "sha256": "932453b2b045f73c81aa2b6f169a05ae2426c573965bbf4f5d3998b63b78a38f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/README.md", + "git_blob": "f40aef2d142a76f7b0bba5bcb16f6e845925a39b", + "sha256": "363e2ed9c252471ba6542a32958742faee5ca3d538a344d2af67e854ead9c31e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/RELEASE.json", + "git_blob": "ce8f7c0becdb88c2bf1b5c17ea2d14f0f3b5ee79", + "sha256": "a28792fff3624b568ed3fe71fee9d0e8d3d03de05f7f870d933cd6097d1f3727", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/SOURCE-PIN-REFINEMENT.json", + "git_blob": "23d7a6f99714cb6312eecd1266d8d3d7979e9bdb", + "sha256": "8c0bad79978decd6f8aba0932c0a94c7f61c64bf9ce5a19a36f67cc1390bf74f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/SOURCE-PIN.json", + "git_blob": "e7415786b7467449e23e72b04863b3b065cc9e7c", + "sha256": "66faac1fd4e79bb6d9fc774fd8ba63522ad3309456be1c81405794b284c55c83", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/SPEC.json", + "git_blob": "5158049eeff8240d59528441d3f1fcfd8f420783", + "sha256": "da49a85190eac2b553fe982ed295b15fcde6d2dd449d976b503de25c277f2029", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/audit_fast.py", + "git_blob": "252cf3c68a5868dc9ad381635749ffc253687c90", + "sha256": "26950da76589b13cd9c452fdee1b0c354806977f881299bd94073f00e4646fcd", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/audit_mixed.py", + "git_blob": "5a399454596787010c136e48e6bc904898dafc12", + "sha256": "7466461cc15cbb12135d94f2d904d4e90e78cbf4755d0293ab9bd55e3568d4b0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/assemble.py", + "git_blob": "fb76d9bac58aa25e55b38d5be8bf6911b0dfce5f", + "sha256": "faaf457b63c6b5226ff32f66e1c7ac210bd668a0e19f5eb43b3e7dcfef0917aa", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/assembly_controls.py", + "git_blob": "1928c311af2642b5a5fd12e6033a843d7a9cd226", + "sha256": "01276a0fea7e2d915346ccdc3a64eb63ddd315ccc0b08dfea257337d3a2be4a7", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/audit_allcold.py", + "git_blob": "0c94f0bec6045de03b16da0d2a45ff53c6b27dbe", + "sha256": "a9d36514e1354aeb42e1aea62100d5b0ddeeef2f6c8104091abd9d0c4e231355", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/bind_providers_portable.py", + "git_blob": "97e28da17ed75cd4add54394f6178dba8c9b257f", + "sha256": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/bit_supplier_controls.py", + "git_blob": "e86b8527b464277a926a788f2493e8f2e091fff1", + "sha256": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/emit_allcold.py", + "git_blob": "7627f7717f5785b0737c19ee70836180953c1970", + "sha256": "1a7e06662a1f4cfc2f7ad3bfa4a641f4ec6c429277008ae9879821160e3c3336", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/fine_cache.py", + "git_blob": "b121840b8e7eae45f0e728cdec55e1d4b39227a7", + "sha256": "89282a83ab102893a4fc1e663ad2137d891d81e843b1c9ea140d13e58b7c7dbd", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/fine_mercator.py", + "git_blob": "b305dd1482d5781b6c3bc7a8036373379b06378e", + "sha256": "868fff6d31767b215cdc51bf32b48df0a3ea9675750b7258839251a79e4505b5", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/fine_moment.py", + "git_blob": "d78ee65eb5ed0523d48363eb06867e35749e8dbf", + "sha256": "f881f6f1d8d3a8180c384a0bee3b5cccbec86f48992e11b46e2c9ef4c0c014c8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/freeze_spec.py", + "git_blob": "e4e72b5a078e599956e909c5a3e9002882807c49", + "sha256": "e9132a9d195c66123f2747a17f7ef404b4d1e3ef6263ab4c28c983a052cf10bd", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/generated_identity.py", + "git_blob": "74a9b604793f21a9f064c78874341e287ded7a68", + "sha256": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/invoice_allcold.py", + "git_blob": "fadb158181e804645b6ec96c40118d4f4c0b1897", + "sha256": "b347c6f1cbf7510e4b071dc84b2a27119b65644be7d8edbdd19c6f25a7f497d4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/lemmag_checks.py", + "git_blob": "1c1bdc4c6a1da3ba977d6405f73c3ac13eabf912", + "sha256": "b4efa597ee34ebef83b9f686eb49fc949be139c2e5e0177313f260c33d08153e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/lemmag_stage.py", + "git_blob": "819af393a65198175f2ccdf12ef29a936fda0ca6", + "sha256": "b1f60db278055eb1b5b710f36d9ccaabc9c9ddd868f0a92816bba182ae41880b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/oracle_check.py", + "git_blob": "db055a6fe6d43f9581ba9c4e089c38b9d28de82e", + "sha256": "4836046db4bec939515a5a272559f92192b56612b98f635910fd81ea754ce2e1", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/prepare_global.py", + "git_blob": "655c9470f666138918afbaff077ad2ec5663c6bd", + "sha256": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/restore_parent.py", + "git_blob": "21135f898a43e35b55e522c2d0b81a5e32033097", + "sha256": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/code/witness.py", + "git_blob": "eb254684bc83b71d95e3820c669e7feb2739579c", + "sha256": "08ca58abff11bdfba721dc56ab8acf06ec1b7c48a8699a0955cf35324680aca7", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/construction/leaver/PIVOT-SWAP-k8.json", + "git_blob": "7a8edeb1e404c441577427e72557e26b06c945f1", + "sha256": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/ADMISSION-CONTROLS.json", + "git_blob": "f4869aed2f09efd7df71b5160d47b6e56cfa9865", + "sha256": "5cdefeff2516a67c4dd60e609019b3e2e38eb3d43142df2d3c7ed9a6822d5050", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/ASSEMBLY.json", + "git_blob": "6e9debfd552d18846fe55e4cbe6c59a37447b035", + "sha256": "5d9eb1ce551386024b5b6894836f81ed03a83d2e0c0bd0e02e3f6410a596bb2c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/BIT-CONTROLS.json", + "git_blob": "c3caaf80e19657218b776af3de81073b1aae8a69", + "sha256": "d74d9d2ba363c3709e9a3b33abf6d14abd6b9c68d950b35b7669d8e6edefa59e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/FULL-ADMISSION.json", + "git_blob": "6c138447c3bea8c322d78de0fa075af661f69192", + "sha256": "cda48de718d060b8ca329f1254f4f999a5a5bade5cecabb265f0a9bef1135089", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/GEOMETRY-CONTROLS.json", + "git_blob": "9f71586085849a83e5fc71c1dc9d3681b81e69e6", + "sha256": "13a50b2f2448931ca302a55e5839c082f651331f20402448fe6ff29d1eb2f481", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/INDEPENDENT.json", + "git_blob": "16bb558f2472df730076a8163454c6f70b9e9fe3", + "sha256": "78cd00f832ed3c0a4b0e0d202095f7beb6111eaeb4457849d5bb920e983098a0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/OUTER-DISCOVERY.json", + "git_blob": "882b30d5807a4f41e21791742504b75c8f8aa0e6", + "sha256": "413ef3e9eb1c3ff680cff1e600dc7160afda228e0b6b021c1a4e4a37ee486cc1", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/REGRESSION37-CONTROLS.json", + "git_blob": "5d7c9b908a9f138f5cb8870731938103ef43c0f0", + "sha256": "0196ae228d583f2bac3c42d3576a8d378fe622592e377c4c1921b5ae81351854", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/pr1377/CLAIM.json", + "git_blob": "d63216e85679016d15d0e07dc185c605a5070c8f", + "sha256": "cd089b08077e0151b9ed917a5c33aa7aa6b0de790bd9567442531b48729da8d3", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/pr1377/PROOF-NOTE.md", + "git_blob": "319bb2357592dc9c2d50bf7e2a6d47d74f43955a", + "sha256": "dafd8286b1c9224ed6f50bf71bc34b77918323b936ea7427a4b71c3b644b2264", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/pr1377/RELEASE.json", + "git_blob": "9afebef3ae5cc193ffe41707e98d03c692c4d9bf", + "sha256": "a4fa2ca0f79a11dcdc3227ad16a408d4d22d83b7401c894cb0e31eb2c9c5f7df", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/evidence/pr1377/RESULT.json", + "git_blob": "546b8e950707b744fe3252a6ef26d23debe911eb", + "sha256": "1cdadc74fef4cddeb2bae5e32fff7bc27456740150440ae8fda8822f569c2492", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/freeze_spec.py", + "git_blob": "e73c2a95c16f20c46bbb96d5e7f50c2b23040673", + "sha256": "0f5c8ad43180a633a2cbbd11f7832729039402c68f593679552c43a1693d69fa", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/geometry_controls.py", + "git_blob": "feb5fda97f207e0a237cf47e16c1b5327e766ae7", + "sha256": "7edb4732b34e5814b27650a55c938626cb50d68f06397744dd4fe451437e90e0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/independent_core.py", + "git_blob": "31a2a644a8c435ea324bd057a9a2d4c813a76cce", + "sha256": "50e693b2ff8c10f8eb3bfced585ad1b2a807668d2e81ddaa1140cdf6e81d8cbe", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/inputs/DISPATCH.json", + "git_blob": "613e01490d24a39e551ba75915320617003c1c81", + "sha256": "b7b971df9dce435556145df307e2bb5138d87e5aa933f1fe61fcc5b5163301c4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/inputs/GLOBAL-TEMPLATE.json.gz", + "git_blob": "114808c32b1799da53524bdc25cea67efb60009e", + "sha256": "21297b20f1f2dc76eb9dd8124416068c3cb096bab9df17fa4da19bc68dfe082e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/inputs/OWNERS.json.gz", + "git_blob": "34fa5d69aaa2574af60f1e8f7d43640b03698bca", + "sha256": "3a56f578b2db5647cf6cb811bc6263c7a802ae3e31e9e672596d43185e4e5c9f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/inputs/PLAN.json", + "git_blob": "5af9dd20821ae5b79778d85cd7183873c5999732", + "sha256": "163431bf8d3bc0d9b894994b1a3cfa7947367b2243b3c0b3a97d740195a1cb08", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/inputs/PR589-EXPECTED.json", + "git_blob": "e293ddc557742637f9f679f083a1a282d87b1b13", + "sha256": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/inputs/SPEC.json", + "git_blob": "c15990ace61b32f7233c82580d720e3097a900c3", + "sha256": "2daedf579c8abf30ceed79fe739bdd7659fce4c514de3894a028933143265d98", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/lift_parent.py", + "git_blob": "ca6d69cdcdaa60238bd773af0ade71701d16d5dc", + "sha256": "25f9fdc407e2644f8b6d36ea59f1f88b8507ff08d983b7d2b7e08f5d7c936b65", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/CHAIN.json", + "git_blob": "4e45236b9bd363556704fd2f8d6d7bbef0ed91a1", + "sha256": "f18804a71bef7005e892b0b7baac818d5362fff685fe5b5aadfe8de6e442446d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/EDITS-1.json", + "git_blob": "866a0ebba23f47e79466a32ae538c660454fb1a3", + "sha256": "dffa640c04d71111d3e4bdd7f5a991450ba07049a1d434edeef84791c0cc2d05", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/EDITS.json", + "git_blob": "c3e81dceb347014bbf199c68acdbb5c99a4467ff", + "sha256": "d5f9a0444dddcccd35c0217f60dbd6863486241629a747c3bbe4140b3d55eea1", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/PLAN.json", + "git_blob": "b16926e163960af34b777382f08585252e1f91a6", + "sha256": "7d998108ccf8021e7c920a70fc81dc18a262d275c85fd20c77498a32fc6ef41d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/PROFILE.json", + "git_blob": "d1b52a824a9d2d51a9c589b8532157f96d07ade1", + "sha256": "f4a69c864a0fb706d730aeae15ec87310b42804615337e3c17073565a4ce6afb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/SPEC.json", + "git_blob": "27074d48334dd31d453543534a19cacb75effad9", + "sha256": "822f7093effb40cb0ae4b9f228d8f6d38e1aff2808e49557c29890c37df86115", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/extra-word-566.json.gz", + "git_blob": "e86142b352466f54a3da38c96a6e1484145c3b5c", + "sha256": "cd417b904408c221d9840d08faff8af040cc4207f9804284f2f5375d21298a62", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/gauge44-word-566.json.gz", + "git_blob": "76c01583a0286cddb0f71e0cb13077e4317104f6", + "sha256": "eeb6a236ed0ea8873b8800947d0cd19c36a6fcfdf857fc42913cb45cd984f219", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/pivotcheck.py", + "git_blob": "d7773966f707b9624facddd3908873a7fcdca61e", + "sha256": "6eb1752f077df108c908974413fc71abc751356b07c6e650e75d2075f1a51391", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/rebind.py", + "git_blob": "8930398ca5c9ada7b9bf5fe9efe4a8154ba84c02", + "sha256": "f71e872107a07246233dc3755ab98b5184301b9439b63d28346b551529446db3", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/rebuild.py", + "git_blob": "e266314dd41ef819cffe964783ec93038a234f7e", + "sha256": "7391a7228d6b5afc2f88afd5d5a987565d78a100386c1f03b8696bcde2e8ef3e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/rebuild_chain.py", + "git_blob": "df79c063ee7d7256603f5ca5daa18dd0ac68d8a2", + "sha256": "3a5739f94f0fea1aa267e7d12e1c986210e483c841a8855e11020128a017510f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/steps/0/extra.json.gz", + "git_blob": "ac08516e3b7aee54f05c88d90964a015fb177cd7", + "sha256": "17cc6c177c89eb264514e1efb3685ab9a621f3952a8f393a6a5eb28cf77e2884", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/new/steps/0/gauge44.json.gz", + "git_blob": "ecf75c274c41efdf4894e2748bc4d071a16c87a9", + "sha256": "0740b6f33927b9e60c9a7f35e7fcb2fd9ac6e2d3982112428b302a6966a18c73", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/B.json", + "git_blob": "a0a869b7ca55cc844e496a6c3f7089ce0a7a9b8f", + "sha256": "0d36a77c8ca8c90ee5de6d6e1c59c5fb2489749cdc911043dd8e71c2d75e7100", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/CLASSICAL-BOUNDARY.md", + "git_blob": "807113cce1c6672473643c3c9744f07e690fa81a", + "sha256": "582bad82bb63d54dfa6d76fd79ed01c993f78262b02813bf647d82aa6f6c0b3b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/FINE-PADDING-COMPOSITION.md", + "git_blob": "374dc1c07546c4552b27a62872e08bc407fe9f1a", + "sha256": "be0f697aa61e2cf481ea1eb22d6a02d173fb6345699a2731e4e2e6921e8ad54b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/GAUGEFREE-INTERIORS.md", + "git_blob": "0f9e75ee7bebf76c2ce7686a5318f17539a2b8cf", + "sha256": "a7fc34302a70f8453f877a6433ffe2776457bf37b5d8bb262afcb6b198a935fc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/INDEPENDENT.json", + "git_blob": "6be0fc7e0ce47bb1ee517fe0eb7c45974e7d67c2", + "sha256": "d315da034c6df31dc6c3407830088df897ebb289ce20c8d4c03e0658b6b3849e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/LEDGER.json", + "git_blob": "c8ebf991f648aa270453363c53d901630eacfa61", + "sha256": "ee4df8e393429708d21da801b6ee5d97ceb2fec0ef1772eba63621651bf5fd5a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/OUTER-CLAIM.json", + "git_blob": "62e6a240c9c1c8481194705eab93fea0ba8713d0", + "sha256": "0de7f52280989883d5b8f84a71ace0c7e1284246db6eaf3fc81a758c69f8f77c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/RECT-BOUNDARY.md", + "git_blob": "c49777f8be54bf0dbcf551034701dc16c502798e", + "sha256": "17ece1cc1eb4a02df4d8433e3612231768633e6674d315acbcf880f36e30bdc7", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/RETUNED-SLACKS.md", + "git_blob": "e38c1cd46c4297de9d7f3ec280888f7e67e36690", + "sha256": "1ba4fd6cb851ab397a42d80841d6b8e4399c3ef2836efa161aac4b4eee0a2307", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/STRUCTURED-BOUNDARY.md", + "git_blob": "eb295d39b4f2c4cc75c23c3c470c60930c8bb1c9", + "sha256": "6e9261b85f288d0fee1177a7fbc53958e42cb9138c038d6f6fcf662724aa8095", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/UNION-SCHEDULE.md", + "git_blob": "78f9955ca811bbf6ad1ec207a24cfa118b3bbcf7", + "sha256": "e18323a6487fa455dfd9b31ba9f4af65606b7854677856378cd87c41d67cc25e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/check_fine_padding.py", + "git_blob": "f182f822fdeca9372d80fce6b56cf05814f03bb1", + "sha256": "a0ae691251cc50ba20b7f23f89fffaed802d62f9192a441131476914a5bdfae8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/check_gaugefree.py", + "git_blob": "3fbb4a1b2acc3d5120d93d2ffd7cd5007d4f7f0e", + "sha256": "5274b2838f322dc56a88570e4f9262fcd3857cd387160ad138e083ccdfbe9761", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/check_ledger.py", + "git_blob": "0af376502a7db590db5cbf811585a610c65770b5", + "sha256": "8c035dd098f61feed6985d91995970caa59eefe104ddf80b336db980703ff4f2", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/independent_check.py", + "git_blob": "c344035fbfc190b97b2bc91cfe672481ab2f4615", + "sha256": "dd09a170f6f8e2283e5824807bf1922283d70bc8159e0f3a2430b472c77751ee", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/replay_evidence.py", + "git_blob": "da3a159d0965bbc71fb2bc3286412a576595f6ec", + "sha256": "d3bdcfc8ce29865b3a76d64d99b5177e73fe994a2eb915f35fa233c5ab81df65", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/run_outer.py", + "git_blob": "8a9434e5b5d877c0b26976b379180cf5d9508d7e", + "sha256": "cb46c44c70d05597bda3375517ed4f5a3f93294d30aff356c5ad5fe6d03b5aeb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/sched_review.py", + "git_blob": "e0931c2a2158c37ef6ab6e887ae5af72de4fbb91", + "sha256": "f440a57f1f46119ee8c2934c8f0d618ca1c85c73cda8cfb8453c2aa1b9fc40fb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/sched_test.py", + "git_blob": "deead8f7a9e1a195aa2c066e4126e9839c670634", + "sha256": "f96d09b5990931e3df8cea291520bf17c424215748cd9ec068214c58309a21c8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/outer/struct_check.py", + "git_blob": "a541e93ae70acfa62998cfb833ef35d0a5900a41", + "sha256": "f13c6a166394549a25b6e727c4a43c0a34ae270c9498a9697683d63e0e5f9971", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/reconstruct.py", + "git_blob": "ff8b0e721461c670a625f010e0c2a9a66f4bbb2b", + "sha256": "d1b1d841c9d76fafd747642559660c65666e93643caa1b4eb758fcdf69fd083f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/replay.py", + "git_blob": "1805c184033e2682201005ab1397a2ddcd83d3bf", + "sha256": "3ec4330ede0db3c6daa453b0366817be9435c85c8c3213a0c35c442c96c1a955", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/build_parent.py", + "git_blob": "bd9e28bd2dc091dcec90a09fa3e556c71579e528", + "sha256": "82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/CLAIM.json", + "git_blob": "0df6dccbccc2c1e5ae84b53bf1125f2fec50399b", + "sha256": "bc9e90a475333b957a8c4eae8b950988caea89e20e9b44a919e83415fb76b1b8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/COMPOSITION.json", + "git_blob": "f2fd30991f4f19cd6412db944163cc99db453079", + "sha256": "6fb74e73fd298b356402eb2fbcd625463b2fa540a6be4ef2d6335ddfa31d70f6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/CONSTRUCTION.json", + "git_blob": "928b2627d3adaf1b8ccb96aa040c2bd06d625679", + "sha256": "fb5f74f59c89b93c63ec47e32e2c9264658e115d1f21eed3eceefec7dc7a0cde", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/CONTROL-SITES-base.json", + "git_blob": "f3bdcd871e0c788f9180f264a2396a5b3c83c9d3", + "sha256": "b41361f5a2f6ab3d223c146269c8027a0537f1a6e3c963f28cf1ebbe05c5d7e2", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/CONTROL-SITES-extra.json", + "git_blob": "0d988e0bf83dc7db281160d9ae29982cf0cc4cf9", + "sha256": "f1aada769389ec410b41bc9e2082826bb916b8332c915ee9e07045135c30393b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/DEPENDENCIES.json", + "git_blob": "c11bae8621267c047ad80b0fb788dc26ab7c3c23", + "sha256": "9c9fff3ac059da4d4e2f13e655afb9e42ada1a57987f5b47b68dda4b64797966", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/DISPATCH.json", + "git_blob": "613e01490d24a39e551ba75915320617003c1c81", + "sha256": "b7b971df9dce435556145df307e2bb5138d87e5aa933f1fe61fcc5b5163301c4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/EXACT-RELATIONS.json", + "git_blob": "234495b4837bcd10fa5d42b9dc7873653cdbbd66", + "sha256": "6864f378d917d0ecfd8cd53cc26303217ebb48f47f2987bbc01cf1e2c9a28093", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/GLOBAL-TEMPLATE.json.gz", + "git_blob": "114808c32b1799da53524bdc25cea67efb60009e", + "sha256": "21297b20f1f2dc76eb9dd8124416068c3cb096bab9df17fa4da19bc68dfe082e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/INDEPENDENT-DERIVATION.patch", + "git_blob": "bf62d3165be847b78448510def5cde8402744bd9", + "sha256": "6b3af098ec1c9e2360a366933eb7fbf0e16ebb37d43809d26b275e66fb5ee779", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/KERNEL-CONTROLS-base.json", + "git_blob": "0a11647ba02f958fdc452a3cf87240de68f06d10", + "sha256": "cbe755333f469a1f01258b65f2b273763212dba6642edabfb58f7490f326abda", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/KERNEL-CONTROLS-extra.json", + "git_blob": "66b6ba14c07dac6c88075a90b2247da2a4928f7d", + "sha256": "cf255deb866ecaefca4b6ecb72f105d6b08dc8ea907a8381d45aedc39b2022cf", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/MANIFEST.json", + "git_blob": "476a0e78c460231283d1f3ed51f91d9130ae784d", + "sha256": "e0eefc96567fbb45e19e6de0ca295381dbe0e686c08ddc783639b065c7c791d4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/MAPPED-RECIPE.json", + "git_blob": "9703b60a7eb8c60c8ad7efa1b353307a1b31425c", + "sha256": "09aca649da97a37116262827cbd3ebe0addcd2b1a33c08e8347f3daf3394176a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/NATIVE-VALIDATION.json", + "git_blob": "f13557735ae4654f4f0e387d2840ca552f5e693c", + "sha256": "755b7087e0ae964c538e9378311e07dba2867c16b568d1bf6ae9051657f9f5cb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/NOTICE", + "git_blob": "81584fc0ffa4f815fc8d76423d3f787d252afc27", + "sha256": "b352129a07fc8693f57c77cbb0ea92230b2fa77439f86c9f35b828213f9c42db", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/OWNERS.json.gz", + "git_blob": "34fa5d69aaa2574af60f1e8f7d43640b03698bca", + "sha256": "3a56f578b2db5647cf6cb811bc6263c7a802ae3e31e9e672596d43185e4e5c9f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/PLAN.json", + "git_blob": "5af9dd20821ae5b79778d85cd7183873c5999732", + "sha256": "163431bf8d3bc0d9b894994b1a3cfa7947367b2243b3c0b3a97d740195a1cb08", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/PRICE.json", + "git_blob": "7bd7b9eb8ef38a6abc36d6b7d08aed0977ddcdfd", + "sha256": "e19f9f9e70e4fda2bc4a39fae93ea44555945cdaea59728864c5a44dcc5522e6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/PROFILE.json", + "git_blob": "cb96b9560ef7f08512601da484ca3b4550d5c602", + "sha256": "d9bbe0d73ba005749615915a2d884819a6b141e3402d9e7f87f4592a2d27af99", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/README.md", + "git_blob": "b1f8465c4b708bba177d3feb95517173ed713cb2", + "sha256": "102ac7f080c1799aaedd5345ffb3631845215e8ab770e2af34750c25f667686d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/RECIPE-base.json.gz", + "git_blob": "1b508ff5f703caea762fb17db0a1c709c7543cb5", + "sha256": "0f2db2c658e9732fdd1aeb7bbbb5c786d6045de8a2575b7654b9e6fddc71b03d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/RECIPE-extra.json.gz", + "git_blob": "1bc45eca06305a9410341ac050688fc0438b4ae2", + "sha256": "9e6f58570b0a8f9e8271bfbc73a339fce42f1cf28bf14d4db93f246b8f63a3c9", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/SEARCH-RESULT.json", + "git_blob": "be31bf7e5b704562f245ed39d0a34aa9ef3475e5", + "sha256": "7cdacadcbbf83b81f9f91668fcc707f8a238c6025f35a8bdc36758619c2591c4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/SOURCE-PIN.json", + "git_blob": "5662a1abd41e4ab0edc857fbf3de6947dfb2a346", + "sha256": "e93f303f4de383757e50d612ada5e379533d46737a32281aa6879fb4b6138e09", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/SPEC.json", + "git_blob": "c15990ace61b32f7233c82580d720e3097a900c3", + "sha256": "2daedf579c8abf30ceed79fe739bdd7659fce4c514de3894a028933143265d98", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/UPSTREAM-NOTICE.md", + "git_blob": "1e3b40de3258a81f0eee09ce0948bcb03dfb594b", + "sha256": "b97fb4731e84aef736c58a9c126334eb5b8d3a057a8d9d45b4ffff24af65c38b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/VALIDATION.json", + "git_blob": "66b55be3b94d302bf6957f72faef97b60a2ec7c6", + "sha256": "1008f637a22f954ee774920a8362931ca7cfed63ca146e725768c0f39803c0a5", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/audit_mixed.py", + "git_blob": "5a399454596787010c136e48e6bc904898dafc12", + "sha256": "7466461cc15cbb12135d94f2d904d4e90e78cbf4755d0293ab9bd55e3568d4b0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/build_word.py", + "git_blob": "537d4cee50c893c55a0fe515dedda6909b3d1603", + "sha256": "ff08af2851b4813c113ef63113566cbd79625e9310611292913d51be554b5aa9", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/construct.py", + "git_blob": "7da1ab25df4b4dd2edec478339fd96c5540cc53d", + "sha256": "71aff454291d4a35068c43dbb65c00ff511f48e91ab7cdada462833f04ac73e3", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/controls.py", + "git_blob": "78a47a5ba0f7e84042c90da95a3ecba997794155", + "sha256": "935cf39ed6601eb6ac411b7b1a4adf5d4238589cad9fd5969d7dca967ace4c4b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/extra-word.json.gz", + "git_blob": "4d464f55a2955e5c832b5ce789d5d0e0a39fb4e1", + "sha256": "7b0e9fbda32749aabc7e156d9fe09bceb0624a178628fe69e5dfea783462f905", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/freeze_spec.py", + "git_blob": "e73c2a95c16f20c46bbb96d5e7f50c2b23040673", + "sha256": "0f5c8ad43180a633a2cbbd11f7832729039402c68f593679552c43a1693d69fa", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/gauge44-word.json.gz", + "git_blob": "eacf8c773cb50637f93a762342b3b5f0853fe29a", + "sha256": "e8e6e78ff7422275c38324499e1f33fb2ecd30de9503aef2b8f1ee80d8c4df8e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/independent_core.py", + "git_blob": "956b52eb1a26ca70287026c4cba514ccb26771f5", + "sha256": "d1dcd5593a05cf647b485db38891984f829abea5f95c6cc91e37d554bf163d48", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/inputs/base.json.gz", + "git_blob": "ed6248e6b7a1dfad3e40b5b82eaab38ccced0f7e", + "sha256": "b87c706d14a7e1972514ee901002a930908073811ef38761def31c8e36351916", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/inputs/extra.json.gz", + "git_blob": "fd2456fb302744c65cf691dde47b95114054de2a", + "sha256": "ded6903e00deb9e158fa700b03ccc9b8bfaae6c8bad8ca4842f0ad9b963234ab", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/kernel543_controls.py", + "git_blob": "43c88b86c714847bd05c1539ad862e2be0b8b952", + "sha256": "ac16d605e773197e3664643d40b36c15a7130a45e95e36bfe7b42d939644367c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/kernel_controls.py", + "git_blob": "a5ab27352db41f7cdd5f65bbc7a0a8171e3325e9", + "sha256": "436e3f3d9974da7c1968ef99fdde5ad203a61544d8195493e3150eb25869f4dc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/original-main/research/complex-t21-owners/vendor/pr870/t16/build_parent.py", + "git_blob": "bd9e28bd2dc091dcec90a09fa3e556c71579e528", + "sha256": "82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/premise/inputs/CODED-CELLS-k8.json", + "git_blob": "cd23561e0be5bd060e6e0b94643e550374ecd7d8", + "sha256": "7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/premise/inputs/TRI-LEAVER-k8.json", + "git_blob": "e3bb24cc49812a90a82e8e77ee8588f3d00d81e4", + "sha256": "b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/premise/premise_check.py", + "git_blob": "98efec187df79832e4db56d8250ccb711b4062f1", + "sha256": "28a7f881a988b29b8ed3c927dd142ac3d4ee273dedab3a65bb02c01a64eb2639", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/premise/verify_1049.py", + "git_blob": "3e34e2c5a69ac01025ecd0eb2da17af488711dee", + "sha256": "a1736324c6db161733d8e11f608defd87b7f97cacd611203d22499e4c7de5545", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/replay.py", + "git_blob": "0343c8c1abb24738b9e868264e955afc91529a52", + "sha256": "d3ea7c2e74ff6df9d14969f994eaa85f825372cee92dafb77bec4767edb242e7", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/search_relations.py", + "git_blob": "5959c3e39e40bf886ae93ff28a2396bffe61eb1c", + "sha256": "58f3bd092cb8592a070d7879918ff318a658a6fa02bfad7b5b8f4cb0fe16691c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/upstream-layout.tar.gz", + "git_blob": "d627d3786282a334243abe0cf3d7c07468be2beb", + "sha256": "a0cc229bb0fc9ab8ee5c14d5de87b3de31d1fcb793e99192c9cdc63781e794a0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/CLAIM.json", + "git_blob": "b67172862cdeb3d0529b5d756d71cc0613e60e5a", + "sha256": "b9db2fbfb004b505ad535e4763915275dc5908feaefef32e65863fa65de061ff", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/DEPENDENCY-PINS.json", + "git_blob": "515f2998da6ff12dbaaab87bc148a389f3bc2239", + "sha256": "c9330aa6a4226c804060499429cb450820d7142ab17696eb47408b04b410b5bc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/MANIFEST.json", + "git_blob": "20082f0ea3a332c93d0db5cf2eee02021cfd3312", + "sha256": "4837d070679d9e70218c7cfa2d3e70d7d742a5b74dc66d224840b1a3a4ac4a31", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/NOTICE.md", + "git_blob": "8ead68d65817600fb252a6c1e694ee5fcd337e4c", + "sha256": "c7a17a0a35dc249f8ebcc550b3791e214aa65872eab8a6458c5167dd7b948e5b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/PROOF.md", + "git_blob": "e23ea42ce308bafaf5e6a5fbb5a79067a412e766", + "sha256": "b2a38120ddb75e90764d0b81913d60b46cddac4d943cb731bd9c7134f1c236d1", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/README.md", + "git_blob": "03b83367a9ded618f2015b70dfab87c5005c2ec8", + "sha256": "cdcf62624912150ce4e6e05356c27299251eef4cfc130e4f209839cdabc05e08", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/SOURCE-PINS.json", + "git_blob": "dcfb60ec383e3d4a1fbbc6268afd4c32d9d1d683", + "sha256": "08eed0d6822a1c17053161929591e7ac36b9f91f8fd61190183a6d975948db85", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/audit.py", + "git_blob": "a350fcec6564d8c37a3d7b9aaf3dbf1279fd0270", + "sha256": "1118d483b6abbe7036390c0a1053bcfec2038dbac273fd1bac92a68f38e6d7da", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/build_word.py", + "git_blob": "b98987baf94a48a44eb2b1dde9e72465138b92be", + "sha256": "effb72aecfff9958fe078ee89e0d37b85d601eddb19fec4520d7ee6e936edfae", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/common.py", + "git_blob": "4af6dc3374d43e1c9cb6cace055864a817bd993b", + "sha256": "274274df31f8ef2a47b801d1f30ec226f94bce674fe15586d814ca754f6b7785", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/construct.py", + "git_blob": "00429f1e626051437736fc25121f2735d7b70c16", + "sha256": "3dd333b50f4bd1d86956a6df4a334ed746d75d0a9e03dfadbb6724b4356e0cd6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/controller.py", + "git_blob": "50387d2973c6fe679645d56e1402b8d3a46f0b61", + "sha256": "d93ed519a0f2316b87b66f44c5ea615f0768a263dbd800815b536d8b7c86b8b7", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/controls.py", + "git_blob": "a5cbce2d301ec5a321bb17859ca26c5e0cc07a84", + "sha256": "574c55a01cfc34f5b9688cdec5646160cf22b403decee36d18b11f1b07e71f21", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FLOW.json.gz", + "git_blob": "71246bb8e46d93210bef43cf92fec6069bb96d0d", + "sha256": "e8e6dfa66e083ff8f3617a8441b5b2d766c3c9d9ac62ddc37d99edc24051f79e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FOUR-RECIPE.json", + "git_blob": "1fdb9bb71c6bbef72f3a3048225f71025a40f48e", + "sha256": "384b32c5b0e9b3baa1c7232db884809596d30fc55553094245f7b739b1a43484", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FOUR-WORD.json.gz", + "git_blob": "46f164ba3927d857ebf405f86211771665233aa9", + "sha256": "7d09ee1b8b9881313e5fb1f623c0961d59b0c6352a019bc9164a6cad8c58e27f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/MIX.json", + "git_blob": "52e8bdd7754692aebdbdf3d8654dafdcf8300f9a", + "sha256": "dd86bbb792a5c9f0d7507d55bd2f8392c66716023934b03b24f48ca737204eea", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/ORDER.json", + "git_blob": "b32f07b09b2ebdad98a4a3f7ddb84186797a1bd1", + "sha256": "7757df3b54ca5e84c6dba9563b10bc6215c5e289313392b5a4b493179a245c29", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/OWNERS.json.gz", + "git_blob": "34fa5d69aaa2574af60f1e8f7d43640b03698bca", + "sha256": "3a56f578b2db5647cf6cb811bc6263c7a802ae3e31e9e672596d43185e4e5c9f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/PLAN.json.gz", + "git_blob": "09adb5668953e741ac31cba5555c2819f4633824", + "sha256": "1f1085beb84b516b9a96ceaedc6c3de1c58941fd00b6e70f0d0c686b6546ff79", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/SPEC.json", + "git_blob": "3298bd468380658a61dddca27a28f6b0001023ca", + "sha256": "82b263990afdc5efdc1dfe38ae16d7815004dff8d70f85c28fd8286c31f688bb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/ANCESTRY.json", + "git_blob": "19c1fe32ba7dd638e787cbd00ab5b2f6feb03f1d", + "sha256": "cd880b2d1c2fb8d9050458bd13f228385c417a95e4d1985607d9f4bb60b5c109", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/ENTRANCE-CONTROLS.json", + "git_blob": "3a6faf62a0002896ac6604a0a6e7235752b56ad6", + "sha256": "7b101dd97c1025667fb3615930a9d6cd2ec443169d263a3bc1191b80fc712a1f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/FLOW-CONTROLS.json", + "git_blob": "b6fe46c47cf8b788a6e52c2793971bed378019f9", + "sha256": "43fe7e94bd72607d502ed947ac1463405be18728eb0b8faabd7ba63ab1d28ab4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/INDEPENDENT-OWNERS.json", + "git_blob": "44c14d7c4ad33877b0938bb2fabecf438ca7d7b7", + "sha256": "4c295ff53f51631e1720b0dc2ea895c34861435fa92112ee52439e4569de968a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/PARENT-CHECK.json", + "git_blob": "e6f7d662729c65760b25e86ee737262d5853f5a2", + "sha256": "2b729fd666ffe4e34a355223b57f74ba460fb171b19c84f260378dd109f0b9a0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/PRICE.json", + "git_blob": "f13194611b8edc4ef66ff163088c24ae6899c9e3", + "sha256": "a1dac219b019f8d40d5b434b0e0c25b0d1f097fe5ae13eae45c76869aec4758b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RAW-demote3.json", + "git_blob": "e69db49e872b632f24cd8986c3169bf0bdf7e4e7", + "sha256": "02150d4cb1b2f4763b5c5c20ce979c740cbdfc1066e021a8aa5d407de5c4b9d3", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RAW-demote4.json", + "git_blob": "93a7961813348e5b8327c2a0a1234181a26db721", + "sha256": "7adf0070125b2c61e04d46c5f1cbf57af079eb733799bbfcc3fe9b0551d964b1", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/REPLAY-SOURCE.json", + "git_blob": "4890f180c7dd30a1527bb3cc39863c177f553a52", + "sha256": "a5a290aa8c75fffa45c9ad2e3441d5051d3adaf7934f4d0311875fb4d8f023cf", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RESULT.json", + "git_blob": "66b084900c803ecb2bc256ecbd1e942fe38e10b8", + "sha256": "62aca8286cbb021d2535d81494f7ba7a3aec20898fd7c40a895a461bbd303ac4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/STAGES.json", + "git_blob": "7a61aea81b3f87ac3ebd5a8ce9568195fe911fa2", + "sha256": "0dce559b2a8f371f369a05ae25ca5dd6a48019b5685b0097f001a23bd849429d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/WORD-RECIPE.json", + "git_blob": "2d7a2cfe11f660c0199934fa5f222d8293da7ee2", + "sha256": "b6750c8123c205b63786fb825da26a819592f71736a82009809ae1cf96173a5c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/local_controls.py", + "git_blob": "e0e5d0e8e4a0581e9bc4ea6cecc8db5b756212f4", + "sha256": "fe3d13491fa7523eedb8d24577ffe4bbd6c36a87b4a7d1178e5795d223bed4b8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/native.py", + "git_blob": "fb9f676e5d2aa62d1a14a0d1358aab6ca0d5cd59", + "sha256": "1fb596fbafdb19140f483cd34db2994c571e3b962e33b8ea9b3ddc486e37def6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/package.py", + "git_blob": "9e911fe8116f1ec3ba16c7a0823ab928bd281f47", + "sha256": "cde0b2d66125649ee84440fc0a67f0d91f900fc838fbda069b579422289ea3be", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/prepare.py", + "git_blob": "596920d5ba5fd316d1a68f2bc3e428c319f2d62c", + "sha256": "9fe454a5f857ff73c70a5b276bc9e289422b051a4cbbbb51123a91bb2200e6d8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/price.py", + "git_blob": "0903bea57b9f7efa9e3970910f02a890b2187ea2", + "sha256": "d45042f4c1fea352349377b43def363cf75a742546a1d5c790ad30da91791803", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/JOINT-WORD.json.gz", + "git_blob": "3dab3a16bb32b27c6d957586cca04d70d091db47", + "sha256": "a0622d86259c4163e58cf0677ce575b6039a8ae4c95aa6d8b82a8163cbd42718", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/NOTICE.md", + "git_blob": "af0170afc225c1a6a5e7ad4ba62cf7897af6ca24", + "sha256": "afbd38d6c8a232ea566c296424a86420f204e6cfaac565c0a147340bda3d3da6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/PLAN.json.gz", + "git_blob": "c7d39df72ea24e732800923ce699ca977f16d0b9", + "sha256": "e963ed64b9970858902b9388bcf1c5f9cc704859ad021ce8bda465a4dcef8310", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/SPEC.json", + "git_blob": "9aeea5c043aafa9ce0cd5f05fe6b404de5d5454f", + "sha256": "55bdb68d5d126c6be0e0acc419bd62301a978afd514f9834ed1e08b1aa4f563e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-coordinated-owners-NOTICE.md", + "git_blob": "281e6404ca84bb24370e8807315d59d42e79d232", + "sha256": "442756fc1c5ecfd7b7b7694b53b1ecc70aa525004cd80f7d748ccd7270555189", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-eight-ends-NOTICE.md", + "git_blob": "a756f9da585be2ae9054038812cfcafa31e625a4", + "sha256": "820fa13161f857c221f2c4099dd2985c7ff72249dc7a0221bc00fd0c1b9760e5", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-eight-ends-t16-NOTICE.md", + "git_blob": "d0359f2e08e6a0f2a1b6df0b058231996949c3a7", + "sha256": "a9e85b59dde61fbff0b006923b441cbd1419e24fa9802426785bca667437fdc0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-three-demotions-NOTICE.md", + "git_blob": "9f759cfade4eb3645b1db7374d4ddfa3f2bc3b30", + "sha256": "a0fe85fb2207f0e6831a96deaeefb65afa379c1377a29f0b586f1db4bb4b2137", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/verify.py", + "git_blob": "4802312b5298dab29b748ab81a6e5ec5b7aa3b5b", + "sha256": "e5c952989344a65b7e63fa112dda4d464979814205644a8ec34e407a0d96be29", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/verify.py", + "git_blob": "178a101173f582f3e5d6266895007ec285000546", + "sha256": "358ad8dfd967f4fd69a0cc298eae3508ad8b57b1e419ebaa0d621e199f534345", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1297/x54_controls.py", + "git_blob": "e80ee4b552cde4178286520d497140aebdbfab06", + "sha256": "82f91b81be9173dca546345dbdaddfc71e6d21e626fb84a8b4d1b4ba0d673814", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ALGEBRAIC-STABILITY-INDEPENDENT.md", + "git_blob": "abdd30cc1d6df2c41b9e8fda76f27f85200bbf9b", + "sha256": "7873e7d9a99fdc9de3ee224b9925d3e277e9773d7f5f8c2d0f1c19b0e52bc87f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/BILATERAL-LDU.md", + "git_blob": "5cad6ee19f60d626beb9f6d7be78cbc22fdd08c6", + "sha256": "0d65e66d227464dda1a19f781ae0a0be671cbfd347c41e37ec954f3d629d8a77", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-GAUGE-AUDIT.md", + "git_blob": "a2d1c5ae923db7649627dbf419434e36267e57c6", + "sha256": "1030a34922709ab8d3434a4c57a4a58934ae268c237fb598cb415697da411c9f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-INTERIORS.md", + "git_blob": "62c3fa27b61a648c65c9e3f6fc4dc95d7b05bd3e", + "sha256": "983c5cab2d2398f2192a8aec07daecb655f2de136e12a37f75672a14d27172ba", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-OUTER-ARITHMETIC.json", + "git_blob": "56c871f4f313e828246f958868738997e1a3e176", + "sha256": "22caac9ec2ecf4d5743b7eb946b633911fbac55a714399556e87e2eae0457dec", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-SIGNOFF.md", + "git_blob": "fc3456387b9399c8108db75b46088f85c5c26f82", + "sha256": "70e9175ebde200f8b016236adc88c4a1c4858945e7c3e5c453a8b6a5f79a263a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/FINAL-PACKAGE-REVIEW.json", + "git_blob": "66a4af697e89b0bd5ed6fdcbab12d811a05ae26f", + "sha256": "3457385de52d8e86853d96026a70aef2e8dece516db9eea020d8774e01d076a8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/FORWARD-SMALL-A-AUDIT.md", + "git_blob": "0f7f80b3f74d469c2f72f3b9f338d32568b4eae3", + "sha256": "e37aaa30b15671a1dff00676b14572213efaaac99df202dbba5e09f57af487c0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/HALO-THEOREM.md", + "git_blob": "60d59bb3780c6e56e51d796947998d3d99cca297", + "sha256": "cb9e1da38400b658f9209e465b4e5896fadd17dc66afa862f38bae8d8c1f2058", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/INDEPENDENT-FINAL-REVIEW.json", + "git_blob": "121a4ebf87c6e2d49b82cf20c5a8fdcbbf073271", + "sha256": "6b98e5222aa109a35be8b4fc9ec19669daebcc06d542ecec0a9c820da7930501", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/LOG-A-PHASE-SCHUR-AUDIT.md", + "git_blob": "3bcf490a8c164d44aff5b7e2ec2e0f4bf07d7a73", + "sha256": "e05d6b8596c80b6e8676569a0ff464a29fa704c3304143f58914f47cdf38b272", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MANIFEST-UPDATE.json", + "git_blob": "423d53d1eb1a01a7aa49d16d498f422f8a2b6dc5", + "sha256": "32c58bcab8e19ef895660331c13d31b5fae7d0c95f7cda4147870f29d8299f6d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MANIFEST.json", + "git_blob": "02f55a73512b0acd92e8c6713f55806f578b6eb1", + "sha256": "9af581d640e9c69d513256cf69babb0717287642134cfc807cedcd79966c1706", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY-ARITHMETIC.json", + "git_blob": "54ad0ed498acaa61a64c4330228548e724856705", + "sha256": "c6efc4d2f6d17159cefebf5c2dd6099a6327fe0911c5dd87623cad96c7d6c56a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY-REVIEW.json", + "git_blob": "fea12fbe37096afa9fc49b1d96c86960a405fd06", + "sha256": "5cd5e97f93a9b3e439bfeffb52139d7bb1730de96ad13b59b7e1b20fdca6a3f6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY.md", + "git_blob": "f08bb57f9c33a4b9bdca9eb8f6ea3c0862cd56d5", + "sha256": "2d7fb1088e58bb86e574277733e082f135362215a69add71d9090213d32c9221", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-LAYOUT-CONTROLS.json", + "git_blob": "aee3270196daf3dd9a2aced0a064402ffeb15189", + "sha256": "f8bd8729cb8438188e90fb9149f598b825461c97b4ed290584ca4367f812a48a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-LAYOUT-SIGNOFF.md", + "git_blob": "d683e4d495330a2310e31b07c7dc896390334468", + "sha256": "4c8c62f723232e842dc3bbdcc4defcc8ff1aeb86ba9f694661899dc6783b13c4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-SOURCE-CONSTRUCTIONS.json", + "git_blob": "65880dc95cf6e5290e259b42da9e9c8cde5710c6", + "sha256": "114c1d8fb70592455a80c73d8a1bc6bfc9aca4e7395a420b6331d5474b4d1917", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-SOURCE-COVERAGE.json", + "git_blob": "c6275bc1cb7456fadf6d9e86a1f9806942fc0826", + "sha256": "fdc6849f97999a6cf99cdaa50591d24f78d6fb0bc580315f205452e5906b35cc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-TRANSFER-MANIFEST.json", + "git_blob": "5a943f0fd6c14649dc1b14267a8695940f3e7cb8", + "sha256": "35d98d7579a16dae36530b4e5f4d0b8f925a069daa3f6fe1ea5276916167e0c2", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/NATIVE-RECEIPT-CAPSULE.json", + "git_blob": "1a92c59d2bb9b2093d76c1205d3c805afa351d07", + "sha256": "a04d6bba3d15c11a219536b66a23012797484ae106ec1952ecd7b76f077ddb01", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/OUTER-ARITHMETIC.json", + "git_blob": "3ea510f01022328521f976719590afebaa1d7e7a", + "sha256": "050c61d90236c593fd0827d7edc297e05604884e4ec093659aee46a9ee336020", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/OUTER-AUDIT.md", + "git_blob": "974b8db67f4f556bddd55904f47ec145c629f1e6", + "sha256": "94799bfa2794eb867d6ba68593c3e92988ade083e74d895e8d07ae3b8d0670dc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PACKAGE-MANIFEST.json", + "git_blob": "c3977299d4e6e9ffefe29175307aff6a716786b7", + "sha256": "298f1eaf79b5d5d57cb96fb3abb422174b78c31c14491a878f6176431d731d04", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PHASE-LAYOUT-AUDIT.md", + "git_blob": "bbeeee7431720817f031360f67b2186abac5cd23", + "sha256": "54aafc7afd09fe1a5312e69fad09c87422690543ab75c6ae35f6cbcc26b3eb8a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PROOF-AND-COVERAGE.md", + "git_blob": "1a98011b1f36a90ac0b7cfa4209480d46dd993ef", + "sha256": "db7509d754bb7fc3381419e0fed2674f22a9d57d34e8420fd5afa3c688fde9aa", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PUBLICATION-CHECKS.json", + "git_blob": "befac935521198bfb3a7629014e417fcd93263ee", + "sha256": "6e2fb68e6768c3aa4224aacb4900263586fc8114815a51df40f3f9fdf6124217", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PUBLICATION-SOURCES.json", + "git_blob": "3f760bee8af56d71b3d0ab741a6c9f5431f8a4b6", + "sha256": "6082583794168b1c2320187214b86c93a5a6e76fbbddfcb3bdbb8c5bd34c0586", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/README.md", + "git_blob": "f7f3348ee367ac0fe2a92cc48ca599869b49e306", + "sha256": "91af88b8fc53a22e1e968908f0e449cdfe2154c83f0dddb8a504e661c0c6965c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/REVIEW-RECEIPT.json", + "git_blob": "2521d02ada6149298c563b176db404600470d468", + "sha256": "97b20e50d3722fcde3831124a107df6c15c0ffdbb9e057b7867f41aaa2481800", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ROOT-EXACT-REPLAY.json", + "git_blob": "4f80ff6ecc683405d0d4ca680263cfcb5dc8567c", + "sha256": "d36114abe9d7a83c327f49f5ea153c6dcada4a7421f5e74a9a5ceb392cecb994", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ROOT-MATRIX-EXACT-REPLAY.json", + "git_blob": "bd509b837762e520991e1573d5458fd537453376", + "sha256": "d6bd4fcb8a528655181b4aa3fd1bad7e6647a4ca5aa76ee7f2cdd800b698b225", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SHALLOW-TOEPLITZ.md", + "git_blob": "bc4349b2daea548ffa09e1f38a31f1df86b0b7be", + "sha256": "b384b93f3fb4a8c97da2e617ebc14d55cebb0a739070e7f8dbb66f63e24e9310", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SOURCES.json", + "git_blob": "a5d007aae193a5f8e7b683c041b2e7428a18ac75", + "sha256": "14ce6fdc7c83e18ccf4fee19ff51062726c960ca44462a45af60dd686167d456", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SUPPLIER-SUPPORT-AUDIT.md", + "git_blob": "72404c42d77d4267105e8528cecff3327dfdd38c", + "sha256": "bd5b06eca043c5c871227264f6a954473c55cd16ec85bb420ff538fb8ec1d8d6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SUPPORT-ADVERSARIAL-AUDIT.md", + "git_blob": "80b2afa7433b3139ac926047012658ea500b4a5d", + "sha256": "b1290f8720bf075ea2ad58d6070f3e1fc95c0155f8e33b165bc13439bbb9222d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SUPPORT-ROUTER.md", + "git_blob": "4f39fa9eaf553d1df5111de8c19bcf5bf9829c2b", + "sha256": "6ddb322e11883c1177ba6cd1a77d23a1dac827d7290b32eaf642457b1d762a54", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/TASK.json", + "git_blob": "8fc25b910b36cff54f3b369a83554fb9aabd5b04", + "sha256": "47b82ef23e20991010fae838ad4da9bdac3f947a8fea916a028fd6260f95f5f8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/TENSOR-COMPILER.md", + "git_blob": "19efb9cb1c5a738e57caadf2dd6f5611af1bc78a", + "sha256": "4d3b8466598a864a234b978e25976648d4e761840aad9153dd18d73d3dfe4d15", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/VERIFIER-NEGATIVE-CONTROLS.json", + "git_blob": "c288e50942c6fe5f67467e238a4f1fdf5e52eaf3", + "sha256": "eeb887cdc0c76426c75ddbfc3d4af7ccbbe19d17962c6ad7a1549dafe8dabb5a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/VERIFY.json", + "git_blob": "964863373c631a35a7554569b3ff105063491c7e", + "sha256": "cb50aa523a0863a457181ca815e69a1b3b4d91ed1006a79263f4a8f18457c669", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/check_capped_outer.py", + "git_blob": "83223e0a2b66ef58a3f46ba2efb7d5cb1bda165b", + "sha256": "b4555c77de7a3ed4abc708a8d93363ef7c9a914be1091f80ab3ddea83f71230a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/check_matrix_corollary.py", + "git_blob": "3f543803d77360b57e47053097a10892fa6c960e", + "sha256": "30db2d8e0f40fcc5c91e25f74cdc54e46aa4a0353c725345f9bcf5744e0b617f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/BILATERAL-CONTROLS.json", + "git_blob": "ed4b620d8a688a3b1e88975f1f62ca103470dfcc", + "sha256": "eb3ba38d18bac4aceaffba39ef48dbb55bd15e6abcb68cdf66920d9d13ec00ab", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/BILATERAL-LDU.md", + "git_blob": "5cad6ee19f60d626beb9f6d7be78cbc22fdd08c6", + "sha256": "0d65e66d227464dda1a19f781ae0a0be671cbfd347c41e37ec954f3d629d8a77", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CAPPED-GAUGE-AUDIT.md", + "git_blob": "a2d1c5ae923db7649627dbf419434e36267e57c6", + "sha256": "1030a34922709ab8d3434a4c57a4a58934ae268c237fb598cb415697da411c9f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CAPPED-GAUGE-CONTROLS.json", + "git_blob": "6ea5c59eab94d7dda4f94777dce3ad1bef8ae9e2", + "sha256": "ae8f0eb121a2f4da5c3f982ee6e7f45dab7b18368cadb5d2060602b0393b7120", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CYCLIC-SCAN-CONTROLS.json", + "git_blob": "eddd860c96ad622a1b0240140cf868e01a0db4c7", + "sha256": "4c37249f12b4cb4df847d179df8f378fbf1f42917e9fa703b2d847146f29b95c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/DYADIC-INTERIOR-CONTROLS.json", + "git_blob": "e42eac6b9378173dc747d6e3cac50ad12053b39e", + "sha256": "afbaee9f56f6a66fd9421bba7dfa8c3610c12bd447b01d0e9d79f97d1216aa90", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/FORWARD-CELL-CONTROLS.json", + "git_blob": "c74f1448865006cc2b7445c28b9c6a5410aa515b", + "sha256": "4417a518ba3b6833f06b4f5e33d4f73ea74100b9110cf20e8d1c2070f1833fcc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/FORWARD-SMALL-A-AUDIT.md", + "git_blob": "0f7f80b3f74d469c2f72f3b9f338d32568b4eae3", + "sha256": "e37aaa30b15671a1dff00676b14572213efaaac99df202dbba5e09f57af487c0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOG-A-PHASE-SCHUR-AUDIT.md", + "git_blob": "3bcf490a8c164d44aff5b7e2ec2e0f4bf07d7a73", + "sha256": "e05d6b8596c80b6e8676569a0ff464a29fa704c3304143f58914f47cdf38b272", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOG-A-SCHUR-CONTROLS.json", + "git_blob": "301815a2c53ef601ba37edef3444dff524be2e69", + "sha256": "046191420a24d8b2c063c190af5e954c85e39357902988c4df79f5abcdf1596d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOWER-CONTROLS.json", + "git_blob": "df9fc504c1dc3fa5fa16c08b8d3d7495b1d1f5b1", + "sha256": "323cb4acae960a6fa05527df5ede9d48e274883272b8ddb5151ebcee6dd26e52", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOWER-FACTOR.md", + "git_blob": "35af6c7b992b2a15bb1cfcbf7e659eac7a44df99", + "sha256": "dbc7eff783695e0f50fec57b0f7ca4212d51428eea04fa2ae5e0a9178fa69b30", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/README.md", + "git_blob": "0aade2884001193f515ea9b2a929f5d28e48fadc", + "sha256": "8fb5321b514af9260c44e150125205fe564efd073c456214f76bbdb358279cf0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-DATA-ALGORITHM.md", + "git_blob": "f07f2c68c796baf7d74ce173734b14d96501ef08", + "sha256": "46b98b9c013dc5a94c9f17fd85acd7c1896c8e93ad2ee4a7c34f583895f1daf0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-DATA-CONTROLS.json", + "git_blob": "0d9410b6a84bf1c33d1bf9d4e4903dc4f0f7389d", + "sha256": "c9e6fd7f338f2cb78a0ed15ee944fde63549ae3d8522ab0874d184f3e252db76", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-LIFTING.md", + "git_blob": "0985ad16cd6aff039efa64b5d4ab15e6d96f2d2f", + "sha256": "69535a48416a5435ea2a5ef4ecfe70fde30c32c4043bfc56f1ae2d7f49cd34bd", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-MERGE-CONTROLS.json", + "git_blob": "7e851839f8d6939ad76a39d67d6c62e7f7d4bcbf", + "sha256": "c5729bdb36237c0691fba56d149019f78d94e996749532d907a84c35ef01319d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_bilateral.py", + "git_blob": "b2f527e951f42c87a0ebb068f845d549934787f4", + "sha256": "8d5c79bd4f4c96de5c1fa91553b19e3a62419333b414fc84dec894a4b729d5e0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_capped_gauges.py", + "git_blob": "d6f5a14cb26c04ab3feb728430005808e56613fa", + "sha256": "121279bef47dd490bf29fc72ddbce547176cdaf1154af67dc8b96d7baa8cfc6f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_cyclic_scan.py", + "git_blob": "7f8ebba6aff2d2c1a214091068be921fb1005cf9", + "sha256": "d25156f852cb95f013e0ee74b319fc8c20d6a7a53fa851543244d5af7898ee61", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_dyadic_interiors.py", + "git_blob": "9a970cb94ebe1f33f095c1b6e01e90b2bc6577e8", + "sha256": "a39617147870719a0296eef77101c90df8fbe716841cb9ed823f36b94254c3e1", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_forward_cell.py", + "git_blob": "b91b7a6bad7a25fcfd34e8d21593d5064d3df464", + "sha256": "082a0e46c175f6e59fe1f8c168ca56bc444c71a602c9b7318c0834aae1f2de90", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_log_a_schur.py", + "git_blob": "1fae3a6aedb73fd6e1129ac7b6972ef06b8a64f5", + "sha256": "a0f1116ce27ecbff18de7089ce1f56714ed7966dfa0105b20419d408feb7ca41", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_lower.py", + "git_blob": "1260c26dd135fdf69f9ca2f3e5038c32a366ce31", + "sha256": "027c77d8ce33c3d5e3c436234668f11bafc3de8658b9c3d03d455eb0e4d71f95", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_upper_data.py", + "git_blob": "ad06229d8448809d07f0d1bdfbef5b47baa3b0e9", + "sha256": "de4f9df64cf31e94adb9a5d04b38d53d823d864f51632c49c7c80c6a46b5224d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_upper_merge.py", + "git_blob": "3dda87e1446a6a91a33c174a5942e6714689603e", + "sha256": "95c9908134905e3ebdd030375e36a942c886cfc59edde3c6a419f36da6754780", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/EMBEDDING-CONTROLS.json", + "git_blob": "01430d219b86ccd931705963ab1d80a27a87766b", + "sha256": "d0182e172f16b55ec64a5edfabb10816e416348ef2db15449f3ed4b47f3fec1f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/HALO-CONTROLS.json", + "git_blob": "426d157fabbe68ea4bd7df21dc296ba067638a9f", + "sha256": "ae370f7d7421f2f96e101a4b9d8082110507c47211220fd6ead065c2366aa828", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/HALO-THEOREM.md", + "git_blob": "60d59bb3780c6e56e51d796947998d3d99cca297", + "sha256": "cb9e1da38400b658f9209e465b4e5896fadd17dc66afa862f38bae8d8c1f2058", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/MANIFEST.json", + "git_blob": "48dbb2a6bf7709bfbebe48abae0daafb8a841712", + "sha256": "37946d7691b90d39906d93581839bdf8ae2cf899d459e5520c39e782766e9327", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/PARAMETER-CHECK.json", + "git_blob": "5844ead5c04309dcd13b351f815331597c7b07c8", + "sha256": "e38cdfc13f1959186d888383458c9030c4bd3c8c3915aea4743d55637d2f8d76", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RAGGED-CONTROLS.json", + "git_blob": "553ea1a36abfa9da438dc5ca89835d55035553e1", + "sha256": "c3688f65565486b585727374abfbe478f7544aa61381bd73cc6ffa168b4221b6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RAGGED-PERIODS.md", + "git_blob": "fdfe26d197825b5f9a6fc251e4499d8357027bf4", + "sha256": "c6e4dfe7f58dac7c5a513ffb3a9ab4801ab0717efae5c1e764e570335402ff25", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/README.md", + "git_blob": "5c9951a6de92e24db16af5634e0e063b6a9b7861", + "sha256": "575a3acfc18a0e05ffe04a8563318a2770ce32cd7bf3a5e6123ce2de39a1cd4c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RECTANGULAR-EMBEDDING.md", + "git_blob": "191867c72e8f161ac5b2feb9b673275b3aa8ce15", + "sha256": "e64447bff7e7717802ee049290faaf29e45db3e36a6f7fcec109184478f15f26", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/SPARSE-SHEAR-CONTROLS.json", + "git_blob": "7fdf29495bde5099c6d261e8260ff9b7bedb7e1d", + "sha256": "d3b9763f7ef6a3a5752c6c11a8a4d5f465646ad75b178a1c1b3363540fcc4871", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/SUPPORT-ROUTER.md", + "git_blob": "4f39fa9eaf553d1df5111de8c19bcf5bf9829c2b", + "sha256": "6ddb322e11883c1177ba6cd1a77d23a1dac827d7290b32eaf642457b1d762a54", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_embedding.py", + "git_blob": "54556ee93de27191e0a0656f3ba66061ef554a9f", + "sha256": "597cb5304498456575c99d46a7fb503e04db28d5a7f57857b102b50f703b7464", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_halo.py", + "git_blob": "ddbcbf4d34fd6999c7e8dd139fae729e9d1cf9ff", + "sha256": "0a3257cbb8f37b6cc9bb44019cb114ea2ae9b28738a416bff4bc712d1306e1b7", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_ragged.py", + "git_blob": "4665063452e490507d1107ce1c054387e73172d4", + "sha256": "54b761cfe3404d524af3a2abdf09bcea8dfb5cca6199c0c182cee310e3ca8c78", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_sparse_shear.py", + "git_blob": "86c8d091b5d61bffce149daf64cb774f591df1b4", + "sha256": "6e22c989e6bae92c4cd209c9336aad4359956cf370bdbd5f6b70609144598121", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/CORE-SOURCES.json", + "git_blob": "59c53cc92ccbe2f341ef866cafb035f992687e40", + "sha256": "2546f47dacc47c2d63dc5bb9cc52ef86c5e02ee159c4fb6e00dfac3f8f34d89c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/FINAL-REVIEW.json", + "git_blob": "121a4ebf87c6e2d49b82cf20c5a8fdcbbf073271", + "sha256": "6b98e5222aa109a35be8b4fc9ec19669daebcc06d542ecec0a9c820da7930501", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/core_review.md", + "git_blob": "6a5ecf4229d6d654457e55d7c157a09230705f1b", + "sha256": "13f2df4d5b240f9b89ca0ae44bba198c935532098ff4c1161631fcbd86b3e8b1", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/gaussian_layout_review.md", + "git_blob": "c77b9d14172185b970f11e13af3f7b226c0e96c8", + "sha256": "ebd7188970f55b5979b1b1a13f874a31ed0ee6c82bee329e7ad0b2a38c42c430", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/layout_subreview.md", + "git_blob": "3d6bc924edba0e0eb4a60f3c6bc5b87fecc50790", + "sha256": "637e4698a9fb02978ebc4032d8939ce0db9528e89e908c94d63b9f0d2a41f64a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/union_subreview.md", + "git_blob": "04286a6198b050bd184be8afef3a85402b3aef93", + "sha256": "738b35a04d6871cd73b14b4165ae69a1feb3a103eb46e064a64a22c4c7426856", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/CIRCUIT-REPLAY.json", + "git_blob": "fd24b3451dcfc24afa28719b6713d05931956011", + "sha256": "2ce5cf9ef9461e5897374ad389c26af66aeee85e8f514a9da4ed3bb2028cb1da", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/EXACT-ALGEBRA.json", + "git_blob": "7a776857072df3c9c283a3d067b83cf545ccf7e7", + "sha256": "694898bfb1afcb3b8b8ef951634ac8919decdde0904350b355d254601ae3dc12", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/MANIFEST.json", + "git_blob": "4019fbc32f22b278a2c8131edcf2534937af039c", + "sha256": "3b018dc660c6add775c12f75b9e8f5281825aeebc3888a508833ce6106c1229b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/READING-COVERAGE.json", + "git_blob": "3c49e7f78b40e7cb35f93aaced3316869d46d101", + "sha256": "756e52726b161eea27e27f1d519b05d4fb0ebf67ef9a67b33947194d5d02b709", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SHALLOW-TOEPLITZ.md", + "git_blob": "bc4349b2daea548ffa09e1f38a31f1df86b0b7be", + "sha256": "b384b93f3fb4a8c97da2e617ebc14d55cebb0a739070e7f8dbb66f63e24e9310", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SOURCES.json", + "git_blob": "0b386bbec9c76fc2a195f413593402342b3d0bf2", + "sha256": "fb3771f66771250aa9f4406ae9e7eb176f9cdef03976cbc9558440c674a4a94a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPLIER-AUDIT-SOURCES.json", + "git_blob": "eaf9076b75b55785cabe8a698126df300a498f30", + "sha256": "d0c274d6edd6193b09d28e45e7cbfe9236fb35474d35ea3af0664ba36f9e006a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPLIER-CAPACITY-CONTROLS.json", + "git_blob": "adf689ac5fc5f990b965667f4ee096f6db9909c2", + "sha256": "6922b7d7a936d53846569ad3be53fe4f3c63d6cfe794f9279fdc6a1fe411ef0c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPLIER-SUPPORT-AUDIT.md", + "git_blob": "72404c42d77d4267105e8528cecff3327dfdd38c", + "sha256": "bd5b06eca043c5c871227264f6a954473c55cd16ec85bb420ff538fb8ec1d8d6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPORT-ADVERSARIAL-AUDIT.md", + "git_blob": "80b2afa7433b3139ac926047012658ea500b4a5d", + "sha256": "b1290f8720bf075ea2ad58d6070f3e1fc95c0155f8e33b165bc13439bbb9222d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/TENSOR-COMPILER-CONTROLS.json", + "git_blob": "80cb2c8083f4a853296be0b2a1f0675e0356e6ca", + "sha256": "db8a5c0dc2be956d83bc7667177252a4968e0ffaee8352e6a5dba5ab983d7ada", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/TENSOR-COMPILER.md", + "git_blob": "19efb9cb1c5a738e57caadf2dd6f5611af1bc78a", + "sha256": "4d3b8466598a864a234b978e25976648d4e761840aad9153dd18d73d3dfe4d15", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_circuits.py", + "git_blob": "f80c141c8116b163c2bb5a028c28212077c8d5a9", + "sha256": "06d1861bfe8af543908e26557ffda7e451ff176bceb9bacfaf0f04f234b336d5", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_exact_algebra.py", + "git_blob": "4f0180c88f6ea25b85814883ef7cf2ad41e67110", + "sha256": "5ff7f25c55b370a1d0cda6c84ab9cdf2c7b0de3266d3f2e7a43280a6491074ab", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_supplier_capacity.py", + "git_blob": "65b20b8b686b53fa9bfbd6734e09128e78aeab84", + "sha256": "035ed96b39414eadec46e8de4bf3811b785862fd313deb044f42e17cf2ad3f78", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_tensor_compiler.py", + "git_blob": "5eb5c1ffd23932ba7ccaa0d7686a5b875a3b1809", + "sha256": "dc4b1f1884489215a2c2d0e8978a241e99e6c8c9f1d2fa2460c73d2c7d4ba30a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/ALGEBRAIC-STABILITY-INDEPENDENT.md", + "git_blob": "abdd30cc1d6df2c41b9e8fda76f27f85200bbf9b", + "sha256": "7873e7d9a99fdc9de3ee224b9925d3e277e9773d7f5f8c2d0f1c19b0e52bc87f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/MANIFEST.json", + "git_blob": "5a943f0fd6c14649dc1b14267a8695940f3e7cb8", + "sha256": "35d98d7579a16dae36530b4e5f4d0b8f925a069daa3f6fe1ea5276916167e0c2", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/PROOF-AND-COVERAGE.md", + "git_blob": "1a98011b1f36a90ac0b7cfa4209480d46dd993ef", + "sha256": "db7509d754bb7fc3381419e0fed2674f22a9d57d34e8420fd5afa3c688fde9aa", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/SOURCE-CONSTRUCTIONS.json", + "git_blob": "65880dc95cf6e5290e259b42da9e9c8cde5710c6", + "sha256": "114c1d8fb70592455a80c73d8a1bc6bfc9aca4e7395a420b6331d5474b4d1917", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/SOURCE-COVERAGE.json", + "git_blob": "c6275bc1cb7456fadf6d9e86a1f9806942fc0826", + "sha256": "fdc6849f97999a6cf99cdaa50591d24f78d6fb0bc580315f205452e5906b35cc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/check_source_constructions.py", + "git_blob": "c8e362e90dc6c73758599a0b2094b11c8fad9bbb", + "sha256": "9d387098403c0355be8e93158df02bae5a435b2366bd28efdf0b127e470c8c1c", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/CAPPED-INTERIORS.md", + "git_blob": "62c3fa27b61a648c65c9e3f6fc4dc95d7b05bd3e", + "sha256": "983c5cab2d2398f2192a8aec07daecb655f2de136e12a37f75672a14d27172ba", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/CAPPED-OUTER-ARITHMETIC.json", + "git_blob": "56c871f4f313e828246f958868738997e1a3e176", + "sha256": "22caac9ec2ecf4d5743b7eb946b633911fbac55a714399556e87e2eae0457dec", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY-ARITHMETIC.json", + "git_blob": "54ad0ed498acaa61a64c4330228548e724856705", + "sha256": "c6efc4d2f6d17159cefebf5c2dd6099a6327fe0911c5dd87623cad96c7d6c56a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY-REVIEW.json", + "git_blob": "fea12fbe37096afa9fc49b1d96c86960a405fd06", + "sha256": "5cd5e97f93a9b3e439bfeffb52139d7bb1730de96ad13b59b7e1b20fdca6a3f6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY.md", + "git_blob": "f08bb57f9c33a4b9bdca9eb8f6ea3c0862cd56d5", + "sha256": "2d7fb1088e58bb86e574277733e082f135362215a69add71d9090213d32c9221", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/OUTER-ARITHMETIC.json", + "git_blob": "3ea510f01022328521f976719590afebaa1d7e7a", + "sha256": "050c61d90236c593fd0827d7edc297e05604884e4ec093659aee46a9ee336020", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/OUTER-AUDIT.md", + "git_blob": "974b8db67f4f556bddd55904f47ec145c629f1e6", + "sha256": "94799bfa2794eb867d6ba68593c3e92988ade083e74d895e8d07ae3b8d0670dc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/README.md", + "git_blob": "c9bd9bfd6f4da8bbb6526b11eab265ab1fc1b6c5", + "sha256": "17c393075292b364899cb7c451cebbc9b20834f9fac934ce3740aba360c27246", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/REVIEW-RECEIPT.json", + "git_blob": "2521d02ada6149298c563b176db404600470d468", + "sha256": "97b20e50d3722fcde3831124a107df6c15c0ffdbb9e057b7867f41aaa2481800", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_capped_outer.py", + "git_blob": "83223e0a2b66ef58a3f46ba2efb7d5cb1bda165b", + "sha256": "b4555c77de7a3ed4abc708a8d93363ef7c9a914be1091f80ab3ddea83f71230a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_matrix_corollary.py", + "git_blob": "3f543803d77360b57e47053097a10892fa6c960e", + "sha256": "30db2d8e0f40fcc5c91e25f74cdc54e46aa4a0353c725345f9bcf5744e0b617f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_outer.py", + "git_blob": "2bd3f6eb683536e41a81a9262184ecf54271eac3", + "sha256": "6a0c5f8956323615df8bc4b12996832471c0ae607d05429c9d70ad1b50568f10", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/AUDIT.md", + "git_blob": "bbeeee7431720817f031360f67b2186abac5cd23", + "sha256": "54aafc7afd09fe1a5312e69fad09c87422690543ab75c6ae35f6cbcc26b3eb8a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/CAPPED-LAYOUT-CONTROLS.json", + "git_blob": "abf64123d0cdf5f481f0aeee5d5d31e7a401e6dd", + "sha256": "e6951790238b4998c632c95aa329ee2cd2527a5d74a2f28bd15249fec6d2419a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/CAPPED-SIGNOFF.md", + "git_blob": "fc3456387b9399c8108db75b46088f85c5c26f82", + "sha256": "70e9175ebde200f8b016236adc88c4a1c4858945e7c3e5c453a8b6a5f79a263a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MANIFEST.json", + "git_blob": "1fd05118b79b891358832cd732c8250391c27c2d", + "sha256": "c98559147bb498ac78af998eed63ab6661af934fa1a0df6844176b1811753fb9", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-CONTROLS.json", + "git_blob": "aee3270196daf3dd9a2aced0a064402ffeb15189", + "sha256": "f8bd8729cb8438188e90fb9149f598b825461c97b4ed290584ca4367f812a48a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-SIGNOFF.md", + "git_blob": "d683e4d495330a2310e31b07c7dc896390334468", + "sha256": "4c8c62f723232e842dc3bbdcc4defcc8ff1aeb86ba9f694661899dc6783b13c4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/PARAMETERS.json", + "git_blob": "8c2a235f4beea23d8a1fd2994cb8941818ef9649", + "sha256": "9f72cfffa34844764ca65a6b4431cc5c779141751df746019db9d3ad8f1dee92", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/Q-EMBEDDING-CONTROLS.json", + "git_blob": "fca9f1a5566650f306d33b63693806392ffba085", + "sha256": "24ead3534482397c00c23ad3dbbd4e930e02290e00c97765353d8783c6575c7d", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/README.md", + "git_blob": "6075de6368f1059422b877ce43c72d7444e9f356", + "sha256": "0ec721f76dfa943e808afd3c2cc39ee69f1a6e5f4f77ba3c7c1373ad60db25af", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/UNION-CONTROLS.json", + "git_blob": "3607228a6d861228f0051a42b10a8a937eab8340", + "sha256": "6c5262144215cc603bbc3bee93a9a6d9d2318d0177a59115fe560762998498f9", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/check_capped_layout.py", + "git_blob": "ffe617dbb1b90271cc1b2d83dd3c09b343b892bf", + "sha256": "267d93ab5114ec160f88a6e65fd34c9f0696a686c36ba2dd194d6b70fa32a6bd", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/check_q_embedding.py", + "git_blob": "1ec91746fd88c2bb1ccaef52a912d9d7f58d196f", + "sha256": "ac858a14bbaf37e0e412a7ada282cd1586632f52b8a979733e775f50130969b6", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/check_union.py", + "git_blob": "0b3f0af7014dc23d8d80a82c67f2f7b24d3bd1ab", + "sha256": "74608380d72567edcd4470c8d226b15848f9d3a4e5d77d652bdd8963480ab9ce", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/CONTROLS.json", + "git_blob": "48249f532935937a945d14a311f23c8bb144803e", + "sha256": "12d9207e887fda73159a9e2e4776003ca6f905fc3dc45d77ced588a1c9f80cb2", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/ERASURE-ROUNDING-CONTROL.json", + "git_blob": "3e478123e7c28440a0b622eef884a790645494c1", + "sha256": "cceb2ade8ce5e18be3871f771955e38258f5eb4e39790c016aab96d8cf0488ef", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/FIXED-A-LDU-CONTROLS.json", + "git_blob": "b64f5e981c80d7ab9db5742b20ee49cf2feeff4a", + "sha256": "d6bda457fff01e04b6565d84c7bdbac870569a2ba7ef18a1fc8db11b738faf38", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/FIXED-A-PERIODIC-NORM-AUDIT.md", + "git_blob": "ad029e08f181c274466a0588346ebf6803981bd5", + "sha256": "21027a569588922c491b2c5b4f31e01ddb784f1f20cdf48b7d482d0e85b66bdb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/HOLES-AND-Q-LDU.md", + "git_blob": "59d9128d75c57b790e6e602da8b2ab9c2cf7fa57", + "sha256": "c6a032ed495325806ddf491c5c85bc822a7fdd613aff906a7be553960d0f85a3", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/HOLES-CONTROLS.json", + "git_blob": "19ae8f80e344134491b4e970dfe9a294767ea00d", + "sha256": "3f7e98ce524d5fb2ba2f911a350081340215e806ae945abf15a2fa07988ca2f8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/LEDGER.json", + "git_blob": "0762eec5d6417bf737fef60c106a99e51a564123", + "sha256": "87eab0eb334ddc16e50cedbcab56320d2ff056c3dc87d7a5191171bb5a4c206e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/NEAREST-NEIGHBOR-CONTROLS.json", + "git_blob": "d39a91f4cf721ea281a3c517901218efbce12994", + "sha256": "b85eca6098847e7b2f77b49a6c8c35e33cf790bc5dd01b95e1334daef9af47f4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/NEAREST-NEIGHBOR-NORM.md", + "git_blob": "ba090b860b24374449801588d77ee19d6da76c5b", + "sha256": "7955383d50fc59b5c4c4d839c7e4d630add6208a3a233d7372a80309085ac6b2", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/PARTIAL-FUSION.md", + "git_blob": "876f44a23e582da1fd661a9fd129a65570bfda24", + "sha256": "811a3a0c88a90708add5b12fb0a05c25623f0af155010d5dcacd56021c55cba5", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/POSITIVE-TREE-CONTROLS.json", + "git_blob": "904475da43fc1dea9adab31589c94564e4b67c47", + "sha256": "7b31811402ddda4668fe8375f6c90a6047511d50836dbb7cfc7ffcf24fe19a11", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/Q-LDU-CONTROLS.json", + "git_blob": "ca49d46b5b92a85a8b389967ac239ec13eadc067", + "sha256": "370a07aa1a56c656ec1f44d7651dfbe999ad0c19dede9036257cc2f29dc39452", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/README.md", + "git_blob": "7d0b3a41bf0ed48385ddcefc6203651e8959d674", + "sha256": "4d65ea3c8b6a0d5faef819a58c8b8277681d11bed54686e9a7f78de29736e68e", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/REFINED-PHASE-FUSION.md", + "git_blob": "51920b3b76860b82cd9b1a6b9a0735bbd614d9c1", + "sha256": "b4367eac012624f803b3d2e3a72339e050a0071bbec37e6d33b2cf322bd70bc5", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/STABLE-POSITIVE-TREE.md", + "git_blob": "687c668a9d8a4ff2edc748cd1471eb2c2288b976", + "sha256": "ec2f8a1c4273b81217545d2710bcffdd09b5c9ba9349e887b5f7bf6f5bddfdc7", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/SYLVESTER-CONTROLS.json", + "git_blob": "5d6e50b77b063b7ed2cbff3fc08076b0da1c4c64", + "sha256": "198af9f58c2950f17d8b1861ba4566bb2f6a0108a889a56db328fe67f8faa1a2", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/TASK.md", + "git_blob": "db58ed7cfb30d3a17a4bf12f9a4e757da0ef3236", + "sha256": "5eef77fb23f26f5bfb5dc8e376ed25e769924f2b6420ebfc8671e3b2a2f1f611", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_constructions.py", + "git_blob": "2090a45566fc0fc7af4e2b448833a9c4de578b96", + "sha256": "91387c9bd763a5c55c22a9907947bd07b6002f739aa6feedf6d3a02adea1e316", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_erasure_rounding.py", + "git_blob": "1f5f8e821a26903f3a29c9c25b9d40e667b9259a", + "sha256": "486efd4692665a548b94b79877abb76ad13157268f05c270c4e75d8f97700795", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_fixed_a_ldu.py", + "git_blob": "ac7f96cd00f405c6f4347f3906d4510a5048746b", + "sha256": "15134147317a7d789c9ea0ebd71db5ff11e59a20ef140f681d87478977734cd0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_holes.py", + "git_blob": "445102507c74d09161de6d3711c32c8f3b169961", + "sha256": "99c5dc4601ea88b553f52e235d36fba0aeb867e7fcd54130cdb3eb115a9bb0d8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_ledger.py", + "git_blob": "76dfb71e8889b74a4ef64da98c4efcfe4fab5584", + "sha256": "254342c05949e5cefe4f507a35487e0a1ffb7137a60d2b97831d5ad55d7d7ce5", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_nearest_neighbor.py", + "git_blob": "d56f21f6b7d9ab322264a90c7a11b6864bc4bd38", + "sha256": "21bf2be683cefa7a760bf1e1bdaa647f57bf47ab86b13fd7a74e8d650f492913", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_positive_tree.py", + "git_blob": "ebce2a90cf4c7de1a0d469918702e0ecf0b90872", + "sha256": "46db2ce9122ff57bb4eeaa723db1f351891e671a7eaa7bf4fb61f85dafee9e37", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_q_ldu.py", + "git_blob": "63f7d6eab05e16450bb0243a364df8aea1009de8", + "sha256": "ec2589ca9abe71d674ba9ccf81f289b1526f56f3001c48d22977accb1be3e4dc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_sylvester_factor.py", + "git_blob": "02b4b7f2b5a0470d88a9cf64c8c222584f898113", + "sha256": "60b21fda4ff451582087d30222a072eb1a214d531277e92883eaf28221aafced", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/FRONTIER-FUSION-ARITHMETIC.json", + "git_blob": "b168dc71c9880ec3301baaf6f13d0a8654fcff94", + "sha256": "82656563e7c8725f95c4aea7e273805a3d3faf34c495a330f1c91a036765414a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/INDEPENDENT-SUBSTITUTION-RECEIPT.json", + "git_blob": "1f274e375a1b395cfaead42d095354529abd2c5f", + "sha256": "49a8450289f1c1730c7d11d7c1506ad4af26fe9a1f76341f808a3025123e9519", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/INDEPENDENT-SUBSTITUTION-REVIEW.md", + "git_blob": "a95179a0251e5917d5fc5d252bfd751006c4f551", + "sha256": "b48d3e14083829db81336b639a6cfc698ac0dccc76fa2606d11b4be7a968ddeb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/NATIVE-ADMISSION-BINDING.json", + "git_blob": "72d30de3fd9fd80d732245c718e32c19ba250a4f", + "sha256": "ec4e89e0513958c1d553736cd06eedbc5f2aca61b40f92aeade3eb882bf588bc", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/REPRODUCE.txt", + "git_blob": "42c6bb30337dfe3608ed71341a34b858c925f184", + "sha256": "76808b685f1623813658f5b596a4b8191a07e7c0810550f6fada7fb4a4992913", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/T74-APPENDIX.tex", + "git_blob": "78278aea07ac8855447893f08438b656e119e18b", + "sha256": "d053a6b69de2ff4005ee52eb3b673de606326aa0f0e290354675f9f08f915b99", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/bind_native_admission.py", + "git_blob": "af1dad224757d0c5304d65c40642b136536393cb", + "sha256": "166541ca2b7f3066f4c2421e5a9f1886d58e1fdd7677904976261ab2c82b32cb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/check_frontier_fusion.py", + "git_blob": "a8112e3cefdaa5f3c3b49b3afda07555a70176f6", + "sha256": "02f7f9ebf29487331171954c7ceb37ff5315e2f28a9d56096ebbf9fb865c70ab", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/independent_substitution_check.py", + "git_blob": "04ec7649403a8ac3e2bfedb7c53542a73d064fd1", + "sha256": "579bbde41e90792818c2726b38dcab26cf5a2695d3348731e814175146b0a737", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/gaussian_fixed_width_note.tex", + "git_blob": "e7a2c00d4e3804da5242ececb00e070f4a7be8f6", + "sha256": "6f3edb7b238f2b6af4f3e2d98dee90fe6f4ba063a5ccd120422e45c941712aab", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/make_native_capsule.py", + "git_blob": "45a5aeb41716f71ba6d7f0ba3b1159daa7b91a04", + "sha256": "8f342ca212b8d601a11f704042c577c1b088e0079bda04b3065467c2f3c36ea0", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/phase_fusion_note.tex", + "git_blob": "4351a73450dadd043aa7aca33fb6cf0dd01d6df3", + "sha256": "b5957f38c98a68f2584a42cedf91d753180dab438129fdf749b441074f00d4e1", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/full-1661-verification/RESULT.json", + "git_blob": "82475e2c121bf1dabffb0e9f5bdfc07284228ae4", + "sha256": "11c57817a4d43a489010a13af7621d37eeedc398308c036e63a2a97119443861", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/full-1661-verification/STAGES.json", + "git_blob": "80e3d98967f1f885ebff81c4ac465beb1ac94968", + "sha256": "c2edb01a61c03e04bf48e605422ff83c1d304e4d586268959d4ea24b743640fb", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/CLAIM.json", + "git_blob": "b711aa978a37ebe9fe029d3539d2f8a61a7e2cda", + "sha256": "70aacd45f9e6fac8675687cf50da32e0ad4e479d9a5c28f2afd1550311ae8849", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/MANIFEST.json", + "git_blob": "a8eacfa082fe1cbb9e17c4c2eaf89ac53885ddae", + "sha256": "d90d49eaa68e48c6992a07972e736ef4b9cd80274361cbbc1ec980d43f29ad7f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/NOTICE", + "git_blob": "b912ab3bf304ca0afae68a4064d262e9b0d1ccb4", + "sha256": "3918a42010a435782de0fe8c38fab8f7df5d48a375ecf603c2bad1b818a16d6f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/inputs/PR589-EXPECTED.json", + "git_blob": "e293ddc557742637f9f679f083a1a282d87b1b13", + "sha256": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/new/SPEC.json", + "git_blob": "86a3069ee51968bb0e5e95da161d58e4056c86a5", + "sha256": "d6b6a2140f3a61ae8cfdd8b51a1131934d63d2dd8573c1b13eb2b9528f3c3db8", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/verify.py", + "git_blob": "60bb3218f6d1c1b6e9d13205fb9ff9e06246ad92", + "sha256": "93ef0f46e132485da6194587199b8f039e25b1b9f099f93bbdaeac5c0d66de7f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1786/FINE-PRIME-PADDING.md", + "git_blob": "bf9899ee21be4058e4aac0b64bfa67d01ee8ddd3", + "sha256": "47d1b1b4df28aadda3cd6bdeb1fbc47290595e9208cd09c1a1f338520d33fdce", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/vendor/pr1786/NOTICE.md", + "git_blob": "e491b2e587810734a22ab7ee188892313d00a07a", + "sha256": "dcc1adb2461aa93ca62b6a912dbd8b215599e6af8053dfbacb7423b544dd659a", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/verify.py", + "git_blob": "e6553b883ef5569472d73f66ecbf22841930c39c", + "sha256": "d5e7eebcd195f7b6d9e0300c5f452c5ae0e38c5b1bc5df536d8c273488da070f", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/verify_manifest.py", + "git_blob": "8c2441d39202409ffe1c2cb42f197946f7bfa7c0", + "sha256": "723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b", + "usage": "input" + }, + { + "path": "research/capped-fusion-t74-k554/verify_release.py", + "git_blob": "65b4cdef75eb3f713e58b7081f25b630492e22f3", + "sha256": "bd8e9373edfe1062e7d6e8c2dc962fd4b5a4d05272f283ed85be3401a8d9463c", + "usage": "input" + }, + { + "path": "research/frontier2044-epsilon-refinement/CLAIM.json", + "git_blob": "dbbcd3a8af2c124a877c592e42fa1dc31affd975", + "sha256": "e18198322b541c3f69d0c116f422072d521d99e1aa2e31850184b1c732964514", + "usage": "input" + }, + { + "path": "research/frontier2044-epsilon-refinement/OVERLAP.json", + "git_blob": "f0e2fdcbc9f096af78ee8819f2ff2be79b469645", + "sha256": "dcea0d911860de9ea9497dbf6b7d93366f51e80a9e827b7ca37295f4a937c083", + "usage": "input" + }, + { + "path": "research/frontier2044-epsilon-refinement/PROOF.md", + "git_blob": "e71f691e558346bcdcf564deede3ee9b41c665e7", + "sha256": "797fd61be7ce83c8a2da5d15f04236848b51c22dad7e95a8b164f750f6057020", + "usage": "input" + }, + { + "path": "research/frontier2044-epsilon-refinement/README.md", + "git_blob": "8b33b3e7f303e7401d618cb623f4d513249b78ab", + "sha256": "250b1ffb201d830a69a3db4086c87b078c03b9cda7f03cd5ebc65f6ce636a773", + "usage": "input" + }, + { + "path": "research/frontier2044-epsilon-refinement/RESULT.json", + "git_blob": "8e6c2b874117f4df14d7d055e359692823c4e88d", + "sha256": "4a688410fa912633610fe873ef6a7189ec4f01b409748f2a041b87e88a331d4c", + "usage": "input" + }, + { + "path": "research/frontier2044-epsilon-refinement/SOURCES.json", + "git_blob": "91c32d58c054358e6fc24ced539b13c293f880f3", + "sha256": "5bc78e7d451884037743f33ca5341c1e26b445fd723f3bc3bc465f6bea5215d8", + "usage": "input" + }, + { + "path": "research/frontier2044-epsilon-refinement/TASK.json", + "git_blob": "532f1a972101734a529d4756e9225f0bd13c0b21", + "sha256": "24bb143301775b63d6ce4eef93a457d20cb9b377bbf7eade10ec84cf903bb315", + "usage": "input" + }, + { + "path": "research/frontier2044-epsilon-refinement/VALIDATION.json", + "git_blob": "25a31af6a7d89500e47a52050c023ef54a409b70", + "sha256": "f86ee2e6cafa63c4393335fc7f0caa1f9a55f4c67e8468d1ceef8e05b9d626d3", + "usage": "input" + }, + { + "path": "research/frontier2044-epsilon-refinement/VERIFY.json", + "git_blob": "290fcf9c702387af6eb68dd2710b7ba112732b8e", + "sha256": "5453adcd0c6d5711db8fab8ececac592b7ed7cf3357cce3f004e59623c1ee846", + "usage": "input" + }, + { + "path": "research/frontier2044-epsilon-refinement/ledger.py", + "git_blob": "11aa5db90207b0ef0b484592b7434c07b7794f8b", + "sha256": "8ca6be1d456f55cfdbbc895a5fbdcd163f8a9494a3ba596536add3cf4fa5ac79", + "usage": "input" + }, + { + "path": "research/frontier2044-epsilon-refinement/verify.py", + "git_blob": "5c5e487c9e477715ce121fb4f4eedd4ae10ee034", + "sha256": "aa2b192d98816d46aab25fe13880e9a7574537cb25c698d855d97a1301c1b889", + "usage": "input" + } + ] +} diff --git a/research/kappa-fixed-grid-ceiling/TASK.json b/research/kappa-fixed-grid-ceiling/TASK.json new file mode 100644 index 0000000000..44ba3ee510 --- /dev/null +++ b/research/kappa-fixed-grid-ceiling/TASK.json @@ -0,0 +1,58 @@ +{ + "schema_version": 1, + "task_id": "uniform-transfer-audit", + "original_card": { + "id": "uniform-transfer-audit", + "question": "Can one exact all-size/compiler, precision, hosting or restoration implication be proved or falsified?", + "starting_points": [ + "certificates/selected-result.json", + "docs/audit.md" + ], + "methods": [ + "Prove one missing implication with explicit quantified hypotheses.", + "Find an exact counterexample at the claimed interface boundary." + ], + "acceptance_gate": "Identify the proposition and what would change downstream; do not equate a finite replay with a universal proof.", + "first_step": { + "command": [ + "python3", + "-B", + "scripts/research_baseline.py" + ], + "expected": "PASS_RESEARCH_BASELINE_BINDINGS_ONLY", + "inspect": "Read the selected review scope and choose one exact all-size or precision implication.", + "scope": "Positive control / source-bound orientation only; this is not a new construction or full cold replay." + }, + "first_experiment": "Write its quantified inputs and conclusion; find a missing hypothesis or construct a minimal exact adversarial instance.", + "bottleneck_link": "Finite supplier improvements are useful only under the retained transfer obligations.", + "allowed_variations": [ + "Choose one tape, precision, hosting or restoration lemma." + ], + "scope_change_triggers": [ + "Replacing a quantified obligation with another finite smoke test." + ], + "overlap_terms": [ + "uniform transfer", + "all-size", + "precision" + ] + }, + "base_commit": "f7b63bf857f08eeb8f6cf3e8529f9ef6a10291b6", + "scope_status": "changed", + "scope_change_reason": "Explicit donor request for a further kappa PR. Two structural leads failed their paid-cost screen; this separate arithmetic increment closes the fixed-grid free-gap family and does not claim a material supplier gain.", + "actual_scope": "Attain and prove the maximum outer kappa on PR2161's fixed floor grid and fixed backoff, by reducing only free positive gaps; certify the new interior b with both unchanged fine engines.", + "bottleneck_link": "Clarifies that further free-gap tuning cannot beat the attained fixed-grid cap. A material improvement requires a changed paid supplier or transfer model.", + "stop_rule": "Reject any failed retained inequality, mutation, explicit main-binding invariant, source/receipt binding, fresh fine-engine check or exact ceiling/gain identity.", + "evidence": "CLAIM.json, RESULT.json, PROVIDER-POINT.json and PROOF.md; source-bound prior full supplier replay retained.", + "author": "dataisfire", + "ai_assistance": "Substantial OpenAI Codex assistance in research, implementation, verification and package preparation.", + "outcome": "completed", + "open_questions": [ + { + "question": "Can the complete paid supplier improve materially?", + "why_it_matters": "This contribution reaches the declared fixed-grid ceiling; its gain is still extremely small.", + "first_step": "Screen a genuinely changed centre or recursive-child mechanism with all compensation, restoration, ownership and precision costs included.", + "blocked_by": "Current fixed-inventory packing is already idle-optimal; the tested early-query extra-carrier route misses even its favorable budget." + } + ] +} diff --git a/research/kappa-fixed-grid-ceiling/VALIDATION.json b/research/kappa-fixed-grid-ceiling/VALIDATION.json new file mode 100644 index 0000000000..4daa606ddd --- /dev/null +++ b/research/kappa-fixed-grid-ceiling/VALIDATION.json @@ -0,0 +1,12 @@ +{ + "status": "PASS_FIXED_GRID_CEILING_POINT", + "exact_outer": "PASS_SOURCE_BOUND_COMPLETE_FINITE_OUTER_REFINEMENT", + "retained_inequalities": 62, + "additional_guard": "Gaussian saving strictly above main, preserving the explicitly declared main-binding family at a coarse kappa floor.", + "mutation_vectors": 17, + "fixed_grid_cap_attained": true, + "fresh_fine_provider_engines": "PASS_FRESH_FINE_ENGINES_AT_INTERIOR_POINT", + "full_supplier": "Source-bound reuse of personally completed PR2044 native/paid/controller/owner/geometry admission; all physical data and endpoint unchanged.", + "inherited_limits": "Parent Linux aggregate CRLF/LF mismatch and pre-existing historical split-skip source pin failure disclosed in PR2161; no whole-repository green or hosted-CI claim.", + "privacy": "No private paths, users, hostnames, hardware/timings or raw private logs published." +} diff --git a/research/kappa-fixed-grid-ceiling/VERIFY.json b/research/kappa-fixed-grid-ceiling/VERIFY.json new file mode 100644 index 0000000000..dc091dad0a --- /dev/null +++ b/research/kappa-fixed-grid-ceiling/VERIFY.json @@ -0,0 +1,414 @@ +{ + "schema_version": 1, + "status": "ready", + "python": "3.12", + "requirements": [], + "commands": [ + { + "argv": [ + "{python}", + "-B", + "{package}/verify.py" + ], + "timeout_seconds": 600, + "checks": "62 retained inequalities plus the explicit main-binding invariant and all 17 controls, independent balance, exact gain over PR2161, and attainment of the universal strict fixed-grid ceiling; fast gate only." + } + ], + "inputs": [ + "research/capped-fusion-t74-k554/ADMISSION-DERIVATION.patch", + "research/capped-fusion-t74-k554/CLAIM.json", + "research/capped-fusion-t74-k554/CONSTRUCTION.json", + "research/capped-fusion-t74-k554/DISPATCH.json", + "research/capped-fusion-t74-k554/GLOBAL-TEMPLATE.json.gz", + "research/capped-fusion-t74-k554/MANIFEST.json", + "research/capped-fusion-t74-k554/NOTICE", + "research/capped-fusion-t74-k554/ORDER.json", + "research/capped-fusion-t74-k554/OWNERS.json.gz", + "research/capped-fusion-t74-k554/PARENT-LIFT-RECEIPT.json", + "research/capped-fusion-t74-k554/PLAN.json", + "research/capped-fusion-t74-k554/PRICE.json", + "research/capped-fusion-t74-k554/PROFILE.json", + "research/capped-fusion-t74-k554/README.md", + "research/capped-fusion-t74-k554/RELEASE.json", + "research/capped-fusion-t74-k554/SOURCE-PIN-REFINEMENT.json", + "research/capped-fusion-t74-k554/SOURCE-PIN.json", + "research/capped-fusion-t74-k554/SPEC.json", + "research/capped-fusion-t74-k554/audit_fast.py", + "research/capped-fusion-t74-k554/audit_mixed.py", + "research/capped-fusion-t74-k554/code/assemble.py", + "research/capped-fusion-t74-k554/code/assembly_controls.py", + "research/capped-fusion-t74-k554/code/audit_allcold.py", + "research/capped-fusion-t74-k554/code/bind_providers_portable.py", + "research/capped-fusion-t74-k554/code/bit_supplier_controls.py", + "research/capped-fusion-t74-k554/code/emit_allcold.py", + "research/capped-fusion-t74-k554/code/fine_cache.py", + "research/capped-fusion-t74-k554/code/fine_mercator.py", + "research/capped-fusion-t74-k554/code/fine_moment.py", + "research/capped-fusion-t74-k554/code/freeze_spec.py", + "research/capped-fusion-t74-k554/code/generated_identity.py", + "research/capped-fusion-t74-k554/code/invoice_allcold.py", + "research/capped-fusion-t74-k554/code/lemmag_checks.py", + "research/capped-fusion-t74-k554/code/lemmag_stage.py", + "research/capped-fusion-t74-k554/code/oracle_check.py", + "research/capped-fusion-t74-k554/code/prepare_global.py", + "research/capped-fusion-t74-k554/code/restore_parent.py", + "research/capped-fusion-t74-k554/code/witness.py", + "research/capped-fusion-t74-k554/construction/leaver/PIVOT-SWAP-k8.json", + "research/capped-fusion-t74-k554/evidence/ADMISSION-CONTROLS.json", + "research/capped-fusion-t74-k554/evidence/ASSEMBLY.json", + "research/capped-fusion-t74-k554/evidence/BIT-CONTROLS.json", + "research/capped-fusion-t74-k554/evidence/FULL-ADMISSION.json", + "research/capped-fusion-t74-k554/evidence/GEOMETRY-CONTROLS.json", + "research/capped-fusion-t74-k554/evidence/INDEPENDENT.json", + "research/capped-fusion-t74-k554/evidence/OUTER-DISCOVERY.json", + "research/capped-fusion-t74-k554/evidence/REGRESSION37-CONTROLS.json", + "research/capped-fusion-t74-k554/evidence/pr1377/CLAIM.json", + "research/capped-fusion-t74-k554/evidence/pr1377/PROOF-NOTE.md", + "research/capped-fusion-t74-k554/evidence/pr1377/RELEASE.json", + "research/capped-fusion-t74-k554/evidence/pr1377/RESULT.json", + "research/capped-fusion-t74-k554/freeze_spec.py", + "research/capped-fusion-t74-k554/geometry_controls.py", + "research/capped-fusion-t74-k554/independent_core.py", + "research/capped-fusion-t74-k554/inputs/DISPATCH.json", + "research/capped-fusion-t74-k554/inputs/GLOBAL-TEMPLATE.json.gz", + "research/capped-fusion-t74-k554/inputs/OWNERS.json.gz", + "research/capped-fusion-t74-k554/inputs/PLAN.json", + "research/capped-fusion-t74-k554/inputs/PR589-EXPECTED.json", + "research/capped-fusion-t74-k554/inputs/SPEC.json", + "research/capped-fusion-t74-k554/lift_parent.py", + "research/capped-fusion-t74-k554/new/CHAIN.json", + "research/capped-fusion-t74-k554/new/EDITS-1.json", + "research/capped-fusion-t74-k554/new/EDITS.json", + "research/capped-fusion-t74-k554/new/PLAN.json", + "research/capped-fusion-t74-k554/new/PROFILE.json", + "research/capped-fusion-t74-k554/new/SPEC.json", + "research/capped-fusion-t74-k554/new/extra-word-566.json.gz", + "research/capped-fusion-t74-k554/new/gauge44-word-566.json.gz", + "research/capped-fusion-t74-k554/new/pivotcheck.py", + "research/capped-fusion-t74-k554/new/rebind.py", + "research/capped-fusion-t74-k554/new/rebuild.py", + "research/capped-fusion-t74-k554/new/rebuild_chain.py", + "research/capped-fusion-t74-k554/new/steps/0/extra.json.gz", + "research/capped-fusion-t74-k554/new/steps/0/gauge44.json.gz", + "research/capped-fusion-t74-k554/outer/B.json", + "research/capped-fusion-t74-k554/outer/CLASSICAL-BOUNDARY.md", + "research/capped-fusion-t74-k554/outer/FINE-PADDING-COMPOSITION.md", + "research/capped-fusion-t74-k554/outer/GAUGEFREE-INTERIORS.md", + "research/capped-fusion-t74-k554/outer/INDEPENDENT.json", + "research/capped-fusion-t74-k554/outer/LEDGER.json", + "research/capped-fusion-t74-k554/outer/OUTER-CLAIM.json", + "research/capped-fusion-t74-k554/outer/RECT-BOUNDARY.md", + "research/capped-fusion-t74-k554/outer/RETUNED-SLACKS.md", + "research/capped-fusion-t74-k554/outer/STRUCTURED-BOUNDARY.md", + "research/capped-fusion-t74-k554/outer/UNION-SCHEDULE.md", + "research/capped-fusion-t74-k554/outer/check_fine_padding.py", + "research/capped-fusion-t74-k554/outer/check_gaugefree.py", + "research/capped-fusion-t74-k554/outer/check_ledger.py", + "research/capped-fusion-t74-k554/outer/independent_check.py", + "research/capped-fusion-t74-k554/outer/replay_evidence.py", + "research/capped-fusion-t74-k554/outer/run_outer.py", + "research/capped-fusion-t74-k554/outer/sched_review.py", + "research/capped-fusion-t74-k554/outer/sched_test.py", + "research/capped-fusion-t74-k554/outer/struct_check.py", + "research/capped-fusion-t74-k554/reconstruct.py", + "research/capped-fusion-t74-k554/replay.py", + "research/capped-fusion-t74-k554/vendor/build_parent.py", + "research/capped-fusion-t74-k554/vendor/pr1297/CLAIM.json", + "research/capped-fusion-t74-k554/vendor/pr1297/COMPOSITION.json", + "research/capped-fusion-t74-k554/vendor/pr1297/CONSTRUCTION.json", + "research/capped-fusion-t74-k554/vendor/pr1297/CONTROL-SITES-base.json", + "research/capped-fusion-t74-k554/vendor/pr1297/CONTROL-SITES-extra.json", + "research/capped-fusion-t74-k554/vendor/pr1297/DEPENDENCIES.json", + "research/capped-fusion-t74-k554/vendor/pr1297/DISPATCH.json", + "research/capped-fusion-t74-k554/vendor/pr1297/EXACT-RELATIONS.json", + "research/capped-fusion-t74-k554/vendor/pr1297/GLOBAL-TEMPLATE.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/INDEPENDENT-DERIVATION.patch", + "research/capped-fusion-t74-k554/vendor/pr1297/KERNEL-CONTROLS-base.json", + "research/capped-fusion-t74-k554/vendor/pr1297/KERNEL-CONTROLS-extra.json", + "research/capped-fusion-t74-k554/vendor/pr1297/MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1297/MAPPED-RECIPE.json", + "research/capped-fusion-t74-k554/vendor/pr1297/NATIVE-VALIDATION.json", + "research/capped-fusion-t74-k554/vendor/pr1297/NOTICE", + "research/capped-fusion-t74-k554/vendor/pr1297/OWNERS.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/PLAN.json", + "research/capped-fusion-t74-k554/vendor/pr1297/PRICE.json", + "research/capped-fusion-t74-k554/vendor/pr1297/PROFILE.json", + "research/capped-fusion-t74-k554/vendor/pr1297/README.md", + "research/capped-fusion-t74-k554/vendor/pr1297/RECIPE-base.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/RECIPE-extra.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/SEARCH-RESULT.json", + "research/capped-fusion-t74-k554/vendor/pr1297/SOURCE-PIN.json", + "research/capped-fusion-t74-k554/vendor/pr1297/SPEC.json", + "research/capped-fusion-t74-k554/vendor/pr1297/UPSTREAM-NOTICE.md", + "research/capped-fusion-t74-k554/vendor/pr1297/VALIDATION.json", + "research/capped-fusion-t74-k554/vendor/pr1297/audit_mixed.py", + "research/capped-fusion-t74-k554/vendor/pr1297/build_word.py", + "research/capped-fusion-t74-k554/vendor/pr1297/construct.py", + "research/capped-fusion-t74-k554/vendor/pr1297/controls.py", + "research/capped-fusion-t74-k554/vendor/pr1297/extra-word.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/freeze_spec.py", + "research/capped-fusion-t74-k554/vendor/pr1297/gauge44-word.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/independent_core.py", + "research/capped-fusion-t74-k554/vendor/pr1297/inputs/base.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/inputs/extra.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/kernel543_controls.py", + "research/capped-fusion-t74-k554/vendor/pr1297/kernel_controls.py", + "research/capped-fusion-t74-k554/vendor/pr1297/original-main/research/complex-t21-owners/vendor/pr870/t16/build_parent.py", + "research/capped-fusion-t74-k554/vendor/pr1297/premise/inputs/CODED-CELLS-k8.json", + "research/capped-fusion-t74-k554/vendor/pr1297/premise/inputs/TRI-LEAVER-k8.json", + "research/capped-fusion-t74-k554/vendor/pr1297/premise/premise_check.py", + "research/capped-fusion-t74-k554/vendor/pr1297/premise/verify_1049.py", + "research/capped-fusion-t74-k554/vendor/pr1297/replay.py", + "research/capped-fusion-t74-k554/vendor/pr1297/search_relations.py", + "research/capped-fusion-t74-k554/vendor/pr1297/upstream-layout.tar.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/CLAIM.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/DEPENDENCY-PINS.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/NOTICE.md", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/PROOF.md", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/README.md", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/SOURCE-PINS.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/audit.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/build_word.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/common.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/construct.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/controller.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/controls.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FLOW.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FOUR-RECIPE.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/FOUR-WORD.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/MIX.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/ORDER.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/OWNERS.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/PLAN.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/data/SPEC.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/ANCESTRY.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/ENTRANCE-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/FLOW-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/INDEPENDENT-OWNERS.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/PARENT-CHECK.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/PRICE.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RAW-demote3.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RAW-demote4.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/REPLAY-SOURCE.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/RESULT.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/STAGES.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/evidence/WORD-RECIPE.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/local_controls.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/native.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/package.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/prepare.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/price.py", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/JOINT-WORD.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/NOTICE.md", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/PLAN.json.gz", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/SPEC.json", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-coordinated-owners-NOTICE.md", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-eight-ends-NOTICE.md", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-eight-ends-t16-NOTICE.md", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/vendor/pr1148/k8-three-demotions-NOTICE.md", + "research/capped-fusion-t74-k554/vendor/pr1297/vendor/pr1193/verify.py", + "research/capped-fusion-t74-k554/vendor/pr1297/verify.py", + "research/capped-fusion-t74-k554/vendor/pr1297/x54_controls.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ALGEBRAIC-STABILITY-INDEPENDENT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/BILATERAL-LDU.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-GAUGE-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-INTERIORS.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-OUTER-ARITHMETIC.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/CAPPED-SIGNOFF.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/FINAL-PACKAGE-REVIEW.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/FORWARD-SMALL-A-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/HALO-THEOREM.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/INDEPENDENT-FINAL-REVIEW.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/LOG-A-PHASE-SCHUR-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MANIFEST-UPDATE.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY-ARITHMETIC.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY-REVIEW.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-COROLLARY.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-LAYOUT-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-LAYOUT-SIGNOFF.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-SOURCE-CONSTRUCTIONS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-SOURCE-COVERAGE.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/MATRIX-TRANSFER-MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/NATIVE-RECEIPT-CAPSULE.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/OUTER-ARITHMETIC.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/OUTER-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PACKAGE-MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PHASE-LAYOUT-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PROOF-AND-COVERAGE.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PUBLICATION-CHECKS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/PUBLICATION-SOURCES.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/README.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/REVIEW-RECEIPT.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ROOT-EXACT-REPLAY.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/ROOT-MATRIX-EXACT-REPLAY.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SHALLOW-TOEPLITZ.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SOURCES.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SUPPLIER-SUPPORT-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SUPPORT-ADVERSARIAL-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/SUPPORT-ROUTER.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/TASK.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/TENSOR-COMPILER.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/VERIFIER-NEGATIVE-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/VERIFY.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/check_capped_outer.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/check_matrix_corollary.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/BILATERAL-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/BILATERAL-LDU.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CAPPED-GAUGE-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CAPPED-GAUGE-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/CYCLIC-SCAN-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/DYADIC-INTERIOR-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/FORWARD-CELL-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/FORWARD-SMALL-A-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOG-A-PHASE-SCHUR-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOG-A-SCHUR-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOWER-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/LOWER-FACTOR.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/README.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-DATA-ALGORITHM.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-DATA-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-LIFTING.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/UPPER-MERGE-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_bilateral.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_capped_gauges.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_cyclic_scan.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_dyadic_interiors.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_forward_cell.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_log_a_schur.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_lower.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_upper_data.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/gaussian_fast_ultra/check_upper_merge.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/EMBEDDING-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/HALO-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/HALO-THEOREM.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/PARAMETER-CHECK.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RAGGED-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RAGGED-PERIODS.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/README.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/RECTANGULAR-EMBEDDING.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/SPARSE-SHEAR-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/SUPPORT-ROUTER.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_embedding.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_halo.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_ragged.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/halo_layout_ultra/check_sparse_shear.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/CORE-SOURCES.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/FINAL-REVIEW.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/core_review.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/gaussian_layout_review.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/layout_subreview.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/independent_fusion_review_ultra/union_subreview.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/CIRCUIT-REPLAY.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/EXACT-ALGEBRA.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/READING-COVERAGE.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SHALLOW-TOEPLITZ.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SOURCES.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPLIER-AUDIT-SOURCES.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPLIER-CAPACITY-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPLIER-SUPPORT-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/SUPPORT-ADVERSARIAL-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/TENSOR-COMPILER-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/TENSOR-COMPILER.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_circuits.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_exact_algebra.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_supplier_capacity.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/inplace_algebra_ultra/check_tensor_compiler.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/ALGEBRAIC-STABILITY-INDEPENDENT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/PROOF-AND-COVERAGE.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/SOURCE-CONSTRUCTIONS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/SOURCE-COVERAGE.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/matrix_boundary_ultra/check_source_constructions.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/CAPPED-INTERIORS.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/CAPPED-OUTER-ARITHMETIC.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY-ARITHMETIC.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY-REVIEW.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/MATRIX-COROLLARY.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/OUTER-ARITHMETIC.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/OUTER-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/README.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/REVIEW-RECEIPT.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_capped_outer.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_matrix_corollary.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_assembly_ultra/check_outer.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/CAPPED-LAYOUT-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/CAPPED-SIGNOFF.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/MATRIX-LAYOUT-SIGNOFF.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/PARAMETERS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/Q-EMBEDDING-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/README.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/UNION-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/check_capped_layout.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/check_q_embedding.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/phase_layout_audit_ultra/check_union.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/ERASURE-ROUNDING-CONTROL.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/FIXED-A-LDU-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/FIXED-A-PERIODIC-NORM-AUDIT.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/HOLES-AND-Q-LDU.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/HOLES-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/LEDGER.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/NEAREST-NEIGHBOR-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/NEAREST-NEIGHBOR-NORM.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/PARTIAL-FUSION.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/POSITIVE-TREE-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/Q-LDU-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/README.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/REFINED-PHASE-FUSION.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/STABLE-POSITIVE-TREE.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/SYLVESTER-CONTROLS.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/TASK.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_constructions.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_erasure_rounding.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_fixed_a_ldu.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_holes.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_ledger.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_nearest_neighbor.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_positive_tree.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_q_ldu.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/evidence/radical_reduction_ultra/check_sylvester_factor.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/FRONTIER-FUSION-ARITHMETIC.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/INDEPENDENT-SUBSTITUTION-RECEIPT.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/INDEPENDENT-SUBSTITUTION-REVIEW.md", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/NATIVE-ADMISSION-BINDING.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/REPRODUCE.txt", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/T74-APPENDIX.tex", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/bind_native_admission.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/check_frontier_fusion.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/frontier_fusion/independent_substitution_check.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/gaussian_fixed_width_note.tex", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/make_native_capsule.py", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/phase_fusion_note.tex", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/full-1661-verification/RESULT.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/full-1661-verification/STAGES.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/CLAIM.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/MANIFEST.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/NOTICE", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/inputs/PR589-EXPECTED.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/target002_upstream/pr1661/research/gmx-t74-p566-ep400/new/SPEC.json", + "research/capped-fusion-t74-k554/vendor/pr1673/capped-phase-fusion/verify.py", + "research/capped-fusion-t74-k554/vendor/pr1786/FINE-PRIME-PADDING.md", + "research/capped-fusion-t74-k554/vendor/pr1786/NOTICE.md", + "research/capped-fusion-t74-k554/verify.py", + "research/capped-fusion-t74-k554/verify_manifest.py", + "research/capped-fusion-t74-k554/verify_release.py", + "research/frontier2044-epsilon-refinement/CLAIM.json", + "research/frontier2044-epsilon-refinement/OVERLAP.json", + "research/frontier2044-epsilon-refinement/PROOF.md", + "research/frontier2044-epsilon-refinement/README.md", + "research/frontier2044-epsilon-refinement/RESULT.json", + "research/frontier2044-epsilon-refinement/SOURCES.json", + "research/frontier2044-epsilon-refinement/TASK.json", + "research/frontier2044-epsilon-refinement/VALIDATION.json", + "research/frontier2044-epsilon-refinement/VERIFY.json", + "research/frontier2044-epsilon-refinement/ledger.py", + "research/frontier2044-epsilon-refinement/verify.py" + ] +} diff --git a/research/kappa-fixed-grid-ceiling/check_provider_point.py b/research/kappa-fixed-grid-ceiling/check_provider_point.py new file mode 100644 index 0000000000..c24e0c892e --- /dev/null +++ b/research/kappa-fixed-grid-ceiling/check_provider_point.py @@ -0,0 +1,23 @@ +"""Fresh fine-engine checks at the new interior point; unchanged source engines.""" +import importlib.util,json,hashlib,argparse,sys +from pathlib import Path +from fractions import Fraction as F +import ledger as L +if not __debug__:raise RuntimeError('Assertions must be enabled') +sys.set_int_max_str_digits(0) +P=Path(__file__).resolve().parent + +def load(name): + path=L.PARENT/'code'/(name+'.py') + spec=importlib.util.spec_from_file_location(name,path);module=importlib.util.module_from_spec(spec);spec.loader.exec_module(module) + return module,path + +ap=argparse.ArgumentParser();ap.add_argument('--out',type=Path,required=True);args=ap.parse_args() +merc,mp=load('fine_mercator');base,bp=load('fine_moment') +left=merc.moment(L.profile,L.m,L.W,L.b,False) +right=base.moment(L.m,L.W,list(L.profile.items()),L.b) +assert left[0]<=left[1]<1 and right[0]<=right[1]<1 +assert L.q0 for x in row['strict_checks'].values()) + assert min(row['margins'].values())==row['margins']['main_transform'] + # Independent balance and cost equations, without the ledger function. + r=F(1,10**(L.DIG+80));delta=F(1025,1024)*r;e=1-delta;beta=1-3*delta + q=F(rd(parent/'new/SPEC.json')['expected']['complex_lower'])-2*r + c=F(3,32);s=r;xi=e+e*q+s-c + k=F((e*q*10**(L.DIG+46)).__floor__(),10**(L.DIG+46))-F(1,10**(L.DIG+22)) + assert k==row['kappa'] and delta>L.R0 and 00 + assert 1-e-L.R0==L.R0/F(1024)>0 + assert F(1,2)L.ZETA>0 + assert 1-beta-2*(1-e)==delta>0 and 7**16<2**45 + costs={'transform':1-e*q,'global_router':1-L.a,'gaussian':e-q*beta,'group_router':e-L.a*beta,'group_scans':e-beta,'boundary':e-xi+(F(45,16)-1)/2,'sparse_union':e+F(1,2)-xi,'polynomials':1-e,'microfaces':e+beta+48-128+2} + assert max(costs.values())==costs['transform'] and all(v<1-k for v in costs.values()) + prior=F(rd(ROOT/'research/frontier2044-epsilon-refinement/CLAIM.json')['kappa_decimal']) + old_r=F(1,10**(L.DIG+10));old_q=L.certified_complex-2*old_r + old_saving=(1-F(1025,1024)*old_r)*old_q + prior_derived=F((old_saving*L.FLOOR).__floor__(),L.FLOOR)-L.BACKOFF + assert prior==prior_derived and k>prior + gain=k-prior;ideal=e*q-old_saving + assert abs(gain-ideal)0) + return {'kappa_decimal':decimal(k),'gain_rational':str(gain),'kappa_sha256':hashlib.sha256(decimal(k).encode()).hexdigest(),'strict_checks':63,'rejecting_controls':controls,'epsilon_delta_ratio':'1025/1024','r0_exponent_offset':80,'fixed_grid_maximum_attained':True,'grid_digits':L.DIG+46,'backoff_digits':L.DIG+22,'parent_head':'322949a53488d64023fedb89a6774927707e57ba','parent_manifest_sha256':sha(parent/'MANIFEST.json'),'scope':'Conditional fixed-grid maximum within the declared free-gap family only; unchanged supplier finite admission and complete parent outer evidence replays are required separately.'} +def main(): + ap=argparse.ArgumentParser();ap.add_argument('--write-claim',action='store_true');ap.add_argument('--supplier-work',type=Path);ap.add_argument('--outer-work',type=Path);ap.add_argument('--outer-log',type=Path);ap.add_argument('--out',type=Path);args=ap.parse_args() + result=check() + if args.write_claim:(P/'CLAIM.json').write_text(json.dumps(result,indent=2)+'\n',encoding='utf-8',newline='\n');return + assert rd(P/'CLAIM.json')==result,'candidate claim drift' + result['status']='PASS_EXACT_OUTER_REFINEMENT_ONLY' + if any((args.supplier_work,args.outer_work,args.outer_log)): + assert all((args.supplier_work,args.outer_work,args.outer_log)), 'All full-admission inputs are required' + w=args.supplier_work; supplier=rd(w/'RESULT.json');assembly=rd(w/'strict/ASSEMBLY.json') + assert supplier['status']=='PASS_T74_EXACT_FILL_COMPLETE_FINITE_ADMISSION' and supplier['manifest_sha256']==result['parent_manifest_sha256'] + assert all(s['exit_code']==0 for s in supplier['stages']) + assert supplier['controls']=={'admission':114,'bit':12,'controller':15,'independent_owner':8,'geometry':6} + assert assembly['status']=='PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY' and len(assembly['outer'])==47 and len(assembly['conservative_outer'])==47 + assert F(assembly['complex_lower'])==L.certified_complex and F(assembly['bit_lower'])==L.bit + assert {int(k):v for k,v in assembly['complex_profile'].items()}==L.profile + for rows in (assembly['moments'],assembly['conservative_moments']): + for r in rows: + for engine in ('mercator','base_two'): + lo,hi=map(F,r[engine]);assert lo<=hi + # Parent receipts store M(endpoint)-1, so acceptance/rejection is relative to zero. + assert hi<0 if r['accept'] else lo>0 + for key,side,endpoint in (('moments','complex',L.certified_complex),('conservative_moments','conservative_complex',F(L.spec['expected']['conservative_complex_lower']))): + rows=[r for r in assembly[key] if r['side']==side] + assert any(r['accept'] and F(r['endpoint'])==endpoint for r in rows) + assert any(not r['accept'] and F(r['endpoint'])==endpoint+F(1,10**L.DIG) for r in rows) + for name in ('LEDGER.json','INDEPENDENT.json'): + assert (args.outer_work/'outer'/name).read_bytes()==(L.PARENT/'outer'/name).read_bytes(),name + rawlog=args.outer_log.read_bytes();outerlog=rawlog.decode('utf-16' if rawlog.startswith((b'\xff\xfe',b'\xfe\xff')) else 'utf-8') + assert outerlog.strip().splitlines()[-1]=='PASS_OUTER' + assert 'PASS_EXACT_REPLAY 19' in outerlog + assert rd(args.outer_work/'fine-padding.json')['status']=='PASS_FINE_PADDING_FINITE_CONTROLS' + provider_path=P/'PROVIDER-POINT.json';provider=rd(provider_path) + assert provider['status']=='PASS_FRESH_FINE_ENGINES_AT_INTERIOR_POINT' + assert F(provider['b'])==L.b and F(provider['q'])==L.q and F(provider['certified_endpoint'])==L.certified_complex + assert {int(k):v for k,v in provider['profile'].items()}==L.profile and (provider['m'],provider['W'])==(L.m,L.W) + for key in ('mercator_margin','base_two_margin'): + lo,hi=map(F,provider[key]);assert lo<=hi<0 + for name,h in provider['source_sha256'].items():assert sha(L.PARENT/'code'/name)==h + result['fresh_provider_point_sha256']=sha(provider_path) + result['fresh_provider_point_status']=provider['status'] + result['status']='PASS_SOURCE_BOUND_COMPLETE_FINITE_OUTER_REFINEMENT' + result['parent_receipt_sha256']={n:sha(w/n) for n in ('RESULT.json','strict/ASSEMBLY.json','STAGES.json')} + result['parent_outer_sha256']={n:sha(args.outer_work/'outer'/n) for n in ('LEDGER.json','INDEPENDENT.json')} + result['parent_outer_log_sha256']=sha(args.outer_log) + result['replay_scope']='Unchanged parent supplier checker on Linux and unchanged CRLF-bound outer checker on Windows; Linux aggregate release byte comparison failed solely on CRLF/LF artifact endings. No assertions or certificates were changed.' + if args.out:args.out.write_text(json.dumps(result,indent=2)+'\n',encoding='utf-8',newline='\n') + print(result['status'],'strict_checks=63 controls=17 positive_gain=True') +if __name__=='__main__':main()